This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8148 Gstream capture +encode

Other Parts Discussed in Thread: TVP7002, TVP5158, TEST2

hi, i have a custom 8148+adv7611 board.the incoming video is 1080p30.

    i have run saLoopBackFbdev successfully, but when  i run  gst to encode the video into avi , the output avi file size is 0, and there is 'Could not negotiate format' error.  

Because my external decoder is adv7611( output RGB 24), i removed sub device call in the ti81xxvin_main.c (please check the attachment)

here is my pipeline and log:

root@dm814x-evm:~# gst-launch --gst-debug=3 v4l2src device=/dev/video0 always-co
py=false queue-size=12 num-buffers=2000 ! 'video/x-raw-yuv-strided,format=(fourc
c)NV12,width=1920,height=1080,framerate=(fraction)30/1' ! omxbufferalloc numBuff
ers=12 ! omx_h264enc ! queue ! avimux ! queue ! filesink location=v4l2cap.avi
0:00:00.021020713 1795 0x16050 INFO GST_INIT gstquery.c:108:_gst_query_initialize: init queries
0:00:00.028411277 1795 0x16050 INFO GST_INIT gstmessage.c:73:_gst_message_initialize: init messages
0:00:00.030225374 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:350:_gst_plugin_initialize: registering 0 static plugins
0:00:00.031720521 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:255:gst_plugin_register_static: registered static plugin "staticelements"
0:00:00.031833621 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:257:gst_plugin_register_static: added static plugin "staticelements", result: 1
0:00:00.031922421 1795 0x16050 INFO GST_REGISTRY gstregistry.c:1599:ensure_current_registry: reading registry cache: /tmp/gst_registry.bin
0:00:00.192282687 1795 0x16050 INFO GST_REGISTRY gstregistrybinary.c:614:gst_registry_binary_read_cache: loaded /tmp/gst_registry.bin in 0.160233 seconds
0:00:00.192842687 1795 0x16050 INFO GST_REGISTRY gstregistry.c:1469:scan_and_update_registry: Validating plugins from registry cache: /tmp/gst_registry.bin
0:00:00.203093937 1795 0x16050 INFO GST_REGISTRY gstregistry.c:1561:scan_and_update_registry: Registry cache has not changed
0:00:00.203219937 1795 0x16050 INFO GST_REGISTRY gstregistry.c:1628:ensure_current_registry: registry reading and updating done, result = 1
0:00:00.203293187 1795 0x16050 INFO GST_INIT gst.c:792:init_post: GLib runtime version: 2.24.1
0:00:00.203372087 1795 0x16050 INFO GST_INIT gst.c:794:init_post: GLib headers version: 2.24.1
0:00:00.203650837 1795 0x16050 INFO GST_PIPELINE gstparse.c:299:gst_parse_launch_full: parsing pipeline description 'v4l2src device=/dev/video0 always-copy=false queue-size=12 num-buffers=2000 ! video/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fraction)30/1 ! omxbufferalloc numBuffers=12 ! omx_h264enc ! queue ! avimux ! queue ! filesink location=v4l2cap.avi '
0:00:00.210925893 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:859:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstvideo4linux2.so" loaded
0:00:00.211087393 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "v4l2src"
0:00:00.216320549 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstBaseSrc@0x154060> adding pad 'src'
0:00:00.237238561 1795 0x16050 INFO omx gstomx_videomixer.c:2183:init_interfaces: GstChildProxy interface registered
0:00:00.237442810 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:859:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstomx.so" loaded
0:00:00.237564460 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "omxbufferalloc"
0:00:00.238743410 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstomxBufferAlloc@0x159858> adding pad 'sink'
0:00:00.238869960 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstomxBufferAlloc@0x159858> adding pad 'src'
0:00:00.239179360 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "omx_h264enc"
0:00:00.241557359 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstOmxBaseFilter@0x15c060> adding pad 'sink'
0:00:00.241690559 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstOmxBaseFilter@0x15c060> adding pad 'src'
0:00:00.246076908 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:859:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstcoreelements.so" loaded
0:00:00.246213508 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "queue"
0:00:00.248342207 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstQueue@0x99080> adding pad 'sink'
0:00:00.248721556 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstQueue@0x99080> adding pad 'src'
0:00:00.254698253 1795 0x16050 INFO GST_PLUGIN_LOADING gstplugin.c:859:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstavi.so" loaded
0:00:00.254836403 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "avimux"
0:00:00.258132802 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstAviMux@0x16d040> adding pad 'src'
0:00:00.594347450 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "queue"
0:00:00.594786750 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstQueue@0x99258> adding pad 'sink'
0:00:00.595178251 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstQueue@0x99258> adding pad 'src'
0:00:00.595387951 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "filesink"
0:00:00.596388351 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstBaseSink@0x170130> adding pad 'sink'
0:00:00.596873501 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "pipeline"
0:00:00.597759501 1795 0x16050 INFO GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking v4l2src0:(any) to omxbufferalloc0:(any) (0/0) with caps "0x12a220"
0:00:00.597905801 1795 0x16050 INFO GST_ELEMENT_FACTORY gstelementfactory.c:371:gst_element_factory_create: creating element "capsfilter"
0:00:00.598780850 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstBaseTransform@0x174050> adding pad 'sink'
0:00:00.599040850 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<GstBaseTransform@0x174050> adding pad 'src'
0:00:00.599212250 1795 0x16050 INFO GST_STATES gstbin.c:1759:gst_bin_get_state_func:<pipeline0> getting state
0:00:00.599398250 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<capsfilter0> completed state change to NULL
0:00:00.599618600 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element v4l2src0:(any) to element capsfilter0:sink
0:00:00.599721350 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:963:gst_element_get_static_pad: found pad capsfilter0:sink
0:00:00.599818350 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: v4l2src0 and capsfilter0 in same bin, no need for ghost pads
0:00:00.600039550 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link v4l2src0:src and capsfilter0:sink
0:00:00.601255650 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked v4l2src0:src and capsfilter0:sink, successful
0:00:00.601460450 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element capsfilter0:src to element omxbufferalloc0:(any)
0:00:00.601557550 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:963:gst_element_get_static_pad: found pad capsfilter0:src
0:00:00.601656650 1795 0x16050 INFO GST_PADS gstutils.c:1028:gst_pad_check_link: trying to link capsfilter0:src and omxbufferalloc0:sink
0:00:00.941435900 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: capsfilter0 and omxbufferalloc0 in same bin, no need for ghost pads
0:00:00.941605050 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link capsfilter0:src and omxbufferalloc0:sink
0:00:00.945217851 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked capsfilter0:src and omxbufferalloc0:sink, successful
0:00:00.945396401 1795 0x16050 INFO GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking omxbufferalloc0:(any) to omxh264enc0:(any) (0/0) with caps "(nil)"
0:00:00.945497001 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element omxbufferalloc0:(any) to element omxh264enc0:(any)
0:00:00.945594751 1795 0x16050 INFO GST_PADS gstutils.c:1028:gst_pad_check_link: trying to link omxbufferalloc0:src and omxh264enc0:sink
0:00:00.949182450 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: omxbufferalloc0 and omxh264enc0 in same bin, no need for ghost pads
0:00:00.949322950 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link omxbufferalloc0:src and omxh264enc0:sink
0:00:00.952886350 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked omxbufferalloc0:src and omxh264enc0:sink, successful
0:00:00.953078550 1795 0x16050 INFO GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking omxh264enc0:(any) to queue0:(any) (0/0) with caps "(nil)"
0:00:00.953173850 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element omxh264enc0:(any) to element queue0:(any)
0:00:00.953271400 1795 0x16050 INFO GST_PADS gstutils.c:1028:gst_pad_check_link: trying to link omxh264enc0:src and queue0:sink
0:00:00.953391750 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: omxh264enc0 and queue0 in same bin, no need for ghost pads
0:00:00.953524700 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link omxh264enc0:src and queue0:sink
0:00:00.953629750 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked omxh264enc0:src and queue0:sink, successful
0:00:00.953784450 1795 0x16050 INFO GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking queue0:(any) to avimux0:(any) (0/0) with caps "(nil)"
0:00:00.953876850 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element queue0:(any) to element avimux0:(any)
0:00:00.954487350 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:716:gst_element_add_pad:<avimux0> adding pad 'video_00'
0:00:00.954679100 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: queue0 and avimux0 in same bin, no need for ghost pads
0:00:00.954817100 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link queue0:src and avimux0:video_00
0:00:01.291235250 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked queue0:src and avimux0:video_00, successful
0:00:01.291410300 1795 0x16050 INFO GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking avimux0:(any) to queue1:(any) (0/0) with caps "(nil)"
0:00:01.291504650 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element avimux0:(any) to element queue1:(any)
0:00:01.291602200 1795 0x16050 INFO GST_PADS gstutils.c:1028:gst_pad_check_link: trying to link avimux0:src and queue1:sink
0:00:01.291701000 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: avimux0 and queue1 in same bin, no need for ghost pads
0:00:01.291826900 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link avimux0:src and queue1:sink
0:00:01.291929650 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked avimux0:src and queue1:sink, successful
0:00:01.292084250 1795 0x16050 INFO GST_PIPELINE ./grammar.y:568:gst_parse_perform_link: linking queue1:(any) to filesink0:(any) (0/0) with caps "(nil)"
0:00:01.292176850 1795 0x16050 INFO GST_ELEMENT_PADS gstutils.c:1568:gst_element_link_pads_full: trying to link element queue1:(any) to element filesink0:(any)
0:00:01.292270700 1795 0x16050 INFO GST_PADS gstutils.c:1028:gst_pad_check_link: trying to link queue1:src and filesink0:sink
0:00:01.292404150 1795 0x16050 INFO GST_PADS gstutils.c:1468:prepare_link_maybe_ghosting: queue1 and filesink0 in same bin, no need for ghost pads
0:00:01.292562250 1795 0x16050 INFO GST_PADS gstpad.c:1941:gst_pad_link_prepare: trying to link queue1:src and filesink0:sink
0:00:01.292691200 1795 0x16050 INFO GST_PADS gstpad.c:2124:gst_pad_link_full: linked queue1:src and filesink0:sink, successful
Setting pipeline to PAUSED ...
0:00:01.297072851 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<filesink0> completed state change to READY
0:00:01.297180251 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<filesink0> posting state-changed NULL to READY
0:00:01.297445801 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'filesink0' changed state to 2(READY) successfully
0:00:01.297576651 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<queue1> completed state change to READY
0:00:01.297662001 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<queue1> posting state-changed NULL to READY
0:00:01.297785401 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'queue1' changed state to 2(READY) successfully
0:00:01.633451200 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<avimux0> completed state change to READY
0:00:01.633545850 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<avimux0> posting state-changed NULL to READY
0:00:01.633668850 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'avimux0' changed state to 2(READY) successfully
0:00:01.633787250 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<queue0> completed state change to READY
0:00:01.633871300 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<queue0> posting state-changed NULL to READY
0:00:01.633989350 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'queue0' changed state to 2(READY) successfully
0:00:01.634107400 1795 0x16050 INFO omx gstomx_base_filter.c:153:change_state:<omxh264enc0> begin: changing state NULL -> READY
0:00:02.712529850 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<omxh264enc0> completed state change to READY
0:00:02.712762900 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<omxh264enc0> posting state-changed NULL to READY
0:00:02.712949750 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'omxh264enc0' changed state to 2(READY) successfully
0:00:02.713116700 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<omxbufferalloc0> completed state change to READY
0:00:02.713207450 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<omxbufferalloc0> posting state-changed NULL to READY
0:00:02.713331750 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'omxbufferalloc0' changed state to 2(READY) successfully
0:00:02.713450600 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<capsfilter0> completed state change to READY
0:00:02.713537300 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<capsfilter0> posting state-changed NULL to READY
0:00:02.713658000 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 2(READY) successfully
0:00:02.714349850 1795 0x16050 INFO v4l2 v4l2_calls.c:480:gst_v4l2_open:<v4l2src0> Opened device 'TI81xx_catalogue' (/dev/video0) successfully
0:00:02.714582750 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<v4l2src0> completed state change to READY
0:00:02.714677500 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<v4l2src0> posting state-changed NULL to READY
0:00:02.714813200 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'v4l2src0' changed state to 2(READY) successfully
0:00:02.715462401 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<pipeline0> committing state from NULL to READY, pending PAUSED, next PAUSED
0:00:02.715855551 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<pipeline0> continue state change READY to PAUSED, final PAUSED
0:00:02.716227751 1795 0x16050 INFO GST_STATES gstbin.c:2498:gst_bin_change_state_func:<pipeline0> child 'filesink0' is changing state asynchronously to PAUSED
0:00:02.717049601 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<queue1> completed state change to PAUSED
0:00:02.717158601 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<queue1> posting state-changed READY to PAUSED
0:00:02.717290801 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'queue1' changed state to 3(PAUSED) successfully
0:00:02.717470201 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<avimux0> completed state change to PAUSED
0:00:02.717561101 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<avimux0> posting state-changed READY to PAUSED
0:00:03.053602100 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'avimux0' changed state to 3(PAUSED) successfully
0:00:03.054129400 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<queue0> completed state change to PAUSED
0:00:03.054229300 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<queue0> posting state-changed READY to PAUSED
0:00:03.054354150 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'queue0' changed state to 3(PAUSED) successfully
0:00:03.054473950 1795 0x16050 INFO omx gstomx_base_filter.c:153:change_state:<omxh264enc0> begin: changing state READY -> PAUSED
0:00:03.054590900 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<omxh264enc0> completed state change to PAUSED
0:00:03.054675550 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<omxh264enc0> posting state-changed READY to PAUSED
0:00:03.054797650 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'omxh264enc0' changed state to 3(PAUSED) successfully
0:00:03.055304501 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<omxbufferalloc0> completed state change to PAUSED
0:00:03.055404051 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<omxbufferalloc0> posting state-changed READY to PAUSED
0:00:03.055527401 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'omxbufferalloc0' changed state to 3(PAUSED) successfully
0:00:03.055701101 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<capsfilter0> completed state change to PAUSED
0:00:03.055794051 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<capsfilter0> posting state-changed READY to PAUSED
0:00:03.055916351 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 3(PAUSED) successfully
0:00:03.056192451 1795 0x16050 INFO v4l2 gstv4l2object.c:1036:gst_v4l2_object_fill_format_list:<v4l2src0> got 4 format(s):
0:00:03.056279751 1795 0x16050 INFO v4l2 gstv4l2object.c:1042:gst_v4l2_object_fill_format_list:<v4l2src0> NV12
0:00:03.056384051 1795 0x16050 INFO v4l2 gstv4l2object.c:1042:gst_v4l2_object_fill_format_list:<v4l2src0> YUYV
0:00:03.056456601 1795 0x16050 INFO v4l2 gstv4l2object.c:1042:gst_v4l2_object_fill_format_list:<v4l2src0> RGB3
0:00:03.056527801 1795 0x16050 INFO v4l2 gstv4l2object.c:1042:gst_v4l2_object_fill_format_list:<v4l2src0> NV16
0:00:03.057103551 1795 0x16050 INFO v4l2src gstv4l2src.c:611:gst_v4l2src_get_caps:<v4l2src0> probed caps: 0x9be60

Mode set is 0
0:00:03.393761250 1795 0x16050 INFO v4l2 gstv4l2object.c:1525:gst_v4l2_object_get_caps_info:<v4l2src0> rowstride: 1920
0:00:03.393882150 1795 0x16050 WARN basesrc gstbasesrc.c:2778:gst_base_src_start:<v4l2src0> error: Could not negotiate format
0:00:03.393963150 1795 0x16050 WARN basesrc gstbasesrc.c:2778:gst_base_src_start:<v4l2src0> error: Check your filtered caps, if any
0:00:03.394139750 1795 0x16050 INFO GST_ERROR_SYSTEM gstelement.c:1865:gst_element_message_full:<v4l2src0> posting message: Could not negotiate format
0:00:03.394338750 1795 0x16050 INFO GST_ERROR_SYSTEM gstelement.c:1888:gst_element_message_full:<v4l2src0> posted error message: Could not negotiate format
0:00:03.394446100 1795 0x16050 WARN basesrc gstbasesrc.c:2974:gst_base_src_activate_push:<v4l2src0> Failed to start in push mode
0:00:03.394520650 1795 0x16050 INFO GST_PADS gstpad.c:983:gst_pad_activate_push:<v4l2src0:src> failed to activate in push mode
0:00:03.394609650 1795 0x16050 WARN GST_PADS gstpad.c:734:gst_pad_set_active:<v4l2src0:src> Failed to activate pad
0:00:03.394700700 1795 0x16050 INFO GST_STATES gstelement.c:2658:gst_element_change_state:<v4l2src0> have FAILURE change_state return
0:00:03.394784050 1795 0x16050 INFO GST_STATES gstelement.c:2235:gst_element_abort_state:<v4l2src0> aborting state from READY to PAUSED
0:00:03.394871250 1795 0x16050 INFO GST_STATES gstbin.c:2508:gst_bin_change_state_func:<pipeline0> child 'v4l2src0' failed to go to state 3(PAUSED)
0:00:03.395428051 1795 0x16050 INFO GST_STATES gstelement.c:2658:gst_element_change_state:<pipeline0> have FAILURE change_state return
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Could not negotiate format
Additional debug info:
gstbasesrc.c(2778): gst_base_src_start (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
Check your filtered caps, if any
Setting pipeline to NULL ...
0:00:03.399421550 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<filesink0> committing state from READY to READY, pending NULL, next NULL
0:00:03.399561900 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<filesink0> continue state change READY to NULL, final NULL
0:00:03.399762250 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<filesink0> completed state change to NULL
0:00:03.399856700 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<filesink0> posting state-changed READY to NULL
0:00:03.400028350 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'filesink0' changed state to 1(NULL) successfully
0:00:03.400531450 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<queue1> committing state from PAUSED to READY, pending NULL, next NULL
0:00:03.736527601 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<queue1> continue state change READY to NULL, final NULL
0:00:03.736672001 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<queue1> completed state change to NULL
0:00:03.736758651 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<queue1> posting state-changed READY to NULL
0:00:03.736879851 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'queue1' changed state to 1(NULL) successfully
0:00:03.737085151 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<avimux0> committing state from PAUSED to READY, pending NULL, next NULL
0:00:03.737215651 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<avimux0> continue state change READY to NULL, final NULL
0:00:03.737343901 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<avimux0> completed state change to NULL
0:00:03.737427301 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<avimux0> posting state-changed READY to NULL
0:00:03.737544501 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'avimux0' changed state to 1(NULL) successfully
0:00:03.737911451 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<queue0> committing state from PAUSED to READY, pending NULL, next NULL
0:00:03.738045651 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<queue0> continue state change READY to NULL, final NULL
0:00:03.738173951 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<queue0> completed state change to NULL
0:00:03.738257701 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<queue0> posting state-changed READY to NULL
0:00:03.738376351 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'queue0' changed state to 1(NULL) successfully
0:00:03.738491751 1795 0x16050 INFO omx gstomx_base_filter.c:153:change_state:<omxh264enc0> begin: changing state PAUSED -> READY
0:00:03.738636650 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<omxh264enc0> committing state from PAUSED to READY, pending NULL, next NULL
0:00:03.738760450 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<omxh264enc0> continue state change READY to NULL, final NULL
0:00:03.738848650 1795 0x16050 INFO omx gstomx_base_filter.c:153:change_state:<omxh264enc0> begin: changing state READY -> NULL
0:00:03.778763950 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<omxh264enc0> completed state change to NULL
0:00:03.778935750 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<omxh264enc0> posting state-changed READY to NULL
0:00:03.779111350 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'omxh264enc0' changed state to 1(NULL) successfully
0:00:04.115402801 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<omxbufferalloc0> committing state from PAUSED to READY, pending NULL, next NULL
0:00:04.115561401 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<omxbufferalloc0> continue state change READY to NULL, final NULL
0:00:04.115697201 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<omxbufferalloc0> completed state change to NULL
0:00:04.115783151 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<omxbufferalloc0> posting state-changed READY to NULL
0:00:04.115903851 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'omxbufferalloc0' changed state to 1(NULL) successfully
0:00:04.116087451 1795 0x16050 INFO GST_STATES gstelement.c:2314:gst_element_continue_state:<capsfilter0> committing state from PAUSED to READY, pending NULL, next NULL
0:00:04.116215451 1795 0x16050 INFO GST_STATES gstelement.c:2323:gst_element_continue_state:<capsfilter0> continue state change READY to NULL, final NULL
0:00:04.116342201 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<capsfilter0> completed state change to NULL
0:00:04.116426601 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<capsfilter0> posting state-changed READY to NULL
0:00:04.116543401 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'capsfilter0' changed state to 1(NULL) successfully
0:00:04.116861501 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<v4l2src0> completed state change to NULL
0:00:04.116955451 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<v4l2src0> posting state-changed READY to NULL
0:00:04.117079201 1795 0x16050 INFO GST_STATES gstbin.c:2492:gst_bin_change_state_func:<pipeline0> child 'v4l2src0' changed state to 1(NULL) successfully
0:00:04.117497601 1795 0x16050 INFO GST_STATES gstelement.c:2341:gst_element_continue_state:<pipeline0> completed state change to NULL
0:00:04.117597501 1795 0x16050 INFO GST_STATES gstelement.c:2354:gst_element_continue_state:<pipeline0> posting state-changed READY to NULL
0:00:04.117733401 1795 0x16050 INFO GST_STATES gstbin.c:1759:gst_bin_get_state_func:<pipeline0> getting state
Freeing pipeline ...
0:00:04.118102601 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking capsfilter0:src(0x16e9a0) and omxbufferalloc0:sink(0x1560c8)
0:00:04.118273701 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked capsfilter0:src and omxbufferalloc0:sink
0:00:04.118434401 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking v4l2src0:src(0x156000) and capsfilter0:sink(0x16e8d8)
0:00:04.454790500 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked v4l2src0:src and capsfilter0:sink
0:00:04.455035701 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "capsfilter0"
0:00:04.455203051 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<capsfilter0> dispose
0:00:04.455296551 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<capsfilter0> removing pad 'src'
0:00:04.455461701 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<capsfilter0> removing pad 'sink'
0:00:04.455587901 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<capsfilter0> parent class dispose
0:00:04.455685751 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<capsfilter0> finalize
0:00:04.455777001 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<capsfilter0> finalize parent
0:00:04.455882451 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking queue1:src(0x156708) and filesink0:sink(0x16e810)
0:00:04.456022201 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked queue1:src and filesink0:sink
0:00:04.456226601 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "filesink0"
0:00:04.456348151 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<filesink0> dispose
0:00:04.456434551 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<filesink0> removing pad 'sink'
0:00:04.456555801 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<filesink0> parent class dispose
0:00:04.456657851 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<filesink0> finalize
0:00:04.456746901 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<filesink0> finalize parent
0:00:04.456849851 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking avimux0:src(0x156578) and queue1:sink(0x156640)
0:00:04.456986351 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked avimux0:src and queue1:sink
0:00:04.457151051 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "queue1"
0:00:04.457270451 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<queue1> dispose
0:00:04.457357451 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<queue1> removing pad 'src'
0:00:04.457517001 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<queue1> removing pad 'sink'
0:00:04.794222100 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<queue1> parent class dispose
0:00:04.794333900 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<queue1> finalize
0:00:04.794423250 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<queue1> finalize parent
0:00:04.794523100 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking queue0:src(0x1564b0) and avimux0:video_00(0x16ea68)
0:00:04.794664050 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked queue0:src and avimux0:video_00
0:00:04.794836750 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "avimux0"
0:00:04.794984401 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<avimux0> dispose
0:00:04.795073901 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<avimux0> removing pad 'video_00'
0:00:04.795171101 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<avimux0> removing pad 'src'
0:00:04.795308551 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<avimux0> parent class dispose
0:00:04.795496401 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<avimux0> finalize
0:00:04.795619051 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<avimux0> finalize parent
0:00:04.795746851 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking omxh264enc0:src(0x156320) and queue0:sink(0x1563e8)
0:00:04.795892151 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked omxh264enc0:src and queue0:sink
0:00:04.796062801 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "queue0"
0:00:04.796182551 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<queue0> dispose
0:00:04.796269051 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<queue0> removing pad 'src'
0:00:04.796404401 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<queue0> removing pad 'sink'
0:00:04.796538401 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<queue0> parent class dispose
0:00:04.796638501 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<queue0> finalize
0:00:04.796727151 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<queue0> finalize parent
0:00:04.796828251 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1713:gst_pad_unlink: unlinking omxbufferalloc0:src(0x156190) and omxh264enc0:sink(0x156258)
0:00:05.132271100 1795 0x16050 INFO GST_ELEMENT_PADS gstpad.c:1758:gst_pad_unlink: unlinked omxbufferalloc0:src and omxh264enc0:sink
0:00:05.132457650 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "omxh264enc0"
0:00:05.132583400 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<omxh264enc0> dispose
0:00:05.132671850 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<omxh264enc0> removing pad 'src'
0:00:05.132796100 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<omxh264enc0> removing pad 'sink'
0:00:05.132914950 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<omxh264enc0> parent class dispose
0:00:05.133029200 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<omxh264enc0> finalize
0:00:05.133118600 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<omxh264enc0> finalize parent
0:00:05.133231950 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "omxbufferalloc0"
0:00:05.133349300 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<omxbufferalloc0> dispose
0:00:05.133435150 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<omxbufferalloc0> removing pad 'src'
0:00:05.133596750 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<omxbufferalloc0> removing pad 'sink'
0:00:05.133735200 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<omxbufferalloc0> parent class dispose
0:00:05.133827700 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<omxbufferalloc0> finalize
0:00:05.133916350 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<omxbufferalloc0> finalize parent
0:00:05.134026750 1795 0x16050 INFO GST_PARENTAGE gstbin.c:1440:gst_bin_remove_func:<pipeline0> removed child "v4l2src0"
0:00:05.134170250 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<v4l2src0> dispose
0:00:05.134257350 1795 0x16050 INFO GST_ELEMENT_PADS gstelement.c:835:gst_element_remove_pad:<v4l2src0> removing pad 'src'
0:00:05.134375000 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<v4l2src0> parent class dispose
0:00:05.134556950 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<v4l2src0> finalize
0:00:05.134653350 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<v4l2src0> finalize parent
0:00:05.470265900 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2955:gst_element_dispose:<pipeline0> dispose
0:00:05.470405150 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:2979:gst_element_dispose:<pipeline0> parent class dispose
0:00:05.470500350 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3010:gst_element_finalize:<pipeline0> finalize
0:00:05.470590250 1795 0x16050 INFO GST_REFCOUNTING gstelement.c:3021:gst_element_finalize:<pipeline0> finalize parent
0:00:05.470685000 1795 0x16050 INFO GST_INIT gst.c:1010:gst_deinit: deinitializing GStreamer
0:00:05.495808101 1795 0x16050 INFO GST_INIT gst.c:1113:gst_deinit: deinitialized GStreamer

ti81xxvin_main.c

  • sorry ,please forget about the quit problem , it's ok after i remove num-buffers .
    here is another problem:
    1. using tee to encoder and display , both display and encoder hangs , here is the pipeline
    gst-launch v4l2src always-copy=false queue-size=12 ! 'video/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fraction)30/1' ! omxbufferalloc numBuffers=12 ! tee name=t ! queue ! omx_h264enc bitrate=5000000 ! filesink location=v4l2cap_tee.h264 t. ! queue ! omx_scaler ! 'video/x-raw-yuv, width=(int)720, height=(int)480' !v4l2sink sync=true device=/dev/video3 userpointer=true min-queued-bufs=2
    2. using omx-mdeiscaler to encoder and display , the display shows only grey video, no color , yet the encoder output is ok. here is the pipieline
    gst-launch v4l2src always-copy=false queue-size=12 ! 'video/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fraction)30/1' ! omxbufferalloc numBuffers=12 ! omx_mdeiscaler name=d d.src_00 !'video/x-raw-yuv, width=(int)720, height=(int)480' !gstperf!v4l2sink sync=true device=/dev/video3 userpointer=true min-queued-bufs=2 d.src_01 ! queue ! omx_h264enc bitrate=5000000 ! filesink location=v4l2cap_mdei.h264
    3. sometimes there is no tv out ,i have to reboot the system
  • Hello,

    Jin Yibin said:
    gst-launch v4l2src always-copy=false queue-size=12 ! 'video/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fraction)30/1' ! omxbufferalloc numBuffers=12 ! tee name=t ! queue ! omx_h264enc bitrate=5000000 ! filesink location=v4l2cap_tee.h264 t. ! queue ! omx_scaler ! 'video/x-raw-yuv, width=(int)720, height=(int)480' !v4l2sink sync=true device=/dev/video3 userpointer=true min-queued-bufs=2

    Could you post me the debug log?

    Jin Yibin said:
    2. using omx-mdeiscaler to encoder and display , the display shows only grey video, no color , yet the encoder output is ok. here is the pipieline
    gst-launch v4l2src always-copy=false queue-size=12 ! 'video/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fraction)30/1' ! omxbufferalloc numBuffers=12 ! omx_mdeiscaler name=d d.src_00 !'video/x-raw-yuv, width=(int)720, height=(int)480' !gstperf!v4l2sink sync=true device=/dev/video3 userpointer=true min-queued-bufs=2 d.src_01 ! queue ! omx_h264enc bitrate=5000000 ! filesink location=v4l2cap_mdei.h264

    Could you try to set userpointer=false?

    BR
    Margarita

  • hi,  if i want to save encoded stream into multiple files , is there any component i can use ? thanks

  • Hello,

    Check multifilesink element.

    Here is example: multifilesink location="frame%05d.png"

    BR
    Margarita
  • the multifilesink element in the sdk can not set file size or stream duration ?right?
  • Hello,

    Try:

    gst-inspect "multifilesink"

    for the supported properties like  "next-file", "max-files ", "max-file-size".

    BR
    Margarita

  • hi, i do not find any property as max size in the multifilesink

    root@dm814x-evm:~# root@dm814x-evm:~# gst-inspect mutifilesinkltifilesinktifilesink
    Factory Details:
    Long name: Multi-File Sink
    Class: Sink/File
    Description: Write buffers to a sequentially named set of files
    Author(s): David Schleef <ds@schleef.org>
    Rank: none (0)

    Plugin Details:
    Name: multifile
    Description: Reads/Writes buffers from/to sequentially named files
    Filename: /usr/lib/gstreamer-0.10/libgstmultifile.so
    Version: 0.10.28
    License: LGPL
    Source module: gst-plugins-good
    Source release date: 2011-03-08
    Binary package: GStreamer Good Plug-ins source release
    Origin URL: Unknown package origin

    GObject
    +----GstObject
    +----GstElement
    +----GstBaseSink
    +----GstMultiFileSink

    Pad Templates:
    SINK template: 'sink'
    Availability: Always
    Capabilities:
    ANY


    Element Flags:
    no flags set

    Element Implementation:
    Has change_state() function: gst_base_sink_change_state
    Has custom save_thyself() function: gst_element_save_thyself
    Has custom restore_thyself() function: gst_element_restore_thyself

    Element has no clocking capabilities.
    Element has no indexing capabilities.
    Element has no URI handling capabilities.

    Pads:
    SINK: 'sink'
    Implementation:
    Has chainfunc(): gst_base_sink_chain
    Has custom eventfunc(): gst_base_sink_event
    Has custom queryfunc(): gst_pad_query_default
    Has custom iterintlinkfunc(): gst_pad_iterate_internal_links_default
    Has bufferallocfunc(): gst_base_sink_pad_buffer_alloc
    Has getcapsfunc(): gst_base_sink_pad_getcaps
    Has setcapsfunc(): gst_base_sink_pad_setcaps
    Has acceptcapsfunc(): gst_pad_acceptcaps_default
    Has fixatecapsfunc(): gst_base_sink_pad_fixate
    Pad Template: 'sink'

    Element Properties:
    name : The name of the object
    flags: readable, writable
    String. Default: null Current: "multifilesink0"
    preroll-queue-len : Number of buffers to queue during preroll
    flags: readable, writable
    Unsigned Integer. Range: 0 - 4294967295 Default: 0 Current: 0
    sync : Sync on the clock
    flags: readable, writable
    Boolean. Default: true Current: false
    max-lateness : Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)
    flags: readable, writable
    Integer64. Range: -1 - 9223372036854775807 Default: -1 Current: -1
    qos : Generate Quality-of-Service events upstream
    flags: readable, writable
    Boolean. Default: false Current: false
    async : Go asynchronously to PAUSED
    flags: readable, writable
    Boolean. Default: true Current: true
    ts-offset : Timestamp offset in nanoseconds
    flags: readable, writable
    Integer64. Range: -9223372036854775808 - 9223372036854775807 Default: 0 Current: 0
    enable-last-buffer : Enable the last-buffer property
    flags: readable, writable
    Boolean. Default: true Current: true
    last-buffer : The last buffer received in the sink
    flags: readable
    MiniObject of type "GstBuffer"
    blocksize : Size in bytes to pull per buffer (0 = default)
                       flags: readable, writable
                    Unsigned Integer. Range: 0 - 4294967295 Default: 4096 Current: 4096
    render-delay : Additional render delay of the sink in nanoseconds
    flags: readable, writable
    Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0 Current: 0
    location : Location of the file to write
    flags: readable, writable
    String. Default: null Current: "%05d"
    index : Index to use with location property to create file names. The index is incremented by one for each buffer written.
    flags: readable, writable
    Integer. Range: 0 - 2147483647 Default: 0 Current: 0
    post-messages : Post a message for each file with information of the buffer
    flags: readable, writable
    Boolean. Default: false Current: false
    next-file : When to start a new file
    flags: readable, writable
    Enum "GstMultiFileSinkNext" Default: 0, "buffer" Current: 0, "buffer"
    (0): buffer - New file for each buffer
    (1): discont - New file after each discontinuity
    (2): key-frame - New file at each key frame (Useful for MPEG-TS segmenting)

  • Hello,

    It does not seems like a full gst-inspect log.
    Could you try to set the properties in my previous post if there are not valid you will observe the property error.

    You could try : ... multifilesink location=test2%d.ts next-file=4 max-file-size=2000000

    What is the container which you will use for the video file?

    Keep in mind that multifilesink doesn't know anything about the data it splits up, so it won't take care of adding headers to each of the files it writes. Some formats like WAV won't work.

    BR
    Margarita
  • hi,here is the log ,set property failed
    root@dm814x-evm:~# gst-launch v4l2src always-copy=false queue-size=12 ! 'vide
    o/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fracti
    on)30/1' ! omxbufferalloc numBuffers=12 ! omx_mdeiscaler name=d d.src_00 !'vide
    o/x-raw-yuv, width=(int)720, height=(int)480' !gstperf!v4l2sink sync=true device
    =/dev/video3 userpointer=true min-queued-bufs=2 d.src_01 ! queue ! omx_h264enc
    bitrate=5000000 ! multifilesink location=v4l2cap_mdei%d.h264 next-file=4 max-f
    ile-size=2000000

    (gst-launch-0.10:1514): GStreamer-CRITICAL **: gst_value_deserialize_enum: assertion `en' failed
    WARNING: erroneous pipeline: could not set property "next-file" in element "multifilesink0" to "4"
    root@dm814x-evm:~#
  • root@dm814x-evm:~# gst-inspect multifilesink
    Factory Details:
    Long name: Multi-File Sink
    Class: Sink/File
    Description: Write buffers to a sequentially named set of files
    Author(s): David Schleef <ds@schleef.org>
    Rank: none (0)

    Plugin Details:
    Name: multifile
    Description: Reads/Writes buffers from/to sequentially named files
    Filename: /usr/lib/gstreamer-0.10/libgstmultifile.so
    Version: 0.10.28
    License: LGPL
    Source module: gst-plugins-good
    Source release date: 2011-03-08
    Binary package: GStreamer Good Plug-ins source release
    Origin URL: Unknown package origin

    GObject
    +----GstObject
    +----GstElement
    +----GstBaseSink
    +----GstMultiFileSink

    Pad Templates:
    SINK template: 'sink'
    Availability: Always
    Capabilities:
    ANY


    Element Flags:
    no flags set

    Element Implementation:
    Has change_state() function: gst_base_sink_change_state
    Has custom save_thyself() function: gst_element_save_thyself
    Has custom restore_thyself() function: gst_element_restore_thyself

    Element has no clocking capabilities.
    Element has no indexing capabilities.
    Element has no URI handling capabilities.

    Pads:
    SINK: 'sink'
    Implementation:
    Has chainfunc(): gst_base_sink_chain
    Has custom eventfunc(): gst_base_sink_event
    Has custom queryfunc(): gst_pad_query_default
    Has custom iterintlinkfunc(): gst_pad_iterate_internal_links_default
    Has bufferallocfunc(): gst_base_sink_pad_buffer_alloc
    Has getcapsfunc(): gst_base_sink_pad_getcaps
    Has setcapsfunc(): gst_base_sink_pad_setcaps
    Has acceptcapsfunc(): gst_pad_acceptcaps_default
    Has fixatecapsfunc(): gst_base_sink_pad_fixate
    Pad Template: 'sink'

    Element Properties:
    name : The name of the object
    flags: readable, writable
    String. Default: null Current: "multifilesink0"
    preroll-queue-len : Number of buffers to queue during preroll
    flags: readable, writable
    Unsigned Integer. Range: 0 - 4294967295 Default: 0 Current: 0
    sync : Sync on the clock
    flags: readable, writable
    Boolean. Default: true Current: false
    max-lateness : Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)
    flags: readable, writable
    Integer64. Range: -1 - 9223372036854775807 Default: -1 Current: -1
    qos : Generate Quality-of-Service events upstream
    flags: readable, writable
    Boolean. Default: false Current: false
    async : Go asynchronously to PAUSED
    flags: readable, writable
    Boolean. Default: true Current: true
    ts-offset : Timestamp offset in nanoseconds
    flags: readable, writable
    Integer64. Range: -9223372036854775808 - 9223372036854775807 Default: 0 Current: 0
    enable-last-buffer : Enable the last-buffer property
    flags: readable, writable
    Boolean. Default: true Current: true
    last-buffer : The last buffer received in the sink
    flags: readable
    MiniObject of type "GstBuffer"
    blocksize : Size in bytes to pull per buffer (0 = default)
    flags: readable, writable
    Unsigned Integer. Range: 0 - 4294967295 Default: 4096 Current: 4096
    render-delay : Additional render delay of the sink in nanoseconds
    flags: readable, writable
    Unsigned Integer64. Range: 0 - 18446744073709551615 Default: 0 Current: 0
    location : Location of the file to write
    flags: readable, writable
    String. Default: null Current: "%05d"
    index : Index to use with location property to create file names. The index is incremented by one for each buffer written.
    flags: readable, writable
    Integer. Range: 0 - 2147483647 Default: 0 Current: 0
    post-messages : Post a message for each file with information of the buffer
    flags: readable, writable
    Boolean. Default: false Current: false
    next-file : When to start a new file
    flags: readable, writable
    Enum "GstMultiFileSinkNext" Default: 0, "buffer" Current: 0, "buffer"
    (0): buffer - New file for each buffer
    (1): discont - New file after each discontinuity
    (2): key-frame - New file at each key frame (Useful for MPEG-TS segmenting)
    root@dm814x-evm:~#
  • Hello,

    Yours current option of next-file are:
    (0): buffer - New file for each buffer
    (1): discont - New file after each discontinuity
    (2): key-frame - New file at each key frame (Useful for MPEG-TS segmenting)

    You could try 0 and 2.

    BR
    Margarita
  • hi,i changed to next-file=2 ,now there is no property as max file size

    root@dm814x-evm:~# gst-launch v4l2src always-copy=false queue-size=12 ! 'vide
    o/x-raw-yuv-strided,format=(fourcc)NV12,width=1920,height=1080,framerate=(fracti
    on)30/1' ! omxbufferalloc numBuffers=12 ! omx_mdeiscaler name=d d.src_00 !'vide
    o/x-raw-yuv, width=(int)720, height=(int)480' !gstperf!v4l2sink sync=true device
    =/dev/video3 userpointer=true min-queued-bufs=2 d.src_01 ! queue ! omx_h264enc
    bitrate=5000000 ! multifilesink location=v4l2cap_mdei%d.h264 next-file=2 max-f
    ile-size=2000000
    WARNING: erroneous pipeline: no property "max-file-size" in element "multifilesink0"
    root@dm814x-evm:~#

  • Hello,

    I should to use next-file=2 only without max-files properties.
    It will split the files on every I/IDR frame.

    I made a research it seems that :


    typedef enum {
    GST_MULTI_FILE_SINK_NEXT_BUFFER,
    GST_MULTI_FILE_SINK_NEXT_DISCONT,
    GST_MULTI_FILE_SINK_NEXT_KEY_FRAME,
    GST_MULTI_FILE_SINK_NEXT_KEY_UNIT_EVENT,
    GST_MULTI_FILE_SINK_NEXT_MAX_SIZE
    } GstMultiFileSinkNext;


    GST_MULTI_FILE_SINK_NEXT_KEY_UNIT_EVENT
    New file after a force key unit event (Since: 0.10.31)

    GST_MULTI_FILE_SINK_NEXT_MAX_SIZE
    New file when the configured maximum file size would be exceeded with the next buffer or buffer list (Since: 0.10.31)

    are available in gst-good plugin 0.10.31 version.

    Check here for more information.


    www.freedesktop.org/.../gst-plugins-good-plugins-multifilesink.html

    In default ezsdk gst-good plugin is 0.10.25

    BR
    Margarita
  • hi, thanks so much ,

    so i should  upgrade the gstreamer to new version?

    does ti  have any user guide of how to upgrade gstreamer?

    i searched the forum ,yet find no thread about  gst upgade

  • Hello,

    You could try to upgrade it.

    No we does not have such guide.

    You could allocate gst branch which we are using here:
    gstreamer.ti.com/.../

    BR
    Margarita