# embyToLocalPlayer-Python
Emby/Jellyfin 调用 PotPlayer mpv IINA MPC VLC 播放,并回传播放进度(可关)。适配 Plex。
**特性**
* 在首页也可以播放。点击原来的播放按钮就可以。可配置版本优先级(若视频多版本)。
* 播放列表(连续播放)支持,下一集保持相同版本。
* trakt.tv bangumi.tv bgm.tv 单向标记已观看支持。
* 本地挂载用户:可跳转到路径对应文件夹。(按钮在网页显示文件路径的上面)
* 未适配的播放器一般也能用,只是不会回传进度。
**以下播放器支持回传进度**
* 没特殊要求的话,mpv 系的播放器综合体验较好。
* mpv(纯快捷键)[Windows](https://sourceforge.net/projects/mpv-player-windows/files/64bit/) 。 macOS
解压后拖到应用程序即可 [macOS](https://laboratory.stolendata.net/~djinn/mpv_osx/)
* mpv.net(可鼠标)[发布页](https://github.com/stax76/mpv.net/releases)。 其他 mpv 内核的播放器一般也可以。
* PotPlayer [发布页](https://potplayer.daum.net/)
若使用 http 播放,**可能提示地址关闭**, 解决方法在 FAQ。
* MPC-HC [发布页](https://github.com/clsid2/mpc-hc/releases)
* MPC-BE [发布页](https://sourceforge.net/projects/mpcbe/files/MPC-BE/Release%20builds/)
* VLC [发布页](https://www.videolan.org/vlc/)
* IINA(macOS)[发布页](https://iina.io/) 若使用 http 播放不支持外挂字幕文件(mpv 支持)
### 使用说明
> 基础配置
1. 下载 `embyToLocalPlayer-python-embed-win32.zip` (**便携版** | Windows only)
或者 `embyToLocalPlayer.zip` (Windows / Linux / macOS)
然后解压到任意文件夹。 [发布页](https://github.com/kjtsune/embyToLocalPlayer/releases)
2. 进入文件夹,修改配置文件:`embyToLocalPlayer_config.ini` 中的播放器路径,以及播放器选择。
3. 安装 Python (勾选 add to path) [官网](https://www.python.org/downloads/)
(若使用便携版,则无需安装。)
4. 安装油猴脚本。 [发布页](https://greasyfork.org/zh-CN/scripts/448648-embytolocalplayer)
> 前置说明
* 网页闪一下是自动关闭兼容流提示。
* 播放器要退出触发回传进度。
* 日志出现 `serving at 127.0.0.1:58000` 为服务启动成功。
* **碰到问题先参考下方相关 FAQ,没按要求反馈会忽略**。
> Windows
1. 双击 `embyToLocalPlayer_debug.bat` (不要用管理员运行)
2. 若无报错,按 1(不要关闭窗口),然后网页播放测试。(点击原来的播放按钮就可以)
3. 按 2 则创建开机启动项并后台运行。
* 问题排查:
* 若双击 `.bat` 就提示找不到 Python,请使用便携版。
* 若自启失败,检查启动项是否被禁用:任务管理器 > 启动。
`.bat` 按 3 查看开机文件夹里面`embyToLocalPlayer.vbs`是否被杀毒软件删了。
若被删,可以自己创建 vbs,然后双击测试是否正常后台运行。 `.vbs` 模板:
```
CreateObject("Wscript.Shell").Run """<Python所在文件夹>\python.exe"" ""<脚本所在文件夹>\embyToLocalPlayer.py""" , 0, True
```
> macOS
1. 刚才保存的文件夹 > 右击 > 新建位于文件夹的终端窗口 `chmod +x *.command` 回车。
2. 双击 `emby_script_run.command`, 若无报错,可播放测试。
3. 开机自启(无窗口运行):
1. 方案一:直接进入下一步,但估计只适用于 Monterey 12 及之前的老版本系统。
方案二:在终端使用 Homebrew 安装 screen。
`brew install screen`
如果你没有安装 Homebrew,请先安装 Homebrew。
`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"`
2. 启动台 > 自动操作 > 文件 > 新建 > 应用程序 > 运行 Shell 脚本 >
把 `emby_script_run.command`(方案一)| `emby_script_run_via_screen.command`(方案二) 文件拖入 >
点击运行后测试播放 > 文件 > 存储 > 取名并保存到应用程序。
3. 启动台 > 刚才的应用 > 双击后台运行后再次播放测试。
4. 系统偏好设置 > 用户与群组 > 登录项 > 添加刚才的应用。
5. 如果 Monterey 12.6.6 状态栏有齿轮,把文件拖入的操作替换成写以下内容,注意更改cd目录为你保存的目录。
`cd ~/App/embyToLocalPlayer && nohup ./emby_script_run.command > run.log 2&>1 &`
> Linux
1. `apt install python3-tk`(没报错不装也行)
2. 添加 `emby_script_run.command` 执行权限,并用终端打开。
3. 正常播放后,加入开机启动项(无窗口运行):
Debian_Xfce:设置 > 会话和启动 > 应用程序自启动。
注意:只能使用用图形界面的自启动功能。利用 systemd 自启弹不出播放器,应该是权限或者环境等问题。
### FAQ
**FAQ 建议到 GitHub 查看。**
https://github.com/kjtsune/embyToLocalPlayer#faq
<details>
<summary>通用 FAQ</summary>
> 通用说明
* Python 最低支持版本为 3.8。Windows 最低支持版本为 8.1。
* 同服务器同时开启多个浏览器标签页,会造成回传进度失败假象。手动刷新一下页面,或者只开一个标签。
* 部分域名及 Plex 域名有 dns 污染,若无法播放,修改系统 DNS 或使用代理。
* 反馈群组在频道置顶,提问前先把 FAQ 看一遍,并**按要求反馈**。不含敏感数据不私聊。
小更新会频道提醒,不过应该也没什么更新的了,反馈不需要关注频道。[https://t.me/embyToLocalPlayer](https://t.me/embyToLocalPlayer)
> 如何切换模式
* 点击浏览器油猴插件图标,会有菜单可供点击切换。
* 脚本在当前服务器:启用(默认);禁用:当前域名不使用脚本。
* 读取硬盘模式:关闭 > 调用本地播放器但使用服务器网络链接。(默认)
* 读取硬盘模式:开启 > 调用本地播放器并转换服务器路径为本地文件地址。前提是本地有文件或挂载。
在 `.ini` 里填好路径替换规则,服务端在本地则不用填。`.bat` 按 4 有辅助配置程序。
出错可尝试设置:`dev` > `path_check = yes` 会检查文件是否存在。兼容性更高,日志更清楚。(但会慢一点)
* 持久性缓存模式:只看配置文件,与油猴设置不冲突,不需要开启读取硬盘模式。
> 如何更新
1. Windows: `.bat` 按 6
Linux / macOS:在 `.ini` 所在的文件夹打开终端,运行 `python3 utils/update.py`
2. 查看新旧配置的差异字段。`embyToLocalPlayer_diff.ini`
* 油猴脚本有时也要更新。
> 如何反馈
1. 运行 `debug.bat` 选1。( macOS 或 Linux 运行 `.command`)
* 若启动不成功,命令行输入 `python --version` 检查 Python 是否安装成功及版本。(便携版用户可跳过)
* Python 低于 3.8.10 的先升级试试看。(便携版用户可跳过)
* 参考`如何更新`,更新到最新版后测试。(便携版用户**不可跳过**)
2. 换播放器及换视频文件测试是否复现。
3. 截图或复制 `.bat` 窗口中的日志(选中后回车即复制)。
4. 碰到什么问题及怎么复现。
5. [可选] 关闭模糊日志。 ini > dev > `mix_log = no`
> 字幕相关
* Emby 里字幕选择无效。
外挂字幕选择有效,内置字幕会被忽略,由播放器选择。
视频文件的内置字幕当作外挂字幕处理会导致播放器语言设置失效。(外挂字幕最优先)
正常播放器都可以设置语言优先顺序。
> 剧集播放列表(连续播放|多集回传)相关
* 默认已启用,可在配置文件里 `[playlist]` 中修改。
* 播放列表添加完成前最好不退出(大部分没事)
* 特别说明:若是 Emby 网页上的 全部播放/随机播放/播放列表 ,仅支持电影和音乐视频类型。
* Windows:
* mpv:
* mpv.net:
* vlc:
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
这里为你收集整理了关于毕业设计、课程设计可参考借鉴的资料一份,质量非常高,如果你投入时间去研究几天相信肯定对你有很大的帮助。到时候你会回来感谢我的。 本资源是经过本地编译测试、可打开、可运行的项目、文件或源码,可以用于毕业设计、课程设计的应用、参考和学习需求,请放心下载。 祝愿你在这个毕业设计项目中取得巨大进步,顺利毕业! 但还需强调一下,这些项目源码仅供学习和研究之用。在使用这些资源时,请务必遵守学术诚信原则和相关法律法规,不得将其用于任何商业目的或侵犯他人权益的行为。对于任何因使用本资源而导致的问题,包括但不限于数据丢失、系统崩溃或安全漏洞,风险自担哦! 如有侵权,请联系博主删除。
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计-EmbyJellyfin 调用外部本地播放器并回传播放记录适配 Plex.zip (32个子文件)
embyToLocalPlayer-main
emby_script_run_via_screen.command 594B
embyToLocalPlayer.py 8KB
user_script
linkDoubanTrakt.js 3KB
embyToLocalPlayer.js 14KB
embyToLocalPlayer_debug.bat 2KB
utils
windows_tool.py 7KB
gui.py 7KB
conf_helper.py 1KB
players.py 38KB
downloader.py 14KB
net_tools.py 24KB
bangumi_sync.py 5KB
trakt_sync.py 6KB
trakt_api.py 7KB
emby_api.py 7KB
python_mpv_jsonipc.py 23KB
configs.py 7KB
tools.py 21KB
bangumi_api.py 10KB
update.py 2KB
qbittorrent_webui_open_file
qbittorrent_webui_open_file.png 85KB
README.md 2KB
qbittorrent_webui_open_file.js 3KB
embyBangumi
embyBangumi_config.ini 1KB
embyBangumi.py 17KB
README.md 2KB
embyToLocalPlayer_config.ini 8KB
embyDouban
embyDouban.js 27KB
embyDouban.jpg 529KB
README.md 1KB
README.md 25KB
emby_script_run.command 361B
共 32 条
- 1
资源评论
高校毕业设计
- 粉丝: 184
- 资源: 385
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于QT+C++的智能云监护仪项目,能够实时显示使用者心电、血氧、血压波形及其它各种参数+源码(毕业设计&课程设计&项目开发)
- 基于java开发的app接收硬件端传输的心音信号,具有显示心音波形,发出心音的功能+源码(毕业设计&课程设计&项目开发)
- Python 程序语言设计模式思路-行为型模式:职责链模式:将请求从一个处理者传递到下一个处理者
- 9241703124789646.16健身系统2.apk
- postgresql-16.3-1-windows-x64.exe
- Python 程序语言设计模式思路-结构型模式:装饰器讲解及利用Python装饰器模式实现高效日志记录和性能测试
- 基于YOLOv5和DeepSORT的多目标跟踪仿真与记录
- Python 程序语言设计模式思路-创建型模式:原型模式:通过复制现有对象来创建新对象,面向对象编程
- 卸载软件geek卸载软件geek
- Python 程序语言设计模式思路-创建型模式:单例模式,确保一个类的唯一实例(装饰器)面向对象编程、继承
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功