GithubHelp home page GithubHelp logo

Comments (17)

kookxiang avatar kookxiang commented on June 4, 2024

麻烦提供一下文件名和配置的id

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

麻烦提供一下文件名和配置的id

海贼王--S01--E1028.mkv
海贼王--S21--E1028.mkv
好像不能自动识别到bangumi的epid,其他的给tvshow.nfo设置了bangumiid都能自动识别到bangumi的epid

如果改成01季度,imdb trak bangumi都不能获取到epid
如果改成21季度,imdb和trak是能自动读到
bangumi是都算成一个季度,S21获取不到是正常 ,不太清楚这个S01 bangumi的epid为啥获取不到

tvshow.nfo是这样写的

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<tvshow>  
  <tmdbid>37854</tmdbid>
  <bangumiid>975</bangumiid>
</tvshow>

season.nfo中也填了bangumiid

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

image
Bangumi插件的设置是这样的

from jellyfin-plugin-bangumi.

chu-shen avatar chu-shen commented on June 4, 2024

手写的nfo?

我这边是jellyfin生成的👇

目录

~/Downloads/新建文件夹
$ tree -N
.
`-- ONE PIECE
    |-- tvshow.nfo
    |-- 海贼王--S01--E1018.mkv.mkv
    |-- 海贼王--S01--E1018.mkv.nfo
    |-- 海贼王--S01--E1028.mkv.mkv
    |-- 海贼王--S01--E1028.mkv.nfo
    |-- 海贼王--S21--E1019.mkv.mkv
    |-- 海贼王--S21--E1019.mkv.nfo
    |-- 海贼王--S21--E1020.mkv.mkv
    |-- 海贼王--S21--E1020.mkv.nfo
    |-- 海贼王--S21--E1027.mkv.mkv
    |-- 海贼王--S21--E1027.mkv.nfo
    |-- 海贼王--S21--E1029.mkv.mkv
    `-- 海贼王--S21--E1029.mkv.nfo

tvshow

<tvshow>
  <title>海贼王</title>
  <originaltitle>ONE PIECE</originaltitle>
  <rating>8.4</rating>
  <year>1999</year>
  <mpaa>TV-14</mpaa>
  <imdb_id>tt0388629</imdb_id>
  <tmdbid>37854</tmdbid>
  <premiered>1999-10-20</premiered>
  <releasedate>1999-10-20</releasedate>
  <enddate>1999-10-20</enddate>
  <runtime>24</runtime>
  <tvrageid>8205</tvrageid>
  <bangumiid>975</bangumiid>
  <kitsuid>12</kitsuid>
  <anilistid>21</anilistid>
  <anidbid>69</anidbid>
  <tvdbid>81797</tvdbid>
</tvshow>

海贼王--S21--E1020.mkv

<episodedetails>
  <plot>脚本
    中山智博
……
そして、その声に導かれ、サンジを救出に来たのは――ハナハナの実の能力を使ったニコ・ロビンだった!</plot>
  <lockdata>false</lockdata>
  <dateadded>2022-08-18 08:30:14</dateadded>
  <title>山治惨叫! 响彻全岛的SOS</title>
  <originaltitle>サンジ絶叫! 島中に響くSOS</originaltitle>
  <rating>8</rating>
  <year>2022</year>
  <imdbid>tt20240972</imdbid>
  <tvdbid>9177821</tvdbid>
  <runtime>22</runtime>
  <bangumiid>1084417</bangumiid>
  <kitsuid>280796</kitsuid>
  <showtitle>海贼王</showtitle>
  <episode>1020</episode>
  <season>1</season>
  <aired>2022-06-05</aired>
</episodedetails>

S01和S21其实bangumi都能获取到👇

Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: use exists episode number 1018 from file name "海贼王--S01--E1018.mkv.mkv"
Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: use exists episode number 1027 from file name "海贼王--S21--E1027.mkv.mkv"

你要是实在在意,可以尝试:

  • 重启jellyfin,然后多次刷新海贼王的元数据
  • 移除此集,刷新元数据,确认移除后再加回来👉Removing item, Type: "Episode", Name: "四皇を超えろ ルフィ反撃の鉄拳", Path: "海贼王--S01--E1028.mkv.mp4", Id: 594607e9

这边建议直接放弃,说不定哪一天它就自动好了🤣不清楚剧集的元数据是什么一个逻辑,有些番bangumi、imdb都有,有些就只有bangumi

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

手写的nfo?

我这边是jellyfin生成的👇

目录

~/Downloads/新建文件夹
$ tree -N
.
`-- ONE PIECE
    |-- tvshow.nfo
    |-- 海贼王--S01--E1018.mkv.mkv
    |-- 海贼王--S01--E1018.mkv.nfo
    |-- 海贼王--S01--E1028.mkv.mkv
    |-- 海贼王--S01--E1028.mkv.nfo
    |-- 海贼王--S21--E1019.mkv.mkv
    |-- 海贼王--S21--E1019.mkv.nfo
    |-- 海贼王--S21--E1020.mkv.mkv
    |-- 海贼王--S21--E1020.mkv.nfo
    |-- 海贼王--S21--E1027.mkv.mkv
    |-- 海贼王--S21--E1027.mkv.nfo
    |-- 海贼王--S21--E1029.mkv.mkv
    `-- 海贼王--S21--E1029.mkv.nfo

tvshow

<tvshow>
  <title>海贼王</title>
  <originaltitle>ONE PIECE</originaltitle>
  <rating>8.4</rating>
  <year>1999</year>
  <mpaa>TV-14</mpaa>
  <imdb_id>tt0388629</imdb_id>
  <tmdbid>37854</tmdbid>
  <premiered>1999-10-20</premiered>
  <releasedate>1999-10-20</releasedate>
  <enddate>1999-10-20</enddate>
  <runtime>24</runtime>
  <tvrageid>8205</tvrageid>
  <bangumiid>975</bangumiid>
  <kitsuid>12</kitsuid>
  <anilistid>21</anilistid>
  <anidbid>69</anidbid>
  <tvdbid>81797</tvdbid>
</tvshow>

海贼王--S21--E1020.mkv

<episodedetails>
  <plot>脚本
    中山智博
……
そして、その声に導かれ、サンジを救出に来たのは――ハナハナの実の能力を使ったニコ・ロビンだった!</plot>
  <lockdata>false</lockdata>
  <dateadded>2022-08-18 08:30:14</dateadded>
  <title>山治惨叫! 响彻全岛的SOS</title>
  <originaltitle>サンジ絶叫! 島中に響くSOS</originaltitle>
  <rating>8</rating>
  <year>2022</year>
  <imdbid>tt20240972</imdbid>
  <tvdbid>9177821</tvdbid>
  <runtime>22</runtime>
  <bangumiid>1084417</bangumiid>
  <kitsuid>280796</kitsuid>
  <showtitle>海贼王</showtitle>
  <episode>1020</episode>
  <season>1</season>
  <aired>2022-06-05</aired>
</episodedetails>

S01和S21其实bangumi都能获取到👇

Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: use exists episode number 1018 from file name "海贼王--S01--E1018.mkv.mkv"
Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: use exists episode number 1027 from file name "海贼王--S21--E1027.mkv.mkv"

你要是实在在意,可以尝试:

  • 重启jellyfin,然后多次刷新海贼王的元数据
  • 移除此集,刷新元数据,确认移除后再加回来👉Removing item, Type: "Episode", Name: "四皇を超えろ ルフィ反撃の鉄拳", Path: "海贼王--S01--E1028.mkv.mp4", Id: 594607e9

这边建议直接放弃,说不定哪一天它就自动好了🤣不清楚剧集的元数据是什么一个逻辑,有些番bangumi、imdb都有,有些就只有bangumi

我删了Jellyfin和他的Data文件都清理,整个的数据重新试了也不行
我季度写文件夹上的 不是写在文件名上

然后还是试了把猜测集数关了好像也不行

日志里有类似信息
Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: file "E1029.mkv" has incorrect episode index 1029, set to 1029

估计难搞 就放着不管算了

from jellyfin-plugin-bangumi.

chu-shen avatar chu-shen commented on June 4, 2024

写文件夹上也是能获取到剧集信息的

$ tree
.
`-- ONE PIECE
    |-- S01
    |   |-- E1020.mkv
    |   |-- E1020.nfo
    |   |-- E1027.mkv
    |   |-- E1027.nfo
    |   |-- E1028.mkv
    |   |-- E1028.nfo
    |   `-- season.nfo
    |-- S21
    |   |-- E1029.mkv
    |   |-- E1029.nfo
    |   `-- season.nfo
    `-- tvshow.nfo

写成这样也是能获取到的,优点是第一季里也有bangumi信息

|-- Season 1
|   |-- E1020.mkv
|   |-- E1020.nfo
|   |-- E1027.mkv
|   |-- E1027.nfo
|   |-- E1028.mkv
|   |-- E1028.nfo
|   `-- season.nfo
|-- Season 21
|   |-- E1029.mkv
|   |-- E1029.nfo
|   `-- season.nfo
`-- tvshow.nfo

确认一下

点击番剧信息里的bangumi,看下跳转的是不是这个链接:https://bgm.tv/subject/145691

复现

照着我的步骤试下:

  1. 新建目录:~/新建文件夹/ONE PIECE/Season 1/,先不忙把视频放进去
  2. 创建媒体库TEST,位置选~/新建文件夹
  3. 刷新TEST媒体库,模式选扫描新的……
  4. 确认TEST媒体库已有海贼王番剧及第一季
  5. E1021.mkv放入第一季目录下👉~/新建文件夹/ONE PIECE/Season 1/
  6. 在番剧页面刷新元数据,模式选扫描新的……
  7. 检查是否有bangumi信息

对了,bangumi上1021集前才有本集介绍信息,1022之后没有,估计这里有个判断逻辑,所以EP1028没有bangumi🥲

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

写文件夹上也是能获取到剧集信息的

$ tree
.
`-- ONE PIECE
    |-- S01
    |   |-- E1020.mkv
    |   |-- E1020.nfo
    |   |-- E1027.mkv
    |   |-- E1027.nfo
    |   |-- E1028.mkv
    |   |-- E1028.nfo
    |   `-- season.nfo
    |-- S21
    |   |-- E1029.mkv
    |   |-- E1029.nfo
    |   `-- season.nfo
    `-- tvshow.nfo

写成这样也是能获取到的,优点是第一季里也有bangumi信息

|-- Season 1
|   |-- E1020.mkv
|   |-- E1020.nfo
|   |-- E1027.mkv
|   |-- E1027.nfo
|   |-- E1028.mkv
|   |-- E1028.nfo
|   `-- season.nfo
|-- Season 21
|   |-- E1029.mkv
|   |-- E1029.nfo
|   `-- season.nfo
`-- tvshow.nfo

确认一下

点击番剧信息里的bangumi,看下跳转的是不是这个链接:https://bgm.tv/subject/145691

复现

照着我的步骤试下:

  1. 新建目录:~/新建文件夹/ONE PIECE/Season 1/,先不忙把视频放进去
  2. 创建媒体库TEST,位置选~/新建文件夹
  3. 刷新TEST媒体库,模式选扫描新的……
  4. 确认TEST媒体库已有海贼王番剧及第一季
  5. E1021.mkv放入第一季目录下👉~/新建文件夹/ONE PIECE/Season 1/
  6. 在番剧页面刷新元数据,模式选扫描新的……
  7. 检查是否有bangumi信息

对了,bangumi上1021集前才有本集介绍信息,1022之后没有,估计这里有个判断逻辑,所以EP1028没有bangumi🥲

subjectid没问题
我试了下,是因为1022之后没简介的引起的,我试着改成1020有bangumi的id了。
看来插件的获取逻辑是bgm没有简介就不会写入id,也不会获取标题
(不过我1023没有 1024和1025却又有bgm的id,1026-1029后面没,不太清楚判断机制了 不过应该和简介有没有有关)
感觉还和剧集的元数据下载优先顺序有关

这样应该算解决我的疑问了,非常感谢!!

from jellyfin-plugin-bangumi.

kookxiang avatar kookxiang commented on June 4, 2024

https://ci.appveyor.com/project/kookxiang/jellyfin-plugin-bangumi/builds/44528703/artifacts
使用这个版本覆盖一下,或者启用【始终根据文件名猜测集数】功能,应该能解决本问题

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

https://ci.appveyor.com/project/kookxiang/jellyfin-plugin-bangumi/builds/44528703/artifacts 使用这个版本覆盖一下,或者启用【始终根据文件名猜测集数】功能,应该能解决本问题

以下几次都是
ep的元数据获取是tmdb优先于bangumi
bangumiid指定975的情况
每次都会删除季度文件夹

Bangumi插件版本1.4.18.0 (三个选项均未选择的情况)
文件结构
海贼王--S21--E1020.MP4
海贼王--S21--E1021.MP4
海贼王--S21--E1022.MP4
海贼王--S21--E1023.MP4 未获取到bangumi epid
海贼王--S21--E1024.MP4
海贼王--S21--E1025.MP4
海贼王--S21--E1026.MP4 未获取到bangumi epid
海贼王--S21--E1027.MP4 未获取到bangumi epid
海贼王--S21--E1028.MP4 未获取到bangumi epid
海贼王--S21--E1029.MP4 未获取到bangumi epid

Bangumi插件版本1.4.18.0(开启了【始终根据文件名猜测集数】)
文件结构
海贼王--S21--E1020.MP4
海贼王--S21--E1021.MP4
海贼王--S21--E1022.MP4
海贼王--S21--E1023.MP4 未获取到bangumi epid
海贼王--S21--E1024.MP4
海贼王--S21--E1025.MP4
海贼王--S21--E1026.MP4 未获取到bangumi epid
海贼王--S21--E1027.MP4 未获取到bangumi epid
海贼王--S21--E1028.MP4 未获取到bangumi epid
海贼王--S21--E1029.MP4 未获取到bangumi epid

Bangumi插件版本1.4.28.0 你发的那个build(三个选项均未选择的情况)
文件结构
海贼王--S21--E1020.MP4
海贼王--S21--E1021.MP4
海贼王--S21--E1022.MP4
海贼王--S21--E1023.MP4 未获取到bangumi epid
海贼王--S21--E1024.MP4
海贼王--S21--E1025.MP4
海贼王--S21--E1026.MP4 未获取到bangumi epid
海贼王--S21--E1027.MP4 未获取到bangumi epid
海贼王--S21--E1028.MP4 未获取到bangumi epid
海贼王--S21--E1029.MP4 未获取到bangumi epid

Bangumi插件版本1.4.28.0 你发的那个build(开启了【始终根据文件名猜测集数】)
文件结构
海贼王--S21--E1020.MP4
海贼王--S21--E1021.MP4
海贼王--S21--E1022.MP4
海贼王--S21--E1023.MP4 未获取到bangumi epid
海贼王--S21--E1024.MP4
海贼王--S21--E1025.MP4
海贼王--S21--E1026.MP4 未获取到bangumi epid
海贼王--S21--E1027.MP4 未获取到bangumi epid
海贼王--S21--E1028.MP4 未获取到bangumi epid
海贼王--S21--E1029.MP4 未获取到bangumi epid

四次结果一样 不知道会不会有缓存?我每次都删了季度文件夹的 换插件也重启了
日志看了下ep的index能识别到

建议测试用例写E1020-E1029试试 看看能不能复现

from jellyfin-plugin-bangumi.

chu-shen avatar chu-shen commented on June 4, 2024

测了一下,我觉得可能的原因之一是bangumi api返回值问题

顺序

API返回值是乱序的

比如:EP1026查询的url是:https://api.bgm.tv/v0/episodes?subject_id=975&limit=50&offset=1006

返回的最后一个值是1023,小于1026,因此重新计算偏移值,导致新的查询里没有EP1026的数据

if (result.Data.Last().Order < episodeNumber)

排序后测试没有问题:var newResult = result.Data.OrderBy(x => x.Order);

“值丢失”

不清楚bangumi那边返回逻辑是啥,不过观察了下返回结果,offset是自带有前后结果的。这步是否没必要减去Offset?

var offset = Math.Min((int)episodeNumber, result.Total) - Offset;

如果减去,则EP1023无结果,1022和1024都有:https://api.bgm.tv/v0/episodes?subject_id=975&limit=50&offset=1003

直接查的话则有

其他的剧集debug是没有问题的,至于为啥没有,不负责任猜测和jellyfin有关

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

测了一下,我觉得可能的原因之一是bangumi api返回值问题

顺序

API返回值是乱序的

比如:EP1026查询的url是:https://api.bgm.tv/v0/episodes?subject_id=975&limit=50&offset=1006

返回的最后一个值是1023,小于1026,因此重新计算偏移值,导致新的查询里没有EP1026的数据

if (result.Data.Last().Order < episodeNumber)

排序后测试没有问题:var newResult = result.Data.OrderBy(x => x.Order);

“值丢失”

不清楚bangumi那边返回逻辑是啥,不过观察了下返回结果,offset是自带有前后结果的。这步是否没必要减去Offset?

var offset = Math.Min((int)episodeNumber, result.Total) - Offset;

如果减去,则EP1023无结果,1022和1024都有:https://api.bgm.tv/v0/episodes?subject_id=975&limit=50&offset=1003

直接查的话则有

其他的剧集debug是没有问题的,至于为啥没有,不负责任猜测和jellyfin有关

bgm数据的问题把
其实xx.5应该算到sp里面去 这样type=0返回的就是纯顺序的数字
其他番好像这样做了 然后海贼王没这样

他这个api还不按顺序 不然limit加大点 范围大点

from jellyfin-plugin-bangumi.

kookxiang avatar kookxiang commented on June 4, 2024

确实跟返回的顺序有关,默认的返回顺序应该是条目创建的顺序,所以会导致跟 SP 混合之后解析错误
因为目前还没有好的办法自动识别是否是 SP,所以还不能单纯的写死 type

from jellyfin-plugin-bangumi.

kookxiang avatar kookxiang commented on June 4, 2024

https://ci.appveyor.com/project/kookxiang/jellyfin-plugin-bangumi/builds/44530839/artifacts
试试这个版本?

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

https://ci.appveyor.com/project/kookxiang/jellyfin-plugin-bangumi/builds/44530839/artifacts 试试这个版本?

1023以外的都有epid了
毕竟1023位置不对 不管他也没事吧

from jellyfin-plugin-bangumi.

kookxiang avatar kookxiang commented on June 4, 2024

这集创建时间很晚,还要往后翻一页才能匹配到,所以没匹配上

from jellyfin-plugin-bangumi.

kookxiang avatar kookxiang commented on June 4, 2024

https://ci.appveyor.com/project/kookxiang/jellyfin-plugin-bangumi/builds/44531339/artifacts
这个版本应该 ok 了

from jellyfin-plugin-bangumi.

mutsumi63 avatar mutsumi63 commented on June 4, 2024

https://ci.appveyor.com/project/kookxiang/jellyfin-plugin-bangumi/builds/44531339/artifacts 这个版本应该 ok 了

嗯 这个版本ok的了

from jellyfin-plugin-bangumi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.