记录一下自己开启 Firefox 视频硬件解码的过程。
对于 Intel GPU Firefox 115 以及之后版本,Firefox 会自动在符合条件时开启硬件加速。 但对于 AMD GPU Firefox 并不会自动开启硬件加速。 因此用户需要手动配置。
第零步:安装相应的驱动及软件包,并验证 VA-API 可用
因为本文主要的话题是 Firefox ,因此这部分内容就不赘述了。
具体可以参考 Arch Wiki Hardware video acceleration 页面。
使用 vainfo
命令,看到如下输出,确认 VA-API 可用就可以进行下一步了。
$ vainfo Trying display: wayland vainfo: VA-API version: 1.19 (libva 2.19.0) vainfo: Driver version: Mesa Gallium driver 23.1.6 for AMD Radeon Graphics (renoir, LLVM 15.0.7, DRM 3.52, 6.4.11-zen1-1-zen) vainfo: Supported profile and entrypoints VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileVC1Simple : VAEntrypointVLD VAProfileVC1Main : VAEntrypointVLD VAProfileVC1Advanced : VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSlice VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSlice VAProfileHEVCMain : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointEncSlice VAProfileHEVCMain10 : VAEntrypointVLD VAProfileHEVCMain10 : VAEntrypointEncSlice VAProfileJPEGBaseline : VAEntrypointVLD VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile2 : VAEntrypointVLD VAProfileNone : VAEntrypointVideoProc
第一步:修改 about:config 配置
打开 about:config 进行如下配置,强制开启 WebRender。
第二步:重启 Firefox ,确认 Hardware video acceleration 是否生效
重启 Firefox,打开 about:support 页面。
确认 WEBRENDER、HARDWARE_VIDEO_DECODING 已经开启。
这里着重说明一点,你有可能在 env 一栏中看到 Blocklisted; failure code FEATURE_FAILURE_DISABLE_RELEASE_OR_BETA
、 Blocklisted; failure code FEATURE_HARDWARE_VIDEO_DECODING_DISABLE
这样的内容。
但只要看到 user 一栏写着 force_enabled
、 Force enabled by pref
,就说明已经开启成功了。
系统默认的配置已经被用户设置所覆盖。
Arch Linux Wiki 存在一定的误导,并不是看到 FEATURE_HARDWARE_VIDEO_DECODING_DISABLE
就必须使用 firefox-vaapi ,费时费力修改源码重新编译。
只需要到 about:config 修改上步提到的那几个配置项就OK了。
firefox-vaapi 只是让浏览器不再显示错误信息而已,完全没有必要。
再向下拉到 Media 一节,看到如下的表格便说明 Hardware video acceleration 已经成功开启生效。