buffer v4l2src for 30 seconds

Dimitrios Katsaros patcherwork at gmail.com
Tue Dec 6 13:09:42 UTC 2016


Your problem is that the v4l2src is defaulting to mmap mode, which has a
limitation on the amount of buffers that can be mapped. In most
applications this is not a problem but when you are buffering memory like
that you will hit the limit (32 frames according to videodev2).

You can work around this with 2 ways:

a) Copy the frames before they enter the queue. you can do this using a
probe.
b) Set the "io-mode" to one that is not limited in the size of memory it
can allocate. This one depends on the device you are connecting to and what
it supports.

for example, this works for me:

gst-launch-1.0 v4l2src io-mode=3 ! queue min-threshold-time=10000000000
max-size-time=100000000000 max-size-buffers=0 max-size-bytes=0  !
videoconvert ! ximagesink --gst-debug=v4l2src:6

rw is also an option for an "unlimited" amount of memory, although it is
suboptimal since it causes additional memory copies. If you are stuck with
mmap you can post here again and work on getting a probe running in an app

Dimitrios

On Mon, Dec 5, 2016 at 4:18 PM, Antoine Martin <antoine at nagafix.co.uk>
wrote:

> Hi,
>
> On 05/12/16 21:09, Vivia Nikolaidou wrote:
> > Hi,
> >
> > Basically, what Keith just said - make sure you actually wait 30
> > seconds before you see the image.
> It is failing even with ~2 seconds.. so yes, I am waiting at least that
> long.
>
> > Also don't forget to make
> > max-size-time correspondingly bigger.
> Sorry, I should have been clearer: it only works for delays lower than 1
> second (or ~2 seconds with a lower framerate).
> If I make the min-threshold-time longer, I get the "black output"
> problem I am trying to solve. (or sometimes, just one frozen frame)
>
> > If it still doesn't work, please send a debug log with GST_DEBUG=\*:6
> > and GST_DEBUG_NO_COLOR=1 .
> Here's an example of it getting stuck with just 2 seconds of delay
> (max-size-time is high enough for that already):
>
>
> GST_DEBUG=4 GST_DEBUG_NO_COLOR=1 gst-launch-1.0 -v v4l2src
> device=/dev/video0 !
> video/x-raw,format=YUY2,width=640,height=480,framerate=30/1 ! queue
> min-threshold-time=2000000000 max-size-time=20000000000 max-size-bytes=0
> max-size-buffers=0 ! xvimagesink
> 0:00:00.000037599 27400 0x564899256c00 INFO                GST_INIT
> gst.c:510:init_pre: Initializing GStreamer Core Library version 1.10.0
> 0:00:00.000066126 27400 0x564899256c00 INFO                GST_INIT
> gst.c:511:init_pre: Using library installed in /usr/lib64
> 0:00:00.000072324 27400 0x564899256c00 INFO                GST_INIT
> gst.c:522:init_pre: Linux desktop 4.8.10-300.fc25.x86_64 #1 SMP Mon Nov
> 21 18:59:16 UTC 2016 x86_64
> 0:00:00.000252264 27400 0x564899256c00 INFO                GST_INIT
> gstmessage.c:126:_priv_gst_message_initialize: init messages
> 0:00:00.000632823 27400 0x564899256c00 INFO                GST_INIT
> gstcontext.c:83:_priv_gst_context_initialize: init contexts
> 0:00:00.000991487 27400 0x564899256c00 INFO      GST_PLUGIN_LOADING
> gstplugin.c:316:_priv_gst_plugin_initialize: registering 0 static plugins
> 0:00:00.001070486 27400 0x564899256c00 INFO      GST_PLUGIN_LOADING
> gstplugin.c:224:gst_plugin_register_static: registered static plugin
> "staticelements"
> 0:00:00.001078927 27400 0x564899256c00 INFO      GST_PLUGIN_LOADING
> gstplugin.c:226:gst_plugin_register_static: added static plugin
> "staticelements", result: 1
> 0:00:00.001094477 27400 0x564899256c00 INFO            GST_REGISTRY
> gstregistry.c:1738:ensure_current_registry: reading registry cache:
> /home/antoine/.cache/gstreamer-1.0/registry.x86_64.bin
> 0:00:00.009389863 27400 0x564899256c00 INFO            GST_REGISTRY
> gstregistrybinary.c:619:priv_gst_registry_binary_read_cache: loaded
> /home/antoine/.cache/gstreamer-1.0/registry.x86_64.bin in 0.008285 seconds
> 0:00:00.009416470 27400 0x564899256c00 INFO            GST_REGISTRY
> gstregistry.c:1594:scan_and_update_registry: Validating plugins from
> registry cache: /home/antoine/.cache/gstreamer-1.0/registry.x86_64.bin
> 0:00:00.009990096 27400 0x564899256c00 INFO            GST_REGISTRY
> gstregistry.c:1696:scan_and_update_registry: Registry cache has not
> changed
> 0:00:00.009995248 27400 0x564899256c00 INFO            GST_REGISTRY
> gstregistry.c:1773:ensure_current_registry: registry reading and
> updating done, result = 1
> 0:00:00.009999061 27400 0x564899256c00 INFO                GST_INIT
> gst.c:720:init_post: GLib runtime version: 2.50.2
> 0:00:00.010006551 27400 0x564899256c00 INFO                GST_INIT
> gst.c:722:init_post: GLib headers version: 2.50.1
> 0:00:00.010009037 27400 0x564899256c00 INFO                GST_INIT
> gst.c:723:init_post: initialized GStreamer successfully
> 0:00:00.010020022 27400 0x564899256c00 INFO            GST_PIPELINE
> gstparse.c:325:gst_parse_launch_full: parsing pipeline description
> 'v4l2src device=/dev/video0 !
> video/x-raw,format=YUY2,width=640,height=480,framerate=30/1 ! queue
> min-threshold-time=2000000000 max-size-time=20000000000 max-size-bytes=0
> max-size-buffers=0 ! xvimagesink '
> 0:00:00.010579872 27400 0x564899256c00 INFO      GST_PLUGIN_LOADING
> gstplugin.c:842:_priv_gst_plugin_load_file_for_registry: plugin
> "/usr/lib64/gstreamer-1.0/libgstvideo4linux2.so" loaded
> 0:00:00.010587244 27400 0x564899256c00 INFO     GST_ELEMENT_FACTORY
> gstelementfactory.c:364:gst_element_factory_create: creating element
> "v4l2src"
> 0:00:00.010909751 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:668:gst_element_add_pad:<GstBaseSrc at 0x5648994480f0> adding
> pad 'src'
> 0:00:00.011110931 27400 0x564899256c00 INFO      GST_PLUGIN_LOADING
> gstplugin.c:842:_priv_gst_plugin_load_file_for_registry: plugin
> "/usr/lib64/gstreamer-1.0/libgstcoreelements.so" loaded
> 0:00:00.011116130 27400 0x564899256c00 INFO     GST_ELEMENT_FACTORY
> gstelementfactory.c:364:gst_element_factory_create: creating element
> "queue"
> 0:00:00.011154999 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:668:gst_element_add_pad:<GstQueue at 0x564899450210> adding
> pad 'sink'
> 0:00:00.011162626 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:668:gst_element_add_pad:<GstQueue at 0x564899450210> adding
> pad 'src'
> 0:00:00.011664133 27400 0x564899256c00 INFO      GST_PLUGIN_LOADING
> gstplugin.c:842:_priv_gst_plugin_load_file_for_registry: plugin
> "/usr/lib64/gstreamer-1.0/libgstxvimagesink.so" loaded
> 0:00:00.011669639 27400 0x564899256c00 INFO     GST_ELEMENT_FACTORY
> gstelementfactory.c:364:gst_element_factory_create: creating element
> "xvimagesink"
> 0:00:00.011721796 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:668:gst_element_add_pad:<GstBaseSink at 0x564899457bc0> adding
> pad 'sink'
> 0:00:00.011730840 27400 0x564899256c00 INFO     GST_ELEMENT_FACTORY
> gstelementfactory.c:364:gst_element_factory_create: creating element
> "pipeline"
> 0:00:00.011786799 27400 0x564899256c00 INFO            GST_PIPELINE
> grammar.y:596:gst_parse_perform_link: linking some pad of GstV4l2Src
> named v4l2src0 to some pad of GstQueue named queue0 (0/0) with caps
> "video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1"
> 0:00:00.011797990 27400 0x564899256c00 INFO     GST_ELEMENT_FACTORY
> gstelementfactory.c:364:gst_element_factory_create: creating element
> "capsfilter"
> 0:00:00.011834045 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:668:gst_element_add_pad:<GstBaseTransform at 0x56489945e320>
> adding pad 'sink'
> 0:00:00.011840239 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:668:gst_element_add_pad:<GstBaseTransform at 0x56489945e320>
> adding pad 'src'
> 0:00:00.011844676 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2104:gst_bin_get_state_func:<pipeline0> getting state
> 0:00:00.011850851 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<capsfilter0> completed
> state change to NULL
> 0:00:00.011854766 27400 0x564899256c00 INFO               GST_EVENT
> gstevent.c:1511:gst_event_new_reconfigure: creating reconfigure event
> 0:00:00.011858264 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstutils.c:1632:gst_element_link_pads_full: trying to link element
> v4l2src0:(any) to element capsfilter0:sink
> 0:00:00.011861372 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:916:gst_element_get_static_pad: found pad capsfilter0:sink
> 0:00:00.011863601 27400 0x564899256c00 INFO                GST_PADS
> gstutils.c:1446:prepare_link_maybe_ghosting: v4l2src0 and capsfilter0 in
> same bin, no need for ghost pads
> 0:00:00.011868802 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:2315:gst_pad_link_prepare: trying to link v4l2src0:src and
> capsfilter0:sink
> 0:00:00.011875093 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:4115:gst_pad_peer_query:<capsfilter0:src> pad has no peer
> 0:00:00.011880786 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:2521:gst_pad_link_full: linked v4l2src0:src and
> capsfilter0:sink, successful
> 0:00:00.011883208 27400 0x564899256c00 INFO               GST_EVENT
> gstevent.c:1511:gst_event_new_reconfigure: creating reconfigure event
> 0:00:00.011886401 27400 0x564899256c00 INFO               GST_EVENT
> gstpad.c:5655:gst_pad_send_event_unchecked:<v4l2src0:src> Received event
> on flushing pad. Discarding
> 0:00:00.011890641 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstutils.c:1632:gst_element_link_pads_full: trying to link element
> capsfilter0:src to element queue0:(any)
> 0:00:00.011893713 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstelement.c:916:gst_element_get_static_pad: found pad capsfilter0:src
> 0:00:00.011896883 27400 0x564899256c00 INFO                GST_PADS
> gstutils.c:932:gst_pad_check_link: trying to link capsfilter0:src and
> queue0:sink
> 0:00:00.011905551 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:4115:gst_pad_peer_query:<queue0:src> pad has no peer
> 0:00:00.011908829 27400 0x564899256c00 INFO                GST_PADS
> gstutils.c:1446:prepare_link_maybe_ghosting: capsfilter0 and queue0 in
> same bin, no need for ghost pads
> 0:00:00.011912385 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:2315:gst_pad_link_prepare: trying to link capsfilter0:src and
> queue0:sink
> 0:00:00.011918928 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:4115:gst_pad_peer_query:<queue0:src> pad has no peer
> 0:00:00.011921830 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:2521:gst_pad_link_full: linked capsfilter0:src and queue0:sink,
> successful
> 0:00:00.011924548 27400 0x564899256c00 INFO               GST_EVENT
> gstevent.c:1511:gst_event_new_reconfigure: creating reconfigure event
> 0:00:00.011926588 27400 0x564899256c00 INFO               GST_EVENT
> gstpad.c:5655:gst_pad_send_event_unchecked:<capsfilter0:src> Received
> event on flushing pad. Discarding
> 0:00:00.011930139 27400 0x564899256c00 INFO            GST_PIPELINE
> grammar.y:596:gst_parse_perform_link: linking some pad of GstQueue named
> queue0 to some pad of GstXvImageSink named xvimagesink0 (0/0) with caps
> "(NULL)"
> 0:00:00.011935471 27400 0x564899256c00 INFO        GST_ELEMENT_PADS
> gstutils.c:1632:gst_element_link_pads_full: trying to link element
> queue0:(any) to element xvimagesink0:(any)
> 0:00:00.011938544 27400 0x564899256c00 INFO                GST_PADS
> gstutils.c:932:gst_pad_check_link: trying to link queue0:src and
> xvimagesink0:sink
> 0:00:00.011949453 27400 0x564899256c00 INFO                GST_PADS
> gstutils.c:1446:prepare_link_maybe_ghosting: queue0 and xvimagesink0 in
> same bin, no need for ghost pads
> 0:00:00.011952609 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:2315:gst_pad_link_prepare: trying to link queue0:src and
> xvimagesink0:sink
> 0:00:00.011959275 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:2521:gst_pad_link_full: linked queue0:src and
> xvimagesink0:sink, successful
> 0:00:00.011961582 27400 0x564899256c00 INFO               GST_EVENT
> gstevent.c:1511:gst_event_new_reconfigure: creating reconfigure event
> 0:00:00.011963109 27400 0x564899256c00 INFO               GST_EVENT
> gstpad.c:5655:gst_pad_send_event_unchecked:<queue0:src> Received event
> on flushing pad. Discarding
> Setting pipeline to PAUSED ...
> 0:00:00.011978324 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<xvimagesink0> current NULL
> pending VOID_PENDING, desired next READY
> 0:00:00.012569531 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<xvimagesink0> completed
> state change to READY
> 0:00:00.012574946 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<xvimagesink0>
> notifying about state-changed NULL to READY (VOID_PENDING pending)
> 0:00:00.012581482 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'xvimagesink0'
> changed state to 2(READY) successfully
> 0:00:00.012586047 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<queue0> current NULL pending
> VOID_PENDING, desired next READY
> 0:00:00.012588917 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<queue0> completed state
> change to READY
> 0:00:00.012590598 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<queue0> notifying
> about state-changed NULL to READY (VOID_PENDING pending)
> 0:00:00.012593492 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'queue0'
> changed state to 2(READY) successfully
> 0:00:00.012596314 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<capsfilter0> current NULL
> pending VOID_PENDING, desired next READY
> 0:00:00.012598677 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<capsfilter0> completed
> state change to READY
> 0:00:00.012600916 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<capsfilter0>
> notifying about state-changed NULL to READY (VOID_PENDING pending)
> 0:00:00.012604306 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'capsfilter0'
> changed state to 2(READY) successfully
> 0:00:00.012607476 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<v4l2src0> current NULL pending
> VOID_PENDING, desired next READY
> 0:00:00.184160042 27400 0x564899256c00 INFO                    v4l2
> v4l2_calls.c:592:gst_v4l2_open:<v4l2src0> Opened device 'HD Pro Webcam
> C920' (/dev/video0) successfully
> 0:00:00.184223467 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<v4l2src0> completed state
> change to READY
> 0:00:00.184245914 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<v4l2src0> notifying
> about state-changed NULL to READY (VOID_PENDING pending)
> 0:00:00.184288764 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'v4l2src0'
> changed state to 2(READY) successfully
> 0:00:00.184317170 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2394:gst_element_continue_state:<pipeline0> committing
> state from NULL to READY, pending PAUSED, next PAUSED
> 0:00:00.184335945 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<pipeline0> notifying
> about state-changed NULL to READY (PAUSED pending)
> 0:00:00.184393295 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2401:gst_element_continue_state:<pipeline0> continue state
> change READY to PAUSED, final PAUSED
> 0:00:00.184438204 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<xvimagesink0> current READY
> pending VOID_PENDING, desired next PAUSED
> 0:00:00.184475040 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2969:gst_bin_change_state_func:<pipeline0> child 'xvimagesink0'
> is changing state asynchronously to PAUSED
> 0:00:00.184498013 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<queue0> current READY pending
> VOID_PENDING, desired next PAUSED
> 0:00:00.184560512 27400 0x564899256c00 INFO                    task
> gsttask.c:456:gst_task_set_lock: setting stream lock 0x56489944a520 on
> task 0x564899475050
> 0:00:00.184580652 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:6001:gst_pad_start_task:<queue0:src> created task 0x564899475050
> 0:00:00.184671197 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<queue0> completed state
> change to PAUSED
> 0:00:00.184688259 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<queue0> notifying
> about state-changed READY to PAUSED (VOID_PENDING pending)
> 0:00:00.184707588 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'queue0'
> changed state to 3(PAUSED) successfully
> 0:00:00.184725386 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<capsfilter0> current READY
> pending VOID_PENDING, desired next PAUSED
> 0:00:00.184751822 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<capsfilter0> completed
> state change to PAUSED
> 0:00:00.184766750 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<capsfilter0>
> notifying about state-changed READY to PAUSED (VOID_PENDING pending)
> 0:00:00.184792399 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'capsfilter0'
> changed state to 3(PAUSED) successfully
> 0:00:00.184827829 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<v4l2src0> current READY pending
> VOID_PENDING, desired next PAUSED
> 0:00:00.184858155 27400 0x564899256c00 INFO                 basesrc
> gstbasesrc.c:1343:gst_base_src_do_seek:<v4l2src0> seeking: time segment
> start=0:00:00.000000000, offset=0:00:00.000000000,
> stop=99:99:99.999999999, rate=1.000000, applied_rate=1.000000,
> flags=0x00, time=0:00:00.000000000, base=0:00:00.000000000, position
> 0:00:00.000000000, duration 99:99:99.999999999
> 0:00:00.184910233 27400 0x564899256c00 INFO                    task
> gsttask.c:456:gst_task_set_lock: setting stream lock 0x56489944a0a0 on
> task 0x564899475170
> 0:00:00.184928124 27400 0x564899256c00 INFO                GST_PADS
> gstpad.c:6001:gst_pad_start_task:<v4l2src0:src> created task
> 0x564899475170
> 0:00:00.185011744 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<v4l2src0> completed state
> change to PAUSED
> 0:00:00.185029999 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<v4l2src0> notifying
> about state-changed READY to PAUSED (VOID_PENDING pending)
> 0:00:00.185058282 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:3006:gst_bin_change_state_func:<pipeline0> child 'v4l2src0'
> changed state to 3(PAUSED) successfully without preroll
> 0:00:00.185086420 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<pipeline0> completed state
> change to PAUSED
> 0:00:00.185099632 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<pipeline0> notifying
> about state-changed READY to PAUSED (VOID_PENDING pending)
> 0:00:00.185088935 27400 0x56489945d0a0 INFO        GST_ELEMENT_PADS
> gstelement.c:913:gst_element_get_static_pad: no such pad 'sink' in
> element "v4l2src0"
> Pipeline is live and does not need PREROLL ...
> 0:00:00.185331830 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1150:gst_v4l2_object_fill_format_list:<v4l2src0> got 7
> format(s):
> 0:00:00.185356783 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   YUYV
> 0:00:00.185372121 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   MJPG
> 0:00:00.185383658 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   YU12
> (emulated)
> 0:00:00.185395408 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   YV12
> (emulated)
> 0:00:00.185415525 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   BGR3
> (emulated)
> 0:00:00.185444546 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   RGB3
> (emulated)
> 0:00:00.185465995 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:1156:gst_v4l2_object_fill_format_list:<v4l2src0>   H264
> Setting pipeline to PLAYING ...
> 0:00:00.186002357 27400 0x564899256c00 INFO               GST_EVENT
> gstevent.c:1382:gst_event_new_latency: creating latency event
> 0:00:00.000000000
> 0:00:00.186060829 27400 0x564899256c00 INFO                     bin
> gstbin.c:2792:gst_bin_do_latency_func:<pipeline0> configured latency of
> 0:00:00.000000000
> 0:00:00.186098584 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<xvimagesink0> current READY
> pending PAUSED, desired next PLAYING
> 0:00:00.186127078 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2969:gst_bin_change_state_func:<pipeline0> child 'xvimagesink0'
> is changing state asynchronously to PLAYING
> 0:00:00.186156627 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<queue0> current PAUSED pending
> VOID_PENDING, desired next PLAYING
> 0:00:00.186174601 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<queue0> completed state
> change to PLAYING
> 0:00:00.186184065 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<queue0> notifying
> about state-changed PAUSED to PLAYING (VOID_PENDING pending)
> 0:00:00.186201901 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'queue0'
> changed state to 4(PLAYING) successfully
> 0:00:00.186220801 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2515:gst_bin_element_set_state:<capsfilter0> current PAUSED
> pending VOID_PENDING, desired next PLAYING
> 0:00:00.186246911 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<capsfilter0> completed
> state change to PLAYING
> 0:00:00.186258119 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<capsfilter0>
> notifying about state-changed PAUSED to PLAYING (VOID_PENDING pending)
> 0:00:00.186273601 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'capsfilter0'
> changed state to 4(PLAYING) successfully
> 0:00:00.186304967 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2419:gst_element_continue_state:<v4l2src0> completed state
> change to PLAYING
> 0:00:00.186318883 27400 0x564899256c00 INFO              GST_STATES
> gstelement.c:2324:_priv_gst_element_state_changed:<v4l2src0> notifying
> about state-changed PAUSED to PLAYING (VOID_PENDING pending)
> 0:00:00.186358777 27400 0x564899256c00 INFO              GST_STATES
> gstbin.c:2963:gst_bin_change_state_func:<pipeline0> child 'v4l2src0'
> changed state to 4(PLAYING) successfully
> New clock: GstSystemClock
> 0:00:00.356780147 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:3907:gst_v4l2_object_get_caps:<v4l2src0> probed caps:
> video/x-raw, format=(string)YUY2, width=(int)2304, height=(int)1536,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction)2/1; video/x-raw,
> format=(string)YUY2, width=(int)2304, height=(int)1296,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction)2/1; video/x-raw,
> format=(string)YUY2, width=(int)1920, height=(int)1080,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction)5/1; video/x-raw,
> format=(string)YUY2, width=(int)1600, height=(int)896,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 15/2, 5/1 };
> video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 10/1, 15/2, 5/1
> }; video/x-raw, format=(string)YUY2, width=(int)960, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 15/1, 10/1, 15/2,
> 5/1 }; video/x-raw, format=(string)YUY2, width=(int)1024,
> height=(int)576, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 15/1, 10/1, 15/2, 5/1 }; video/x-raw,
> format=(string)YUY2, width=(int)800, height=(int)600,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 24/1, 20/1, 15/1,
> 10/1, 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)864,
> height=(int)480, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 }; video/x-raw,
> format=(string)YUY2, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-raw, format=(string)YUY2,
> width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YUY2, width=(int)640, height=(int)360,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-raw, format=(string)YUY2,
> width=(int)432, height=(int)240, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YUY2, width=(int)352, height=(int)288,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-raw, format=(string)YUY2,
> width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YUY2, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-raw, format=(string)YUY2,
> width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YUY2, width=(int)160, height=(int)120,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-raw, format=(string)YUY2,
> width=(int)160, height=(int)90, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)1920, height=(int)1080,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)1600, height=(int)896,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)1280, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)960, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)1024, height=(int)576,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)800, height=(int)600,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)864, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)640, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)640, height=(int)360,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)432, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)352, height=(int)288,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)320, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)176, height=(int)144,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)160, height=(int)120,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> image/jpeg, width=(int)160, height=(int)90,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)2304, height=(int)1536,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction)2/1; video/x-raw, format=(string)I420,
> width=(int)2304, height=(int)1296, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, framerate=(fraction)2/1;
> video/x-raw, format=(string)I420, width=(int)1920, height=(int)1080,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)1600, height=(int)896,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)1280, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)960, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)1024, height=(int)576,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)800, height=(int)600,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)864, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)640, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)640, height=(int)360,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)432, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)352, height=(int)288,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)320, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)176, height=(int)144,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)160, height=(int)120,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)I420, width=(int)160, height=(int)90,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)2304, height=(int)1536,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction)2/1; video/x-raw, format=(string)YV12,
> width=(int)2304, height=(int)1296, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, framerate=(fraction)2/1;
> video/x-raw, format=(string)YV12, width=(int)1920, height=(int)1080,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)1600, height=(int)896,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)1280, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)960, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)1024, height=(int)576,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)800, height=(int)600,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)864, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)640, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)640, height=(int)360,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)432, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)352, height=(int)288,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)320, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)176, height=(int)144,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)160, height=(int)120,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)YV12, width=(int)160, height=(int)90,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)2304, height=(int)1536,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction)2/1; video/x-raw, format=(string)BGR,
> width=(int)2304, height=(int)1296, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, framerate=(fraction)2/1;
> video/x-raw, format=(string)BGR, width=(int)1920, height=(int)1080,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)1600, height=(int)896,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)1280, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)960, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)1024, height=(int)576,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)800, height=(int)600,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)864, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)640, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)640, height=(int)360,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)432, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)352, height=(int)288,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)320, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)176, height=(int)144,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)160, height=(int)120,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)BGR, width=(int)160, height=(int)90,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)2304, height=(int)1536,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction)2/1; video/x-raw, format=(string)RGB,
> width=(int)2304, height=(int)1296, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, framerate=(fraction)2/1;
> video/x-raw, format=(string)RGB, width=(int)1920, height=(int)1080,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)1600, height=(int)896,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)1280, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)960, height=(int)720,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)1024, height=(int)576,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)800, height=(int)600,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)864, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)640, height=(int)480,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)640, height=(int)360,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)432, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)352, height=(int)288,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)320, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)176, height=(int)144,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)160, height=(int)120,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-raw, format=(string)RGB, width=(int)160, height=(int)90,
> pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive,
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-h264, stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)1600, height=(int)896, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)1280, height=(int)720, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au, width=(int)960,
> height=(int)720, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){
> 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1
> }; video/x-h264, stream-format=(string)byte-stream,
> alignment=(string)au, width=(int)1024, height=(int)576,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-h264, stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au, width=(int)864,
> height=(int)480, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){
> 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1
> }; video/x-h264, stream-format=(string)byte-stream,
> alignment=(string)au, width=(int)800, height=(int)448,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-h264, stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au, width=(int)640,
> height=(int)360, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){
> 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1
> }; video/x-h264, stream-format=(string)byte-stream,
> alignment=(string)au, width=(int)432, height=(int)240,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-h264, stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au, width=(int)320,
> height=(int)240, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){
> 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1
> }; video/x-h264, stream-format=(string)byte-stream,
> alignment=(string)au, width=(int)320, height=(int)180,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 };
> video/x-h264, stream-format=(string)byte-stream, alignment=(string)au,
> width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1,
> colorimetry=(string){ 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1,
> 15/1, 10/1, 15/2, 5/1 }; video/x-h264,
> stream-format=(string)byte-stream, alignment=(string)au, width=(int)160,
> height=(int)120, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){
> 2:4:7:1 }, framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1
> }; video/x-h264, stream-format=(string)byte-stream,
> alignment=(string)au, width=(int)160, height=(int)90,
> pixel-aspect-ratio=(fraction)1/1, colorimetry=(string){ 2:4:7:1 },
> framerate=(fraction){ 30/1, 24/1, 20/1, 15/1, 10/1, 15/2, 5/1 }
> 0:00:00.360069052 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:3486:gst_v4l2_object_set_format_full:<v4l2src0> Set
> framerate to 30/1
> 0:00:00.360098853 27400 0x56489945d0a0 INFO                    v4l2
> gstv4l2object.c:2858:gst_v4l2_object_setup_pool:<v4l2src0> accessing
> buffers via mode 2
> 0:00:00.360400374 27400 0x56489945d0a0 INFO          v4l2bufferpool
> gstv4l2bufferpool.c:551:gst_v4l2_buffer_pool_set_config:<
> v4l2src0:pool:src>
> increasing minimum buffers to 2
> 0:00:00.360420750 27400 0x56489945d0a0 INFO          v4l2bufferpool
> gstv4l2bufferpool.c:564:gst_v4l2_buffer_pool_set_config:<
> v4l2src0:pool:src>
> reducing maximum buffers to 32
> 0:00:00.360452983 27400 0x56489945d0a0 INFO               GST_EVENT
> gstevent.c:808:gst_event_new_caps: creating caps event video/x-raw,
> format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> 0:00:00.360587465 27400 0x56489945d0a0 INFO           basetransform
> gstbasetransform.c:1367:gst_base_transform_setcaps:<capsfilter0> reuse
> caps
> 0:00:00.360607315 27400 0x56489945d0a0 INFO               GST_EVENT
> gstevent.c:808:gst_event_new_caps: creating caps event video/x-raw,
> format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps =
> video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps =
> video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = video/x-raw,
> format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps =
> video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = video/x-raw,
> format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> /GstPipeline:pipeline0/GstXvImageSink:xvimagesink0.GstPad:sink: caps =
> video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480,
> framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1,
> interlace-mode=(string)progressive, colorimetry=(string)2:4:7:1
> 0:00:00.362113272 27400 0x56489945d0a0 INFO          v4l2bufferpool
> gstv4l2bufferpool.c:564:gst_v4l2_buffer_pool_set_config:<
> v4l2src0:pool:src>
> reducing maximum buffers to 32
> 0:00:00.589588804 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.033333333
> out ts 0:00:00.375615440
> 0:00:00.589651939 27400 0x56489945d0a0 INFO               GST_EVENT
> gstevent.c:889:gst_event_new_segment: creating segment event time
> segment start=0:00:00.000000000, offset=0:00:00.000000000,
> stop=99:99:99.999999999, rate=1.000000, applied_rate=1.000000,
> flags=0x00, time=0:00:00.000000000, base=0:00:00.000000000, position
> 0:00:00.000000000, duration 99:99:99.999999999
> 0:00:00.589715480 27400 0x56489945d0a0 INFO                 basesrc
> gstbasesrc.c:2847:gst_base_src_loop:<v4l2src0> marking pending DISCONT
> 0:00:00.621594297 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.066666666
> out ts 0:00:00.407617179
> 0:00:00.654021176 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.099999999
> out ts 0:00:00.439618368
> 0:00:00.689893747 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.133333332
> out ts 0:00:00.475617487
> 0:00:00.721910251 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.166666665
> out ts 0:00:00.507647265
> 0:00:00.757958535 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.199999998
> out ts 0:00:00.539633525
> 0:00:00.789852420 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.233333331
> out ts 0:00:00.575639526
> 0:00:00.821891929 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.266666664
> out ts 0:00:00.607616405
> 0:00:00.853938202 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.299999997
> out ts 0:00:00.639616432
> 0:00:00.889848131 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.333333330
> out ts 0:00:00.675613298
> 0:00:00.921879104 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.366666663
> out ts 0:00:00.707639631
> 0:00:00.957900456 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.399999996
> out ts 0:00:00.739616309
> 0:00:00.989604192 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.433333329
> out ts 0:00:00.775617331
> 0:00:01.021627343 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.466666662
> out ts 0:00:00.807662060
> 0:00:01.053915829 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.499999995
> out ts 0:00:00.839609309
> 0:00:01.089895035 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.533333328
> out ts 0:00:00.875617397
> 0:00:01.121866163 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.566666661
> out ts 0:00:00.907644460
> 0:00:01.157871720 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.599999994
> out ts 0:00:00.939618489
> 0:00:01.189948793 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.633333327
> out ts 0:00:00.975642091
> 0:00:01.221875579 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.666666660
> out ts 0:00:01.007613598
> 0:00:01.253878199 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.699999993
> out ts 0:00:01.039629540
> 0:00:01.289871721 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.733333326
> out ts 0:00:01.075635406
> 0:00:01.321867816 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.766666659
> out ts 0:00:01.107612484
> 0:00:01.357847153 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.799999992
> out ts 0:00:01.139611991
> 0:00:01.389945890 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.833333325
> out ts 0:00:01.175613320
> 0:00:01.421885435 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.866666658
> out ts 0:00:01.207611377
> 0:00:01.453879351 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.899999991
> out ts 0:00:01.239647166
> 0:00:01.489907828 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.933333324
> out ts 0:00:01.275640445
> 0:00:01.521883360 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.966666657
> out ts 0:00:01.307640537
> 0:00:01.557858062 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:00.999999990
> out ts 0:00:01.339611172
> 0:00:01.589949749 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:01.033333323
> out ts 0:00:01.375610278
> 0:00:01.621568158 27400 0x56489945d0a0 INFO                 v4l2src
> gstv4l2src.c:830:gst_v4l2src_create:<v4l2src0> sync to 0:00:01.066666656
> out ts 0:00:01.407609796
>
> After this last line of debug logging output, nothing happens.
>
> Thanks
> Antoine
>
>
>
>
>
> >
> > Best regards,
> >
> > Vivia
> >
> > On 5 December 2016 at 15:40, Thornton, Keith <keith.thornton at zeiss.com>
> wrote:
> >> Hi,
> >> if you set min-threshold-time to 30000000000 you would buffer 30
> seconds of video. As a consequence, no data will reach xvimagesink until
> you have pushed more than 30 seconds of data into the queue. If this is not
> what you want then tell us how it should differ from this scenario.
> >>
> >> -----Ursprüngliche Nachricht-----
> >> Von: gstreamer-devel [mailto:gstreamer-devel-
> bounces at lists.freedesktop.org] Im Auftrag von Antoine Martin
> >> Gesendet: Montag, 5. Dezember 2016 13:44
> >> An: gstreamer-devel at lists.freedesktop.org
> >> Betreff: buffer v4l2src for 30 seconds
> >>
> >> Hi,
> >>
> >> I want to do something seemingly very simple, but I am unable to find
> the correct GStreamer incantation.
> >> All I want is ~30 seconds of delay between the v4l2src capture and the
> output (xvimagesink or whatever).
> >>
> >> Using the queue element I can buffer up to ~1 seconds:
> >> gst-launch-1.0 -v v4l2src device=/dev/video0 !
> >> video/x-raw,format=YUY2,width=640,height=480,framerate=30/1 ! queue
> >> min-threshold-time=1000000000 max-size-time=10000000000 max-size-bytes=0
> >> max-size-buffers=0 ! xvimagesink
> >>
> >> If I reduce the framerate, then I can buffer a little bit more.
> >> But if I increase the min-threshold-time too much, I just get a black
> screen. My system has enough memory to buffer minutes of video, so what is
> happening here?
> >>
> >> I tried using the queue2 element, but this isn't actually buffering
> anything at all (what is the equivalent to min-threshold-time here?):
> >> gst-launch-1.0 -v v4l2src device=/dev/video0 !
> >> video/x-raw,format=YUY2,width=640,height=480,framerate=15/1 ! queue2
> >> use-buffering=1 low-watermark=0.5  max-size-time=0 max-size-bytes=0
> >> max-size-buffers=600 ! xvimagesink sync=false
> >>
> >> It is such a simple thing to do that I am sure GStreamer can do this,
> but how?
> >>
> >> Thanks
> >> Antoine
> >> _______________________________________________
> >> gstreamer-devel mailing list
> >> gstreamer-devel at lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >> _______________________________________________
> >> gstreamer-devel mailing list
> >> gstreamer-devel at lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20161206/87344d4e/attachment-0001.html>


More information about the gstreamer-devel mailing list