GNOME Bugzilla – Bug 746501
wayland: Drop frames instead of blocking
Last modified: 2015-10-09 12:05:30 UTC
Created attachment 299908 [details] [review] Patch that shouldn't be merged The current trick of blocking until the frame is rendered is problematic. 1. The callback can take a very long time if the surface is not visible. The problem is that this thing waits while locking the entire display, so it blocks any other object sharing the same display. 2. If the video framerate is higher than the display framerate, you actually want to be dropping frames. The current code doesn't. The real solution is the presentation interface/protocol/api , but that's finished yet. So you need a separate thread that receives the events and marks the frame as painted or not. See how waylandsink in gst-plugins-bad works. Attached a patch that is part of the solution, our app also connects the same display to the mainloop of the application, so it's not a problem for us.
Oliver, is this bug still valid? IMO, the commit 522ec79 fixes this issue. Could you confirm it?
Olivier, sorry.
Ping??
Closing since it looks to be working. Please, reopen if it is not.