kookxiang / jellyfin-plugin-bangumi

bgm.tv plugin for jellyfin
GNU General Public License v2.0
573 stars 24 forks source link

对整季或者媒体库使用刷新元数据功能会让单集的季号设置为0,导致显示为特典。对单集使用刷新元数据则能正确获取季号 #138

Closed HmnSn closed 2 months ago

HmnSn commented 2 months ago

在媒体库节目标签页对整季使用刷新元数据 1 2

单集的季号设置为0,导致显示为特典 4 3

在剧集页对单集使用刷新元数据 5 正确获取季号 6

如果是通过实时监控添加进来的新文件季号能正确获得,但再对整季使用刷新元数据后季号也重置为0

kookxiang commented 2 months ago

我试了下没问题,你用的是 10.9.6 之后的版本吗?

HmnSn commented 2 months ago

我试了下没问题,你用的是 10.9.6 之后的版本吗?

使用的是10.9.7版本,文件目录是”鹿乃子乃子虎视眈眈 (2024)/Season 1/鹿乃子乃子虎视眈眈 (2024) S01E01.mkv“这样的规则。试了下同样目录规则的老的完结的动画,手动刷新后也会置0

kookxiang commented 2 months ago

看看 Season 1 这层的 metadata 季号对不对?

kookxiang commented 2 months ago

可以试试这个版本,临时加了个兼容处理,感觉跟 Season 和 Episode 在 Jellyfin 内部创建先后顺序有关 https://github.com/kookxiang/jellyfin-plugin-bangumi/actions/runs/9860655822

HmnSn commented 2 months ago

看看 Season 1 这层的 metadata 季号对不对?

season.nfo的实时监控自动生成和手动刷新元数据都正常为1,对比先后两次的tvshow.nfo、season.nfo和单集nfo,只有最后单集的nfo内容有区别 1

从创建媒体库自动扫描到手动刷新一次后的日志

[2024-07-10 00:17:30.330 +08:00] [WRN] [126] MediaBrowser.Controller.Entities.BaseItem: Library folder "/var/packages/Jellyfin/target/data/data/playlists" is inaccessible or empty, skipping
[2024-07-10 00:17:30.337 +08:00] [INF] [113] Emby.Server.Implementations.Library.LibraryManager: Validating media library
[2024-07-10 00:17:30.374 +08:00] [WRN] [166] MediaBrowser.Controller.Entities.BaseItem: Library folder "/var/packages/Jellyfin/target/data/data/playlists" is inaccessible or empty, skipping
[2024-07-10 00:17:30.378 +08:00] [WRN] [113] MediaBrowser.Controller.Entities.BaseItem: Library folder "/var/packages/Jellyfin/target/data/data/playlists" is inaccessible or empty, skipping
[2024-07-10 00:17:30.386 +08:00] [INF] [126] Jellyfin.Plugin.Bangumi.Providers.SeriesProvider: Searching "鹿乃子乃子虎视眈眈 (2024)" in bgm.tv
[2024-07-10 00:17:31.825 +08:00] [WRN] [96] Jellyfin.Networking.Manager.NetworkManager: IPv6 is disabled in Jellyfin, but enabled in the OS. This may affect how the interface is selected.
[2024-07-10 00:17:33.220 +08:00] [WRN] [96] Jellyfin.Networking.Manager.NetworkManager: IPv6 is disabled in Jellyfin, but enabled in the OS. This may affect how the interface is selected.
[2024-07-10 00:17:34.241 +08:00] [INF] [96] MediaBrowser.Providers.TV.SeriesMetadataService: Creating Season "未知季" entry for "鹿乃子乃子乃子虎视眈眈"
[2024-07-10 00:17:34.243 +08:00] [ERR] [96] MediaBrowser.Providers.TV.SeasonMetadataService: Error in "Bangumi"
System.ArgumentNullException: Value cannot be null. (Parameter 'path')
   at System.ArgumentNullException.Throw(String paramName)
   at System.ArgumentNullException.ThrowIfNull(Object argument, String paramName)
   at System.ArgumentException.ThrowNullOrEmptyException(String argument, String paramName)
   at Emby.Server.Implementations.Library.LibraryManager.FindByPath(String path, Nullable`1 isFolder)
   at Jellyfin.Plugin.Bangumi.Providers.SeasonProvider.GetMetadata(SeasonInfo info, CancellationToken token)
   at MediaBrowser.Providers.Manager.MetadataService`2.ExecuteRemoteProviders(MetadataResult`1 temp, String logName, Boolean replaceData, TIdType id, IEnumerable`1 providers, CancellationToken cancellationToken)
[2024-07-10 00:17:34.245 +08:00] [INF] [96] MediaBrowser.Providers.TV.SeriesMetadataService: Removing virtual season null in series "鹿乃子乃子乃子虎视眈眈"
[2024-07-10 00:17:34.245 +08:00] [INF] [96] Emby.Server.Implementations.Library.LibraryManager: Removing item, Type: "Season", Name: "未知季", Path: "", Id: 2dac6321-97e7-95b1-a091-bca7a614b333
[2024-07-10 00:17:34.446 +08:00] [WRN] [96] Jellyfin.Networking.Manager.NetworkManager: IPv6 is disabled in Jellyfin, but enabled in the OS. This may affect how the interface is selected.
[2024-07-10 00:17:36.090 +08:00] [INF] [126] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting "/var/packages/Jellyfin/target/bin/ffprobe" with args "-analyzeduration 200M -probesize 1G -i file:\"/volume5/Shared5/app/qbittorrentee/downloads/test/鹿乃子乃子虎视眈眈 (2024)/Season 1/鹿乃子乃子虎视眈眈 (2024) S01E01.mkv\" -threads 0 -v warning -print_format json -show_streams -show_chapters -show_format"
[2024-07-10 00:17:36.625 +08:00] [INF] [166] Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: use exists episode number 1 for "鹿乃子乃子虎视眈眈 (2024) S01E01.mkv"
[2024-07-10 00:17:36.625 +08:00] [INF] [166] Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: metadata for "鹿乃子乃子虎视眈眈 (2024) S01E01.mkv": "<Bangumi Episode #1324327: ガール・ミーツ・シカ>"
[2024-07-10 00:17:36.637 +08:00] [INF] [96] Emby.Server.Implementations.ScheduledTasks.TaskManager: "扫描媒体库" Completed after 0 minute(s) and 6 seconds
[2024-07-10 00:17:36.727 +08:00] [INF] [166] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory "/volume5/Shared5/app/qbittorrentee/downloads/test"
[2024-07-10 00:18:46.394 +08:00] [WRN] [166] Jellyfin.Networking.Manager.NetworkManager: IPv6 is disabled in Jellyfin, but enabled in the OS. This may affect how the interface is selected.
[2024-07-10 00:18:47.420 +08:00] [WRN] [126] Jellyfin.Networking.Manager.NetworkManager: IPv6 is disabled in Jellyfin, but enabled in the OS. This may affect how the interface is selected.
[2024-07-10 00:18:53.431 +08:00] [INF] [166] Jellyfin.Drawing.ImageProcessor: Creating image collage and saving to "/var/packages/Jellyfin/target/cache/temp/f9ad17fcb4904f7f826b4eb89b506a48.png"
[2024-07-10 00:18:54.078 +08:00] [INF] [166] Jellyfin.Drawing.ImageProcessor: Completed creation of image collage and saved to "/var/packages/Jellyfin/target/cache/temp/f9ad17fcb4904f7f826b4eb89b506a48.png"
[2024-07-10 00:18:57.846 +08:00] [INF] [166] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Starting "/var/packages/Jellyfin/target/bin/ffprobe" with args "-analyzeduration 200M -probesize 1G -i file:\"/volume5/Shared5/app/qbittorrentee/downloads/test/鹿乃子乃子虎视眈眈 (2024)/Season 1/鹿乃子乃子虎视眈眈 (2024) S01E01.mkv\" -threads 0 -v warning -print_format json -show_streams -show_chapters -show_format"
[2024-07-10 00:18:58.363 +08:00] [INF] [126] Jellyfin.Plugin.Bangumi.Providers.EpisodeProvider: metadata for "鹿乃子乃子虎视眈眈 (2024) S01E01.mkv": "<Bangumi Episode #1324327: ガール・ミーツ・シカ>"
[2024-07-10 00:19:01.043 +08:00] [INF] [166] MediaBrowser.Providers.TV.SeriesMetadataService: Creating Season "Specials" entry for "鹿乃子乃子乃子虎视眈眈"
[2024-07-10 00:19:01.045 +08:00] [ERR] [166] MediaBrowser.Providers.TV.SeasonMetadataService: Error in "Bangumi"
System.ArgumentNullException: Value cannot be null. (Parameter 'path')
   at System.ArgumentNullException.Throw(String paramName)
   at System.ArgumentNullException.ThrowIfNull(Object argument, String paramName)
   at System.ArgumentException.ThrowNullOrEmptyException(String argument, String paramName)
   at Emby.Server.Implementations.Library.LibraryManager.FindByPath(String path, Nullable`1 isFolder)
   at Jellyfin.Plugin.Bangumi.Providers.SeasonProvider.GetMetadata(SeasonInfo info, CancellationToken token)
   at MediaBrowser.Providers.Manager.MetadataService`2.ExecuteRemoteProviders(MetadataResult`1 temp, String logName, Boolean replaceData, TIdType id, IEnumerable`1 providers, CancellationToken cancellationToken)
HmnSn commented 2 months ago

可以试试这个版本,临时加了个兼容处理,感觉跟 Season 和 Episode 在 Jellyfin 内部创建先后顺序有关 https://github.com/kookxiang/jellyfin-plugin-bangumi/actions/runs/9860655822

解决了,现在能正确获得季号 2