The Linux release ffmpeg is built statically from source, and ffmpeg only autodetects --enable-vaapi when libva headers are present at configure time. Neither build path installed them, so every release shipped a static ffmpeg with no h264_vaapi encoder -- the zero-copy export silently fell back to software 100% of the time. - Containerfile + build.yml: install libva-dev + libdrm-dev so the from-source ffmpeg gets VAAPI. - build.yml: assert the release binary links libva, so a missing dep can't silently regress to a software-only build again. - deb/rpm: libva (libva2/libva-drm2/libdrm2, libva/libdrm) is a hard runtime dep -- the vaapi-enabled ffmpeg DT_NEEDEDs it, so the app won't launch without it. The VA driver is a soft recommends (absent it, export falls back to software): va-driver-all (deb), intel-media-driver/mesa-va-drivers (rpm). build.rs needs no change: releases link ffmpeg statically (its bundling path is skipped) and the AppImage is thin, taking libva from the host like libvulkan. |
||
|---|---|---|
| .. | ||
| arch | ||
| Containerfile | ||
| Makefile | ||
| container-build.sh | ||