aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNyanmisaka <nst799610810@gmail.com>2020-04-10 23:40:56 +0800
committerVasily <just.one.man@yandex.ru>2020-05-26 18:19:14 +0300
commit161b2a2da95b35631d005cae48a651dcad6fe9a5 (patch)
treeef262abb618fffe3666f0fb51fb236c62400da4e
parentc4ba71d96a4f8651a65b901861bf0f2c053f5f50 (diff)
minor changes
-rw-r--r--MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs46
1 files changed, 24 insertions, 22 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
index 1a12ff721..4a019321d 100644
--- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
+++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
@@ -457,8 +457,8 @@ namespace MediaBrowser.Controller.MediaEncoding
// While using VAAPI decoder
if ((videoDecoder ?? string.Empty).IndexOf("vaapi", StringComparison.OrdinalIgnoreCase) != -1)
{
- arg.Append("-hwaccel_output_format vaapi")
- .Append(" -vaapi_device ")
+ arg.Append("-hwaccel_output_format vaapi ")
+ .Append("-vaapi_device ")
.Append(encodingOptions.VaapiDevice)
.Append(" ");
}
@@ -1610,8 +1610,10 @@ namespace MediaBrowser.Controller.MediaEncoding
// For VAAPI and CUVID decoder
// these encoders cannot automatically adjust the size of graphical subtitles to fit the output video,
// thus needs to be manually adjusted.
- if ((IsVaapiSupported(state) && string.Equals(options.HardwareAccelerationType, "vaapi", StringComparison.OrdinalIgnoreCase))
- || (videoDecoder ?? string.Empty).IndexOf("cuvid", StringComparison.OrdinalIgnoreCase) != -1)
+ if ((videoDecoder ?? string.Empty).IndexOf("cuvid", StringComparison.OrdinalIgnoreCase) != -1
+ || (IsVaapiSupported(state) && string.Equals(options.HardwareAccelerationType, "vaapi", StringComparison.OrdinalIgnoreCase)
+ && ((videoDecoder ?? string.Empty).IndexOf("vaapi", StringComparison.OrdinalIgnoreCase) != -1
+ || (outputVideoCodec ?? string.Empty).IndexOf("vaapi", StringComparison.OrdinalIgnoreCase) != -1)))
{
var videoStream = state.VideoStream;
var inputWidth = videoStream?.Width;
@@ -1653,7 +1655,7 @@ namespace MediaBrowser.Controller.MediaEncoding
}
// If we're hardware VAAPI decoding and software encoding, download frames from the decoder first
- else if (IsVaapiSupported(state) && string.Equals(options.HardwareAccelerationType, "vaapi", StringComparison.OrdinalIgnoreCase)
+ else if (IsVaapiSupported(state) && (videoDecoder ?? string.Empty).IndexOf("vaapi", StringComparison.OrdinalIgnoreCase) != -1
&& string.Equals(outputVideoCodec, "libx264", StringComparison.OrdinalIgnoreCase))
{
/*
@@ -2582,13 +2584,13 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (encodingOptions.EnableDecodingColorDepth10)
{
- return "-c:v hevc_qsv ";
+ return "-c:v hevc_qsv";
}
return null;
}
- return "-c:v hevc_qsv ";
+ return "-c:v hevc_qsv";
}
break;
case "mpeg2video":
@@ -2606,7 +2608,7 @@ namespace MediaBrowser.Controller.MediaEncoding
case "vp8":
if (_mediaEncoder.SupportsDecoder("vp8_qsv") && encodingOptions.HardwareDecodingCodecs.Contains("vp8", StringComparer.OrdinalIgnoreCase))
{
- return "-c:v vp8_qsv ";
+ return "-c:v vp8_qsv";
}
break;
case "vp9":
@@ -2616,13 +2618,13 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (encodingOptions.EnableDecodingColorDepth10)
{
- return "-c:v vp9_qsv ";
+ return "-c:v vp9_qsv";
}
return null;
}
- return "-c:v vp9_qsv ";
+ return "-c:v vp9_qsv";
}
break;
}
@@ -2653,13 +2655,13 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (encodingOptions.EnableDecodingColorDepth10)
{
- return "-c:v hevc_cuvid ";
+ return "-c:v hevc_cuvid";
}
return null;
}
- return "-c:v hevc_cuvid ";
+ return "-c:v hevc_cuvid";
}
break;
case "mpeg2video":
@@ -2683,7 +2685,7 @@ namespace MediaBrowser.Controller.MediaEncoding
case "vp8":
if (_mediaEncoder.SupportsDecoder("vp8_cuvid") && encodingOptions.HardwareDecodingCodecs.Contains("vp8", StringComparer.OrdinalIgnoreCase))
{
- return "-c:v vp8_cuvid ";
+ return "-c:v vp8_cuvid";
}
break;
case "vp9":
@@ -2693,13 +2695,13 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (encodingOptions.EnableDecodingColorDepth10)
{
- return "-c:v vp9_cuvid ";
+ return "-c:v vp9_cuvid";
}
return null;
}
- return "-c:v vp9_cuvid ";
+ return "-c:v vp9_cuvid";
}
break;
}
@@ -2724,13 +2726,13 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (encodingOptions.EnableDecodingColorDepth10)
{
- return "-c:v hevc_mediacodec ";
+ return "-c:v hevc_mediacodec";
}
return null;
}
- return "-c:v hevc_mediacodec ";
+ return "-c:v hevc_mediacodec";
}
break;
case "mpeg2video":
@@ -2758,13 +2760,13 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (encodingOptions.EnableDecodingColorDepth10)
{
- return "-c:v vp9_mediacodec ";
+ return "-c:v vp9_mediacodec";
}
return null;
}
- return "-c:v vp9_mediacodec ";
+ return "-c:v vp9_mediacodec";
}
break;
}
@@ -2916,15 +2918,15 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (!IsWindows)
{
- return "-hwaccel vaapi ";
+ return "-hwaccel vaapi";
}
else if (IsWindows && IsNewWindows)
{
- return "-hwaccel d3d11va ";
+ return "-hwaccel d3d11va";
}
else if (IsWindows && !IsNewWindows)
{
- return "-hwaccel dxva2 ";
+ return "-hwaccel dxva2";
}
}