1.下载模板并上传到PVElinux
国内源地址:https://mirrors.ustc.edu.cn/turnkeylinux/images/proxmox/debian-10-turnkey-mediaserver_16.0-1_amd64.tar.gz
android
二、建立CT.
第一步记得要把无特权容器的选项去掉,不然会建立不成功
模板选择咱们刚刚下载好的debian-10-turnkey-mediaserver_16.0-1_amd64.tar.gz
shell
三、配置CT渲染设备节点,开启硬件加速:vim
默认状况下.LXC并不会自动映射dev目录下的设备节点文件.因此咱们首先须要修改配置文件,使LXC自动映射dev下的设备文件.
首先咱们须要在host(pve) shell中确认一下host设备文件的状况:
iview
root@pve:~# ls -l /dev/dri/ total 0 drwxr-xr-x 2 root root 80 Aug 31 10:05 by-path crw-rw---- 1 root video 226, 0 Aug 31 10:05 card0 crw-rw---- 1 root render 226, 128 Aug 31 10:05 renderD128
=============================================================编辑器
video id: 226, 0
render id:226, 128
ide
修改LXC的配置文件,路径为/etc/pve/lxc/{你的CT ID}.conf.code
例如个人CT ID是100,因此对应的文件是/etc/pve/lxc/100.conf
使用编辑器打开该文件进行编辑:
server
vim /etc/pve/lxc/100.conf
get
将如下内容添加到文件末尾(将对应的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
CT启动的时候,会执行lxc.hook.autodev里的内容,咱们须要手动建立对应的节点文件
仍是同样,使用编辑器建立并打开脚本文件:
vim /var/lib/lxc/100/render_device_hook.sh
将如下内容添加到文件中(同样,仍是要替换成本身的设备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
最后设置文件权限:chmod 755 /var/lib/lxc/100/render_device_hook.sh
这样,咱们CT的配置就修改好了,如今去启动CT吧.
启动后,咱们还须要在CT里安装VA的驱动文件,如下命令均在CT内执行:
apt install i965-va-driver vainfo
安装完成后执行vainfo命令,若是打印以下相似信息就代表硬件转码已经可用了:
root@turnkeyMediaServer ~# vainfo error: XDG_RUNTIME_DIR not set in the environment. error: can't connect to X server! libva info: VA-API version 1.4.0 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_1_4 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.4 (libva 2.4.0) vainfo: Driver version: Intel i965 driver for Intel(R) Coffee Lake - 2.3.0 vainfo: Supported profile and entrypoints VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Simple : VAEntrypointEncSlice VAProfileMPEG2Main : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointEncSlice VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSlice VAProfileH264Main : VAEntrypointEncSliceLP VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSlice VAProfileH264High : VAEntrypointEncSliceLP VAProfileH264MultiviewHigh : VAEntrypointVLD VAProfileH264StereoHigh : VAEntrypointVLD VAProfileVC1Simple : VAEntrypointVLD VAProfileVC1Main : VAEntrypointVLD VAProfileVC1Advanced : VAEntrypointVLD VAProfileNone : VAEntrypointVideoProc VAProfileJPEGBaseline : VAEntrypointVLD VAProfileJPEGBaseline : VAEntrypointEncPicture VAProfileVP8Version0_3 : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointVLD VAProfileHEVCMain10 : VAEntrypointVLD VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile2 : VAEntrypointVLD
如今再到Jellyfin的控制台,将转码的硬件加速设置为VA API
===============================================================
jellyfin android 客户端https://repo.jellyfin.org/releases/client/android/
jellyfin androidTV 客户端https://repo.jellyfin.org/releases/client/androidtv/