aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding/Encoder
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.MediaEncoding/Encoder')
-rw-r--r--MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs3
-rw-r--r--MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs242
-rw-r--r--MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs1
-rw-r--r--MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs7
4 files changed, 3 insertions, 250 deletions
diff --git a/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs b/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs
index 27f66835f..43e463902 100644
--- a/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs
+++ b/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs
@@ -90,7 +90,8 @@ namespace MediaBrowser.MediaEncoding.Encoder
"h264_qsv",
"hevc_qsv",
"mpeg2_qsv",
- "vc1_qsv"
+ "vc1_qsv",
+ "h264_cuvid"
};
foreach (var codec in required)
diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs
index 97623c44b..d53701feb 100644
--- a/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs
+++ b/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs
@@ -150,248 +150,6 @@ namespace MediaBrowser.MediaEncoding.Encoder
}
}
- public int? TotalOutputBitrate
- {
- get
- {
- return (OutputAudioBitrate ?? 0) + (OutputVideoBitrate ?? 0);
- }
- }
-
- public int? OutputWidth
- {
- get
- {
- if (VideoStream != null && VideoStream.Width.HasValue && VideoStream.Height.HasValue)
- {
- var size = new ImageSize
- {
- Width = VideoStream.Width.Value,
- Height = VideoStream.Height.Value
- };
-
- var newSize = DrawingUtils.Resize(size,
- Options.Width,
- Options.Height,
- Options.MaxWidth,
- Options.MaxHeight);
-
- return Convert.ToInt32(newSize.Width);
- }
-
- if (!IsVideoRequest)
- {
- return null;
- }
-
- return Options.MaxWidth ?? Options.Width;
- }
- }
-
- public int? OutputHeight
- {
- get
- {
- if (VideoStream != null && VideoStream.Width.HasValue && VideoStream.Height.HasValue)
- {
- var size = new ImageSize
- {
- Width = VideoStream.Width.Value,
- Height = VideoStream.Height.Value
- };
-
- var newSize = DrawingUtils.Resize(size,
- Options.Width,
- Options.Height,
- Options.MaxWidth,
- Options.MaxHeight);
-
- return Convert.ToInt32(newSize.Height);
- }
-
- if (!IsVideoRequest)
- {
- return null;
- }
-
- return Options.MaxHeight ?? Options.Height;
- }
- }
-
- /// <summary>
- /// Predicts the audio sample rate that will be in the output stream
- /// </summary>
- public int? TargetVideoBitDepth
- {
- get
- {
- var stream = VideoStream;
- return stream == null || !Options.Static ? null : stream.BitDepth;
- }
- }
-
- /// <summary>
- /// Gets the target reference frames.
- /// </summary>
- /// <value>The target reference frames.</value>
- public int? TargetRefFrames
- {
- get
- {
- var stream = VideoStream;
- return stream == null || !Options.Static ? null : stream.RefFrames;
- }
- }
-
- /// <summary>
- /// Predicts the audio sample rate that will be in the output stream
- /// </summary>
- public float? TargetFramerate
- {
- get
- {
- var stream = VideoStream;
- var requestedFramerate = Options.MaxFramerate ?? Options.Framerate;
-
- return requestedFramerate.HasValue && !Options.Static
- ? requestedFramerate
- : stream == null ? null : stream.AverageFrameRate ?? stream.RealFrameRate;
- }
- }
-
- public TransportStreamTimestamp TargetTimestamp
- {
- get
- {
- var defaultValue = string.Equals(OutputContainer, "m2ts", StringComparison.OrdinalIgnoreCase) ?
- TransportStreamTimestamp.Valid :
- TransportStreamTimestamp.None;
-
- return !Options.Static
- ? defaultValue
- : InputTimestamp;
- }
- }
-
- /// <summary>
- /// Predicts the audio sample rate that will be in the output stream
- /// </summary>
- public int? TargetPacketLength
- {
- get
- {
- var stream = VideoStream;
- return !Options.Static
- ? null
- : stream == null ? null : stream.PacketLength;
- }
- }
-
- /// <summary>
- /// Predicts the audio sample rate that will be in the output stream
- /// </summary>
- public string TargetVideoProfile
- {
- get
- {
- var stream = VideoStream;
- return !string.IsNullOrEmpty(Options.Profile) && !Options.Static
- ? Options.Profile
- : stream == null ? null : stream.Profile;
- }
- }
-
- public string TargetVideoCodecTag
- {
- get
- {
- var stream = VideoStream;
- return !Options.Static
- ? null
- : stream == null ? null : stream.CodecTag;
- }
- }
-
- public bool? IsTargetAnamorphic
- {
- get
- {
- if (Options.Static)
- {
- return VideoStream == null ? null : VideoStream.IsAnamorphic;
- }
-
- return false;
- }
- }
-
- public bool? IsTargetInterlaced
- {
- get
- {
- if (Options.Static)
- {
- return VideoStream == null ? (bool?)null : VideoStream.IsInterlaced;
- }
-
- if (DeInterlace)
- {
- return false;
- }
-
- return VideoStream == null ? (bool?)null : VideoStream.IsInterlaced;
- }
- }
-
- public bool? IsTargetAVC
- {
- get
- {
- if (Options.Static)
- {
- return VideoStream == null ? null : VideoStream.IsAVC;
- }
-
- return false;
- }
- }
-
- public int? TargetVideoStreamCount
- {
- get
- {
- if (Options.Static)
- {
- return GetMediaStreamCount(MediaStreamType.Video, int.MaxValue);
- }
- return GetMediaStreamCount(MediaStreamType.Video, 1);
- }
- }
-
- public int? TargetAudioStreamCount
- {
- get
- {
- if (Options.Static)
- {
- return GetMediaStreamCount(MediaStreamType.Audio, int.MaxValue);
- }
- return GetMediaStreamCount(MediaStreamType.Audio, 1);
- }
- }
-
- private int? GetMediaStreamCount(MediaStreamType type, int limit)
- {
- var count = MediaSource.GetStreamCount(type);
-
- if (count.HasValue)
- {
- count = Math.Min(count.Value, limit);
- }
-
- return count;
- }
-
public override void ReportTranscodingProgress(TimeSpan? transcodingPosition, float? framerate, double? percentComplete, long? bytesTranscoded, int? bitRate)
{
var ticks = transcodingPosition.HasValue ? transcodingPosition.Value.Ticks : (long?)null;
diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs
index c74a8ce37..ba5f625f5 100644
--- a/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs
+++ b/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs
@@ -105,7 +105,6 @@ namespace MediaBrowser.MediaEncoding.Encoder
//state.OutputContainer = (container ?? string.Empty).TrimStart('.');
state.OutputAudioBitrate = encodingHelper.GetAudioBitrateParam(state.Options, state.AudioStream);
- state.OutputAudioSampleRate = request.AudioSampleRate;
state.OutputAudioCodec = state.Options.AudioCodec;
diff --git a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
index 280b01ee2..faf5b0667 100644
--- a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
+++ b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
@@ -80,11 +80,6 @@ namespace MediaBrowser.MediaEncoding.Encoder
int defaultImageExtractionTimeoutMs,
bool enableEncoderFontFile, IEnvironmentInfo environmentInfo)
{
- if (jsonSerializer == null)
- {
- throw new ArgumentNullException("jsonSerializer");
- }
-
_logger = logger;
_jsonSerializer = jsonSerializer;
ConfigurationManager = configurationManager;
@@ -330,7 +325,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
}
var newPaths = GetEncoderPaths(appPath);
- if (string.IsNullOrWhiteSpace(newPaths.Item1) || string.IsNullOrWhiteSpace(newPaths.Item2))
+ if (string.IsNullOrWhiteSpace(newPaths.Item1) || string.IsNullOrWhiteSpace(newPaths.Item2) || IsSystemInstalledPath(appPath))
{
newPaths = TestForInstalledVersions();
}