From 351c083487050c88adb0e3d60f2174850f869018 Mon Sep 17 00:00:00 2001 From: Anton Kindestam Date: Thu, 28 Jun 2018 15:06:41 +0200 Subject: hwdec_vaegl: Fix VAAPI EGL interop used with gpu-context=drm Add another parameter to mpv_opengl_drm_params to hold the FD to the render node, so that the fd can be passed to hwdec_vaegl. The render node is opened in context_drm_egl and inferred from the primary device fd using drmGetRenderDeviceNameFromFd. --- libmpv/render_gl.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libmpv/render_gl.h') diff --git a/libmpv/render_gl.h b/libmpv/render_gl.h index 574be86ffd..4d771f2958 100644 --- a/libmpv/render_gl.h +++ b/libmpv/render_gl.h @@ -149,7 +149,7 @@ typedef struct mpv_opengl_fbo { typedef struct mpv_opengl_drm_params { /** - * DRM fd (int). set this to -1 if invalid. + * DRM fd (int). Set to a negative number if invalid. */ int fd; @@ -169,6 +169,12 @@ typedef struct mpv_opengl_drm_params { * The atomic request pointer is usually changed at every renderloop. */ struct _drmModeAtomicReq **atomic_request_ptr; + + /** + * DRM render node. Used for VAAPI interop. + * Set to a negative number if invalid. + */ + int render_fd; } mpv_opengl_drm_params; typedef struct mpv_opengl_drm_osd_size { -- cgit v1.2.3