From 8d48f1869f671fad9fb0904d0f46ace7b2314689 Mon Sep 17 00:00:00 2001 From: Sergio Date: Fri, 4 Sep 2026 15:06:14 +0000 Subject: [PATCH] =?UTF-8?q?vaapi:=20mpv=20cierra=20su=20=C3=BAltimo=20huec?= =?UTF-8?q?o=20=E2=80=94=20decodificaci=C3=B3n=20por=20hardware?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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. --- docs/state/build-state-cosmic.json | 21 ++++++++++------- docs/state/build-state-gnome.json | 21 ++++++++++------- docs/state/build-state-kde.json | 21 ++++++++++------- docs/state/build-state-wlr.json | 19 +++++++++------ docs/state/build-state.json | 17 +++++++++----- docs/state/drenaje.json | 6 ++--- recipes/libva.toml | 37 ++++++++++++++++++++++++------ recipes/mpv.toml | 32 ++++++++++++++++++++++---- 8 files changed, 122 insertions(+), 52 deletions(-) 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",