|
|
@ -950,7 +950,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public static string GetAudioBitStreamArguments(EncodingJobInfo state, string segmentContainer, string mediaSourceContainer)
|
|
|
|
public static string GetAudioBitStreamArguments(EncodingJobInfo state, string segmentContainer, string mediaSourceContainer, TranscodingJobType transcodingType)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var bitStreamArgs = string.Empty;
|
|
|
|
var bitStreamArgs = string.Empty;
|
|
|
|
var segmentFormat = GetSegmentFileExtension(segmentContainer).TrimStart('.');
|
|
|
|
var segmentFormat = GetSegmentFileExtension(segmentContainer).TrimStart('.');
|
|
|
@ -958,6 +958,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|
|
|
// Apply aac_adtstoasc bitstream filter when media source is in mpegts.
|
|
|
|
// Apply aac_adtstoasc bitstream filter when media source is in mpegts.
|
|
|
|
if (string.Equals(segmentFormat, "mp4", StringComparison.OrdinalIgnoreCase)
|
|
|
|
if (string.Equals(segmentFormat, "mp4", StringComparison.OrdinalIgnoreCase)
|
|
|
|
&& (string.Equals(mediaSourceContainer, "mpegts", StringComparison.OrdinalIgnoreCase)
|
|
|
|
&& (string.Equals(mediaSourceContainer, "mpegts", StringComparison.OrdinalIgnoreCase)
|
|
|
|
|
|
|
|
|| transcodingType == TranscodingJobType.Hls
|
|
|
|
|| string.Equals(mediaSourceContainer, "hls", StringComparison.OrdinalIgnoreCase)))
|
|
|
|
|| string.Equals(mediaSourceContainer, "hls", StringComparison.OrdinalIgnoreCase)))
|
|
|
|
{
|
|
|
|
{
|
|
|
|
bitStreamArgs = GetBitStreamArgs(state.AudioStream);
|
|
|
|
bitStreamArgs = GetBitStreamArgs(state.AudioStream);
|
|
|
@ -1676,8 +1677,8 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Source and target codecs must match
|
|
|
|
// Source and target codecs must match
|
|
|
|
if (string.IsNullOrEmpty(videoStream.Codec)
|
|
|
|
if (string.IsNullOrEmpty(videoStream.Codec) || (state.SupportedVideoCodecs.Any()
|
|
|
|
|| !state.SupportedVideoCodecs.Contains(videoStream.Codec, StringComparison.OrdinalIgnoreCase))
|
|
|
|
&& !state.SupportedVideoCodecs.Contains(videoStream.Codec, StringComparison.OrdinalIgnoreCase)))
|
|
|
|
{
|
|
|
|
{
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|