private static string WriteDefaultValIfExists(string key, Type type) { if (key == "maxVidHeight") { return(WriteDefault(key, "2160")); } if (key == "delLogsOnStartup") { return(WriteDefault(key, "True")); } if (key == "clearLogOnInput") { return(WriteDefault(key, "True")); } if (key == "tempDirCustom") { return(WriteDefault(key, "C:/")); } if (key == "exportNamePattern") { return(WriteDefault(key, "[NAME]-[FACTOR]x-[AI]-[MODEL]-[FPS]fps")); } if (key == "exportNamePatternLoop") { return(WriteDefault(key, "-Loop[LOOPS]")); } // Interpolation if (key == "dedupThresh") { return(WriteDefault(key, "2")); } if (key == "keepAudio") { return(WriteDefault(key, "True")); } if (key == "keepSubs") { return(WriteDefault(key, "True")); } if (key == "autoDedupFrames") { return(WriteDefault(key, "100")); } if (key == "scnDetectValue") { return(WriteDefault(key, "0.2")); } if (key == "autoEncMode") { return(WriteDefault(key, "2")); } // Video Export if (key == "minOutVidLength") { return(WriteDefault(key, "5")); } if (key == "h264Crf") { return(WriteDefault(key, "20")); } if (key == "h265Crf") { return(WriteDefault(key, "24")); } if (key == "vp9Crf") { return(WriteDefault(key, "32")); } if (key == "proResProfile") { return(WriteDefault(key, "2")); } if (key == "aviCodec") { return(WriteDefault(key, "ffv1")); } if (key == "aviColors") { return(WriteDefault(key, "yuv420p")); } if (key == "gifColors") { return(WriteDefault(key, "128 (High)")); } if (key == "minVidLength") { return(WriteDefault(key, "2")); } // AI if (key == "uhdThresh") { return(WriteDefault(key, "1600")); } if (key == "rifeCudaFp16") { return(WriteDefault(key, NvApi.HasTensorCores().ToString())); } if (key == "ncnnThreads") { return(WriteDefault(key, "1")); } if (key == "dainNcnnTilesize") { return(WriteDefault(key, "768")); } // Debug / Other / Experimental if (key == "modelsBaseUrl") { return(WriteDefault(key, "https://raw.githubusercontent.com/n00mkrad/flowframes/main/Models/")); } if (key == "ffEncPreset") { return(WriteDefault(key, "medium")); } if (key == "ffEncArgs") { return(WriteDefault(key, "")); } if (type == Type.Int || type == Type.Float) { return(WriteDefault(key, "0")); // Write default int/float (0) } if (type == Type.Bool) { return(WriteDefault(key, "False")); // Write default bool (False) } return(WriteDefault(key, "0")); }