#include "AppConfig.h" namespace RenderCadenceCompositor { AppConfig DefaultAppConfig() { AppConfig config; config.input.backend = "decklink"; config.input.device = "default"; config.input.resolution = "1080p"; config.input.frameRate = "59.94"; config.output.backend = "decklink"; config.output.device = "default"; config.output.resolution = "1080p"; config.output.frameRate = "59.94"; config.output.pixelFormat = "auto"; config.output.externalKeyingEnabled = false; config.output.outputAlphaRequired = false; config.output.systemFramePixelFormat = VideoIOPixelFormat::Bgra8; config.outputThread.targetBufferedFrames = 4; config.telemetry.interval = std::chrono::seconds(1); config.logging.minimumLevel = LogLevel::Log; config.logging.writeToConsole = true; config.logging.writeToDebugOutput = true; config.logging.writeToFile = true; config.logging.filePath = "logs/render-cadence-compositor.log"; config.logging.maxQueuedMessages = 1024; config.http.preferredPort = 8080; config.http.portSearchCount = 20; config.http.idleSleep = std::chrono::milliseconds(10); config.shaderLibrary = "shaders"; config.oscBindAddress = "0.0.0.0"; config.oscPort = 9000; config.oscSmoothing = 0.18; config.autoReload = true; config.maxTemporalHistoryFrames = 12; config.previewEnabled = false; config.previewFps = kDefaultPreviewFps; config.warmupCompletedFrames = 4; config.warmupTimeout = std::chrono::seconds(3); config.prerollTimeout = std::chrono::seconds(3); config.prerollPoll = std::chrono::milliseconds(2); config.runtimeShaderId.clear(); return config; } }