aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
diff options
context:
space:
mode:
authorgnattu <gnattuoc@me.com>2024-03-08 23:37:27 +0800
committergnattu <gnattuoc@me.com>2024-03-08 23:37:27 +0800
commit2f668710400f433f6f0dcb9bd412d7060f91a294 (patch)
tree04b80cfae4f0c9a8d81b469cd081b914b400bdde /MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
parentf31549cc0de0973e69b052718252bae6a2a45522 (diff)
fix: also check if we are doing scaling
Signed-off-by: gnattu <gnattuoc@me.com>
Diffstat (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs')
-rw-r--r--MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs5
1 files changed, 3 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
index 1ac40c718..65224115b 100644
--- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
+++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
@@ -5011,6 +5011,7 @@ namespace MediaBrowser.Controller.MediaEncoding
var threeDFormat = state.MediaSource.Video3DFormat;
var isVtEncoder = vidEncoder.Contains("videotoolbox", StringComparison.OrdinalIgnoreCase);
+ var hwScaleFilter = GetHwScaleFilter("vt", null, inW, inH, reqW, reqH, reqMaxW, reqMaxH);
var doDeintH264 = state.DeInterlace("h264", true) || state.DeInterlace("avc", true);
var doDeintHevc = state.DeInterlace("h265", true) || state.DeInterlace("hevc", true);
@@ -5019,6 +5020,7 @@ namespace MediaBrowser.Controller.MediaEncoding
var doOclTonemap = !doVtTonemap && IsHwTonemapAvailable(state, options);
var doTonemap = doVtTonemap || doOclTonemap;
+ var doScale = !string.IsNullOrEmpty(hwScaleFilter);
var hasSubs = state.SubtitleStream is not null && state.SubtitleDeliveryMethod == SubtitleDeliveryMethod.Encode;
var hasTextSubs = hasSubs && state.SubtitleStream.IsTextSubtitleStream;
var hasGraphicalSubs = hasSubs && !state.SubtitleStream.IsTextSubtitleStream;
@@ -5037,7 +5039,7 @@ namespace MediaBrowser.Controller.MediaEncoding
/* Make main filters for video stream */
var mainFilters = new List<string>();
- if (!(doTonemap || hasSubs || doDeintH2645))
+ if (!(doTonemap || doScale || hasSubs || doDeintH2645))
{
// Dummy action to return empty filters when nothing to do.
return (mainFilters, mainFilters, mainFilters);
@@ -5061,7 +5063,6 @@ namespace MediaBrowser.Controller.MediaEncoding
mainFilters.Add(deintFilter);
}
- var hwScaleFilter = GetHwScaleFilter("vt", null, inW, inH, reqW, reqH, reqMaxW, reqMaxH);
if (doVtTonemap)
{
const string VtTonemapArgs = "color_matrix=bt709:color_primaries=bt709:color_transfer=bt709";