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.
49 lines
1.6 KiB
49 lines
1.6 KiB
using ErsatzTV.FFmpeg.OutputFormat; |
|
|
|
namespace ErsatzTV.FFmpeg; |
|
|
|
public record FFmpegState( |
|
bool SaveReport, |
|
HardwareAccelerationMode DecoderHardwareAccelerationMode, |
|
HardwareAccelerationMode EncoderHardwareAccelerationMode, |
|
Option<string> VaapiDriver, |
|
Option<string> VaapiDevice, |
|
Option<TimeSpan> Start, |
|
Option<TimeSpan> Finish, |
|
bool DoNotMapMetadata, |
|
Option<string> MetadataServiceProvider, |
|
Option<string> MetadataServiceName, |
|
Option<string> MetadataAudioLanguage, |
|
Option<string> MetadataSubtitleLanguage, |
|
Option<string> MetadataSubtitleTitle, |
|
OutputFormatKind OutputFormat, |
|
Option<string> HlsPlaylistPath, |
|
Option<string> HlsSegmentTemplate, |
|
long PtsOffset, |
|
Option<int> ThreadCount, |
|
Option<int> MaybeQsvExtraHardwareFrames) |
|
{ |
|
public int QsvExtraHardwareFrames => MaybeQsvExtraHardwareFrames.IfNone(64); |
|
|
|
public static FFmpegState Concat(bool saveReport, string channelName) => |
|
new( |
|
saveReport, |
|
HardwareAccelerationMode.None, |
|
HardwareAccelerationMode.None, |
|
Option<string>.None, |
|
Option<string>.None, |
|
Option<TimeSpan>.None, |
|
Option<TimeSpan>.None, |
|
true, // do not map metadata |
|
"ErsatzTV", |
|
channelName, |
|
Option<string>.None, |
|
Option<string>.None, |
|
Option<string>.None, |
|
OutputFormatKind.MpegTs, |
|
Option<string>.None, |
|
Option<string>.None, |
|
0, |
|
Option<int>.None, |
|
Option<int>.None); |
|
}
|
|
|