namespace AmigaDB.VideoRenderer.Models;

public enum EncoderMode
{
    Auto,
    NvidiaNvenc,
    CpuX264
}

public sealed record RenderSettings(
    IReadOnlyList<string> InputFiles,
    string EndCardPath,
    string OutputDirectory,
    string OutputName,
    string FfmpegPath,
    string FfprobePath,
    EncoderMode Encoder,
    double TrimStart,
    double FadeSeconds,
    double EndCardHoldSeconds,
    int ThumbnailInterval,
    int Width = 3840,
    int Height = 2160,
    int FramesPerSecond = 50,
    int ThumbnailWidth = 1280,
    int ThumbnailHeight = 720);

public sealed record RenderProgress(double Percent, string Stage, string Message);
