24
12月
2021
16:20

设置硬件视频加速:简要说明

24 12月 2021 16:20

我在上网本(单核AMD C-30处理器、AMD Radeon HD 6250显卡)上配置了视频加速,现在分享一下我的经验。

对于硬件加速视频播放,必须满足三个条件:
1)硬件加速由于图形适配器支持硬件加速和图形适配器驱动程序,
2)启用VA和VDPAU(需要检查它们是否启用),
3) 设置 Mozilla Firefox 网络浏览器。

我按照[https://wiki.archlinux.org/title/]上的指南进行操作
硬件视频加速#ATI/AMD](https://wiki.archlinux.org/title/Hardware_video_acceleration#ATI/AMD)

按顺序:

1)安装必要的软件包(因为我有AMD - 我使用 AMD GPU,对于集成英特尔显卡,您将需要英特尔 Prime 软件包

仅限 Ubuntu:

sudo apt install ubuntu-restricted-extras

对于所有 Linux 操作系统:

sudo apt-get install linux-firmware mpv vdpauinfo

如果是 AMD 显卡:

sudo apt-get install xserver-xorg-video-amdgpu 

如果是英特尔显卡:

sudo apt install intel-gpu-tools
sudo intel_gpu_top

如果 nVidia 显卡 - 使用具有封闭源代码的专有驱动程序(“nvidia”),或者 开源驱动程序“nouveau”- 我推荐它。 在基于 Ubuntu 的操作系统上,Nouveau 驱动程序内置于系统中。
你只需要检查文件 /etc/X11/xorg.conf,使用哪个驱动程序,“nvidia”或“nouveau”。 对于 ATI/AMD,该文件包含行“Driver "amdgpu"。

2023 年 8 月 18 日起添加: X 服务器配置位于文件夹中 /usr/share/X11/xorg.conf.d и файле /etc/X11/xorg.conf
实践表明,拥有一个 xorg.conf 文件是可取的(没有它,命令将无法工作) inxi -Gxx или inxi -G --extra 2 )。
您需要重新启动,选择其他恢复选项(“高级恢复选项”)并进入“root”菜单,在其中运行命令:

X -configure
cp /root/xorg.conf.new /etc/X11/xorg.conf

2)重新启动。 我们检查从互联网下载的任何视频(.mp4 文件)系统是否正常工作 硬件视频加速_(建议在视频播放程序中取分辨率为720p的测试文件,例如1280x720,帧率为25fps,长度不超过2分钟)。

视频文件示例: 示例 - MP4 文件

wget url_видео_файла

mpv --hwdec=auto "filename.mp4" 

视频剪辑将开始在全屏窗口中播放。 您可以通过肉眼估计帧速率,看看是否有任何差距。
播放结束后,输入焦点将返回到终端,您需要在终端中读取最后两行:
如果有提及 瓦皮,然后是显卡和驱动的硬件加速 作品

如果出现播放错误,请使用inxi版本的显卡,并在网上寻找带有驱动程序的解决方案:

LSPCI | grep -i 显示
inxi -Gxxz

如果没有硬件视频加速,剩下的几点就没有意义;我们正在寻找第三方驱动程序。
在 Ubuntu 20.04 中安装 nVidia 显卡驱动程序的指南 )。
我的视频播放器硬件加速立即打开。 我继续...

万福检查

sudo apt-get install vainfo 
vainfo

输出应显示视频卡至少支持主要编解码器:mpeg2 和 h.264。

VAProfileH264等:

libva info: VA-API version 1.7.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so
libva info: Found init function __vaDriverInit_1_7
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.7 (libva 2.6.0)
vainfo: Driver version: Mesa Gallium driver 21.2.6 for AMD PALM (DRM 2.50.0 / 5.4.0-139-generic, LLVM 12.0.0)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple : VAEntrypointVLD
      VAProfileMPEG2Main : VAEntrypointVLD
      VAProfileVC1Simple : VAEntrypointVLD
      VAProfileVC1Main : VAEntrypointVLD
      VAProfileVC1Advanced : VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264Main : VAEntrypointVLD
      VAProfileH264High : VAEntrypointVLD
      VAProfileNone : VAEntrypointVideoProc

! 如果出现错误-1,则下载并安装 vdpau-va-驱动程序

注:VA是Intel开发的一种特殊的应用程序编程接口(API),用于使用硬件加速。 (视频加速 API)。

VDPAU检查

grep -iE 'vdpau | dri driver' /var/log/Xorg.0.log

应该写成 VDPAU 安装驱动程序(在本例中为 RADEON):

[61.505](II)RADEON(0): [DRI2] DRI 驱动程序: r600
[61.505](II)RADEON(0): [DRI2] VDPAU 驱动程序: r600

注:VDPAU 是 Unix 上用于视频装饰的开源软件接口。 (Unix 下的视频解码和演示 API)

3) 设置 Mozilla FireFox 对于硬件 YouTube 视频播放:

首先,您需要安装扩展“h264ify”:
https://addons.mozilla.org/ru/
firefox/addon/h264ify/

其次,检查 WebRender 容器是否已启用并在 FireFox 中运行。

关于:支持

在本节中 《解决方案日志》 当设备打开加速时,应使用以下内容: 价值观

  • HW_COMPOSITING 列中 - 可用
  • WebRender - 可用列中

让我们稍微配置一下配置:
关于:配置
然后更改密钥:
媒体.ffmpeg.vaapi.启用=真实 (使用VAAPI启用FFmpeg播放的硬件加速)
media.navigator.mediadatadecoder_vpx_enabled=真实 (允许 WebRTC 硬件加速 - 视频会议)
media.rdd-vpx.启用=假的 (禁用内置软件解码器VP8/VP9)
media.peerconnection.video.vp9_enabled=假的 (禁用慢速 VP9 编解码器 - 从 2024 年 7 月 5 日起添加)

在扩展面板中检查该扩展是否已在 FireFox 中启用 h264ify。 重新启动火狐浏览器。
指定设置后,视频将以低 CPU 负载播放。

附:一些说明建议将导出变量添加到 ~/.profile ,这是针对 Wayland 或 Xorg 的说明。 我没有这样做: 说明

4) 禁用窗口编辑器 康普顿 (消耗 CPU 资源 - 注释日期为 07/05/2024)并重新启动

 sudo apt remove compton && sudo shutdown -r now

过去和现在是什么

  • 启用硬件视频加速之前:YouTube 未在窗口中播放(冻结帧,仅音频)。 单核处理器利用率约为90%。
    *当AMD Radeon HD硬件加速启用时:视频在窗口中以480p视频播放,不跳过25fps,在全屏视频中为25fps;视频分辨率 720p 全屏 - 25fps;最大分辨率全高清 1080p - 帧速率约 25 fps(在播放开始时约 10-15 秒出现丢帧 - 每秒 10-15 帧)。

资料来源:
https://wiki.archlinux.org/title/Hardware_video_acceleration
https://wiki.archlinux.org/title/Firefox#硬件视频加速
*https://discourse.ubuntu.com/t/enabling-accelerated-video-decoding-in-firefox-on-ubuntu-21-04/22081



相关出版物