Files
ersatztv/ErsatzTV.FFmpeg/Filter/WatermarkFadeFilter.cs
T
Jason DoveandGitHub c02b83d0d6 code cleanup (#743)
* update tools

* run code cleanup

* update dependencies
2022-04-19 17:47:18 -05:00

32 lines
1023 B
C#

using System.Globalization;
using ErsatzTV.FFmpeg.State;
namespace ErsatzTV.FFmpeg.Filter;
public class WatermarkFadeFilter : BaseFilter
{
private readonly WatermarkFadePoint _fadePoint;
public WatermarkFadeFilter(WatermarkFadePoint fadePoint) => _fadePoint = fadePoint;
public override string Filter
{
get
{
var startTime = _fadePoint.Time.TotalSeconds.ToString(NumberFormatInfo.InvariantInfo);
var enableStart = _fadePoint.EnableStart.TotalSeconds.ToString(NumberFormatInfo.InvariantInfo);
var enableFinish = _fadePoint.EnableFinish.TotalSeconds.ToString(NumberFormatInfo.InvariantInfo);
string inOut = _fadePoint switch
{
WatermarkFadeIn => "in",
_ => "out"
};
return $"fade={inOut}:st={startTime}:d=1:alpha=1:enable='between(t,{enableStart},{enableFinish})'";
}
}
public override FrameState NextState(FrameState currentState) => currentState;
}