using ErsatzTV.FFmpeg.Environment; namespace ErsatzTV.FFmpeg.Filter; public abstract class BaseFilter : IPipelineFilterStep { public IList EnvironmentVariables => Array.Empty(); public virtual IList GlobalOptions => Array.Empty(); public IList InputOptions(InputFile inputFile) => Array.Empty(); public virtual IList FilterOptions => Array.Empty(); public virtual IList OutputOptions => Array.Empty(); public abstract FrameState NextState(FrameState currentState); public abstract string Filter { get; } }