Why is one pipeline running, the other not, even when CAPS are not used? Or are they used?

Maurer, Martin martin2.maurer at zeiss.com
Mon Apr 23 16:39:27 UTC 2018


Hello,

assuming I have the following gst-launch-1.0 command lines: see below.

I read a mp4 file, demux it, split it into two sub-pipelines and in each sub-pipeline I call h264parse with caps and a fakesink afterwards.
In the final caps I once use the same caps for both sub-pipelines "ABCXYZ",
and once the caps are different "ABCXYZ" and "ABCXYZ1".
It looks like my (unused?) caps float from caps field through h264parse, queue, tee to qtdemux
and there lead to a comparison of the formats of the two branches of the tee.
But why? I assumed at least h264parse has different caps on sink and src side, not forwarding them?

Can someone explain this behavior?

Best regards,

Marie


# gst-launch-1.0 filesrc location=some_file.mp4 ! qtdemux ! tee name=t ! queue ! h264parse ! video/x-h264,format=ABCXYZ ! fakesink t. ! queue ! h264parse ! video/x-h264,format=ABCXYZ ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:00:00.160866667
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...

# gst-launch-1.0 filesrc location=some_file.mp4 ! qtdemux ! tee name=t ! queue ! h264parse ! video/x-h264,format=ABCXYZ ! fakesink t. ! queue ! h264parse ! video/x-h264,format=ABCXYZ1 ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
WARNING: from element /GstPipeline:pipeline0/GstQTDemux:qtdemux0: Delayed linking failed.
Additional debug info:
./grammar.y(510): gst_parse_no_more_pads (): /GstPipeline:pipeline0/GstQTDemux:qtdemux0:
failed delayed linking some pad of GstQTDemux named qtdemux0 to some pad of GstTee named t
ERROR: from element /GstPipeline:pipeline0/GstQTDemux:qtdemux0: Internal data stream error.
Additional debug info:
qtdemux.c(6080): gst_qtdemux_loop (): /GstPipeline:pipeline0/GstQTDemux:qtdemux0:
streaming stopped, reason not-linked (-1)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...
#

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180423/a612c0c9/attachment-0001.html>


More information about the gstreamer-devel mailing list