NAS上存的电影、电视剧、纪录片等资料以海报墙的形式展示,这个很容易实现,并且功能与PLEX、Emby类似。Jellyfin的优点是可以(白嫖)硬件转码。如果是PLEX需要PLEX PASS会员,Emby需要Emby Premiere会员。而Jellyfin完全免费。
通过与xteve的搭配,完美实现局域网内IPTV播放(这里指的是与jellyfin配合,当然也可直接使用openwrt的udpxy实现)。
环境方面我们选择debian10(PVE模板),之所以使用lxc,一是因为cpu不支持vt-d(穷),二是pve可以把显卡映射到lxc容器中,lxc容器拥有着和宿主机差不多的性能(?未实际测试)。
在PVE上咱不止跑一个debian,咱还想打点零工,跑跑CDN。当然这样的结果就是IO爆炸,yysy,我觉得体验还行,除了扫描媒体库卡点。一天两块,交个电费够了。
1. 配置CT渲染设备节点,开启硬件加速
默认情况下.LXC并不会自动映射dev目录下的设备节点文件.所以我们首先需要修改配置文件,使LXC自动映射dev下的设备文件.
首先我们需要在host(pve) shell中确认一下host设备文件的情况,标红的参数我们需要用到:
ls -l /dev/dri/
修改LXC的配置文件,路径为/etc/pve/lxc/{你的CT ID}.conf.
将以下内容添加到文件末尾(将对应的设备id,容器id替换成自己的,设备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/容器ID/render_device_hook.sh
CT启动的时候,会执行lxc.hook.autodev里的内容,我们需要手动创建对应的节点文件
还是一样,使用编辑器创建并打开脚本文件:
vim /var/lib/lxc/容器ID/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/容器ID/render_device_hook.sh
现在可以启动CT, 启动后,我们还需要在CT里安装VA的驱动文件,以下命令均在CT内执行:
apt-get install i965-va-driver
apt-get install vainfo
安装完成后执行vainfo命令,如果打印如下类似信息就表明硬件转码已经可用了:
2.在debian中安装docker compose
curl -sSL https://get.daocloud.io/docker | sh
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
3.编写docker-compose.yml
version: "3"
services:
filebrowser:
image: wahyd4/aria2-ui:latest
container_name: filebrowser
ports:
- "端口:80"
- "端口:443"
volumes:
- 目录:/data
environment:
- PUID=1000
- PGID=1000
restart: unless-stopped
xteve:
image: alturismo/xteve
container_name: xteve
environment:
- PUID=1000
- PGID=1000
volumes:
- 目录:/config
- 目录:/guide2go
- 目录:/root/.xteve
ports:
- 端口:34400
restart: unless-stopped
ftp:
image: stilliard/pure-ftpd
container_name: ftp
environment:
- PUID=1000
- PGID=1000
- PASV_ADDRESS=IP地址
- FTP_USER_NAME=用户名
- FTP_USER_PASS=密码
- FTP_USER_UID=1000
- FTP_USER_GID=1000
- FTP_USER_HOME=目录
- FTP_MAX_CONNECTIONS=100
volumes:
- 目录:/home/jay
ports:
- "端口:21"
- "30000-30009:30000-30009"
restart: unless-stopped
jellyfin:
image: linuxserver/jellyfin
container_name: jellyfin
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
- UMASK_SET=022 #optional
devices:
- /dev/dri/renderD128:/dev/dri/renderD128
volumes:
- 目录:/config
- 目录:/data/tvshows
- 目录:/data/movies
- 目录:/transcode
ports:
- 8096:8096
devices:
- /dev/dri:/dev/dri
restart: unless-stopped
transmisson:
image: linuxserver/transmission
container_name: tr
environment:
- PUID=1000
- PGID=1000
- TRANSMISSION_WEB_HOME=/combustion-release/
volumes:
- 目录:/config
- 目录:/downloads
- 目录:/watch
ports:
- 端口:9091
- 51413:51413
- 51413:51413/udp
restart: unless-stopped
这里使用中科大镜像源加速下载, https://mirrors.ustc.edu.cn/help/dockerhub.html
另外需要在选项中打开嵌套,才能正常启动docker
4.配置Jellyfin
参考 https://post.smzdm.com/p/adwlg0pz/ ,不多说。地区中华人民共和国的英文是People's Republic of China,找不到China的话找找这个
5.配置Xteve
这里你需要一份m3u节目单,我抓包本地电信IPTV得到一份地址(已经过udpxy转换):
台州一套测试
http://192.168.2.1:4022/udp/233.50.201.157:5140
宁波综合高清
http://192.168.2.1:4022/udp/233.50.201.168:5140
温州一套测试
http://192.168.2.1:4022/udp/233.50.201.87:5140
宁波少体测试
http://192.168.2.1:4022/udp/233.50.201.167:5140
宁波影视测试
http://192.168.2.1:4022/udp/233.50.201.154:5140
宁波都市测试
http://192.168.2.1:4022/udp/233.50.201.153:5140
宁波生活测试
http://192.168.2.1:4022/udp/233.50.201.152:5140
宁波综合测试
http://192.168.2.1:4022/udp/233.50.201.151:5140
杭州少儿
http://192.168.2.1:4022/udp/233.50.201.25:5140
杭州影视
http://192.168.2.1:4022/udp/233.50.201.24:5140
杭州生活
http://192.168.2.1:4022/udp/233.50.201.23:5140
西湖明珠
http://192.168.2.1:4022/udp/233.50.201.22:5140
杭州综合
http://192.168.2.1:4022/udp/233.50.201.21:5140
深圳卫视高清
http://192.168.2.1:4022/udp/233.50.201.101:5140
广电直播室12
http://192.168.2.1:4022/udp/233.50.201.212:5140
河南卫视高清
http://192.168.2.1:4022/udp/233.50.201.144:5140
江西卫视高清
http://192.168.2.1:4022/udp/233.50.201.145:5140
辽宁卫视高清
http://192.168.2.1:4022/udp/233.50.201.141:5140
湖北卫视高清
http://192.168.2.1:4022/udp/233.50.201.114:5140
山东卫视高清
http://192.168.2.1:4022/udp/233.50.201.105:5140
黑龙江卫视高清
http://192.168.2.1:4022/udp/233.50.201.115:5140
河北卫视高清
http://192.168.2.1:4022/udp/233.50.201.140:5140
广东卫视高清
http://192.168.2.1:4022/udp/233.50.201.102:5140
东南卫视高清
http://192.168.2.1:4022/udp/233.50.201.146:5140
四川卫视高清
http://192.168.2.1:4022/udp/233.50.201.139:5140
重庆卫视高清
http://192.168.2.1:4022/udp/233.50.201.143:5140
天津卫视高清
http://192.168.2.1:4022/udp/233.50.201.104:5140
贵州卫视高清
http://192.168.2.1:4022/udp/233.50.201.142:5140
安徽卫视高清
http://192.168.2.1:4022/udp/233.50.201.113:5140
北京卫视高清
http://192.168.2.1:4022/udp/233.50.201.107:5140
东方卫视高清
http://192.168.2.1:4022/udp/233.50.201.125:5140
CCTV-14高清
http://192.168.2.1:4022/udp/233.50.201.124:5140
CCTV-12高清
http://192.168.2.1:4022/udp/233.50.201.123:5140
CCTV-10高清
http://192.168.2.1:4022/udp/233.50.201.122:5140
CCTV-9高清
http://192.168.2.1:4022/udp/233.50.201.121:5140
CCTV-8高清
http://192.168.2.1:4022/udp/233.50.201.199:5140
CCTV-7高清
http://192.168.2.1:4022/udp/233.50.201.120:5140
CCTV-6高清
http://192.168.2.1:4022/udp/233.50.201.198:5140
CCTV-5高清
http://192.168.2.1:4022/udp/233.50.201.197:5140
CCTV-3高清
http://192.168.2.1:4022/udp/233.50.201.196:5140
CCTV-2高清
http://192.168.2.1:4022/udp/233.50.201.119:5140
江苏卫视高清
http://192.168.2.1:4022/udp/233.50.201.106:5140
湖南卫视高清
http://192.168.2.1:4022/udp/233.50.201.103:5140
浙江少儿高清
http://192.168.2.1:4022/udp/233.50.201.138:5140
浙江新闻高清
http://192.168.2.1:4022/udp/233.50.201.137:5140
民生休闲高清
http://192.168.2.1:4022/udp/233.50.201.136:5140
影视文化高清
http://192.168.2.1:4022/udp/233.50.201.135:5140
教育科技高清
http://192.168.2.1:4022/udp/233.50.201.134:5140
浙江经视高清
http://192.168.2.1:4022/udp/233.50.201.133:5140
钱江频道高清
http://192.168.2.1:4022/udp/233.50.201.132:5140
浙江卫视高清
http://192.168.2.1:4022/udp/233.50.201.100:5140
CCTV-1高清
http://192.168.2.1:4022/udp/233.50.201.118:5140
新视觉高清
http://192.168.2.1:4022/udp/233.50.201.244:5140
甘肃卫视
http://192.168.2.1:4022/udp/233.50.201.149:5140
内蒙古卫视
http://192.168.2.1:4022/udp/233.50.201.148:5140
深圳卫视
http://192.168.2.1:4022/udp/233.50.201.45:5140
CETV4
http://192.168.2.1:4022/udp/233.50.201.172:5140
教育1台
http://192.168.2.1:4022/udp/233.50.201.75:5140
哈哈炫动
http://192.168.2.1:4022/udp/233.50.201.74:5140
金鹰卡通
http://192.168.2.1:4022/udp/233.50.201.73:5140
广西卫视
http://192.168.2.1:4022/udp/233.50.201.49:5140
河南卫视
http://192.168.2.1:4022/udp/233.50.201.44:5140
宁夏卫视
http://192.168.2.1:4022/udp/233.50.201.57:5140
山西卫视
http://192.168.2.1:4022/udp/233.50.201.51:5140
兵团卫视
http://192.168.2.1:4022/udp/233.50.201.72:5140
陕西卫视
http://192.168.2.1:4022/udp/233.50.201.59:5140
西藏卫视
http://192.168.2.1:4022/udp/233.50.201.70:5140
青海卫视
http://192.168.2.1:4022/udp/233.50.201.65:5140
江西卫视
http://192.168.2.1:4022/udp/233.50.201.53:5140
辽宁卫视
http://192.168.2.1:4022/udp/233.50.201.60:5140
湖北卫视
http://192.168.2.1:4022/udp/233.50.201.43:5140
北京卫视
http://192.168.2.1:4022/udp/233.50.201.40:5140
山东卫视
http://192.168.2.1:4022/udp/233.50.201.64:5140
旅游卫视
http://192.168.2.1:4022/udp/233.50.201.55:5140
黑龙江卫视
http://192.168.2.1:4022/udp/233.50.201.42:5140
河北卫视
http://192.168.2.1:4022/udp/233.50.201.50:5140
广东卫视
http://192.168.2.1:4022/udp/233.50.201.56:5140
东南卫视
http://192.168.2.1:4022/udp/233.50.201.58:5140
吉林卫视
http://192.168.2.1:4022/udp/233.50.201.48:5140
云南卫视
http://192.168.2.1:4022/udp/233.50.201.46:5140
四川卫视
http://192.168.2.1:4022/udp/233.50.201.61:5140
江苏卫视
http://192.168.2.1:4022/udp/233.50.201.41:5140
重庆卫视
http://192.168.2.1:4022/udp/233.50.201.66:5140
天津卫视
http://192.168.2.1:4022/udp/233.50.201.47:5140
贵州卫视
http://192.168.2.1:4022/udp/233.50.201.69:5140
安徽卫视
http://192.168.2.1:4022/udp/233.50.201.62:5140
湖南卫视
http://192.168.2.1:4022/udp/233.50.201.52:5140
东方卫视
http://192.168.2.1:4022/udp/233.50.201.68:5140
CGTN
http://192.168.2.1:4022/udp/233.50.201.126:5140
CCTV-15
http://192.168.2.1:4022/udp/233.50.201.15:5140
CCTV-13
http://192.168.2.1:4022/udp/233.50.201.13:5140
CCTV-12
http://192.168.2.1:4022/udp/233.50.201.12:5140
CCTV-11
http://192.168.2.1:4022/udp/233.50.201.11:5140
CCTV-10
http://192.168.2.1:4022/udp/233.50.201.10:5140
CCTV-8
http://192.168.2.1:4022/udp/233.50.201.19:5140
CCTV-7
http://192.168.2.1:4022/udp/233.50.201.7:5140
CCTV-6
http://192.168.2.1:4022/udp/233.50.201.18:5140
CCTV-5
http://192.168.2.1:4022/udp/233.50.201.17:5140
CCTV-4
http://192.168.2.1:4022/udp/233.50.201.4:5140
CCTV-3
http://192.168.2.1:4022/udp/233.50.201.16:5140
CCTV-2
http://192.168.2.1:4022/udp/233.50.201.2:5140
CCTV-14
http://192.168.2.1:4022/udp/233.50.201.14:5140
浙江少儿
http://192.168.2.1:4022/udp/233.50.201.33:5140
浙江新闻
http://192.168.2.1:4022/udp/233.50.201.34:5140
民生休闲
http://192.168.2.1:4022/udp/233.50.201.32:5140
影视文化
http://192.168.2.1:4022/udp/233.50.201.31:5140
教育科技
http://192.168.2.1:4022/udp/233.50.201.30:5140
浙江经视
http://192.168.2.1:4022/udp/233.50.201.29:5140
钱江频道
http://192.168.2.1:4022/udp/233.50.201.28:5140
浙江卫视
http://192.168.2.1:4022/udp/233.50.201.27:5140
CCTV-1
http://192.168.2.1:4022/udp/233.50.201.1:5140
当然这里需要使用内网观看,关于如何破解DHCP鉴权,参考:
https://koolshare.cn/thread-149406-1-1.html
对IPTV抓包以及VLAN设置,参考:
https://github.com/luckyyyyy/blog/issues/44
节目单这里推荐 http://epg.51zmt.top:8000/ ,将上面的文件上传到这个网站就能自动生成一份带台标的标准m3u文件。
导入完节目和节目单,大概是这样:
点击Fillters,新建分组
点击保存
点击Mapping,将频道和节目单映射好,绿色就可以播放了。
红色的需要自己选择默认的节目单填充(或者你自己找到别的源
就像这样
处理完没红得就可以了,进入Jellyfin添加
扫描完成后就有频道了
再添加指南:
效果:
开启硬件加速:
关于其他电影资源。。上面安装了Aria2和Tr,自行下载并添加到媒体库即可。
附录:
1.解决PVE apt update报错
vim
/etc/apt/sources.list.d/pve-enterprise.list
注释掉
#deb
https://enterprise.proxmox.com/debian/pve stretch pve-enterprise
新建 /etc/apt/sources.list.d/pve-no-subscription.list,内容为:(需要根据你的Debian版本选择
deb
https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian buster pve-no-subscription
发表评论