
journeyover/plex-auto-languagesPlex Auto Languages 通过自动根据用户偏好更新电视剧的音轨和字幕设置,增强您的Plex体验。类似Netflix,它会记住每部电视剧的语言设置,且不会干扰全局设置或其他用户的偏好。
无缝语言选择: 想观看韩语原版《鱿鱼游戏》并搭配英文字幕?只需为第一集设置一次,即可轻松享受后续所有剧集。👌
每部剧自定义: 希望《曼达洛人》使用英语原声,而《权力的游戏》使用法语配音?每部剧的偏好会被独立记录。✔️
多用户支持: 完美适用于偏好多样的家庭。每位用户的音轨和字幕设置会被自动且独立地选择。✔️
使用Plex Auto Languages需满足:
Plex令牌: 如何获取令牌,请参考Plex官方指南。
Python 3.8+ 或 Docker: 应用可通过Python原生运行或作为Docker容器运行。
推荐使用Docker运行Plex Auto Languages。
Docker镜像标签:
main(开发版):
跟踪main分支的最新提交,包含最新功能,但可能不稳定。
推荐用于:开发者和测试人员。
注意:每次提交都会更新,可能包含破坏性变更。
latest(稳定版):
指向最新稳定版本,适合生产环境。
推荐用于:一般用户。
A.B.C.D(版本化发布):
特定版本标签,确保一致性和可靠性。
推荐用于:需要严格版本控制的环境。
Docker仓库:
可从以下任一仓库拉取Docker镜像:
ghcr.io/journeydocker/plex-auto-languages:<标签名>journeyover/plex-auto-languages:<标签名>Docker Compose配置:
以下是最小化的docker-compose.yml配置示例:
yamlservices: plexautolanguages: image: journeyover/plex-auto-languages:main environment: - PLEX_URL=[***] - PLEX_TOKEN=我的PLEX令牌 - TZ=Europe/Paris volumes: - ./config:/config
使用Docker CLI运行:
也可直接运行容器:
bashdocker run -d \ -e PLEX_URL=[***] \ -e PLEX_TOKEN=我的PLEX令牌 \ -e TZ=Europe/Paris \ -v ./config:/config \ journeyover/plex-auto-languages:main
按照以下步骤进行Python原生安装:
克隆仓库:
bashgit clone ***:JourneyDocker/Plex-Auto-Languages.git
安装依赖:
bashcd Plex-Auto-Languages python3 -m pip install -r requirements.txt
创建配置文件:
使用默认配置文件模板创建自己的config.yaml。仅需配置plex.url和plex.token。
运行应用:
bashpython3 main.py -c ./config.yaml
应用可通过以下方式配置:
/config/config.yaml;示例配置见config.example.yaml)yamlplex: url: "[***]" # 必需:Plex服务器URL token: "我的PLEX令牌" # 必需:Plex令牌
yamlplexautolanguages: update_level: "show" # 选项:"show"(默认)、"season" update_strategy: "all" # 选项:"all"、"next"(默认) trigger_on_play: true # 播放剧集时更新语言设置 trigger_on_scan: true # 扫描新文件时更新语言设置 trigger_on_activity: false # 浏览Plex时更新语言设置(实验性) refresh_library_on_scan: true # Plex扫描时刷新缓存的媒体库 ignore_labels: # 忽略带有这些Plex标签的剧集 - PAL_IGNORE ignore_libraries: # 更新音轨/字幕时忽略这些媒体库 - ""
使用Apprise配置通知:
yamlnotifications: enable: true apprise_configs: - "***://webhook_id/webhook_token"
yamlscheduler: enable: true schedule_time: "04:30" data_path: "" # 系统/缓存文件路径 debug: false # 启用调试日志
| 环境变量 | 默认值 | 描述 |
|---|---|---|
PLEX_URL | (无) | Plex服务器URL。将IP_ADDRESS替换为实际的Plex服务器地址。 |
PLEX_TOKEN | (无) | Plex认证令牌。 |
UPDATE_LEVEL | show | 确定更新应用于整部剧还是当前季。可选值:show、season。 |
UPDATE_STRATEGY | next | 选择更新所有剧集还是仅下一集。可选值:all、next。 |
TRIGGER_ON_PLAY | true | 设为true时,播放剧集将触发语言更新。 |
TRIGGER_ON_SCAN | true | 设为true时,扫描新文件将触发语言更新。 |
TRIGGER_ON_ACTIVITY | false | 设为true时,浏览Plex媒体库将触发语言更新。 |
REFRESH_LIBRARY_ON_SCAN | true | Plex服务器扫描媒体库时刷新缓存的媒体库。 |
IGNORE_LABELS | PAL_IGNORE | 逗号分隔的Plex标签列表。带有这些标签的剧集将被忽略。 |
IGNORE_LIBRARIES | (无) | 逗号分隔的媒体库名称列表,更新音轨/字幕时将忽略这些媒体库。 |
SCHEDULER_ENABLE | true | 启用或禁用调度器功能。 |
SCHEDULER_SCHEDULE_TIME | 02:00 | 调度器开始任务的时间(HH:MM格式)。 |
NOTIFICATIONS_ENABLE | false | 启用或禁用通知。 |
NOTIFICATIONS_APPRISE_CONFIGS | [] | 表示通知配置数组的JSON字符串。每个配置可包含urls、users和events。详情见Apprise文档:[***] |
DEBUG | false | 启用调试模式以获取详细日志。 |
[!NOTE] Plex令牌也可通过Docker secret提供,此时需在环境变量
PLEX_TOKEN_FILE中指定secret的文件路径,默认路径为/run/secrets/plex_token。
[!NOTE] 环境变量
NOTIFICATIONS_APPRISE_CONFIGS应设为表示通知配置数组的JSON字符串。每个配置可包含urls、users和events。例如:json[ {"urls": ["***://webhook_id/webhook_token"]}, {"urls": ["gotify://hostname/token"], "users": ["MyUser1", "MyUser2"]}, {"urls": ["tgram://bottoken/ChatID"], "users": ["MyUser3"], "events": ["play_or_activity"]} ]
本项目采用 MIT 许可证 授权。




manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务