Firefox-paketansvarig för Fedora tillkännagav att stöd för att använda hårdvaruacceleration för Firefox -videoavkodning med VA-API nu är klart på Fedora , eftersom acceleration tidigare bara har fungerat i Wayland-baserade miljöer, sedan Chromium VA-API-stöd implementerades på Fedora förra året.
Detta utökade stöd för hårdvaruacceleration av videoavkodning i Firefox möjliggjordes av Waylands nya backend , som använder DMABUF-mekanismen för att rita texturer och organisera buffertbyte med dessa texturer genom olika processer.
Ja, det är äntligen här. Ett och ett halvt år efter att Tom Callaway Engineering Manager @ Red Hat lade till plåstret till Chromium får vi också hårdvarubaserad videouppspelning för Firefox. Det är synd att det tog för lång tid men jag lär mig fortfarande.
VA-API-stöd i Firefox är lite specifikt, eftersom det bara fungerar i Wayland just nu. Det finns ingen teknisk anledning till det, jag har bara inte tillräckligt med tid för att implementera det för X11, så fel 1619523 väntar på modiga hackare.
Jonas Ådahl (Red Hat) hjälpte mig med Wayland-backend sedan den första Wayland-patch för fyra år sedan.
I Fedora 32 och Fedora 31 innehåller den nya versionen av Firefox 77 som standard den nya backenden när den körs i GNOME-databassessionen i Wayland, men för att möjliggöra maskinvarubaserad avkodning av video krävs också vissa ytterligare paket som måste installeras på systemet: ffmpeg, libva och libva-utils RPM Fusion repository, sammanställt med stöd för VA-API.
På system med Intel-grafikkort fungerar acceleration endast med libva-intel-drivern (libva-intel-hybrid-drivern stöds ännu inte).
För AMD-grafikprocessorer fungerar acceleration om du har standardbiblioteket radeonsi_drv_video.so , vilket är en del av paketet mesa-dri-drivers. Stöd för NVIDIA-grafikkort har ännu inte implementerats. För att bedöma VA-API-drivrutinkompatibilitet kan du använda verktyget vainfo.
Om stöd bekräftas, måste variablerna "gfx.webrender.enabled" och "widget.wayland-dmabuf-vaapi.enabled" vara inställda på sant på sidan "about:config" för att aktivera acceleration i Firefox.
När du har startat om webbläsaren måste du kontrollera aktiveringen av WebRender och den nya backend (Wayland / drm) på sidan om: support.
Därefter måste användaren se till att VA-API används för att påskynda videovisningen (det kan finnas kompatibilitetsproblem med codecs, videostorlekar och bibliotek), för vilket felsökningsläge kan aktiveras genom att starta Firefox med miljövariabeln MOZ_LOG och kontrollerar förekomsten av «VA-API FFmpeg init-framgångar.

MOZ_LOG = "PlatformDecoderModule: 5" MOZ_ENABLE_WAYLAND = 1 Firefox
Användningen av acceleration när du tittar på YouTube beror på hur filmen är kodad (H.264, AV1, etc.).
Du kan se formatet i högerklicka på snabbmenyn i avsnittet "Statistik för nördar". För att välja det format som stöds av hårdvaruavkodningssystemet kan du använda det förbättrade h264ify-plugin-programmet.
Separat noteras det att Firefox 77.0-paketen för Fedora innehåller ytterligare patchar som påverkar prestanda och stabilitet, vilka saknas i Mozillas standardversioner av Firefox 77.0. Inkluderingen av dessa patchar i huvudversionen förväntas endast i Firefox 78.0 (användare kan använda Firefox 78 beta eller nattliga versioner från Mozilla genom att starta webbläsaren med kommandot `MOZ_ENABLE_WAYLAND=1 ./firefox`).
Dessutom använder Mozilla-versioner det inbyggda libvpx-biblioteket som inte stöder VA-API för VP8/VP9-avkodning; om VP8/VP9-avkodningsacceleration krävs måste libvpx inaktiveras genom att sätta variabeln "media.ffvpx.enabled" till "about:config" false (libvpx är redan inaktiverat i paketet från Fedora-arkivet).
Slutligen, om du vill veta mer om det, kan du läsa originalartikeln på Martin Stranskys officiella webbplats.