mirror of
https://github.com/mpv-player/mpv
synced 2025-03-25 04:38:01 +00:00
This driver makes use of dmabuffer and viewporter interfaces to enable efficient display of vaapi surfaces, avoiding any unnecessary colour space conversion, and avoiding scaling or colour conversion using GPU shader resources.
35 lines
1.5 KiB
Meson
35 lines
1.5 KiB
Meson
wl_protocol_dir = wayland['deps'][2].get_variable(pkgconfig: 'pkgdatadir')
|
|
protocols = [[wl_protocol_dir, 'stable/presentation-time/presentation-time.xml'],
|
|
[wl_protocol_dir, 'stable/viewporter/viewporter.xml'],
|
|
[wl_protocol_dir, 'stable/xdg-shell/xdg-shell.xml'],
|
|
[wl_protocol_dir, 'unstable/idle-inhibit/idle-inhibit-unstable-v1.xml'],
|
|
[wl_protocol_dir, 'unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml'],
|
|
[wl_protocol_dir, 'unstable/xdg-decoration/xdg-decoration-unstable-v1.xml']]
|
|
wl_protocols_source = []
|
|
wl_protocols_headers = []
|
|
|
|
foreach p: protocols
|
|
xml = join_paths(p)
|
|
wl_protocols_source += custom_target(xml.underscorify() + '_c',
|
|
input: xml,
|
|
output: '@BASENAME@.c',
|
|
command: [wayland['scanner'], 'private-code', '@INPUT@', '@OUTPUT@'],
|
|
)
|
|
wl_protocols_headers += custom_target(xml.underscorify() + '_h',
|
|
input: xml,
|
|
output: '@BASENAME@.h',
|
|
command: [wayland['scanner'], 'client-header', '@INPUT@', '@OUTPUT@'],
|
|
)
|
|
endforeach
|
|
|
|
lib_client_protocols = static_library('protocols',
|
|
wl_protocols_source + wl_protocols_headers,
|
|
dependencies: wayland['deps'][0])
|
|
|
|
client_protocols = declare_dependency(link_with: lib_client_protocols,
|
|
sources: wl_protocols_headers)
|
|
|
|
dependencies += [client_protocols, wayland['deps']]
|
|
|
|
sources += ['video/out/wayland_common.c']
|