diff options
| author | gnattu <gnattuoc@me.com> | 2024-03-08 23:37:27 +0800 |
|---|---|---|
| committer | gnattu <gnattuoc@me.com> | 2024-03-08 23:37:27 +0800 |
| commit | 2f668710400f433f6f0dcb9bd412d7060f91a294 (patch) | |
| tree | 04b80cfae4f0c9a8d81b469cd081b914b400bdde | |
| parent | f31549cc0de0973e69b052718252bae6a2a45522 (diff) | |
fix: also check if we are doing scaling
Signed-off-by: gnattu <gnattuoc@me.com>
| -rw-r--r-- | MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 5 |
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"; |
