plex挂载网盘直链播放

2023-8-7|2023-9-3
bpking
bpking
type
status
date
slug
summary
tags
category
icon
password
😀
这篇文章用于plex挂载网盘作为媒体库,将plex播放链接劫持到alist网盘直链,从而播放流量不经过plex server。未经过充分测试,如果有bug请评论区留言
 

📝 TLDR:

 

实现步骤:

plex 播放连接如下:
location ~* /library/parts/(\d+)/(\d+)/file
如果是访问别人分享的plex库,播放连接如下:
location ~* /video/:/transcode/universal/start.mpd
 
通过nginx将plex的播放路由反代到 plex2alsit,由plex2alist查询plex的sqlite数据库,得到视频真实挂载地址,再通过挂载地址请求alist
获得网盘直链,再返回给plex播放器
 

配置文件说明:

goserver/config.yaml:

  1. drivePath , mountPath 在plex的影片信息中查看文件路径,比如是 /data/video/Chinese/TV/12345.mp4 然后对比 alist中这个视频的url,比如是 https://myalist.server.com:443 /onedrive/Chinese/TV/12345.mp4 那么 drivePath 就填写 /onedrive , mountPath 就填写 /data/video 程序会自动将 /data/video/Chinese/TV/12345.mp4 转换为 /onedrive/Chinese/TV/12345.mp4 ,这样就能从alist获取到文件播放链接
补充说明:如果有多个目录可以放到同一个目录下,如果是用了rclone union,可以参考alist alias设置 https://alist.nn.ci/zh/guide/advanced/alias.html
  1. url 将 https://alsitServer.com 修改为你自己的alist服务器地址
  1. token 将 alist-mytoken 修改为你自己的alsit token,在alist 后台可以找到
  1. dbPath 修改为你自己的plex数据库路径,不同的安装方式路径不同,可以参考我这里的路径找一下,可以在网上搜一下,参考链接:https://www.plexopedia.com/plex-media-server/general/data-directory/

nginx/conf.d/plex.conf:

这个是nginx反向代理的plex server地址,plex的默认端口应该是32400,看情况修改
set $plex http://172.17.0.1:32400; #plex address
 
这个是plex2alist 的地址,默认不用修改 set $goalist http://172.17.0.1:18080; # go2alist server

plex设置:

防止plex播放器自动去访问plex本身的32400端口使直链无法生效
settings ⇒ network ⇒ Custom server access URLs改为nginx地址
Enable local network discovery (GDM) 关闭
客户端直播流开最大

🤗 总结归纳

如果对你有帮助,可以考虑添加我为plex好友 yihe.hejie@gmail.com
 
 
💡
有关Plex to Alist安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
surface pro4安装官方chrome OS及windows10双系统[转]Anki化你的人生