Proxmox VE(PVE)下使用(PCT)LXC搭建媒体服务器后正确开启硬件加速
配置CT渲染设备节点,开启硬件加速
默认情况下.LXC并不会自动映射dev目录下的设备节点文件.所以我们首先需要修改配置文件,使LXC自动映射dev下的设备文件.
1、首先我们需要在host(PVE) shell中确认一下host设备文件的情况,标红的参数我们需要用到:
root@pve:~# ls -l /dev/dri/ total 0 drwxr-xr-x 2 root root 80 Apr 20 12:24 by-path crw-rw---- 1 root video 226, 0 Apr 20 12:24 card0 crw-rw---- 1 root render 226, 128 Apr 20 12:24 renderD128 video id: 226, 0 render id:226, 128
2、修改LXC的配置文件,路径为/etc/pve/lxc/{你的CT ID}.conf
3、例如我的CT ID是100,所以对应的文件是/etc/pve/lxc/100.conf
4、使用编辑器打开该文件进行编辑:
vim /etc/pve/lxc/100.conf
5、将以下内容添加到文件末尾(将对应的id替换成自己的):
lxc.cgroup.devices.allow = c 226:0 rwm lxc.cgroup.devices.allow = c 226:128 rwm lxc.autodev: 1 lxc.hook.autodev:/var/lib/lxc/100/render_device_hook.sh
6、CT启动的时候,会执行lxc.hook.autodev里的内容,我们需要手动创建对应的节点文件
7、还是一样,使用编辑器创建并打开脚本文件:
vim /var/lib/lxc/100/render_device_hook.sh
8、将以下内容添加到文件中(一样,还是要替换成自己的设备id):
mkdir -p ${LXC_ROOTFS_MOUNT}/dev/dri mknod -m 666 ${LXC_ROOTFS_MOUNT}/dev/dri/card0 c 226 0 mknod -m 666 ${LXC_ROOTFS_MOUNT}/dev/dri/renderD128 c 226 128
9、最后设置文件权限:
chmod 755 /var/lib/lxc/100/render_device_hook.sh
10、这样,我们CT的配置就修改好了,现在去启动CT吧.
11、启动后,我们还需要在CT里安装VA的驱动文件,以下命令均在CT内执行:
apt-get install i965-va-driver apt-get install vainfo
12、安装完成后执行vainfo命令,如果打印如下类似信息就表明硬件转码已经可用了:
root@mediaserver ~# vainfo
error: XDG_RUNTIME_DIR not set in the environment.
error: can't connect to X server!
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.7.3)
vainfo: Driver version: Intel i965 driver for Intel(R) Kabylake - 1.7.3
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointEncSlice
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointEncSlice
VAProfileVP9Profile2 : VAEntrypointVLD
13、现在再到Jellyfin的控制台,将转码的硬件加速设置为VA API,在转码再看看CPU占用以及拖动视频的相应速度~:
Enjoy....
点击链接加入群聊三群:751529538
点击链接加入群聊二群:376877156
点击链接加入群聊【路由器交流群:622891808已满】
本站附件分享,如果附件失效,可以去找找看
饿了么红包