aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShadowghost <Ghost_of_Stone@web.de>2023-02-04 12:34:24 +0100
committerShadowghost <Ghost_of_Stone@web.de>2023-02-04 18:39:50 +0100
commit3d4b2f840a3652490e0dbe559e5aa853a45130e2 (patch)
tree61069cafe6d88b497867d359e92da92ab9ea639f
parentd89cd188eb015cff3450e3c4f7f1e48adec52e8c (diff)
Fix BD and DVD folder recognition for tv episodes
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs16
-rw-r--r--MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs26
2 files changed, 30 insertions, 12 deletions
diff --git a/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs
index e8615e7db..27062228f 100644
--- a/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs
@@ -67,11 +67,23 @@ namespace Emby.Server.Implementations.Library.Resolvers
{
if (IsDvdDirectory(child.FullName, filename, args.DirectoryService))
{
- videoType = VideoType.Dvd;
+ var videoTmp = new TVideoType
+ {
+ Path = args.Path,
+ VideoType = VideoType.Dvd
+ };
+ Set3DFormat(videoTmp);
+ return videoTmp;
}
else if (IsBluRayDirectory(filename))
{
- videoType = VideoType.BluRay;
+ var videoTmp = new TVideoType
+ {
+ Path = args.Path,
+ VideoType = VideoType.BluRay
+ };
+ Set3DFormat(videoTmp);
+ return videoTmp;
}
}
else if (IsDvdFile(filename))
diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
index 393e1f22a..f2f6d8a12 100644
--- a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
+++ b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
@@ -117,19 +117,25 @@ namespace MediaBrowser.Providers.MediaInfo
mediaInfoResult.RunTimeTicks += tmpMediaInfo.RunTimeTicks;
}
}
- else
+ else if (item.VideoType == VideoType.BluRay)
{
- if (item.VideoType == VideoType.BluRay)
- {
- blurayDiscInfo = GetBDInfo(item.Path);
-
- if (blurayDiscInfo.Files.Length == 0)
+ blurayDiscInfo = GetBDInfo(item.Path);
+ var m2ts = _mediaEncoder.GetPrimaryPlaylistM2TsFiles(item.Path, null).ToList();
+ mediaInfoResult = await GetMediaInfo(
+ new Video
{
- _logger.LogError("No playable vobs found in bluray structure, skipping ffprobe.");
- return ItemUpdateType.MetadataImport;
- }
- }
+ Path = m2ts.First()
+ },
+ cancellationToken).ConfigureAwait(false);
+ if (blurayDiscInfo.Files.Length == 0)
+ {
+ _logger.LogError("No playable vobs found in bluray structure, skipping ffprobe.");
+ return ItemUpdateType.MetadataImport;
+ }
+ }
+ else
+ {
mediaInfoResult = await GetMediaInfo(item, cancellationToken).ConfigureAwait(false);
cancellationToken.ThrowIfCancellationRequested();
}