GNOME Bugzilla – Bug 586450
[cairotextoverlay] Forward upstream events to both sinkpads
Last modified: 2011-06-15 22:43:28 UTC
Please describe the problem: when the pipeline contents a cairotextoverlay element, the seeking functions return FALSE. Steps to reproduce: 1. 2. 3. Actual results: Expected results: Does this happen every time? yes Other information: with pango-based textoverlay there is no such problem.
Created attachment 179147 [details] [review] textoverlay: forward source events to sinks Events are passed to the video sink, and to the text sink if it is linked. This will allow seeking, for instance.
Might also need this: https://bugzilla.gnome.org/show_bug.cgi?id=640323
Is this really needed? I've tried this using the seek application from gst-plugin-base/tests/examples/seek ./seek 15 "playbin2 uri=file:///home/ensonic/Videos/loopmix.mov video-sink=\"cairotimeoverlay ! xvimagesink\"" and seeking works fine.
Vincent, can you please clarify queries of comment#3 ?
I just tried with latest git: gst-launch filesrc location=$FILE ! oggdemux ! theoradec ! ffmpegcolorspace ! cairotextoverlay text=Foo ! navseek ! xvimagesink Seeking is not working without the patch, and works with the patch. I do get warnings about buffers being seen without a prior newsegment though. These are fixed by the patch in comment 2, https://bugzilla.gnome.org/show_bug.cgi?id=640323.
(In reply to comment #3) > Is this really needed? I've tried this using the seek application from > gst-plugin-base/tests/examples/seek > > ./seek 15 "playbin2 uri=file:///home/ensonic/Videos/loopmix.mov > video-sink=\"cairotimeoverlay ! xvimagesink\"" > > and seeking works fine. Because you're not using the text sinkpad here. The problem with the default event handler is, that it only forwards the event to a single, random pad upstream. If you have distinct text and video pipelines this will break.
commit b99f4be3dbb6f80427f199ac76f5610d477b3eca Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> Date: Mon Jan 24 11:11:48 2011 +0000 textoverlay: forward source events to sinks Events are passed to the video sink, and to the text sink if it is linked. This will allow seeking, for instance. https://bugzilla.gnome.org/show_bug.cgi?id=586450