If you mean why this extension wasn't suggested a long time ago, then my answer is I have no idea, and I share the curiosity. Maybe they were busy working on some more fundamental things.
This sounds like exactly the sort of fine-tuning I expect to start seeing more of. The basic underlying system is pretty much in place, now we will start seeing more support for performance improvements, corner cases like this, and other non-system-critical enhancements.
Wayland already gives tear-free, synced video, it was one of the FIRST demo's that Krh did at a conference. With that in mind, this looks to be more along the lines of "The core already does this fine, but thats more a byproduct. Let's write an extension that is specifically designed FOR video so that they know exactly what they are dealing with and we can make sure what we got right STAYS right."
They can use such extension for any case where the image information can be decoded before it's needed. Where the information to do this is available before having to place it on the screen. Not just video.
I hope they keep it general enough to avoid proliferation of things that could cause bloat.
Originally Posted by mark45
Apparently there's an EGL extension for the same goal (defined by Khronos but not implemented in Mesa), let's see what the devs end up implementing.
Could you tell us what EGL extension that is?
It would be really good to do this.
The name and then some of the description what it does from Khronos.
Because people wanted to have the basics released and working sooner rather than never. It is impossible to design everything in advance. You will never release anything if you try to be perfect on the first release.
The core supports tearless, perfect frames. This video extension is more about getting the (video) frame timings more controlled, which should improve e.g. A/V-sync. The ultimate benefit will be received, when we can queue buffers into hardware overlays right in the kernel drivers. Having the queue in userspace will always be susceptible to scheduling hickups and system load, but at least here we get it one step further away from a video player and closer to the hardware.