Files
ersatztv/ErsatzTV.FFmpeg/Encoder/EncoderLibx264.cs
T
Jason DoveandGitHub c1d6ddcc57 add h264 profile option to ffmpeg profile (#1686)
* add video profile for nvenc/software h264 encoders

* add h264 profile for all other encoders

* update changelog
2024-04-22 22:03:18 -05:00

30 lines
768 B
C#

using ErsatzTV.FFmpeg.Format;
namespace ErsatzTV.FFmpeg.Encoder;
public class EncoderLibx264(Option<string> maybeVideoProfile) : EncoderBase
{
public override string Name => "libx264";
public override StreamKind Kind => StreamKind.Video;
public override string[] OutputOptions
{
get
{
foreach (string videoProfile in maybeVideoProfile)
{
return
[
"-c:v", Name,
"-profile:v", videoProfile.ToLowerInvariant()
];
}
return base.OutputOptions;
}
}
public override FrameState NextState(FrameState currentState) =>
currentState with { VideoFormat = VideoFormat.H264 };
}