etlp - Emby/Jellyfin 使用外部本地播放器,并回传播放记录。适配 Plex。
etlp - Emby/Jellyfin 调用 PotPlayer mpv IINA MPC VLC 播放,并回传播放进度(可关)。适配 Plex。
特性
以下播放器支持回传进度
基础配置
.zip 到任意英文路径。 发布页etlp-mpv-py-embed-win32.zip (mpv 播放器 | Windows only | 快捷键见 FAQ).bat 运行方法。etlp-python-embed-win32.zip (Windows only)embyToLocalPlayer_config.ini 中的播放器路径,以及播放器选择。embyToLocalPlayer.zip (Windows / Linux / macOS)embyToLocalPlayer_config.ini 中的播放器路径,以及播放器选择。前置说明
serving at 127.0.0.1:58000 为服务启动成功。Windows
embyToLocalPlayer_debug.batmpv_embed 文件夹。.bat 就提示找不到 Python,.bat 按 3 查看开机文件夹里面embyToLocalPlayer.vbs是否被杀毒软件删了。.vbs 模板:CreateObject("Wscript.Shell").Run """<Python所在文件夹>\python.exe"" ""<脚本所在文件夹>\embyToLocalPlayer.py""" , 0, True
FAQ 内容,以 GitHub 为准。
https://github.com/kjtsune/embyToLocalPlayer#faq
macOS / LinuxmacOS / Linux
macOS
chmod +x *.command 回车。etlp_run.command, 若无报错,可播放测试。brew install screen/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"etlp_run.command(方案一)| etlp_run_via_screen.command(方案二) 文件拖入 >
点击运行后测试播放 > 文件 > 存储 > 取名并保存到应用程序。cd ~/App/embyToLocalPlayer && nohup ./etlp_run.command > run.log 2&>1 &Linux
apt install python3-tk(没报错不装也行)
添加 etlp_run.command 执行权限,并用终端打开。
正常播放后,加入开机启动项(无窗口运行):
[Unit]
Description=embyToLocalPlayer
After=graphical-session.target
[Service]
ExecStart=/root/etlp/etlp_run.command
ExecStartPre=/bin/bash -c "until loginctl show-session $(loginctl | grep $USER | awk '{print $1}') -p Type | grep -q -e 'x11\|wayland'; do sleep 1; done; sleep 2"
TimeoutStartSec=infinity
[Install]
WantedBy=graphical-session.target
Flatpak: mpv config directory is ~/.var/app/io.mpv.Mpv/config/mpv
Flatpak: mpv scripts directory is ~/.var/app/io.mpv.Mpv/config/mpv/scripts
通用说明
如何切换模式
.ini 里填好路径替换规则,服务端在本地则不用填。.bat 按 4 有辅助配置程序。dev > path_check = yes 会检查文件是否存在,转换 NFC/NFD。兼容性更高,日志更清楚。(但会慢一点)如何更新
.bat 按 6.ini 所在的文件夹打开终端,运行 python3 utils/update.pyembyToLocalPlayer_diff.ini如何反馈
如何更新 ,更新到最新版后测试。Windows 用户换含 mpv 的便携版测试,并告知是否正常。debug.bat 选 1。macOS 或 Linux 运行 etlp_run.command 来代替。.bat/.command 窗口中的日志。选中后回车即复制,日志需要包含启动后到出现问题的部分。或者直接提供文件夹下的 log.txt.ini > [dev] > mix_log = no.bat 没有新增日志),反馈时提供在 Emby 页面点击浏览器油猴插件图标后的截图。字幕/音轨相关
剧集播放列表(连续播放|多集回传)相关
默认已启用,可在配置文件里 [playlist] 中修改。
建议不要禁用,大部分功能与播放列表绑定,禁用会缺失一些功能。
播放列表添加完成前最好不退出(大部分没事)
特别说明:若是 Emby/Jellyfin 网页上的 全部播放/随机播放/播放列表 ,仅支持电影和音乐视频类型。
Windows:
KeyError: 'stream.mkv',看下方 FAQ。macOS
Linux
mpvmpv
mpv.conf只保留log-file 选项)并检查 mpv 日志。mpv_embed > portable_config > mpv_log.txtmpv.conf > log-file = <save path>mpv_embed
mpv.conf 是我个人使用的简易配置。mpv_embed > updater.batmpv_embed 快捷键mpv_embed 快捷键
mpv_embed > portable_config > input.conf…
mpv.net
.ini配置有播放列表选项)PotPlayerPotPlayer
提示 渲染 Pin 失败 无法播放。或者日志提示 KeyError: 'stream.mkv'
或者 pot stop, stop_sec=None 或者 请求的操作需要提升 解决方案:
按以下依次修改,每次修改后尝试播放,还不行就无解,欢迎 PR。
通用 FAQ > 如何切换模式 使用读盘模式。66d03fc13f4949948890675cf62b839b704b542a34a13a180466f93be20d5bc6本地用户可考虑:MPC-HC 自带 LAV,同样支持 madVR MPCVR BFRC 等。
网络用户或没有特殊需求的话,mpv 系的播放器综合体验较好。
[可选] 选项 > 播放 > 播放窗口尺寸:全屏
配置/语言/其他 > 收尾处理 > 播放完当前后退出(触发回传进度)
若使用 http 播放,可能提示地址关闭。Win8 32bit 碰到。
解决方案:本地用户使用读盘模式,或者换 pot 便携版。
安全性未知:PotPlayerPortable-220914.zip
先打开 PotPlayerPortable.exe 一次,但播放用 C:\<path_to>\PotPlayerPortable\App\PotPlayer\PotPlayer.exe
不然会要求管理员权限运行。
读盘模式可能和美化标题和混合S0的功能冲突,不过不影响使用。(FAQ > 隐藏功能 有解决方案)
其他播放器其他播放器
MPC:
IINA
设置 > 通用没有打开的窗口时退出播放完成后保存窗口打开通用 FAQ
Clash for Windows 用户:
SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1129)'))使用含 Python 的便携版用户无需安装依赖。其他用户需要安装:命令行终端运行,安装失败尝试在启用或禁用代理的环境来安装:python -m pip install requests
或者:python -m pip install requests -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com
bangumi.tv(bgm.tv) 单向同步(点格子)
[bangumi] 部分,access_token = 里[bangumi] 填写 enable_host user_name 这两项。Unauthorized 一般是令牌过期或者没填对,Windows 会自动弹出令牌生成页面。bgm.tv 的 续集 不一定是下一季,导致第几季可能关联错误(经下面处理后概率低)。续集 里:集数大于3,同时第一集的序号小于2的 续集 当作下一季的开始。类型在标题右侧灰字),跳过类型为 OVA 剧场版 WEB 等的。./python_embed/python.exe ./utils/bangumi_sync.py mark_playedpython utils/bangumi_sync.py mark_playedsimkl 单向同步
http://localhost:58000/simkl_auth ,然后保存。[simkl] 填写 enable_host client_id client_secret 这三项。etlp: simkl auth success。simkl_token.json暂无开放 Issues,或尚未同步最近议题。