Needed caps for piping into qtdemux
Kristoffer Glembo
kristoffer.glembo at qamcom.se
Tue Mar 8 20:47:13 UTC 2016
Hi there,
I'm trying to create a video source which can output an MP4 stream (with H264 video and ALAC sound) into a qtdemux for demuxing.
The MP4 stream itself has been created by the mp4mux element.
I can not manage to get the video source and qtdemux to link.
My source outputs the following: caps = "video/x-h264, stream-format=(string)avc, alignment=(string)au"
This is similar to what is output if I read the MP4 using filesrc. I have also tried with video/quicktime and video/mpeg4 but never manage to get the pipe to link.
If I do gst-launch1.0 mysrc ! queue ! qtdemux ! fakesink I get the output below. Any advice would be great!
0:00:00.004574667 527 0xf6e680 INFO GST_INIT gstmessage.c:119:_priv_gst_message_initialize: init messages
0:00:00.009506667 527 0xf6e680 INFO GST_INIT gstcontext.c:77:_priv_gst_context_initialize: init contexts
0:00:00.010783334 527 0xf6e680 INFO GST_PLUGIN_LOADING gstplugin.c:317:_priv_gst_plugin_initialize: registering 0 static plugins
0:00:00.011394667 527 0xf6e680 INFO GST_PLUGIN_LOADING gstplugin.c:225:gst_plugin_register_static: registered static plugin "staticelements"
0:00:00.011451000 527 0xf6e680 INFO GST_PLUGIN_LOADING gstplugin.c:227:gst_plugin_register_static: added static plugin "staticelements", result: 1
0:00:00.011570667 527 0xf6e680 INFO GST_REGISTRY gstregistry.c:1722:ensure_current_registry: reading registry cache: /home/root/.cache/gstreamer-1.0/r
egistry.arm.bin
0:00:00.058968667 527 0xf6e680 INFO GST_REGISTRY gstregistrybinary.c:619:priv_gst_registry_binary_read_cache: loaded /home/root/.cache/gstreamer-1.0/r
egistry.arm.bin in 0.047270 seconds
0:00:00.059206000 527 0xf6e680 INFO GST_REGISTRY gstregistry.c:1578:scan_and_update_registry: Validating plugins from registry cache: /home/root/.cach
e/gstreamer-1.0/registry.arm.bin
0:00:00.059928334 527 0xf6e680 INFO GST_REGISTRY gstregistry.c:1680:scan_and_update_registry: Registry cache has not changed
0:00:00.059974000 527 0xf6e680 INFO GST_REGISTRY gstregistry.c:1757:ensure_current_registry: registry reading and updating done, result = 1
0:00:00.060027667 527 0xf6e680 INFO GST_INIT gst.c:709:init_post: GLib runtime version: 2.44.1
0:00:00.060078000 527 0xf6e680 INFO GST_INIT gst.c:711:init_post: GLib headers version: 2.44.1
0:00:00.060174334 527 0xf6e680 INFO GST_PIPELINE gstparse.c:323:gst_parse_launch_full: parsing pipeline description 'v4l2src_userptr imx-capture-mode=
9 queue-size=20 width=1920 height=1080 pixel_format=877088845 ! queue ! qtdemux ! fakesink '
0:00:00.065080667 527 0xf6e680 INFO GST_PLUGIN_LOADING gstplugin.c:833:gst_plugin_load_file: plugin "/usr/lib/gstreamer-1.0/libgstimxv4l2videosrc-userptr.so
" loaded
0:00:00.065167334 527 0xf6e680 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "v4l2src_userptr"
0:00:00.065984667 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<GstBaseSrc at 0xfec230> adding pad 'src'
0:00:00.068641667 527 0xf6e680 INFO GST_PLUGIN_LOADING gstplugin.c:833:gst_plugin_load_file: plugin "/usr/lib/gstreamer-1.0/libgstcoreelements.so" loaded
0:00:00.068749000 527 0xf6e680 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "queue"
0:00:00.069353667 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<GstQueue at 0xff0018> adding pad 'sink'
0:00:00.069526667 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<GstQueue at 0xff0018> adding pad 'src'
0:00:00.077179667 527 0xf6e680 INFO GST_PLUGIN_LOADING gstplugin.c:833:gst_plugin_load_file: plugin "/usr/lib/gstreamer-1.0/libgstisomp4.so" loaded
0:00:00.077250334 527 0xf6e680 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "qtdemux"
0:00:00.078158000 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<GstQTDemux at 0xffa018> adding pad 'sink'
0:00:00.078352000 527 0xf6e680 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "fakesink"
0:00:00.079010334 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<GstBaseSink at 0xffe2c8> adding pad 'sink'
0:00:00.079125000 527 0xf6e680 INFO GST_ELEMENT_FACTORY gstelementfactory.c:364:gst_element_factory_create: creating element "pipeline"
0:00:00.079580334 527 0xf6e680 INFO GST_PIPELINE grammar.y:570:gst_parse_perform_link: linking imxv4l2userptrsrc0:(any) to queue0:(any) (0/0) with cap
s "(NULL)"
0:00:00.079698667 527 0xf6e680 INFO GST_ELEMENT_PADS gstutils.c:1545:gst_element_link_pads_full: trying to link element imxv4l2userptrsrc0:(any) to elemen
t queue0:(any)
0:00:00.079777000 527 0xf6e680 INFO GST_PADS gstutils.c:937:gst_pad_check_link: trying to link imxv4l2userptrsrc0:src and queue0:sink
0:00:00.079947334 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:353:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps filter (NULL)
0:00:00.080016667 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:372:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps video/x-h264, stream-format=(str
ing)avc, alignment=(string)au
0:00:00.080169000 527 0xf6e680 INFO GST_PADS gstpad.c:3745:gst_pad_peer_query:<queue0:src> pad has no peer
0:00:00.080254334 527 0xf6e680 INFO GST_PADS gstutils.c:1445:prepare_link_maybe_ghosting: imxv4l2userptrsrc0 and queue0 in same bin, no need for g
host pads
0:00:00.413484001 527 0xf6e680 INFO GST_PADS gstpad.c:2186:gst_pad_link_prepare: trying to link imxv4l2userptrsrc0:src and queue0:sink
0:00:00.413641667 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:353:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps filter (NULL)
0:00:00.413767667 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:372:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps video/x-h264, stream-format=(str
ing)avc, alignment=(string)au
0:00:00.413945667 527 0xf6e680 INFO GST_PADS gstpad.c:3745:gst_pad_peer_query:<queue0:src> pad has no peer
0:00:00.414071334 527 0xf6e680 INFO GST_PADS gstpad.c:2388:gst_pad_link_full: linked imxv4l2userptrsrc0:src and queue0:sink, successful
0:00:00.414192334 527 0xf6e680 INFO GST_EVENT gstevent.c:1373:gst_event_new_reconfigure: creating reconfigure event
0:00:00.414359334 527 0xf6e680 INFO GST_EVENT gstpad.c:5182:gst_pad_send_event_unchecked:<imxv4l2userptrsrc0:src> Received event on flushing pad. D
iscarding
0:00:00.414542001 527 0xf6e680 INFO GST_PIPELINE grammar.y:570:gst_parse_perform_link: linking queue0:(any) to qtdemux0:(any) (0/0) with caps "(NULL)"
0:00:00.414667001 527 0xf6e680 INFO GST_ELEMENT_PADS gstutils.c:1545:gst_element_link_pads_full: trying to link element queue0:(any) to element qtdemux0:(
any)
0:00:00.414784667 527 0xf6e680 INFO GST_PADS gstutils.c:937:gst_pad_check_link: trying to link queue0:src and qtdemux0:sink
0:00:00.414935667 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:353:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps filter (NULL)
0:00:00.415062001 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:372:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps video/x-h264, stream-format=(str
ing)avc, alignment=(string)au
0:00:00.415341001 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:353:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps filter (NULL)
0:00:00.415467001 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:372:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps video/x-h264, stream-format=(str
ing)avc, alignment=(string)au
0:00:00.415824667 527 0xf6e680 INFO GST_ELEMENT_PADS gstutils.c:1125:gst_element_get_compatible_pad:<qtdemux0> Could not find a compatible pad to link to
queue0:src
0:00:00.415998001 527 0xf6e680 INFO GST_PADS gstutils.c:937:gst_pad_check_link: trying to link queue0:src and qtdemux0:sink
0:00:00.416180001 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:353:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps filter (NULL)
0:00:00.416303334 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:372:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps video/x-h264, stream-format=(str
ing)avc, alignment=(string)au
0:00:00.416621334 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:895:gst_element_get_static_pad: found pad queue0:src
0:00:00.416736001 527 0xf6e680 INFO GST_PADS gstutils.c:1445:prepare_link_maybe_ghosting: queue0 and qtdemux0 in same bin, no need for ghost pads
0:00:00.416869334 527 0xf6e680 INFO GST_PADS gstpad.c:2186:gst_pad_link_prepare: trying to link queue0:src and qtdemux0:sink
0:00:00.417233667 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:353:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps filter (NULL)
0:00:00.417363667 527 0xf6e680 INFO v4l2src_userptr v4l2src.c:372:gst_imx_v4l2src_get_caps:<imxv4l2userptrsrc0> get caps video/x-h264, stream-format=(str
ing)avc, alignment=(string)au
0:00:00.749517667 527 0xf6e680 INFO GST_PADS gstpad.c:2242:gst_pad_link_prepare: caps are incompatible
0:00:00.749682667 527 0xf6e680 INFO default gstutils.c:1891:gst_element_link_pads_filtered: Could not link pads: queue0:(null) - qtdemux0:(null)
0:00:00.749804001 527 0xf6e680 ERROR GST_PIPELINE grammar.y:616:gst_parse_perform_link: could not link queue0 to qtdemux0
0:00:00.749921667 527 0xf6e680 INFO GST_PIPELINE grammar.y:570:gst_parse_perform_link: linking qtdemux0:(any) to fakesink0:(any) (0/0) with caps "(NUL
L)"
0:00:00.750037001 527 0xf6e680 INFO GST_ELEMENT_PADS gstutils.c:1545:gst_element_link_pads_full: trying to link element qtdemux0:(any) to element fakesink
0:(any)
0:00:00.750346334 527 0xf6e680 INFO GST_ELEMENT_PADS gstelement.c:892:gst_element_get_static_pad: no such pad 'video_%u' in element "qtdemux0"
0:00:00.750479667 527 0xf6e680 INFO GST_ELEMENT_PADS gstutils.c:1125:gst_element_get_compatible_pad:<qtdemux0> Could not find a compatible pad to link to
fakesink0:sink
0:00:00.750571334 527 0xf6e680 INFO default gstutils.c:1891:gst_element_link_pads_filtered: Could not link pads: qtdemux0:(null) - fakesink0:(nul
l)
WARNING: erroneous pipeline: could not link queue0 to qtdemux0
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20160308/01ada34c/attachment-0001.html>
More information about the gstreamer-devel
mailing list