diff --git a/ErsatzTV.FFmpeg/Pipeline/VaapiPipelineBuilder.cs b/ErsatzTV.FFmpeg/Pipeline/VaapiPipelineBuilder.cs index 5f2e0aee6..562240754 100644 --- a/ErsatzTV.FFmpeg/Pipeline/VaapiPipelineBuilder.cs +++ b/ErsatzTV.FFmpeg/Pipeline/VaapiPipelineBuilder.cs @@ -85,16 +85,6 @@ public class VaapiPipelineBuilder : SoftwarePipelineBuilder throw new NotSupportedException("AV1 output is only supported with HLS Segmenter (fmp4)"); } - foreach (string vaapiDevice in ffmpegState.VaapiDevice) - { - pipelineSteps.Add(new VaapiHardwareAccelerationOption(vaapiDevice, decodeCapability)); - - foreach (string driverName in ffmpegState.VaapiDriver) - { - pipelineSteps.Add(new LibvaDriverNameVariable(driverName)); - } - } - // use software decoding with an extensive pipeline if (context is { HasSubtitleOverlay: true, HasWatermark: true }) { @@ -111,6 +101,16 @@ public class VaapiPipelineBuilder : SoftwarePipelineBuilder } } + foreach (string vaapiDevice in ffmpegState.VaapiDevice) + { + pipelineSteps.Add(new VaapiHardwareAccelerationOption(vaapiDevice, decodeCapability)); + + foreach (string driverName in ffmpegState.VaapiDriver) + { + pipelineSteps.Add(new LibvaDriverNameVariable(driverName)); + } + } + // disable auto scaling when using hw encoding if (encodeCapability is FFmpegCapability.Hardware) {