Merge pull request #12590 from nyanmisaka/bwdif-cuda-deint

Enable the new BWDIF CUDA deint filter when available
This commit is contained in:
Bond-009 2024-09-06 17:14:44 +02:00 committed by GitHub
commit ccfd8fa66c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 2 deletions

View File

@ -3242,14 +3242,18 @@ namespace MediaBrowser.Controller.MediaEncoding
doubleRateDeint ? "1" : "0"); doubleRateDeint ? "1" : "0");
} }
public static string GetHwDeinterlaceFilter(EncodingJobInfo state, EncodingOptions options, string hwDeintSuffix) public string GetHwDeinterlaceFilter(EncodingJobInfo state, EncodingOptions options, string hwDeintSuffix)
{ {
var doubleRateDeint = options.DeinterlaceDoubleRate && (state.VideoStream?.AverageFrameRate ?? 60) <= 30; var doubleRateDeint = options.DeinterlaceDoubleRate && (state.VideoStream?.AverageFrameRate ?? 60) <= 30;
if (hwDeintSuffix.Contains("cuda", StringComparison.OrdinalIgnoreCase)) if (hwDeintSuffix.Contains("cuda", StringComparison.OrdinalIgnoreCase))
{ {
var useBwdif = string.Equals(options.DeinterlaceMethod, "bwdif", StringComparison.OrdinalIgnoreCase)
&& _mediaEncoder.SupportsFilter("bwdif_cuda");
return string.Format( return string.Format(
CultureInfo.InvariantCulture, CultureInfo.InvariantCulture,
"yadif_cuda={0}:-1:0", "{0}_cuda={1}:-1:0",
useBwdif ? "bwdif" : "yadif",
doubleRateDeint ? "1" : "0"); doubleRateDeint ? "1" : "0");
} }

View File

@ -110,6 +110,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
// cuda // cuda
"scale_cuda", "scale_cuda",
"yadif_cuda", "yadif_cuda",
"bwdif_cuda",
"tonemap_cuda", "tonemap_cuda",
"overlay_cuda", "overlay_cuda",
"transpose_cuda", "transpose_cuda",