archlinux 踩坑日记

N卡硬件解码

安装必要的插件

1
2
3
4
sudo pacman -S linux-headers #这个一定要装
sudo pacman -S nvidia-dkms nvidia-settings nvidia-utils #nvidia相关驱动
sudo pacman -S libva-utils #提供硬件解码的包
yay -S libva-nvidia-driver-git #重要!!!在我的电脑上libva-nvidia-driver这个包无法使用硬件加速git版才可以 浪费了我很多的时间!!!!

(可选)添加n卡驱动早启动

1
2
3
4
5
6
sudo vim /etc/mkinitcpio.conf
在第一各MODULES=()添加nvidia、nvidia_modeset、nvidia_uvm 和nvidia_drm这几个参数
-------------------------------------------------------------
MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)
-------------------------------------------------------------
同时去掉下方HOOKS=()中的 kms 这个参数

修改gurb保证能够启动

修改/etc/default/grub 中的GRUB_CMDLINE_LINUX_DEFAULT 选项添加vidia_drm.modeset=1 这一参数。

1
2
3
4
5
6
7
8
9
10
11
12
以下是我的grub中前几行的参数
—————————————————————————————————————————————————————————————
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=5 nowatchdog nvidia_drm.modeset=1 "
GRUB_CMDLINE_LINUX=""
—————————————————————————————————————————————————————————————
添加完成后使用
sudo grub-mkconfig -o /boot/grub/grub.cfg
来更新grub
要记得重启哦!

检查va-api

运行 libva-utils包 包提供的 vainfo 来检查 VA-API 的设置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
以下是我的运行结果,没出来就代表未启动硬件加速
-------------------------------------------------------------
Trying display: wayland
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: VA-API NVDEC driver [direct backend]
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain12 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileHEVCMain444 : VAEntrypointVLD
VAProfileHEVCMain444_10 : VAEntrypointVLD
VAProfileHEVCMain444_12 : VAEntrypointVLD

修改firefox配置启用硬件加速

这一段请参考官方文档