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.
25 lines
945 B
25 lines
945 B
using ErsatzTV.FFmpeg.Environment; |
|
|
|
namespace ErsatzTV.FFmpeg.Option; |
|
|
|
public class InfiniteLoopInputOption : IPipelineStep |
|
{ |
|
private readonly FrameState _currentState; |
|
|
|
public InfiniteLoopInputOption(FrameState currentState) |
|
{ |
|
_currentState = currentState; |
|
} |
|
|
|
public IList<EnvironmentVariable> EnvironmentVariables => Array.Empty<EnvironmentVariable>(); |
|
public IList<string> GlobalOptions => Array.Empty<string>(); |
|
public IList<string> InputOptions => new List<string> { "-stream_loop", "-1" }; |
|
public IList<string> FilterOptions => Array.Empty<string>(); |
|
|
|
public IList<string> OutputOptions => |
|
_currentState.HardwareAccelerationMode is HardwareAccelerationMode.Qsv or HardwareAccelerationMode.Vaapi |
|
? new List<string> { "-noautoscale" } |
|
: Array.Empty<string>(); |
|
|
|
public FrameState NextState(FrameState currentState) => currentState with { Realtime = true }; |
|
}
|
|
|