mirror of https://github.com/ErsatzTV/ErsatzTV.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
775 B
23 lines
775 B
using ErsatzTV.FFmpeg.Filter; |
|
using ErsatzTV.FFmpeg.Format; |
|
|
|
namespace ErsatzTV.FFmpeg.Encoder; |
|
|
|
public class EncoderLibx265 : EncoderBase |
|
{ |
|
private readonly FrameState _currentState; |
|
|
|
public EncoderLibx265(FrameState currentState) => _currentState = currentState; |
|
|
|
public override string Filter => new HardwareDownloadFilter(_currentState).Filter; |
|
|
|
// TODO: is tag:v needed for mpegts? |
|
public override string[] OutputOptions => new[] |
|
{ "-c:v", Name, "-tag:v", "hvc1", "-x265-params", "log-level=error" }; |
|
|
|
public override string Name => "libx265"; |
|
public override StreamKind Kind => StreamKind.Video; |
|
|
|
public override FrameState NextState(FrameState currentState) => |
|
currentState with { VideoFormat = VideoFormat.Hevc }; |
|
}
|
|
|