GNOME Bugzilla – Bug 666379
adder: fixes to the GstCollectPads2 port - test now passes
Last modified: 2012-02-27 09:59:13 UTC
Created attachment 203689 [details] [review] adder: send a flush event before trying to get the stream lock This avoids hanging when the streaming thread is busy in _chain waiting for preroll.
Created attachment 203690 [details] [review] adder: use the stream lock where appropriate GstCollectPads2 locking was changed from GstCollectPads to use the stream lock instead of the object lock for those cases, so change it so here as well to match.
Created attachment 203691 [details] [review] adder: do not send too many flush-stop events GstCollectPads2 now allows us to override the event function, so we can withhold flush stop events if none are to be sent.
(In reply to comment #3) > Created an attachment (id=203691) [details] [review] > adder: do not send too many flush-stop events > > GstCollectPads2 now allows us to override the event function, > so we can withhold flush stop events if none are to be sent. All makes sense. It only remains for this one to also unref the (flush_stop) event if it returns TRUE to collectpads2.
Created attachment 203696 [details] [review] adder: do not send too many flush-stop events GstCollectPads2 now allows us to override the event function, so we can withhold flush stop events if none are to be sent.
Good catch, thanks a lot for the review, I'll be pushing these now.
commit 85c10b0b24a58c1b5ec9aa05ea4ffa98ba99ed76 Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> Date: Fri Dec 16 17:32:41 2011 +0000 adder: do not send too many flush-stop events GstCollectPads2 now allows us to override the event function, so we can withhold flush stop events if none are to be sent. https://bugzilla.gnome.org/show_bug.cgi?id=666379 commit 1da30adc1aeafd36b15b8d083fe2178524619479 Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> Date: Fri Dec 16 17:31:06 2011 +0000 adder: use the stream lock where appropriate GstCollectPads2 locking was changed from GstCollectPads to use the stream lock instead of the object lock for those cases, so change it so here as well to match. https://bugzilla.gnome.org/show_bug.cgi?id=666379 commit bcaf5890aa6eb1c4a18b8dd71eacb22aadba0ead Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> Date: Fri Dec 16 17:25:10 2011 +0000 adder: send a flush event before trying to get the stream lock This avoids hanging when the streaming thread is busy in _chain waiting for preroll. https://bugzilla.gnome.org/show_bug.cgi?id=666379
target milestone -> 0.10.37 (not going to cherry-pick the collectpads2 port into the release branch)
commit 85c10b0b24a58c1b5ec9aa05ea4ffa98ba99ed76 breaks adder - it leaves some pads flashing, see bug #670850.