Gstreamer

Hi,

I am using below Gstreamer command to record the video.
gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! omxh264enc qp-range=20,20:20,20:-1,-1 ! matroskamux ! queue ! filesink location=/media/dl1/VOLUMELABE/Video/123/5.mkv

However, when I remove gp-range and allow bit rate to be automatically taken care, the size of video got reduced by 1/3. We want to record fast moving objects, do you see any issue once we remove qp-range?

Hi,
We have deprecated omx plugins, so please try nvv4l2h264enc. And for balance in video quality and bitrate, please try to set CBR + virtual buffer size:
Random blockiness in the picture RTSP server-client -Jetson TX2 - #5 by DaneLLL

Thanks @DaneLLL

Can I set the values for bit rate and vbv-size as per below
nvv4l2h264enc bitrate=110592 control-rate=1 vbv-size=5529

I want record video at 1280X720 at 40 FPS

I calculated bitrate using formula =1280X720X3X40/1000
for VBV-size =2*birate/40
Could you please confirm?

Hi,
110592bps looks small for 1280x720p40. We would suggest set at least 4Mbps. IF bitrate is too low, video quality can be bad.

Thanks @DaneLLL
I have tried with both 4MBPS and 3MBPS, however I dont see much difference in terms of quality.
nvv4l2h264enc bitrate=32000000 control-rate=1 vbv-size=1600000
nvv4l2h264enc bitrate=24000000 control-rate=1 vbv-size=1200000

However, there’s difference in video file size. Do you think, I have try different options before finalising correct values?
The command I have used is
gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=32000000 control-rate=1 vbv-size=1600000 ! h264parse ! matroskamux ! queue ! filesink location=1.mkv

My only concerns is video file size, its shooting upto 600-800MB for 10 min video.

Hi,
4Mbps is bitrate=4000000. The bitrate property is bits per second.

Thanks @DaneLLL
As I am recording at 185 degrees view, unless I increase the bitrate to 20Mbps, I didn’t get a good quality video. So, I changed the values as 20Mb for bit rate and vbv-size of 1MB for 40FPS recording video. Could you please confirm if i can proceed with these values or do you suggest any other values?

Hi,
For 20Mbps/40fps. Please try virtual buffer size in 500000 - 1000000.

For information, please share your release version( $ head -1 /etc/nv_tegra_release )

Thanks @DaneLLL. The command i am using is
gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=20000000 control-rate=1 vbv-size=500000 ! h264parse ! matroskamux ! queue ! filesink location=1.mkv

However, when I change vbv-size to 100000, I can see good quality images.

I am currently using ecam24 cunx camera, please find the attached the datasheet of the camera for your reference.

e-con_See3CAM_CU135_Datasheet.pdf (612.5 KB)
e-con_e-CAM24_CUNX_Gstreamer_Usage_Guide.pdf (880.3 KB)

Please find below revision version
R32 (release), REVISION: 5.1, GCID: 26202423, BOARD: t210ref, EABI: aarch64, DATE: Fri Feb 19 16:45:52 UTC 2021

To know more about e-CAM24_CUNX, please refer to this page: Global Shutter Camera for Jetson Xavier NX/TX2 NX/Nano

Hi,
Please check if you can set framerate:

video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720,framerate=40/1

Not sure but probably the source runs in 120fps.

Thanks @DaneLLL. I am not able to set frame rate, as this is limitation from e-cam side.
However I am increasing exposure time of each frame and by setting mode to manual using below command, I could able to achieve 40 FPS
v4l2-ctl --set-ctrl=gain=6 --set-ctrl=exposure_time_absolute=249 --set-ctrl=exposure_auto=1 --set-ctrl=roi_window_size=64 --set-ctrl=sharpness=50

Hi,

Not sure but it looks like sensor runs in 120fps in the command. Please link to fpsdisplaysink to confirm it. Would need to confirm the framerate and then set the properties accordingly.

Hi @DaneLLL
I ran below command, but dont see FPS displayed.

gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=20000000 control-rate=1 vbv-size=500000 ! h264parse ! matroskamux ! queue ! fpsdisplaysink video-sink=fakesink

Setting pipeline to PAUSED …

Opening in BLOCKING MODE

Opening in BLOCKING MODE

Pipeline is live and does not need PREROLL …

Setting pipeline to PLAYING …

New clock: GstSystemClock

Redistribute latency…

NvMMLiteOpen : Block : BlockType = 4

===== NVMEDIA: NVENC =====

NvMMLiteBlockCreate : Block : BlockType = 4

H264: Profile = 66, Level = 0

NVMEDIA_ENC: bBlitMode is set to TRUE

^Chandling interrupt.

Interrupt: Stopping pipeline …

EOS on shutdown enabled – Forcing EOS on the pipeline

Waiting for EOS…

Got EOS from element “pipeline0”.

EOS received - stopping pipeline…

Execution ended after 0:00:19.395132269

Setting pipeline to PAUSED …

Setting pipeline to READY …

Setting pipeline to NULL …

Freeing pipeline …

Am i missing something here?
I also tried with below command, but the results is same
gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! fpsdisplaysink video-sink=fakesink

However, once i change the exposure values using V412-ctl, I can change in FPS in the came provided user interface

Hi,
Please run with -ev and you should see fps being printed out.

Thanks @DaneLLL With -ev I can able to see the FPS. Please find below data. I got FPS with simple Gstreamer command as well using the one which we intended to use as well. Please find below results

*** gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! fpsdisplaysink video-sink=fakesink -ev

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 4272, dropped: 0, current: 106.36, average: 85.79
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 4324, dropped: 0, current: 103.88, average: 85.97
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 4324, dropped: 0, current: 103.88, average: 85.97
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 4374, dropped: 0, current: 98.49, average: 86.09
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 4374, dropped: 0, current: 98.49, average: 86.09
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 4429, dropped: 0, current: 109.98, average: 86.32
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 4429, dropped: 0, current: 109.98, average: 86.32

***** gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=20000000 control-rate=1 vbv-size=500000 ! h264parse ! matroskamux ! queue ! fpsdisplaysink video-sink=fakesink -Eva

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 5764, dropped: 0, current: 243.60, average: 243.26
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 5888, dropped: 0, current: 243.79, average: 243.27
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 5888, dropped: 0, current: 243.79, average: 243.27
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 6010, dropped: 0, current: 239.69, average: 243.20
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 6010, dropped: 0, current: 239.69, average: 243.20
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 6132, dropped: 0, current: 243.83, average: 243.21
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 6132, dropped: 0, current: 243.83, average: 243.21
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 6256, dropped: 0, current: 246.23, average: 243.27
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 6256, dropped: 0, current: 246.23, average: 243.27
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 6378, dropped: 0, current: 242.04, average: 243.25
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 6378, dropped: 0, current: 242.04, average: 243.25

v4l2-ctl --list-ctrls

User Controls

                 brightness 0x00980900 (int)    : min=-15 max=15 step=1 default=0 value=0 flags=slider
                   contrast 0x00980901 (int)    : min=0 max=30 step=1 default=10 value=10 flags=slider
                 saturation 0x00980902 (int)    : min=0 max=60 step=1 default=16 value=16 flags=slider
    white_balance_automatic 0x0098090c (bool)   : default=1 value=1
                      gamma 0x00980910 (int)    : min=40 max=500 step=1 default=220 value=220 flags=slider
                       gain 0x00980913 (int)    : min=1 max=40 step=1 default=1 value=1
            horizontal_flip 0x00980914 (bool)   : default=0 value=0
              vertical_flip 0x00980915 (bool)   : default=0 value=0
  white_balance_temperature 0x0098091a (int)    : min=10 max=10000 step=10 default=4600 value=4600
                  sharpness 0x0098091b (int)    : min=0 max=127 step=1 default=16 value=16 flags=slider

Camera Controls

              exposure_auto 0x009a0901 (menu)   : min=0 max=2 default=0 value=0
     exposure_time_absolute 0x009a0902 (int)    : min=1 max=10000 step=1 default=312 value=312
            roi_window_size 0x009a0924 (int)    : min=8 max=64 step=8 default=8 value=8 flags=slider
               roi_exposure 0x009a0926 (int)    : min=0 max=65535 step=1 default=32896 value=32896 flags=slider
                    denoise 0x009a092d (int)    : min=0 max=15 step=1 default=8 value=8 flags=slider
      exposure_compensation 0x009a0931 (int)    : min=8000 max=1000000 step=1 default=16000 value=16000 flags=slider
                bypass_mode 0x009a2064 (intmenu): min=0 max=1 default=0 value=0
            override_enable 0x009a2065 (intmenu): min=0 max=1 default=0 value=0
               height_align 0x009a2066 (int)    : min=1 max=16 step=1 default=1 value=1
                 size_align 0x009a2067 (intmenu): min=0 max=2 default=0 value=0
           write_isp_format 0x009a2068 (bool)   : default=0 value=0
   sensor_signal_properties 0x009a2069 (u32)    : min=0 max=4294967295 step=1 default=0 [30][18] flags=read-only, has-payload
    sensor_image_properties 0x009a206a (u32)    : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload
  sensor_control_properties 0x009a206b (u32)    : min=0 max=4294967295 step=1 default=0 [30][36] flags=read-only, has-payload
          sensor_dv_timings 0x009a206c (u32)    : min=0 max=4294967295 step=1 default=0 [30][16] flags=read-only, has-payload
           low_latency_mode 0x009a206d (bool)   : default=0 value=0
           preferred_stride 0x009a206e (int)    : min=0 max=65535 step=1 default=0 value=0
               sensor_modes 0x009a2082 (int)    : min=0 max=30 step=1 default=30 value=5 flags=read-only

After running below command to change exposure time
v4l2-ctl --set-ctrl=gain=6 --set-ctrl=exposure_time_absolute=249 --set-ctrl=exposure_auto=1 --set-ctrl=roi_window_size=64 --set-ctrl=sharpness=50

*** gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! fpsdisplaysink video-sink=fakesink -ev

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 284, dropped: 0, current: 39.94, average: 39.26
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 304, dropped: 0, current: 38.44, average: 39.20
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 304, dropped: 0, current: 38.44, average: 39.20
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 324, dropped: 0, current: 39.77, average: 39.24
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 324, dropped: 0, current: 39.77, average: 39.24
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 345, dropped: 0, current: 40.16, average: 39.29
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 345, dropped: 0, current: 40.16, average: 39.29
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 366, dropped: 0, current: 40.33, average: 39.35
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 366, dropped: 0, current: 40.33, average: 39.35
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 386, dropped: 0, current: 38.39, average: 39.30
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 386, dropped: 0, current: 38.39, average: 39.30
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 405, dropped: 0, current: 37.95, average: 39.23
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 405, dropped: 0, current: 37.95, average: 39.23
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 424, dropped: 0, current: 37.95, average: 39.17
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 424, dropped: 0, current: 37.95, average: 39.17
^Chandling interrupt.

***** gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=20000000 control-rate=1 vbv-size=500000 ! h264parse ! matroskamux ! queue ! fpsdisplaysink video-sink=fakesink -Eva

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 988, dropped: 0, current: 84.24, average: 83.38
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1032, dropped: 0, current: 84.31, average: 83.42
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1032, dropped: 0, current: 84.31, average: 83.42
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1074, dropped: 0, current: 80.27, average: 83.29
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1074, dropped: 0, current: 80.27, average: 83.29
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1116, dropped: 0, current: 80.02, average: 83.17
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1116, dropped: 0, current: 80.02, average: 83.17
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1160, dropped: 0, current: 84.44, average: 83.21
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1160, dropped: 0, current: 84.44, average: 83.21
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1202, dropped: 0, current: 83.63, average: 83.23
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1202, dropped: 0, current: 83.63, average: 83.23
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1244, dropped: 0, current: 80.36, average: 83.13
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1244, dropped: 0, current: 80.36, average: 83.13
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 1286, dropped: 0, current: 83.88, average: 83.15
/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 1286, dropped: 0, current: 83.88, average: 83.15
^Chandling interrupt.
Interrupt: Stopping pipeline …

Where as if I change the exposure time to 500, I can able to see below response

v4l2-ctl --set-ctrl=gain=6 --set-ctrl=exposure_time_absolute=500 --set-ctrl=exposure_auto=1 --set-ctrl=roi_window_size=64 --set-ctrl=sharpness=50

gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=20000000 control-rate=1 vbv-size=500000 ! h264parse ! matroskamux ! queue ! fpsdisplaysink video-sink=fakesink -ev

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 624, dropped: 0, current: 40.45, average: 41.66

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 646, dropped: 0, current: 39.91, average: 41.60

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 646, dropped: 0, current: 39.91, average: 41.60

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 670, dropped: 0, current: 43.76, average: 41.67

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 670, dropped: 0, current: 43.76, average: 41.67

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 692, dropped: 0, current: 40.25, average: 41.63

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 692, dropped: 0, current: 40.25, average: 41.63

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 712, dropped: 0, current: 39.68, average: 41.57

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 712, dropped: 0, current: 39.68, average: 41.57

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 736, dropped: 0, current: 43.66, average: 41.64

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 736, dropped: 0, current: 43.66, average: 41.64

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 758, dropped: 0, current: 39.97, average: 41.59

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 758, dropped: 0, current: 39.97, average: 41.59

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 778, dropped: 0, current: 39.52, average: 41.53

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 778, dropped: 0, current: 39.52, average: 41.53

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0/GstTextOverlay:fps-display-text-overlay: text = rendered: 802, dropped: 0, current: 44.24, average: 41.61

/GstPipeline:pipeline0/GstFPSDisplaySink:fpsdisplaysink0: last-message = rendered: 802, dropped: 0, current: 44.24, average: 41.61

^Chandling interrupt.

Hi,
So your source runs in 40fps and CBR + vbv-size=500000 does not provide good image quality. CBR + vbv-size=100000 provides good quality. If it is the case, you may run in CBR + vbv-size=100000. From the experience we suggest set vbv-size in bitrate/fps ~ 2*(bitrate/fps), but it is still case by case.

Thanks a lot @DaneLLL
I used below query and recorded video at 60 fps. This is giving good quality video at the same time not occupying much space in terms of memory
gst-launch-1.0 -e v4l2src device=/dev/video0 ! “video/x-raw, format=(string)UYVY, width=(int)1280, height=(int)720” ! nvvidconv ! “video/x-raw(memory:NVMM), format=(string)I420” ! nvv4l2h264enc bitrate=6000000 control-rate=1 vbv-size=750000 ! h264parse ! matroskamux ! queue ! filesink location=2.mkv

Thanks a ton for your help, and giving insights on how to come up with values for bitrate and buffer. size

1 Like