{"id": "cbe4a8c1-1756-41ec-922b-23b10ea4a651", "revision": 0, "last_node_id": 16, "last_link_id": 16, "nodes": [{"id": 10, "type": "MarkdownNote", "pos": [46.63987901475693, -52.958539888721646], "size": [460, 578.046875], "flags": {}, "order": 0, "mode": 0, "inputs": [], "outputs": [], "title": "README", "properties": {"Node name for S&R": "MarkdownNote"}, "widgets_values": ["## Video-Upscale · ESRGAN + NVIDIA RTX VSR\n100% kostenlos & kommerziell nutzbar — keine Tokens, alles lokal.\n\n**Wichtig:** Ein KI-Upscale *rechnet Detail dazu*, das im Original nicht als Pixel existiert. Ein klassischer Upscale (bikubisch/Lanczos) *vergrößert nur* das Vorhandene und schärft nach. Anderes Verfahren, anderes Ergebnis — probier beides und entscheide selbst.\n\n**Pipeline (Bild-Weg):**\n1. `LoadVideo` → Video laden\n2. `GetVideoComponents` → Frames / Audio / FPS trennen\n3. `ImageBlur` *(aus)* → nur bei starkem Grain aktivieren\n4. `ESRGAN 4x Remacri` → echte Texturdetails dazurechnen\n   - `per_batch 1` = ein Frame pro Durchlauf (VRAM-sicher)\n   - `downscale_ratio 0.5` = netto 2x Upscale\n   - `float16` = halber Speicherbedarf\n5. `RTX VSR` *(immer aktiv)* → NVIDIA Hardware-Qualitaets-Pass\n   - `scale by multiplier 1` = Qualitaet ohne Groessenaenderung\n   - `ULTRA` = beste Qualitaet\n6. `ImageSmartSharpen+` *(aus)* → optionale Feinschaerfe\n7. `CreateVideo` + `SaveVideo`\n\nRechtsklick auf graue Nodes → **Enable** zum Aktivieren."], "color": "#432", "bgcolor": "#653"}, {"id": 11, "type": "MarkdownNote", "pos": [523.3198990623955, -79.51811150853422], "size": [500, 623.640625], "flags": {}, "order": 1, "mode": 0, "inputs": [], "outputs": [], "title": "Model Links", "properties": {"Node name for S&R": "MarkdownNote"}, "widgets_values": ["## Model Links — kostenlos & kommerziell, keine Tokens\n\n> **Hinweis:** Links koennen sich aendern. Falls ein Link nicht funktioniert,\n> den Dateinamen auf https://huggingface.co suchen.\n\n**ESRGAN Upscale-Modell**\n- [4x_foolhardy_Remacri.pth](https://huggingface.co/FacehuggerR/4x_foolhardy_Remacri/resolve/main/4x_foolhardy_Remacri.pth)\n\n**Custom Nodes**\n- [ComfyUI-KJNodes](https://github.com/kijai/ComfyUI-KJNodes) (ESRGAN-Batch-Upscale)\n- [comfyui_nvidia_rtx_nodes](https://github.com/Comfy-Org/Nvidia_RTX_Nodes_ComfyUI) (RTX VSR)\n- [ComfyUI_essentials](https://github.com/cubiq/ComfyUI_essentials) (Blur, Sharpen)\n\n**Lizenz:** Apache 2.0 / MIT / NVIDIA proprietaer (alle kostenlos & kommerziell)\n\n### Datei-Speicherorte\n\n```\nComfyUI/\n├───📂 models/\n│   └───📂 upscale_models/\n│       └─── 4x_foolhardy_Remacri.pth\n└───📂 custom_nodes/\n    ├───📂 ComfyUI-KJNodes/\n    ├───📂 comfyui_nvidia_rtx_nodes/\n    └───📂 ComfyUI_essentials/\n```"], "color": "#432", "bgcolor": "#653"}, {"id": 6, "type": "LoadVideo", "pos": [41.659934006860766, 648.1390143908968], "size": [380, 344], "flags": {}, "order": 2, "mode": 0, "inputs": [{"localized_name": "file", "name": "file", "type": "COMBO", "widget": {"name": "file"}, "link": null}, {"localized_name": "choose file to upload", "name": "upload", "type": "IMAGEUPLOAD", "widget": {"name": "upload"}, "link": null}], "outputs": [{"localized_name": "VIDEO", "name": "VIDEO", "type": "VIDEO", "links": [1]}], "properties": {"cnr_id": "comfy-core", "ver": "0.19.0", "Node name for S&R": "LoadVideo"}, "widgets_values": ["input.mp4", "image"]}, {"id": 7, "type": "GetVideoComponents", "pos": [465.06019847619643, 634.8593298977157], "size": [240, 120], "flags": {}, "order": 4, "mode": 0, "inputs": [{"localized_name": "video", "name": "video", "type": "VIDEO", "link": 1}], "outputs": [{"localized_name": "images", "name": "images", "type": "IMAGE", "links": [2]}, {"localized_name": "audio", "name": "audio", "type": "AUDIO", "links": [3]}, {"localized_name": "fps", "name": "fps", "type": "FLOAT", "links": [4]}], "properties": {"cnr_id": "comfy-core", "ver": "0.19.0", "Node name for S&R": "GetVideoComponents"}, "widgets_values": []}, {"id": 12, "type": "ImageBlur", "pos": [475.02003783362613, 819.6786658352157], "size": [240, 136], "flags": {}, "order": 5, "mode": 4, "inputs": [{"localized_name": "image", "name": "image", "type": "IMAGE", "link": 2}, {"localized_name": "blur_radius", "name": "blur_radius", "type": "INT", "widget": {"name": "blur_radius"}, "link": null}, {"localized_name": "sigma", "name": "sigma", "type": "FLOAT", "widget": {"name": "sigma"}, "link": null}], "outputs": [{"localized_name": "IMAGE", "name": "IMAGE", "type": "IMAGE", "links": [5]}], "title": "Degrain — BYPASSED", "properties": {"cnr_id": "comfy-core", "ver": "0.19.0", "Node name for S&R": "ImageBlur"}, "widgets_values": [1, 0.8]}, {"id": 15, "type": "UpscaleModelLoader", "pos": [791.700052161772, 974.0561758753764], "size": [280, 106.65625], "flags": {}, "order": 3, "mode": 0, "inputs": [{"localized_name": "model_name", "name": "model_name", "type": "COMBO", "widget": {"name": "model_name"}, "link": null}], "outputs": [{"localized_name": "UPSCALE_MODEL", "name": "UPSCALE_MODEL", "type": "UPSCALE_MODEL", "links": [6]}], "properties": {"cnr_id": "comfy-core", "ver": "0.19.0", "Node name for S&R": "UpscaleModelLoader"}, "widgets_values": ["4x_foolhardy_Remacri.pth"]}, {"id": 13, "type": "ImageUpscaleWithModelBatched", "pos": [745.2208018271001, 651.4590621600987], "size": [398.921875, 229.3125], "flags": {}, "order": 6, "mode": 0, "inputs": [{"localized_name": "upscale_model", "name": "upscale_model", "type": "UPSCALE_MODEL", "link": 6}, {"localized_name": "images", "name": "images", "type": "IMAGE", "link": 5}, {"localized_name": "per_batch", "name": "per_batch", "type": "INT", "widget": {"name": "per_batch"}, "link": null}, {"localized_name": "downscale_ratio", "name": "downscale_ratio", "shape": 7, "type": "FLOAT", "widget": {"name": "downscale_ratio"}, "link": null}, {"localized_name": "downscale_method", "name": "downscale_method", "shape": 7, "type": "COMBO", "widget": {"name": "downscale_method"}, "link": null}, {"localized_name": "precision", "name": "precision", "shape": 7, "type": "COMBO", "widget": {"name": "precision"}, "link": null}], "outputs": [{"localized_name": "IMAGE", "name": "IMAGE", "type": "IMAGE", "links": [7]}], "title": "ESRGAN — Detail reinrechnen (1 Frame/Batch, float16)", "properties": {"cnr_id": "comfyui-kjnodes", "ver": "1.3.8", "Node name for S&R": "ImageUpscaleWithModelBatched"}, "widgets_values": [1, 0.5, "lanczos", "float16"]}, {"id": 1, "type": "RTXVideoSuperResolution", "pos": [1161.6598980557646, 634.8593298977157], "size": [320, 173.3125], "flags": {}, "order": 7, "mode": 0, "inputs": [{"localized_name": "images", "name": "images", "type": "IMAGE", "link": 7}, {"localized_name": "resize_type", "name": "resize_type", "type": "COMFY_DYNAMICCOMBO_V3", "widget": {"name": "resize_type"}, "link": null}, {"localized_name": "resize_type.scale", "name": "resize_type.scale", "type": "FLOAT", "widget": {"name": "resize_type.scale"}, "link": null}, {"localized_name": "quality", "name": "quality", "type": "COMBO", "widget": {"name": "quality"}, "link": null}], "outputs": [{"localized_name": "upscaled_images", "name": "upscaled_images", "type": "IMAGE", "links": [8]}], "title": "RTX Video Super Resolution — AKTIV", "properties": {"cnr_id": "comfyui_nvidia_rtx_nodes", "ver": "892515e3eb9a4920a131a502a047e47adca9eb0d", "Node name for S&R": "RTXVideoSuperResolution"}, "widgets_values": ["scale by multiplier", 1, "ULTRA"]}, {"id": 16, "type": "ImageSmartSharpen+", "pos": [1173.2797106394328, 844.6585070751755], "size": [280, 200], "flags": {}, "order": 8, "mode": 4, "inputs": [{"localized_name": "image", "name": "image", "type": "IMAGE", "link": 8}, {"localized_name": "noise_radius", "name": "noise_radius", "type": "INT", "widget": {"name": "noise_radius"}, "link": null}, {"localized_name": "preserve_edges", "name": "preserve_edges", "type": "FLOAT", "widget": {"name": "preserve_edges"}, "link": null}, {"localized_name": "sharpen", "name": "sharpen", "type": "FLOAT", "widget": {"name": "sharpen"}, "link": null}, {"localized_name": "ratio", "name": "ratio", "type": "FLOAT", "widget": {"name": "ratio"}, "link": null}], "outputs": [{"localized_name": "IMAGE", "name": "IMAGE", "type": "IMAGE", "links": [9]}], "title": "Feinschärfe — BYPASSED (optional)", "properties": {"Node name for S&R": "ImageSmartSharpen+"}, "widgets_values": [7, 0.75, 5, 0.5]}, {"id": 8, "type": "CreateVideo", "pos": [1508.2997746193107, 658.0989550650518], "size": [270, 128], "flags": {}, "order": 9, "mode": 0, "inputs": [{"localized_name": "images", "name": "images", "type": "IMAGE", "link": 9}, {"localized_name": "audio", "name": "audio", "shape": 7, "type": "AUDIO", "link": 3}, {"localized_name": "fps", "name": "fps", "type": "FLOAT", "widget": {"name": "fps"}, "link": 4}], "outputs": [{"localized_name": "VIDEO", "name": "VIDEO", "type": "VIDEO", "links": [10]}], "properties": {"cnr_id": "comfy-core", "ver": "0.19.0", "Node name for S&R": "CreateVideo"}, "widgets_values": [30]}, {"id": 9, "type": "SaveVideo", "pos": [1498.339935261881, 841.2583177763134], "size": [380, 180], "flags": {}, "order": 10, "mode": 0, "inputs": [{"localized_name": "video", "name": "video", "type": "VIDEO", "link": 10}, {"localized_name": "filename_prefix", "name": "filename_prefix", "type": "STRING", "widget": {"name": "filename_prefix"}, "link": null}, {"localized_name": "format", "name": "format", "type": "COMBO", "widget": {"name": "format"}, "link": null}, {"localized_name": "codec", "name": "codec", "type": "COMBO", "widget": {"name": "codec"}, "link": null}], "outputs": [], "properties": {"cnr_id": "comfy-core", "ver": "0.19.0", "Node name for S&R": "SaveVideo"}, "widgets_values": ["video/20260615_esrgan-rtxvsr", "auto", "auto"]}], "links": [[1, 6, 0, 7, 0, "VIDEO"], [2, 7, 0, 12, 0, "IMAGE"], [3, 7, 1, 8, 1, "AUDIO"], [4, 7, 2, 8, 2, "FLOAT"], [5, 12, 0, 13, 1, "IMAGE"], [6, 15, 0, 13, 0, "UPSCALE_MODEL"], [7, 13, 0, 1, 0, "IMAGE"], [8, 1, 0, 16, 0, "IMAGE"], [9, 16, 0, 8, 0, "IMAGE"], [10, 8, 0, 9, 0, "VIDEO"]], "groups": [{"id": 1, "title": "Detail + RTX VSR Pipeline (kostenlos, keine Tokens)", "bounding": [20, 560, 1930, 591.057563587684], "color": "#3f789e", "font_size": 24, "flags": {}}], "config": {}, "extra": {"workflowRendererVersion": "LG", "ds": {"scale": 0.6024193548387097, "offset": [241.82061579651946, 200.64926372155304]}}, "version": 0.4}