GNOME Bugzilla – Bug 357613
XvStopVideo in xvimagesink
Last modified: 2006-11-15 10:05:51 UTC
in xvimagesink.c::gst_xvimagesink_change_state() on GST_STATE_CHANGE_READY_TO_PAUSED in calls gst_xvimagesink_xwindow_clear() which in turn() calls XvStopVideo(). I would expect the gst_xvimagesink_xwindow_clear() call when doing GST_STATE_CHANGE_PAUSED_TO_READY: Or maybe it needs to go to gst_xvimagesink_xwindow_destroy() before 'if (xwindow->internal)'
on the other hand this call was introduced when trying to fix PLAYING -> READY -> PLAYING, so adding it to gst_xvimagesink_xwindow_destroy() would call it wehn going to NULL.
without the XvStopVideo() call, the last frame stays on the video window, when pausing, but also when the playback is finished (eof). More funnily, when playback crashed and one starts the playback again, the old picture is shown for a brief moment. So I suggest to add it when going to READY or NULL. Adding t to gst_xvimagesink_xwindow_destroy() works well here.
2006-11-09 Stefan Kost <ensonic@users.sf.net> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state): clear xv when going to NULL, remove // commented non-existant proto
Has this actually been committed? I can't find a trace of this in either the ChangeLog or ViewCVS ...
recommitted, cvs was bugging me with cvs commit: sticky tag `1.162' for file `sys/xvimage/xvimagesink.c' is not a branch something broke the local CVS/Entries file.