[gst-devel] Dropping buffers when pausing live stream

Olivier Crête olivier.crete at collabora.co.uk
Sat Oct 10 19:07:19 CEST 2009


If your data is video (and has keyframes), you may want to do something
smarter (like dropping old frames only when you get a new keyframe), so
you can start displaying data faster when you restart playback.


On Fri, 2009-10-09 at 18:40 +0200, Arnout Vandecappelle wrote:
> Hoi all,
>  My application is displaying live media that comes in over http or rtsp.  
> Sometimes the stream has to be paused (because it is invisible and I don't 
> want to waste CPU cycles on decoding).  However, simply pausing the pipeline 
> will eventually disconnect the source because of overflowing socket buffers.  
> Also, when playing again, I don't want to render a second of old data.
>  The solution I had in mind is to port the dropping behaviour of queue to 
> multiqueue.  Then I pause the sink elements, which makes the queues fill up 
> and triggers the dropping.  When playing again, there is still a bit of stale 
> data but it is recent stale data (and probably rendering delay will cause some 
> more data to be dropped in the near future).
>  Does this sound like a good idea?  Anybody have a better idea?
>  Regards,
>  Arnout
Olivier Crête
olivier.crete at collabora.co.uk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20091010/95903bae/attachment.pgp>

More information about the gstreamer-devel mailing list