Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
257d035b by Alexandre Janniaux at 2026-01-24T04:25:02+00:00
modules: meson: disable wayland_deps when not found

- - - - -
3fcd4372 by Alexandre Janniaux at 2026-01-24T04:25:02+00:00
meson: hw: add vaapi dec dev support

VAAPI decoder device modules for meson (X11, DRM, Wayland variants)

- - - - -
119e23f9 by Alexandre Janniaux at 2026-01-24T04:25:02+00:00
meson: hw: vaapi: add vaapi_filters plugin

- - - - -


3 changed files:

- modules/hw/meson.build
- + modules/hw/vaapi/meson.build
- modules/meson.build


Changes:

=====================================
modules/hw/meson.build
=====================================
@@ -3,6 +3,9 @@
 # nvdec hw module
 subdir('nvdec')
 
+# vaapi hw module
+subdir('vaapi')
+
 if host_system == 'windows'
     # d3d11 interface module
     subdir('d3d11')


=====================================
modules/hw/vaapi/meson.build
=====================================
@@ -0,0 +1,57 @@
+# VAAPI decoder device modules
+
+vaapi_common_sources = files(
+    'decoder_device.c',
+    'vlc_vaapi.c',
+)
+
+# Check for VA-API backends (only if libva is available)
+if libva_dep.found()
+    libva_x11_dep = dependency('libva-x11', required: false)
+    libva_drm_dep = dependency('libva-drm', required: false)
+    libva_wayland_dep = dependency('libva-wayland', required: false)
+else
+    libva_x11_dep = disabler()
+    libva_drm_dep = disabler()
+    libva_wayland_dep = disabler()
+endif
+
+# VAAPI decoder device for X11
+vlc_modules += {
+    'name' : 'decdev_vaapi_x11',
+    'sources' : vaapi_common_sources,
+    'c_args' : ['-DHAVE_VA_X11'],
+    'dependencies' : [libva_dep, libva_x11_dep, x11_dep],
+    'enabled' : libva_dep.found() and libva_x11_dep.found() and 
x11_dep.found(),
+}
+
+# VAAPI decoder device for DRM
+vlc_modules += {
+    'name' : 'decdev_vaapi_drm',
+    'sources' : vaapi_common_sources,
+    'c_args' : ['-DHAVE_VA_DRM'],
+    'dependencies' : [libva_dep, libva_drm_dep],
+    'enabled' : libva_dep.found() and libva_drm_dep.found(),
+}
+
+# VAAPI decoder device for Wayland
+vlc_modules += {
+    'name' : 'decdev_vaapi_wl',
+    'sources' : vaapi_common_sources,
+    'c_args' : ['-DHAVE_VA_WL'],
+    'dependencies' : [libva_dep, libva_wayland_dep] + wayland_deps,
+    'enabled' : libva_dep.found() and libva_wayland_dep.found() and 
have_wayland,
+}
+
+# VAAPI filters plugin
+vlc_modules += {
+    'name' : 'vaapi_filters',
+    'sources' : files(
+        'filters.c',
+        'vlc_vaapi.c',
+        'chroma.c',
+    ),
+    'dependencies' : [libva_dep],
+    'link_with' : [chroma_copy_lib],
+    'enabled' : libva_dep.found(),
+}


=====================================
modules/meson.build
=====================================
@@ -57,6 +57,7 @@ if (host_system != 'darwin' and host_system != 'windows') or 
get_option('xcb').e
     endif
 else
     have_wayland = false
+    wayland_deps = [disabler()]
 endif
 
 # PipeWire



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/98ae9d046838e119c7afb1a781745a5279b698e9...119e23f92b63332f1e08cfa8effb16da2714c482

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/98ae9d046838e119c7afb1a781745a5279b698e9...119e23f92b63332f1e08cfa8effb16da2714c482
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance
_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to