Files
ersatztv/ErsatzTV.FFmpeg/Capabilities/FFmpegKnownDecoder.cs
T
Jason DoveandGitHub 14a88bd225 optimize ffmpeg capability cache (#1486)
* minimize cached ffmpeg capabilities

* use set intersect

* try disabling work ahead on nvidia/windows
2023-10-16 08:42:26 -05:00

32 lines
1008 B
C#

namespace ErsatzTV.FFmpeg.Capabilities;
public record FFmpegKnownDecoder
{
public string Name { get; }
private FFmpegKnownDecoder(string Name)
{
this.Name = Name;
}
public static readonly FFmpegKnownDecoder Av1Cuvid = new("av1_cuvid");
public static readonly FFmpegKnownDecoder H264Cuvid = new("h264_cuvid");
public static readonly FFmpegKnownDecoder HevcCuvid = new("hevc_cuvid");
public static readonly FFmpegKnownDecoder Mpeg2Cuvid = new("mpeg2_cuvid");
public static readonly FFmpegKnownDecoder Mpeg4Cuvid = new("mpeg4_cuvid");
public static readonly FFmpegKnownDecoder Vc1Cuvid = new("vc1_cuvid");
public static readonly FFmpegKnownDecoder Vp9Cuvid = new("vp9_cuvid");
public static IList<string> AllDecoders =>
new[]
{
Av1Cuvid.Name,
H264Cuvid.Name,
HevcCuvid.Name,
Mpeg2Cuvid.Name,
Mpeg4Cuvid.Name,
Vc1Cuvid.Name,
Vp9Cuvid.Name
};
}