Files
ersatztv/ErsatzTV.FFmpeg/GlobalOption/HardwareAcceleration/VaapiHardwareAccelerationOption.cs
T
Jason DoveandGitHub 9471cb55dd upgrade from dotnet 7 to dotnet 8 (#1529)
* upgrade sdk

* fix warnings in ersatztv.ffmpeg

* fix warnings in ersatztv.core

* fix warnings in ersatztv.infrastructure

* fix warnings in ersatztv.application

* disable analysis for migrations projects

* fix warnings in ersatztv.scanner

* fix warnings in ersatztv

* upgrade project framework

* update github actions and dockerfiles
2023-12-30 13:29:57 -06:00

25 lines
830 B
C#

using ErsatzTV.FFmpeg.Capabilities;
namespace ErsatzTV.FFmpeg.GlobalOption.HardwareAcceleration;
public class VaapiHardwareAccelerationOption : GlobalOption
{
private readonly FFmpegCapability _decodeCapability;
private readonly string _vaapiDevice;
public VaapiHardwareAccelerationOption(string vaapiDevice, FFmpegCapability decodeCapability)
{
_vaapiDevice = vaapiDevice;
_decodeCapability = decodeCapability;
}
public override string[] GlobalOptions => _decodeCapability == FFmpegCapability.Hardware
? new[] { "-hwaccel", "vaapi", "-vaapi_device", _vaapiDevice }
: new[] { "-vaapi_device", _vaapiDevice };
public override FrameState NextState(FrameState currentState) => currentState with
{
FrameDataLocation = FrameDataLocation.Hardware
};
}