aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-04-27 15:23:05 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-04-27 15:23:05 -0400
commitdfa2557874a3023eedb0b67601a8dee80e80683d (patch)
tree55d345d7208c4e0a3a3bd26d3745c87b1c9a0755 /MediaBrowser.MediaEncoding
parent92bdbe22b4db258996725d7452e628d8a456f8e2 (diff)
record IsAvc
Diffstat (limited to 'MediaBrowser.MediaEncoding')
-rw-r--r--MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs8
-rw-r--r--MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs11
2 files changed, 19 insertions, 0 deletions
diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs
index 070aae3a7..ff5a3010e 100644
--- a/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs
+++ b/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs
@@ -575,6 +575,14 @@ namespace MediaBrowser.MediaEncoding.Encoder
return false;
}
+ if (string.Equals("h264", videoStream.Codec, StringComparison.OrdinalIgnoreCase))
+ {
+ if (videoStream.IsAVC.HasValue && !videoStream.IsAVC.Value)
+ {
+ return false;
+ }
+ }
+
// If client is requesting a specific video profile, it must match the source
if (!string.IsNullOrEmpty(request.Profile))
{
diff --git a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
index 38528d845..c7c001cee 100644
--- a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
+++ b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
@@ -411,6 +411,17 @@ namespace MediaBrowser.MediaEncoding.Probing
NalLengthSize = streamInfo.nal_length_size
};
+ if (string.Equals(streamInfo.is_avc, "true", StringComparison.OrdinalIgnoreCase) ||
+ string.Equals(streamInfo.is_avc, "1", StringComparison.OrdinalIgnoreCase))
+ {
+ stream.IsAVC = true;
+ }
+ else if (string.Equals(streamInfo.is_avc, "false", StringComparison.OrdinalIgnoreCase) ||
+ string.Equals(streamInfo.is_avc, "0", StringComparison.OrdinalIgnoreCase))
+ {
+ stream.IsAVC = false;
+ }
+
// Filter out junk
if (!string.IsNullOrWhiteSpace(streamInfo.codec_tag_string) && streamInfo.codec_tag_string.IndexOf("[0]", StringComparison.OrdinalIgnoreCase) == -1)
{