gst_element_seek() when the pipeline has an appsink - bug?

Tim-Philipp Müller t.i.m at zen.co.uk
Wed May 22 14:53:58 PDT 2013


On Wed, 2013-05-22 at 10:55 -0700, Paddy wrote:

Hi,

> I have a simple (gstreamer-0.10) pipeline:
> filesrc --> decodebin2 -->appsink
> which feeds into another pipeline:
> appsrc --> ffmpegcolorspace --> autovidesink
> 
> When both are set to playing it works pretty much as I'd expect, however
> when I try & use gst_element_seek() on the source pipeline it simply doesn't
> work.
> 
> Using gst_element_seek(pipeline, 1.0, GST_FORMAT_TIME, GST_SEEK_FLAG_FLUSH
> |GST_SEEK_FLAG_SKIP,
>                                  GST_SEEK_TYPE_SET, t_sec * GST_SECOND,
>                                  GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE)
> does not generate an error but all output stops for t_sec seconds (even the
> debug at GST_DEBUG=*:5 stops) - then the playback continues from the point
> I'd seeked to.
> 
> Similarly gst_element_seek(pipeline, speed, GST_FORMAT_TIME,
> GST_SEEK_FLAG_FLUSH,
>                                     GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE,
>                                     GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE)
> results in a playback speed of 1.0 regardless of what is asked for.
> 
> Removing the appsink/appsrc so the pipeline becomes
> filesrc --> decodebin2 --> ffmpegcolorspace --> autovidesink
> works as expected in both use cases.
> 

What's the demuxer that gets plugged here?

Cheers
 -Tim



More information about the gstreamer-devel mailing list