面向 Emby Server 4.8.10.0 的服务端插件。它从每个 Series 下拥有独立 Primary 图片文件的 Episode 中随机选择一张,复制到 Series 对应的媒体目录,并登记为 Series 的 Primary 封面。
- 增量模式开启:仅处理没有 Primary 封面的剧集。
- 增量模式关闭:允许覆盖所选媒体库中已有的剧集封面。
- 可多选生效媒体库,并在处理前再次验证剧集所属媒体库。
- 完整媒体库扫描结束后自动执行。
- 同时监听媒体刷新完成、Episode 新增和 Episode 更新事件;扫描媒体库、加入新集或 Image Capture 更新集截图后,最后一次事件 15 秒后自动检查。
- 提供 Emby 计划任务,可手动运行。
- 同一时间只允许一个处理任务;扫描后回调和事件监听在短时间内重复触发时会安全合并。
- 不再使用
IProviderManager.SaveImage保存 Series 封面,避免图片被写入 Emby 内部metadata/library/...目录。 - 封面现在明确复制到
Series.Path对应的剧集媒体目录,也就是 STRM 所在的剧集文件夹。 - 首次创建默认使用
folder.ext;这是 Emby 电视剧 Primary 本地图片支持的标准命名之一。 - 已有 Primary 图片若本来就是剧集目录中的
folder/poster/cover/default/show.ext,重新随机时继续覆盖原文件,避免生成重复图片。 - 通过
ItemImageInfo + SetImage + UpdateToRepository把本地文件登记到 Series 数据库记录。 - 写入后重新读取 Series,严格验证数据库中的 Primary 路径必须等于剧集目录里的目标文件。
- 使用临时文件复制并更新时间戳,降低半写入风险并确保重复随机时图片标记发生变化。
Emby Server 运行账号必须对剧集媒体目录具有写权限。若目录只读,插件会记录明确错误,不会静默回退到内部 metadata 目录。
.\build.ps1或:
chmod +x build.sh
./build.sh构建产物位于 dist/Emby.RandomSeriesCover-1.0.12.zip。