GNOME Bugzilla – Bug 653544
[basevideodecoder] Immediately forwards synchronized events
Last modified: 2011-10-29 15:31:37 UTC
Currently basevideodecoder immediately forwards EOS instead of waiting until _finish_frame() was called for the last frame. Instead it should probably set a flag and send EOS from _finish_frame()
Also the EOS event should probably always be sent from _finish_frame() because the streaming thread of the sinkpad could be different than the streaming thread of the srcpad (e.g. decoder that provides decoded frames from a second thread)
The same applies to all other synchronized events. They should be forwarded downstream before the next buffer or EOS is pushed downstream.
commit f341386b64c5fd8f7f90cc47259b1a2ce2816ea9 Author: Sebastian Dröge <sebastian.droege@collabora.co.uk> Date: Tue Jun 28 11:47:25 2011 +0200 basevideodecoder: Don't reorder serialized src events And allow to drop EOS by the subclass if ::finish returns DROPPED. This requires that the subclass sends EOS manually later. Fixes bug #653544.