diff options
| author | nyanmisaka <nst799610810@gmail.com> | 2024-09-05 22:27:58 +0800 |
|---|---|---|
| committer | nyanmisaka <nst799610810@gmail.com> | 2024-09-05 22:27:58 +0800 |
| commit | aecd294fd733089e2406be1eb24fdbf3407e5190 (patch) | |
| tree | b619379e4a6ce17102a4313a4d768ca684fae650 /MediaBrowser.Controller/MediaEncoding | |
| parent | 12a88fe042b0d95ba42603c8f61a43444fb10f18 (diff) | |
Enable the new BWDIF CUDA deint filter when available
this requires jellyfin-ffmpeg7
Signed-off-by: nyanmisaka <nst799610810@gmail.com>
Diffstat (limited to 'MediaBrowser.Controller/MediaEncoding')
| -rw-r--r-- | MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index a459ce8b6..27bf86edc 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -3234,14 +3234,18 @@ namespace MediaBrowser.Controller.MediaEncoding 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; if (hwDeintSuffix.Contains("cuda", StringComparison.OrdinalIgnoreCase)) { + var useBwdif = string.Equals(options.DeinterlaceMethod, "bwdif", StringComparison.OrdinalIgnoreCase) + && _mediaEncoder.SupportsFilter("bwdif_cuda"); + return string.Format( CultureInfo.InvariantCulture, - "yadif_cuda={0}:-1:0", + "{0}_cuda={1}:-1:0", + useBwdif ? "bwdif" : "yadif", doubleRateDeint ? "1" : "0"); } |
