当前位置:
文章详情

EMBY/jellyfin直推115/阿里云网盘,兼容第三方播放器

2024-01-08 13:06:09 26点赞 348收藏 48评论

前言:

有网友反馈新版Alist v3.30.0 已经支持115的302,那么就不用自己手动获取地址了,而且cookie可以通过alist来获取和管理,就更新了一下,现在也支持jellyfin了,也支持包括阿里云盘和其他所有alist支持302的网盘内容,不过不建议挂载分享链接,因为分享取消了就浪费刮削过程了。

注意:经测试网页客户端无法播放,另外此版拦截服务器转码功能,只支持直接播放源文件

准备工作:

所需软件

  • alist

  • rclone

  • nginx

  • 已经刮削好的emby/jellyfin服务器

  • 115VIP/阿里云盘ID

整体结构大概是这样的

EMBY/jellyfin直推115/阿里云网盘,兼容第三方播放器

安装过程

整体过程和上一篇相似,因为非付费版alist不能挂载为本地硬盘,使用rclone挂载webdav为本地硬盘供emby使用。

已经使用alist的用户直接从 下载脚本并修改代码这步开始

docker数据路径兼容unraid

执行下面命令

安装fuse

sudo apt-get install fuse

或者

sudo yum install fuse

安装alist

这里使用默认5244端口

mkdir -p /mnt/user/appdata

docker run -d --restart=always -v /mnt/user/appdata/alist:/opt/alist/data -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist" xhofe/alist

在alist完成115、阿里云盘的登录并记录管理员密码

安装rclone

进入docker完成挂载webdav,如果不知道如何设置的可以跟着视频操作

这里需要在宿主机创建好conf文件复制过去 不然docker无法启动

mkdir /mnt/user/appdata/rclone

cp /root/.config/rclone/rclone.conf /mnt/user/appdata/rclone

这里使用了只读挂载,网盘挂载路径是/mnt/alist

docker run -d --restart=always --name=rclone --volume /mnt/user/appdata/rclone:/config/rclone --volume /mnt/alist:/data/mount:shared --device /dev/fuse --cap-add SYS_ADMIN --security-opt apparmor:unconfined rclone/rclone mount alist: /data/mount --allow-other --allow-non-empty --read-only --vfs-read-chunk-size=4M --buffer-size=32M

如果要卸载重启

umount /mnt/alist

docker restart rclone

emby也要添加这个挂载点mnt/alist:/mnt/alist:shared

docker run -itd --restart=always --name embyserver -p 8096:8096 -e TZ=Asia/Shanghai -e PUID=0 -e PGID=0 --add-host=api.themoviedb.org:13.224.161.90 --add-host=api.themoviedb.org:13.35.8.65 --add-host=api.themoviedb.org:13.35.8.93 --add-host=api.themoviedb.org:13.35.8.6 --add-host=api.themoviedb.org:13.35.8.54 --add-host=image.tmdb.org:138.199.37.230 --add-host=image.tmdb.org:108.138.246.49 --add-host=api.thetvdb.org:13.225.89.239 --add-host=api.thetvdb.org:192.241.234.54 --volume /mnt/alist:/mnt/alist:shared emby/embyserver

下载脚本并修改代码

没nano的可以用vim或者vi

wget https://gitee.com/sonata1/code-snippet/raw/master/%E6%9D%82%E4%B8%83%E6%9D%82%E5%85%AB/emby115/alist_emby_nginx.tar.gz

tar -xzvf alist_emby_nginx.tar.gz -C /mnt/user/appdata

nano /mnt/user/appdata/chronos-emby/scripts/emby115/emby115.py

修改emby_www 为外网访问路径 默认填 http://ip:8097

修改emby_loc为内网emby服务地址172.17.0.1是docker默认主机地址

如果映射到主机8096就不用动了

挂载字典填入本地挂载点和115挂载点

比如115网盘的/电影,挂载到了/mnt/115,填{'/mnt/115':'/电影',}

如果挂载点和示例一样是/mnt/alist就不用修改了

多挂载点依次填入

如果5001端口被占用或者emby服务器端口不是8096需要修改nginx配置文件

修改成对应端口即可

jellyfin需要生成一个api_key填入,emby不需要

EMBY/jellyfin直推115/阿里云网盘,兼容第三方播放器EMBY/jellyfin直推115/阿里云网盘,兼容第三方播放器

docker run --restart=always --name=nginx-emby --hostname=nginx-emby -p 8097:80 --net=bridge -v /mnt/user/appdata/nginx-emby:/etc/nginx -v /tmp/dockernginx/cache:/tmp/dockernginx/cache -v /tmp/dockernginx/tmp:/tmp/dockernginx/tmp -d nginx

docker run -itd -p 5001:5001 --name=chronos-emby --net=bridge --restart=always -v /mnt/user/appdata/chronos-emby:/chronos -e PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple simsemand/chronos

修改完成后运行docker

之后用emby客户端登录新的地址即可

不知道为什么测试时jellyfin桌面客户端时好时坏,建议用jellyfin mpv播放

jellyfin安卓客户端不要选web模式

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
48评论

  • 精彩
  • 最新
  • 我自己简单改了个版本,用nginx配合njs把文件路径直接替换拼接成alist的地址,然后302返回给客户端了。没有像你那样根据alist地址再get下 判断302获取header的location。 客户端播放器基本都支持302,所以我那种方法也是可以的

    校验提示文案

    提交
    能用就行哈,主要我还想后续改造下刮削过程

    校验提示文案

    提交
    请问修改版能分享下吗

    校验提示文案

    提交
    还有6条回复
    收起所有回复
  • 有木有群晖的用户成功的,挂载成功了,反代端口也成功了,但是无法播放。提示无法兼容的流,内容是读取到了,但又无法播放

    校验提示文案

    提交
    emby不能用么?那先不要用了。等下一个版本集成到一个容器里吧

    校验提示文案

    提交
    不知道是不是群晖的问题。用反代的端口,无法播放。连cd2套的也没法,rclone挂载的本地也不行。等你容器集成

    校验提示文案

    提交
    收起所有回复
  • 群晖借助clouddrive挂载为本地,其他按照楼主方法失败。不知道哪里出错了

    校验提示文案

    提交
    那你还需要alist,cd和alist用一个就好了

    校验提示文案

    提交
    为了走302啊

    校验提示文案

    提交
    收起所有回复
  • cd2好用rclone玩不转

    校验提示文案

    提交
    肯定是rclone好用啊,命令行运行,可调参数多,之前不间断跑PB级数据都没问题

    校验提示文案

    提交
    那快出一期rc的设置教程,我有个小问题想咨询一下,就是我最近不是尝试用emby,plex扫描挂载的网盘,用的是istore软件中心内置的,我用docker直接拉镜像总是出问题,所以只能用它自带的,装好后扫不到本地挂载的网盘目录,昨天突然出来了,结果在我设置外网访问时候突然进不去了只能回复出厂,然后又操作一遍又看不到这个目录了,这是什么情况怎么解决呢?

    校验提示文案

    提交
    收起所有回复
  • 教程内网地址172.17.0.1,我用谷歌云,显示内部IP是10.170.xxx,是用10开头的还是172开头的呢。小白不懂

    校验提示文案

    提交
    172 因为172是docker的网段

    校验提示文案

    提交
    不过10也行反正是主机的地址就可以

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 有2个地方没懂,302是指端口转发吗?另外文章提到“非付费版alist不能挂载为本地硬盘”。好像没看过收费版。我个人情况是用的3.29版+手动抓115cookies,用RaiDrive挂成本地盘后,配合jellyfin,用115的元数据和nfo数据来建立播放库。遇到的问题是115只有半速1M/S,以及nfo文件会重复上传。想问下楼主新的方法挂在115是否能达到免费115的2M/S。

    校验提示文案

    提交
    免费就不要用了不好用,不过我有一个解决方式,就是秒传到阿里云盘,免费阿里云能到4m左右

    校验提示文案

    提交
    阿里云有限速100kb/s,115我试了试原来下载是双线程每条线程1M/S,挂载alist只有单线程所以就1M/S。码率不太高的视频是可以播的。另外就是必须得用第三方软件挂载webdav为本地盘才能给jellyfin使用,付费版的alist怎么获取。第三方的webdav挂载软件广告太多。

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 被小雅秒杀 [观察]

    校验提示文案

    提交
    小雅的问题是基于HASH分享,115之前能秒传的时候也可以做,还有就是单线程播放115速度比阿里云快不少,200m下行跑满

    校验提示文案

    提交
    关键得结合实际使用场景来看 [观察] 小雅明显占优啊

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 生成了alist 115 302的strm文件,用的动态公网ddns,kodi可以直链,但是emby播放还是走本地,搜了下要ngnix反代,不知道如何设置。不知道大佬什么时候在出个strm反代教程

    校验提示文案

    提交
    不用strm了 有新的解决方式

    校验提示文案

    提交
    这个牛了 不知道啥时候大佬能出教程

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 按照教程一步一步走完,最后公网ip访问8097的时候,播放视频出现“当前没有兼容的流“,app和网页都是这个情况,求解

    校验提示文案

    提交
    不是群晖吧,还有就是需要运行一下core脚本最好也重启下cron里的容器回头我找找代码

    校验提示文案

    提交
    不是群晖,是ubuntu

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 有时间的话下期优化一下刮削时间过长的问题

    校验提示文案

    提交
  • 对了,建议自用,滥用的话容易封号

    校验提示文案

    提交
  • 这个比上一个看着复杂太多了

    校验提示文案

    提交
  • 我选择potplayer直接拖入整个webdav创建播放列表,也能自动实时更新。无聊了还能看个电视直播。简单粗暴无脑操作。

    校验提示文案

    提交
  • 我之前115被盗了,好几年。被绑定了手机,我就一直懒着找。后来去年,闲着无聊,想了好多办法,最终找回来了。一看里面,惊了我,里面7.83T的你们喜欢的。。

    校验提示文案

    提交
  • 这个看完 还是不懂vps上怎么用 这个好像是本地设置吧

    校验提示文案

    提交
  • 这种是不是不支持用infuse 播放走302直链?

    校验提示文案

    提交
提示信息

取消
确认
评论举报

最新文章 热门文章
348
扫一下,分享更方便,购买更轻松