请教 Jellyfin 识别 Season 与 Episode 的解决方案

2021-06-15 16:58:02 +08:00
 xmt328

目前 PT 站的文件命名大部分都为 Name.Year.[Season]Episode.ExtraInfo

但是对于只有一季的剧集大多不会有 Season 信息,比如 Kidnapping.Game.2020.EP01.2160p.WEB-DL.H265.DDP2.0-LeaugeWEB.mkv

这样会导致 Jellyfin 会将其识别为 S20E20 导致元数据获取失败

因为 PT 站保种所以也不太可能手动修改文件名

目前我是手动一集一集修改元数据之后刷新,但是这样不符合一个程序员的行为方式,也很消耗体力

我尝试看过 Jellyfin 源码但是因为不了解 C#没能找到关键代码,提 Issue 好几个月了也没有得到回应

然后就想退而求其次想找找有没有 HTTP API 来批量修改,但是也只找到插件 API

对于这种情况想请教下 V2 大佬们有什么好的解决方案么

PS.应该是会有 HTTP API 的,因为控制台是可以获取 API 密钥,但是我没有找到,如果有大佬知道希望告知下

4011 次点击
所在节点    NAS
13 条回复
koor
2021-06-15 17:07:55 +08:00
建一个目录 S1,把视频全部放进去
Trim21
2021-06-15 17:35:40 +08:00
tv name/s{1,2,3}/any sub dir/what ever you want
sidkang
2021-06-15 17:39:33 +08:00
批量软链?
xi452686571
2021-06-15 17:51:54 +08:00
Season 简单, 新建一个文件夹就行。
识别技术需要改一处源代码
"jellyfin/Emby.Naming/Common/NamingOptions.cs"
252 行:
new EpisodeExpression(@"[\._ -]()[Ee][Pp]_?([0-9]+)([^\\/]*)$"),
改成
new EpisodeExpression(@"[\._ -]()[Ee]?[Pp]_?([0-9]+)([^\\/]*)$"),
亲测可行
siguretto
2021-06-15 18:25:51 +08:00
我的做法是用 jellyfin 的 api,但是 4 楼改源码正则好像更方便。不过我跑在 docker 的,改源码要改 dockerfile 了
siguretto
2021-06-15 18:29:42 +08:00
jellyfin 官方文档菜单就有 api 文档,https://api.jellyfin.org/
bao1991213
2021-06-15 19:13:15 +08:00
软链接感觉是最好的方案了,因为可以自己控制名称,我就直接全文件软链接过去,然后 tmd 批量重命名,偶尔执行一下 查找无效软链接的文件排查。
习惯了之后感觉也基本不会错。
rain2meng
2021-06-15 19:27:46 +08:00
我也觉得识别太垃圾了
sunmacarenas
2021-06-16 11:28:30 +08:00
我的方案是用 py 写个脚本下载完就全部改掉,不影响做种
xmt328
2021-06-16 12:06:45 +08:00
@siguretto 哇,居然这么明显,顺着这个我发现官方甚至还封装了 sdk,不过搜了一下没看到能改 metadata 集数的地方....

@sunmacarenas 具体要怎么做,不会找不到文件么?而且辅种也会有影响吧?
camac
2021-06-30 00:38:58 +08:00
用 tmm ( tinyMediaManager ) 预识别一下,jellyfin 选:元素读取器读取 nfo 。
c416593819
229 天前
老帖子了,想问下楼主找到什么好方案了吗
xmt328
220 天前
@c416593819 自己通过 API 写脚本处理的,地址在六楼

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/783545

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX