流媒体服务 Jellyfin
安装
按照此过程安装:Linux | Jellyfin,使用脚本直接安装即可。
curl https://repo.jellyfin.org/install-debuntu.sh | sudo bash
核显调用失败
安装完成后按照LXC核显直通的步骤直通核显,完成后需要注册一个开机脚本,以获取到对设备的访问权限。
#!/bin/bash
chmod 666 /dev/dri/card0
chmod 666 /dev/dri/renderD128
注册开机自启服务:
mv set-gpu.sh /etc/
chmod +x /etc/set-gpu.sh
cat > /etc/systemd/system/set-gpu.service << EOF
[Unit]
Description=/etc/set-gpu.sh
ConditionPathExists=/etc/set-gpu.sh
[Service]
Type=forking
ExecStart=/etc/set-gpu.sh start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
EOF
systemctl enable set-gpu.service
完成后开机就会自动获取到设备访问权限,从而调用到GPU。
字体显示不全
解决字体:
apt install fonts-noto-cjk-extra
然后删除封面,重新提取一遍就行了。
挂载NFS
使用showmount
(先安装nfs-common这个包)查看是否能够链接:
root@Real-Server:~# showmount -e 192.168.5.4
Export list for 192.168.5.4:
/mnt/BigStorage/Media 192.168.5.5
这样就是可以连接,后面的IP是授权IP地址,在TrueNAS设置,随后设置自动挂载,编辑/etc/fstab
:
192.168.5.4:/mnt/BigStorage/Media /mnt/Media nfs defaults 0 0
这样就自动挂载到了/mnt/Media
上,这个文件夹需要自己手动创建。
媒体库
命名规范
可以在控制台的媒体库创建或删除媒体库,媒体库需要一些基础的命名规范。
对于连续剧,可以使用Name/Season.1/Name S01E01
来指定其为第一季的第一集,请注意S01E01
为Season 1 Episode 1
的缩写,表明该文件为第一季的第一集。
具体可以参考:Shows | Jellyfin
IMDB索引
如果电影名称可能造成搜刮信息出错,则可以在文件名中提供对应的IMDB ID以供IMDB索引,例如,对于电影Ted(泰迪熊),可能搜刮有误,其原文件名为Ted.1080p.x264 - I.mp4
,可以重命名为Ted.1080p.x264 [imdbid-tt1637725] - I.mp4
,只需要在文件名中添加[imdbid-$ID]
即可。
具体可以参考:Movies | Jellyfin
字幕
在可以正常搜刮出媒体信息时,仍然无法搜索到字幕,需要配置插件。
插件Open Subtitles
打开插件目录,安装Open Subtitles:
在我的插件中,打开该插件设置,配置Open Subtitles用户信息:
保存后即可搜刮出字幕。
字幕自定义
字幕命名规范
假设媒体文件为:Name.ext
,例如:Ted.mp4
英文字幕应该命名为:Name.eng.srt
,对应例子则为:Ted.eng.srt
中文字幕应该命名为:Name.chi.srt
,对应例子则为:Ted.chi.srt
默认字幕
如果配置好上述的插件,可以搜索到对应语言的字幕:
英文字幕转双语字幕
一般来说,媒体都会存在英文字幕。
搜索英语字幕:
下载最合适无广告的字幕,随后使用在线字幕翻译,地址为:在线免费翻译字幕
上传对应字幕文件,会得到一个翻译后的字幕文件,将该字幕文件直接移动到对应媒体根目录下,修改为Name.chi.srt
则会被自动识别为中文字幕文件。
若需要双语,将该中文字幕的所有内容,复制粘贴至英文字幕文件的末尾(请注意起新行)即可生成双语字幕。