gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 1182Shell 87Rust 63Markdown 541592 Definiciones

vaapi: mpv cierra su último hueco — decodificación por hardware

libva sube al corpus y la copia de incoming-kde se JUBILA (git mv, no copia: dos
ficheros para un artefacto es el cuadro de las dos glib esperando a derivar). La
mudanza fue gratis y medida antes: las cinco deps de libva viven sólo en el
corpus, así que incoming-kde ya las resolvía por caída al padre y hammer hash dio
el MISMO ArtifactHash en las dos rutas (b3:405c6211).

libva pasa a -Dwith_wayland=yes, que eso SÍ cambia el hash. La razón está en
mpv/meson.build:1464: el feature `vaapi` se requiere contra
`vaapi-drm or vaapi-wayland or vaapi-x11 or vaapi-win32` ⇒ -Dvaapi=enabled a
secas no habilita NADA. De los cuatro backends, x11/win32 están fuera por
Wayland-only y vaapi-drm exige features[drm] de mpv, apagado porque vo=drm pide
libdisplay-info. Queda vaapi-wayland, que pide libva-wayland.pc.

Evidencia, no sólo sello: meson lista «vaapi vaapi-wayland» entre los features
habilitados, y el binario sellado trae NEEDED libva.so.2 + libva-wayland.so.2.

Radio medido antes de tocar: 2 dependientes (kpipewire, spectacle), los dos
reconstruidos. Las 7 imágenes siguen en 0 en deuda.

⚠ El driver es RUNTIME (intel-media-driver / gallium VA por dlopen): que esto
selle y que --hwdec=vaapi funcione en una máquina son cosas distintas.

8d48f1869f671fad9fb0904d0f46ace7b2314689 · por Sergio · (hace 1 mes) · padre 269e8410f · ver el árbol en este commit

Delta semántico

Ninguna definición cambió: el cambio es de texto, documentación o datos.

8 archivos · +122 −52

diff --git a/docs/state/build-state-cosmic.json b/docs/state/build-state-cosmic.json
index 5f330c3e..9e68c2ad 100644
--- a/docs/state/build-state-cosmic.json
+++ b/docs/state/build-state-cosmic.json
@@ -37,8 +37,8 @@
   },
   "escritorio-cosmic": {
    "raices": 40,
-   "clausura": 134,
-   "sealed": 134
+   "clausura": 135,
+   "sealed": 135
   },
   "escritorio-mirada": {
    "raices": 14,
@@ -9803,19 +9803,23 @@
     "samurai",
     "python3",
     "pkgconf",
-    "libdrm"
+    "libdrm",
+    "wayland"
    ],
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:405c6211caceafb93a2a6c72789b5312d65f931909f47669bfa67b5ca1996fe1",
+   "hash": "b3:949a1a172d33e5d532f4d77986d05634093b5168f7a60be793bea2c1d9f97b6f",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
    "perfiles": [
-    "escritorio-kde"
+    "escritorio-cosmic",
+    "escritorio-gnome",
+    "escritorio-kde",
+    "escritorio-sway"
    ],
-   "dependientes_total": 2
+   "dependientes_total": 3
   },
   "libwebp": {
    "iname": "libwebp",
@@ -11108,6 +11112,7 @@
     "libass",
     "libunibreak",
     "lua5.2",
+    "libva",
     "pipewire",
     "alsa-lib",
     "mesa",
@@ -11130,7 +11135,7 @@
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:0bdd2a67dd8c2877c1a426f2c2913e90d95eae42348583b34b7fe9e574c55049",
+   "hash": "b3:82f127e4f52fe8476c683d549b36dfc2f0c5d27651370cf76911d2f66a291ffa",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
@@ -15983,7 +15988,7 @@
     "escritorio-mirada",
     "escritorio-sway"
    ],
-   "dependientes_total": 152
+   "dependientes_total": 153
   },
   "wayland-protocols": {
    "iname": "wayland-protocols",
diff --git a/docs/state/build-state-gnome.json b/docs/state/build-state-gnome.json
index 21b5f25a..9a52b4d8 100644
--- a/docs/state/build-state-gnome.json
+++ b/docs/state/build-state-gnome.json
@@ -37,8 +37,8 @@
   },
   "escritorio-gnome": {
    "raices": 20,
-   "clausura": 158,
-   "sealed": 158
+   "clausura": 159,
+   "sealed": 159
   },
   "escritorio-mirada": {
    "raices": 14,
@@ -10465,19 +10465,23 @@
     "samurai",
     "python3",
     "pkgconf",
-    "libdrm"
+    "libdrm",
+    "wayland"
    ],
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:405c6211caceafb93a2a6c72789b5312d65f931909f47669bfa67b5ca1996fe1",
+   "hash": "b3:949a1a172d33e5d532f4d77986d05634093b5168f7a60be793bea2c1d9f97b6f",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
    "perfiles": [
-    "escritorio-kde"
+    "escritorio-cosmic",
+    "escritorio-gnome",
+    "escritorio-kde",
+    "escritorio-sway"
    ],
-   "dependientes_total": 2
+   "dependientes_total": 3
   },
   "libwebp": {
    "iname": "libwebp",
@@ -11770,6 +11774,7 @@
     "libass",
     "libunibreak",
     "lua5.2",
+    "libva",
     "pipewire",
     "alsa-lib",
     "mesa",
@@ -11792,7 +11797,7 @@
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:0bdd2a67dd8c2877c1a426f2c2913e90d95eae42348583b34b7fe9e574c55049",
+   "hash": "b3:82f127e4f52fe8476c683d549b36dfc2f0c5d27651370cf76911d2f66a291ffa",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
@@ -16986,7 +16991,7 @@
     "escritorio-mirada",
     "escritorio-sway"
    ],
-   "dependientes_total": 152
+   "dependientes_total": 153
   },
   "wayland-protocols": {
    "iname": "wayland-protocols",
diff --git a/docs/state/build-state-kde.json b/docs/state/build-state-kde.json
index 303192fb..6946734b 100644
--- a/docs/state/build-state-kde.json
+++ b/docs/state/build-state-kde.json
@@ -10720,7 +10720,7 @@
    "cls": "c",
    "queue": "incoming-kde",
    "foreign": false,
-   "hash": "b3:10e3e3e399ba84c1da8cb24b00a232d804ee4c72b672ddf53eb516bddf10250c",
+   "hash": "b3:39a3daf63887e7b566d749a848fb9fd107a08927e54ddd70d15404db1d1325c2",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
@@ -13961,19 +13961,23 @@
     "samurai",
     "python3",
     "pkgconf",
-    "libdrm"
+    "libdrm",
+    "wayland"
    ],
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:405c6211caceafb93a2a6c72789b5312d65f931909f47669bfa67b5ca1996fe1",
+   "hash": "b3:949a1a172d33e5d532f4d77986d05634093b5168f7a60be793bea2c1d9f97b6f",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
    "perfiles": [
-    "escritorio-kde"
+    "escritorio-cosmic",
+    "escritorio-gnome",
+    "escritorio-kde",
+    "escritorio-sway"
    ],
-   "dependientes_total": 2
+   "dependientes_total": 3
   },
   "libvorbis": {
    "iname": "libvorbis",
@@ -15478,6 +15482,7 @@
     "libass",
     "libunibreak",
     "lua5.2",
+    "libva",
     "pipewire",
     "alsa-lib",
     "mesa",
@@ -15500,7 +15505,7 @@
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:0bdd2a67dd8c2877c1a426f2c2913e90d95eae42348583b34b7fe9e574c55049",
+   "hash": "b3:82f127e4f52fe8476c683d549b36dfc2f0c5d27651370cf76911d2f66a291ffa",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
@@ -20494,7 +20499,7 @@
    "cls": "c",
    "queue": "incoming-kde",
    "foreign": false,
-   "hash": "b3:f304452630dc96cccb75e31d3d154bf2b9abbb849d3f2ccac7efcaf45cd69bd3",
+   "hash": "b3:f05399be8a1ac4d2396005cdde65f8ea2a35e4e96a7d8896298a9b1dadf84a30",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
@@ -22650,7 +22655,7 @@
     "escritorio-mirada",
     "escritorio-sway"
    ],
-   "dependientes_total": 152
+   "dependientes_total": 153
   },
   "wayland-protocols": {
    "iname": "wayland-protocols",
diff --git a/docs/state/build-state-wlr.json b/docs/state/build-state-wlr.json
index f877adf3..c0628dd1 100644
--- a/docs/state/build-state-wlr.json
+++ b/docs/state/build-state-wlr.json
@@ -42,8 +42,8 @@
   },
   "escritorio-sway": {
    "raices": 71,
-   "clausura": 174,
-   "sealed": 174
+   "clausura": 175,
+   "sealed": 175
   }
  },
  "sin_perfil": 645,
@@ -9301,19 +9301,23 @@
     "samurai",
     "python3",
     "pkgconf",
-    "libdrm"
+    "libdrm",
+    "wayland"
    ],
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:405c6211caceafb93a2a6c72789b5312d65f931909f47669bfa67b5ca1996fe1",
+   "hash": "b3:949a1a172d33e5d532f4d77986d05634093b5168f7a60be793bea2c1d9f97b6f",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
    "perfiles": [
-    "escritorio-kde"
+    "escritorio-cosmic",
+    "escritorio-gnome",
+    "escritorio-kde",
+    "escritorio-sway"
    ],
-   "dependientes_total": 2
+   "dependientes_total": 3
   },
   "libwebp": {
    "iname": "libwebp",
@@ -10564,6 +10568,7 @@
     "libass",
     "libunibreak",
     "lua5.2",
+    "libva",
     "pipewire",
     "alsa-lib",
     "mesa",
@@ -10586,7 +10591,7 @@
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:0bdd2a67dd8c2877c1a426f2c2913e90d95eae42348583b34b7fe9e574c55049",
+   "hash": "b3:82f127e4f52fe8476c683d549b36dfc2f0c5d27651370cf76911d2f66a291ffa",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
diff --git a/docs/state/build-state.json b/docs/state/build-state.json
index 2c584160..af180007 100644
--- a/docs/state/build-state.json
+++ b/docs/state/build-state.json
@@ -9178,19 +9178,23 @@
     "samurai",
     "python3",
     "pkgconf",
-    "libdrm"
+    "libdrm",
+    "wayland"
    ],
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:405c6211caceafb93a2a6c72789b5312d65f931909f47669bfa67b5ca1996fe1",
+   "hash": "b3:949a1a172d33e5d532f4d77986d05634093b5168f7a60be793bea2c1d9f97b6f",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
    "perfiles": [
-    "escritorio-kde"
+    "escritorio-cosmic",
+    "escritorio-gnome",
+    "escritorio-kde",
+    "escritorio-sway"
    ],
-   "dependientes_total": 2
+   "dependientes_total": 3
   },
   "libwebp": {
    "iname": "libwebp",
@@ -10441,6 +10445,7 @@
     "libass",
     "libunibreak",
     "lua5.2",
+    "libva",
     "pipewire",
     "alsa-lib",
     "mesa",
@@ -10463,7 +10468,7 @@
    "cls": "c",
    "queue": "corpus",
    "foreign": false,
-   "hash": "b3:0bdd2a67dd8c2877c1a426f2c2913e90d95eae42348583b34b7fe9e574c55049",
+   "hash": "b3:82f127e4f52fe8476c683d549b36dfc2f0c5d27651370cf76911d2f66a291ffa",
    "state": "sealed",
    "blocked_by": [],
    "unblocks": 0,
@@ -15274,7 +15279,7 @@
     "escritorio-mirada",
     "escritorio-sway"
    ],
-   "dependientes_total": 152
+   "dependientes_total": 153
   },
   "wayland-protocols": {
    "iname": "wayland-protocols",
diff --git a/docs/state/drenaje.json b/docs/state/drenaje.json
index f476c9a8..ef4643ef 100644
--- a/docs/state/drenaje.json
+++ b/docs/state/drenaje.json
@@ -22,7 +22,7 @@
   },
   "escritorio-cosmic": {
    "grafo": "docs/state/build-state-cosmic.json",
-   "nodos": 134,
+   "nodos": 135,
    "en_deuda": 0,
    "ondas": 0,
    "profundidad": 0,
@@ -31,7 +31,7 @@
   },
   "escritorio-gnome": {
    "grafo": "docs/state/build-state-gnome.json",
-   "nodos": 158,
+   "nodos": 159,
    "en_deuda": 0,
    "ondas": 0,
    "profundidad": 0,
@@ -58,7 +58,7 @@
   },
   "escritorio-sway": {
    "grafo": "docs/state/build-state-wlr.json",
-   "nodos": 174,
+   "nodos": 175,
    "en_deuda": 0,
    "ondas": 0,
    "profundidad": 0,
diff --git a/recipes/libva.toml b/recipes/libva.toml
index 1c9e3e91..ef2154d7 100644
--- a/recipes/libva.toml
+++ b/recipes/libva.toml
@@ -1,10 +1,33 @@
-# libva 2.22.0 — Video Acceleration API (libva.so + libva-drm.so). Campaña KDE (ADR 0011): **kpipewire**
-# los exige REQUIRED (`pkg_check_modules(LIBVA ... libva REQUIRED)` + libva-drm), para codificar por
-# hardware los streams que graba KPipeWireRecord.
+# libva 2.22.0 — Video Acceleration API (libva.so + libva-drm.so + libva-wayland.so). Entró por la
+# campaña KDE (ADR 0011): **kpipewire** los exige REQUIRED (`pkg_check_modules(LIBVA ... libva
+# REQUIRED)` + libva-drm) para codificar por hardware los streams que graba KPipeWireRecord.
 #
 # Es sólo la capa de despacho: los drivers reales (intel-media-driver / mesa gallium VA) son RUNTIME y
-# se cargan por dlopen — no hacen falta para compilar. Sólo backend DRM: sin X11/Wayland/GLX (evita
-# arrastrar más cadena; el driver DRM es el que usa kpipewire).
+# se cargan por dlopen — no hacen falta para compilar.
+#
+# ══ SUBIÓ AL CORPUS, Y LA COPIA DE LA COLA SE JUBILÓ (2026-09-04) ══════════════════════════════
+# Vivía en `incoming-kde/` y por eso mpv —que está en el corpus— no la alcanzaba: una receta resuelve
+# SIBLING-FIRST y después el catálogo padre, nunca una cola hermana. Ése era el último hueco de mpv:
+# sin decodificación por hardware.
+#
+# La mudanza fue GRATIS y se midió antes de hacerla, no después: las CINCO deps de esta receta
+# (meson, samurai, python3, pkgconf, libdrm) viven sólo en el corpus, o sea que `incoming-kde` ya las
+# resolvía por caída al padre ⇒ el cierre no cambia. `hammer hash` dio el MISMO ArtifactHash
+# (b3:405c6211…) en las dos rutas. Se MUEVE, no se copia: dos ficheros para un artefacto es el cuadro
+# de las dos glib esperando a que uno de los dos derive. Las recetas KDE la siguen alcanzando por
+# caída al padre.
+#
+# ══ WAYLAND ENCENDIDO — NO ES OPCIONAL PARA mpv ════════════════════════════════════════════════
+# Antes iba `-Dwith_wayland=no` («sólo backend DRM, el que usa kpipewire»). Para mpv eso NO alcanza, y
+# la razón está en su `meson.build:1464`: el feature `vaapi` se REQUIERE contra
+# `vaapi-drm or vaapi-wayland or vaapi-x11 or vaapi-win32` — o sea que **`-Dvaapi=enabled` a secas no
+# habilita nada; hace falta un backend**. De los cuatro: x11 y win32 están fuera (la distro es
+# Wayland-only), y `vaapi-drm` exige además `features['drm']` de mpv, que está apagado porque `vo=drm`
+# pide `libdisplay-info`, que no tenemos. Queda `vaapi-wayland`, que pide `libva-wayland` ⇒ esta
+# perilla. `wayland` entra a `[deps]` por el `libva-wayland.pc` que genera.
+#
+# Esto SÍ cambia el ArtifactHash (a diferencia de la mudanza) ⇒ radio medido: 2 dependientes,
+# incoming-kde/kpipewire e incoming-kde/spectacle. Los dos reconstruyen.
 name    = "libva"
 version = "2.22.0"
 license = "MIT"
@@ -23,11 +46,11 @@ flags    = []
 configure = '''
 PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release \
   -Ddefault_library=shared \
-  -Dwith_x11=no -Dwith_glx=no -Dwith_wayland=no -Dwith_win32=no -Ddisable_drm=false \
+  -Dwith_x11=no -Dwith_glx=no -Dwith_wayland=yes -Dwith_win32=no -Ddisable_drm=false \
   -Denable_docs=false
 '''
 compile = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output"
 install = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild"
 
 [deps]
-build = ["meson", "samurai", "python3", "pkgconf", "libdrm"]
+build = ["meson", "samurai", "python3", "pkgconf", "libdrm", "wayland"]
diff --git a/recipes/mpv.toml b/recipes/mpv.toml
index 78f7109b..bf494aec 100644
--- a/recipes/mpv.toml
+++ b/recipes/mpv.toml
@@ -32,9 +32,8 @@
 #                                                    la memoria del frente GNOME). No es "todavía no".
 #   vulkan, shaderc, spirv-cross                     nuestra libplacebo va `pl_has_vulkan=0`: el
 #                                                    loader arrastra el stack X11 por los WSI.
-#   vaapi (+ -drm/-wayland)                          libva vive sólo en `incoming-kde/`. ⇒ HOY NO HAY
-#                                                    DECODIFICACIÓN POR HARDWARE. Es el pendiente más
-#                                                    caro de esta receta, junto con el de abajo.
+#   vaapi-drm                                        exige `features['drm']` de mpv, apagado abajo.
+#   vaapi-x11                                        Wayland-only.
 #   drm, gbm, dmabuf-wayland                         `vo=drm` quiere `libdisplay-info`, que no está.
 #                                                    El camino de salida es EGL/Wayland, que sí está.
 #   pipewire, pulse, jack, sndio, oss, openal        ver el bloque de AUDIO.
@@ -47,6 +46,29 @@
 #   libmpv                                           nadie la consume todavía. Se prende el día que
 #                                                    entre un frontend (celluloid y compañía).
 #
+# ══ vaapi: DECODIFICACIÓN POR HARDWARE, Y POR QUÉ PIDE `libva-wayland` ═════════════════════════
+# Era el último hueco de esta receta. `libva` vivía sólo en `incoming-kde/` y el corpus no alcanza una
+# cola hermana; el 2026-09-04 subió al corpus (mudanza de hash IDÉNTICO, medida con `hammer hash`) y
+# la copia de la cola se jubiló.
+#
+# `-Dvaapi=enabled` A SECAS NO HABILITA NADA, y esto es lo que hay que saber antes de tocarlo:
+# `meson.build:1464` requiere el feature contra `vaapi-drm or vaapi-wayland or vaapi-x11 or
+# vaapi-win32`. Sin backend, la perilla se evalúa a falso — y con `enabled` eso es un error de
+# configure, no un apagado silencioso, que al menos falla ruidoso. De los cuatro backends: x11 y
+# win32 fuera (Wayland-only), y `vaapi-drm` exige además `features['drm']`, apagado porque `vo=drm`
+# pide `libdisplay-info`, que no está. Queda `vaapi-wayland`, que pide `libva-wayland.pc` ⇒ por eso
+# libva se reconstruyó con `-Dwith_wayland=yes`.
+#
+# Lo que entra al binario con el feature prendido: `video/vaapi.c`, `hwdec_vaapi.c`, el filtro
+# `vf_vavpp.c` y `dmabuf_interop_pl.c` — el interop es por libplacebo (el mismo que ya usa el vo), no
+# por GL: `dmabuf-interop-gl` es un feature aparte.
+#
+# ⚠ EL DRIVER ES RUNTIME. libva es sólo la capa de despacho; quien decodifica es
+# `intel-media-driver` o el gallium VA de mesa, cargados por `dlopen` según la GPU. Que esto selle y
+# que `--hwdec=vaapi` funcione en una máquina son dos cosas distintas: en un equipo sin driver VA
+# instalado, mpv cae a decodificación por software y no lo dice fuerte. Comprobar con
+# `mpv --hwdec=vaapi -v` y buscar la línea del driver, nunca asumirlo por el sello.
+
 # ══ AUDIO: PIPEWIRE NATIVO, CON ALSA DETRÁS ════════════════════════════════════════════════════
 # El servidor de audio de la distro es PipeWire (decisión del usuario, 2026-07-29) y desde el
 # 2026-09-03 `libpipewire-0.3` vive en el CORPUS, así que mpv le habla NATIVO: control por-stream,
@@ -115,7 +137,7 @@ link  = "dynamic"
 flags = []
 
 [build.phases]
-configure = "PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release -Dprefer_static=true -Dbuild-date=false -Dcplayer=true -Dlibmpv=false -Dtests=false -Dmanpage-build=disabled -Dhtml-build=disabled -Dpdf-build=disabled -Dwayland=enabled -Degl=enabled -Degl-wayland=enabled -Dgl=enabled -Dplain-gl=disabled -Dalsa=enabled -Dzlib=enabled -Diconv=enabled -Dvector=enabled -Dx11=disabled -Dgl-x11=disabled -Degl-x11=disabled -Dxv=disabled -Dx11-clipboard=disabled -Dvdpau=disabled -Dvulkan=disabled -Dshaderc=disabled -Dspirv-cross=disabled -Dvaapi=disabled -Dvaapi-drm=disabled -Dvaapi-wayland=disabled -Dvaapi-x11=disabled -Ddrm=disabled -Dgbm=disabled -Ddmabuf-wayland=disabled -Dpipewire=enabled -Dpulse=disabled -Djack=disabled -Dsndio=disabled -Doss-audio=disabled -Dopenal=disabled -Dsdl2-audio=disabled -Dsdl2-video=disabled -Dsdl2-gamepad=disabled -Dlua=lua5.2 -Djavascript=disabled -Dcdda=disabled -Ddvdnav=disabled -Ddvbin=disabled -Dlibbluray=disabled -Dlibarchive=disabled -Dlibavdevice=disabled -Dlcms2=disabled -Duchardet=disabled -Drubberband=disabled -Dzimg=disabled -Dvapoursynth=disabled -Djpeg=disabled -Dcaca=disabled -Dsixel=disabled -Dcplugins=disabled -Dcuda-hwaccel=disabled -Dcuda-interop=disabled"
+configure = "PYTHONPATH=/usr/lib/python3.12/site-packages meson setup output --prefix=/usr --buildtype=release -Dprefer_static=true -Dbuild-date=false -Dcplayer=true -Dlibmpv=false -Dtests=false -Dmanpage-build=disabled -Dhtml-build=disabled -Dpdf-build=disabled -Dwayland=enabled -Degl=enabled -Degl-wayland=enabled -Dgl=enabled -Dplain-gl=disabled -Dalsa=enabled -Dzlib=enabled -Diconv=enabled -Dvector=enabled -Dx11=disabled -Dgl-x11=disabled -Degl-x11=disabled -Dxv=disabled -Dx11-clipboard=disabled -Dvdpau=disabled -Dvulkan=disabled -Dshaderc=disabled -Dspirv-cross=disabled -Dvaapi=enabled -Dvaapi-wayland=enabled -Dvaapi-drm=disabled -Dvaapi-x11=disabled -Ddrm=disabled -Dgbm=disabled -Ddmabuf-wayland=disabled -Dpipewire=enabled -Dpulse=disabled -Djack=disabled -Dsndio=disabled -Doss-audio=disabled -Dopenal=disabled -Dsdl2-audio=disabled -Dsdl2-video=disabled -Dsdl2-gamepad=disabled -Dlua=lua5.2 -Djavascript=disabled -Dcdda=disabled -Ddvdnav=disabled -Ddvbin=disabled -Dlibbluray=disabled -Dlibarchive=disabled -Dlibavdevice=disabled -Dlcms2=disabled -Duchardet=disabled -Drubberband=disabled -Dzimg=disabled -Dvapoursynth=disabled -Djpeg=disabled -Dcaca=disabled -Dsixel=disabled -Dcplugins=disabled -Dcuda-hwaccel=disabled -Dcuda-interop=disabled"
 compile   = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output"
 install   = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild"
 
@@ -125,7 +147,7 @@ install   = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson ins
 [deps]
 build = [
   "meson", "samurai", "python3", "pkgconf", "linux-headers",
-  "ffmpeg", "libplacebo", "libass", "libunibreak", "lua5.2",
+  "ffmpeg", "libplacebo", "libass", "libunibreak", "lua5.2", "libva",
   "pipewire", "alsa-lib",
   "mesa", "libdrm", "wayland", "wayland-protocols", "libxkbcommon",
   "freetype", "fribidi", "harfbuzz", "fontconfig",