After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 354594 - multifdsink doesn't work reliably with sync-method = 'next-keyframe'
multifdsink doesn't work reliably with sync-method = 'next-keyframe'
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal blocker
: 0.10.10
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-09-06 10:57 UTC by Michael Smith
Modified: 2006-09-08 10:41 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix next-keyframe sync-method (2.46 KB, patch)
2006-09-06 11:01 UTC, Michael Smith
accepted-commit_after_freeze Details | Review
Test for this (2.59 KB, patch)
2006-09-06 11:31 UTC, Michael Smith
none Details | Review

Description Michael Smith 2006-09-06 10:57:17 UTC
If you use multifdsink with sync-method set to 'next-keyframe', a race condition causes the clients attached to multifdsink to (usually) never start, or sometimes start after a very long time, etc.

If two buffers (e.g. a keyframe and a non-kf) are added to the queue in quick succession, then the new-client check would only check the second of these, not see the keyframe, so not start the client.

Patch forthcoming.

In latest-keyframe mode, if there was no latest-keyframe in the queue (yet), we switch to next-keyframe mode, so see the same behaviour.
Comment 1 Michael Smith 2006-09-06 11:01:13 UTC
Created attachment 72303 [details] [review]
Fix next-keyframe sync-method
Comment 2 Michael Smith 2006-09-06 11:15:21 UTC
Setting to blocker, this fixes important things for flumotion. 
Comment 3 Michael Smith 2006-09-06 11:31:36 UTC
Created attachment 72305 [details] [review]
Test for this

This test passes with the patch applied.
I haven't tested it without the patch; it may pass anyway since it would only fail intermittently due to a race condition, previously.
Comment 4 Michael Smith 2006-09-06 11:42:05 UTC
Zaheer confirms for me that this test fails (times out) without the multifdsink patch applies.

Comment 5 Thomas Vander Stichele 2006-09-07 19:05:49 UTC
commited, thanks
Comment 6 Michael Smith 2006-09-08 10:41:16 UTC
Closing, thomas committed the fix.