mirror of
https://github.com/mpv-player/mpv.git
synced 2025-12-28 05:33:14 +00:00
vo_dmabuf_wayland: wayland VO displaying dmabuf buffers
Wayland VO that can display images from either vaapi or drm hwdec
The PR adds the following changes:
1. a context_wldmabuf context with no gl dependencies
2. no-op ra_wldmabuf and dmabuf_interop_wldmabuf objects
no-op because there is no need to map/unmap the drmprime buffer,
and there is no need to manage any textures.
Tested on both x86_64 and rk3399 AArch64
This commit is contained in:
@@ -996,6 +996,9 @@ features += {'wayland': wayland_deps and wayland['header'] and wayland['scanner'
|
||||
|
||||
if features['wayland']
|
||||
subdir(join_paths('generated', 'wayland'))
|
||||
sources += files('video/out/wldmabuf/context_wldmabuf.c')
|
||||
sources += files('video/out/wldmabuf/ra_wldmabuf.c')
|
||||
sources += files('video/out/wlbuf_pool.c')
|
||||
endif
|
||||
|
||||
features += {'memfd_create': false}
|
||||
@@ -1404,6 +1407,12 @@ if features['dmabuf-interop-pl']
|
||||
sources += files('video/out/hwdec/dmabuf_interop_pl.c')
|
||||
endif
|
||||
|
||||
features += {'dmabuf-wayland' : features['wayland'] and features['memfd_create'] and (features['vaapi-wayland'] or features['drm'])}
|
||||
if features['dmabuf-wayland']
|
||||
sources += files('video/out/vo_dmabuf_wayland.c')
|
||||
sources += files('video/out/hwdec/dmabuf_interop_wl.c')
|
||||
endif
|
||||
|
||||
vdpau_opt = get_option('vdpau').require(
|
||||
features['x11'],
|
||||
error_message: 'x11 was not found!',
|
||||
|
||||
Reference in New Issue
Block a user