Fix broken hardware encoder and filter for trickplay

The hardware processing pipeline never worked for trickplay, because the required encoder was not added to the validator and the software encoder is always passed to the ProcessingFilter builder, which always returns the software filter+encoder.

Signed-off-by: gnattu <gnattuoc@me.com>
pull/11506/head
gnattu 4 weeks ago
parent aaa42871ca
commit f90f40428f

@ -82,6 +82,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
"av1_amf",
"h264_qsv",
"hevc_qsv",
"mjpeg_qsv",
"av1_qsv",
"h264_nvenc",
"hevc_nvenc",
@ -89,6 +90,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
"h264_vaapi",
"hevc_vaapi",
"av1_vaapi",
"mjpeg_vaapi",
"h264_v4l2m2m",
"h264_videotoolbox",
"hevc_videotoolbox",

@ -848,7 +848,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
inputArg = "-threads " + threads + " " + inputArg; // HW accel args set a different input thread count, only set if disabled
}
var filterParam = encodingHelper.GetVideoProcessingFilterParam(jobState, options, jobState.OutputVideoCodec).Trim();
var filterParam = encodingHelper.GetVideoProcessingFilterParam(jobState, options, vidEncoder).Trim();
if (string.IsNullOrWhiteSpace(filterParam))
{
throw new InvalidOperationException("EncodingHelper returned empty or invalid filter parameters.");

Loading…
Cancel
Save