aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-12-19 10:51:38 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-12-19 10:51:38 -0500
commit6414fc9486a56dbf49de9dc42251c33acb10b148 (patch)
tree1db433af545a10394a25a7131feb55694d9888e1 /MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
parentbe664f93c6760a56479ba9fd9e16c8cf8615f322 (diff)
remove MediaInfo
Diffstat (limited to 'MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs')
-rw-r--r--MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs34
1 files changed, 11 insertions, 23 deletions
diff --git a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
index d4df19af2..55b3398bb 100644
--- a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
+++ b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
@@ -1,5 +1,4 @@
using MediaBrowser.Common.IO;
-using MediaBrowser.MediaInfo;
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Extensions;
@@ -26,7 +25,7 @@ namespace MediaBrowser.MediaEncoding.Probing
_fileSystem = fileSystem;
}
- public Model.MediaInfo.MediaInfo GetMediaInfo(InternalMediaInfoResult data, VideoType videoType, bool isAudio, string path, MediaProtocol protocol)
+ public MediaInfo GetMediaInfo(InternalMediaInfoResult data, VideoType videoType, bool isAudio, string path, MediaProtocol protocol)
{
var info = new Model.MediaInfo.MediaInfo
{
@@ -109,7 +108,7 @@ namespace MediaBrowser.MediaEncoding.Probing
if (videoStream != null && videoType == VideoType.VideoFile)
{
- UpdateFromMediaInfo(info, videoStream);
+ DetectInterlaced(info, videoStream);
}
}
@@ -934,29 +933,18 @@ namespace MediaBrowser.MediaEncoding.Probing
return TransportStreamTimestamp.None;
}
- private void UpdateFromMediaInfo(MediaSourceInfo video, MediaStream videoStream)
+ private void DetectInterlaced(MediaSourceInfo video, MediaStream videoStream)
{
- if (video.Protocol == MediaProtocol.File && videoStream != null)
+ if (video.Protocol != MediaProtocol.File || videoStream == null)
{
- try
- {
- _logger.Debug("Running MediaInfo against {0}", video.Path);
-
- var result = new MediaInfoLib().GetVideoInfo(video.Path);
+ return;
+ }
- videoStream.IsCabac = result.IsCabac ?? videoStream.IsCabac;
- videoStream.IsInterlaced = result.IsInterlaced ?? videoStream.IsInterlaced;
- videoStream.BitDepth = result.BitDepth ?? videoStream.BitDepth;
- videoStream.RefFrames = result.RefFrames ?? videoStream.RefFrames;
- }
- catch (TypeLoadException)
- {
- // This is non-essential. Don't spam the log
- }
- catch (Exception ex)
- {
- _logger.ErrorException("Error running MediaInfo on {0}", ex, video.Path);
- }
+ // Take a shortcut and limit this to containers that are likely to have interlaced content
+ if (!string.Equals(video.Container, "ts", StringComparison.OrdinalIgnoreCase) &&
+ !string.Equals(video.Container, "wtv", StringComparison.OrdinalIgnoreCase))
+ {
+ return;
}
}
}