matroskademux pipeline can't run as linking subtitle_00 to fakesink

France Hsu france.hsu.g at gmail.com
Thu Feb 16 20:00:10 PST 2012


Dears,

We want to implement a subtitle sink on our embedded project;
that is, video is displayed on a video plane, and the subtitle is displayed
on the graphic plane.

At the beginning, we try MKV file with the matroskademux, and using the
following 2 pipelines is OK:
gst-launch filesrc location=test.mkv ! matroskademux name=demux ! queue !
ffdec_h264 ! r.  \
demux.subtitle_00 ! queue ! assrender name=r ! ffmpegcolorspace !
autovideosink
[image: 內置圖片 1]

gst-launch filesrc location=test.mkv ! matroskademux name=demux ! queue !
ffdec_h264 ! r.  \
demux.subtitle_00 ! queue ! ssaparse ! textoverlay name=r !
ffmpegcolorspace ! autovideosink
[image: 內置圖片 2]

Then, we try to separate subtitle path and video path like following:
(We wish to replace fakesink with our subsink)
gst-launch filesrc location=test.mkv ! matroskademux name=demux ! queue !
ffdec_h264 ! ffmpegcolorspace ! autovideosink  \
demux.subtitle_00 ! queue ! ssaparse ! fakesink
[image: 內置圖片 3]

But the pipeline is stoped as PAUSED state, even the output window is
opened:
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...

Add
GST_DEBUG=pipeline:4,GST_EVENT:4,GST_ELEMENT_FACTORY:3,GST_ELEMENT_PADS:3,PADS:3,*:3,
we can get the log as following:
(After matroskademux producing the pad subtitle_00)
0:00:00.244030314 16462  0x8b08cc8 INFO        GST_ELEMENT_PADS
gstelement.c:727:gst_element_add_pad:<demux> adding pad 'subtitle_00'
0:00:00.244045263 16462  0x8b08cc8 INFO            GST_PIPELINE
./grammar.y:441:gst_parse_found_pad: trying delayed linking
demux:subtitle_00 to queue1:(NULL)
0:00:00.244054527 16462  0x8b08cc8 INFO        GST_ELEMENT_PADS
gstutils.c:1585:gst_element_link_pads: trying to link element
demux:subtitle_00 to element queue1:(any)
0:00:00.244063418 16462  0x8b08cc8 INFO        GST_ELEMENT_PADS
gstelement.c:973:gst_element_get_static_pad: found pad demux:subtitle_00
0:00:00.244073542 16462  0x8b08cc8 INFO                GST_PADS
gstutils.c:1046:gst_pad_check_link: trying to link demux:subtitle_00 and
queue1:sink
0:00:00.244091787 16462  0x8b08cc8 INFO                GST_PADS
gstutils.c:1493:prepare_link_maybe_ghosting: demux and queue1 in same bin,
no need for ghost pads
0:00:00.244106636 16462  0x8b08cc8 INFO                GST_PADS
gstpad.c:1880:gst_pad_link_prepare: trying to link demux:subtitle_00 and
queue1:sink
0:00:00.244122434 16462  0x8b08cc8 INFO                GST_PADS
gstpad.c:2053:gst_pad_link: linked demux:subtitle_00 and queue1:sink,
successful
0:00:00.245437805 16462  0x8b08cc8 WARN          GST_SCHEDULING
gstpad.c:4683:gst_pad_get_range:<filesrc0:src> getrange failed unexpected
0:00:00.245452065 16462  0x8b08cc8 INFO          GST_SCHEDULING
gstpad.c:4796:gst_pad_pull_range:<demux:sink> pullrange failed, flow:
unexpected
0:00:00.245816212 16462  0x8b08cc8 INFO               GST_EVENT
gstevent.c:597:gst_event_new_new_segment_full: creating newsegment update
0, rate 1.000000, format GST_FORMAT_TIME, start 0:00:00.000000000, stop
99:99:99.999999999, position 0:00:00.000000000
0:00:00.246354098 16462  0x8b1b1d0 INFO                GST_PADS
gstpad.c:3417:gst_pad_event_default_dispatch:<ssaparse0:sink> Sending event
0x8af7078 (newsegment) to all internally linked pads
0:00:00.246396474 16462  0x8b1b1d0 INFO                GST_PADS
gstpad.c:3417:gst_pad_event_default_dispatch:<ssaparse0:sink> Sending event
0x8b0ee00 (tag) to all internally linked pads
0:00:00.246456063 16462  0x8b1b1d0 INFO                GST_PADS
gstpad.c:3417:gst_pad_event_default_dispatch:<ssaparse0:sink> Sending event
0x89af5b8 (tag) to all internally linked pads
0:00:00.248599247 16462  0x8b08cc8 INFO               GST_EVENT
gstevent.c:597:gst_event_new_new_segment_full: creating newsegment update
1, rate 1.000000, format GST_FORMAT_TIME, start 0:00:00.084000000, stop
99:99:99.999999999, position 0:00:00.084000000
0:00:00.251699376 16462  0x8b1b1d0 INFO                GST_PADS
gstpad.c:3417:gst_pad_event_default_dispatch:<ssaparse0:sink> Sending event
0x89a7190 (newsegment) to all internally linked pads
0:00:00.251779486 16462  0x8b08cc8 INFO               GST_EVENT
gstevent.c:597:gst_event_new_new_segment_full: creating newsegment update
1, rate 1.000000, format GST_FORMAT_TIME, start 0:00:00.376000000, stop
99:99:99.999999999, position 0:00:00.376000000
0:00:00.255879226 16462  0x8b08cc8 INFO               GST_EVENT
gstevent.c:597:gst_event_new_new_segment_full: creating newsegment update
1, rate 1.000000, format GST_FORMAT_TIME, start 0:00:00.668000000, stop
99:99:99.999999999, position 0:00:00.668000000

I have a feeling that assrender and textoverlay in the 2 successful cases
are the key elements to trigger the pipeline running,
but I don't know why and have no idea to solve the last case.

Would you help us figure out what's wrong with this pipeline?
Thank you.

--
Regards,
許矢勤 France Hsu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120217/6b3db4f8/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 12671 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120217/6b3db4f8/attachment-0005.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 13951 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120217/6b3db4f8/attachment-0006.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pipeline_mkv_h264_ssaparse_textoverlay.PNG
Type: image/png
Size: 13951 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120217/6b3db4f8/attachment-0007.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pipeline_mkv_h264_assrender.PNG
Type: image/png
Size: 12671 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120217/6b3db4f8/attachment-0008.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pipeline_mkv_h264_ssaparse_fakesink.PNG
Type: image/png
Size: 17563 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120217/6b3db4f8/attachment-0009.png>


More information about the gstreamer-devel mailing list