[PATCH 1/3] RFC: drm: Restrict vblank ioctl to master

Daniel Stone daniel at fooishbar.org
Mon Jun 20 14:46:48 UTC 2016


Hi Rainer,

On 17 June 2016 at 22:00, Rainer Hochecker <fernetmenta at kodi.tv> wrote:
> I agree. GLX_OML_sync_control fulfils all our requirements apart from being
> available for EGL. It would be great to have it available for EGL. In regard
> to Wayland this is really important. For the time being Kodi stopped
> supporting Wayland because a/v sync is not possible on that platform.

This isn't true. For Wayland, you can use the wp_presentation_time extension:
https://cgit.freedesktop.org/wayland/wayland-protocols/tree/stable/presentation-time/presentation-time.xml

If you're using the zwp_linux_dmabuf extension directly, then you can
easily and obviously use the extension to get feedback, and there are
examples of using this. But even if you're using EGL, Wayland's EGL
client platform has the property that a wl_surface::commit request
must be issued from inside eglSwapBuffers. So you can make use of this
to issue a presentation_time feedback request immediately before
calling eglSwapBuffers, which will return a unique event giving you
the exact time that the buffer swap was actually displayed on screen.
This is far better than vblank requests which only give you hardware
clock ticks, and tell you nothing about actual display time.

I do discuss this with Peter occasionally, but please get in touch if
you feel there is anything else missing, because we have gone to great
lengths to make Wayland as good as it possibly can be for exactly
these usecases.

Cheers,
Daniel


More information about the dri-devel mailing list