{
  "id": "f116ea99-4671-4a51-9475-e4643ca0605d",
  "revision": 0,
  "last_node_id": 55,
  "last_link_id": 90,
  "nodes": [
    {
      "id": 1,
      "type": "WN_RippleClip",
      "pos": [
        -120.07817811463737,
        14.450069703725749
      ],
      "size": [
        640,
        1109
      ],
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "frames_to_edit",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "ripple",
          "type": "WN_RIPPLE",
          "links": [
            1,
            17
          ]
        },
        {
          "name": "source_window",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "audio",
          "type": "AUDIO",
          "links": []
        },
        {
          "name": "anchor_1",
          "type": "IMAGE",
          "links": [
            18,
            54
          ]
        },
        {
          "name": "anchor_2",
          "type": "IMAGE",
          "links": [
            53,
            87
          ]
        }
      ],
      "title": "Load video into Ripple. Choose and edit anchor frame",
      "properties": {
        "aux_id": "WepeNerd/ComfyUI-WepeNerd",
        "ver": "b3927ed1a1332756ee0667d6545a4d0303ebb278",
        "Node name for S&R": "WN_RippleClip",
        "wn_ripple": {
          "window_start": 4,
          "markers": "[{\"id\":1,\"frame\":9,\"edited\":\"\",\"edited_at\":null},{\"id\":2,\"frame\":96,\"edited\":\"\",\"edited_at\":null}]",
          "duration": 5.17,
          "megapixels": 1,
          "crop": "",
          "allow_upscale": false,
          "resize_method": "lanczos",
          "output_width": 0,
          "output_height": 0
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Camera_reveals_cow_nature_scene_80221910.mp4",
        5.17,
        1,
        4,
        "[{\"id\":1,\"frame\":9,\"edited\":\"\",\"edited_at\":null},{\"id\":2,\"frame\":96,\"edited\":\"\",\"edited_at\":null}]",
        "",
        false,
        "lanczos",
        0,
        0,
        "image",
        ""
      ],
      "widgets_values_named": {
        "video": "Camera_reveals_cow_nature_scene_80221910.mp4",
        "duration": 5.17,
        "megapixels": 1,
        "window_start": 4,
        "markers": "[{\"id\":1,\"frame\":9,\"edited\":\"\",\"edited_at\":null},{\"id\":2,\"frame\":96,\"edited\":\"\",\"edited_at\":null}]",
        "crop": "",
        "allow_upscale": false,
        "resize_method": "lanczos",
        "output_width": 0,
        "output_height": 0,
        "upload": "image",
        "ripple_markers": ""
      }
    },
    {
      "id": 2,
      "type": "UNETLoader",
      "pos": [
        2400.8561534970618,
        -0.007036345010141054
      ],
      "size": [
        460,
        82
      ],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            2
          ]
        }
      ],
      "title": "H3 FL2VA",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "UNETLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "minimax_h3_fl2va_pruned_int8_convrot.safetensors",
        "default"
      ],
      "widgets_values_named": {
        "unet_name": "minimax_h3_fl2va_pruned_int8_convrot.safetensors",
        "weight_dtype": "default"
      }
    },
    {
      "id": 3,
      "type": "LoraLoaderModelOnly",
      "pos": [
        2400.8561534970618,
        119.99296365498998
      ],
      "size": [
        460,
        82
      ],
      "flags": {},
      "order": 17,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            3
          ]
        }
      ],
      "title": "Optional 8-step accelerator (bypassed)",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "LoraLoaderModelOnly",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "H3\\minimax_h3_fl2v_turbo_4step_v1.3_768p_comfyui_bf16.safetensors",
        1
      ],
      "widgets_values_named": {
        "lora_name": "H3\\minimax_h3_fl2v_turbo_4step_v1.3_768p_comfyui_bf16.safetensors",
        "strength_model": 1
      }
    },
    {
      "id": 4,
      "type": "LoraLoaderModelOnly",
      "pos": [
        2400.8561534970618,
        239.99296365499012
      ],
      "size": [
        460,
        82
      ],
      "flags": {},
      "order": 22,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 3
        }
      ],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            57
          ]
        }
      ],
      "title": "H3 Ripple LoRA",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "LoraLoaderModelOnly",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "H3\\minimax_H3_Ripple-v1.safetensors",
        1
      ],
      "widgets_values_named": {
        "lora_name": "H3\\minimax_H3_Ripple-v1.safetensors",
        "strength_model": 1
      }
    },
    {
      "id": 5,
      "type": "CLIPLoader",
      "pos": [
        2404.9614184429074,
        478.0193308480502
      ],
      "size": [
        460,
        106
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            4
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "CLIPLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
        "minimax",
        "default"
      ],
      "widgets_values_named": {
        "clip_name": "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
        "type": "minimax",
        "device": "default"
      }
    },
    {
      "id": 6,
      "type": "VAELoader",
      "pos": [
        2404.9614184429074,
        638.019330848049
      ],
      "size": [
        460,
        58
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            5,
            15
          ]
        }
      ],
      "title": "H3 video VAE",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "VAELoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "minimax_h3_video_vae_fp16.safetensors"
      ],
      "widgets_values_named": {
        "vae_name": "minimax_h3_video_vae_fp16.safetensors"
      }
    },
    {
      "id": 7,
      "type": "WN_RippleApply",
      "pos": [
        2889.7980662543755,
        6.01403039314817
      ],
      "size": [
        424.68426646545595,
        262
      ],
      "flags": {},
      "order": 33,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 4
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 5
        },
        {
          "name": "ripple",
          "type": "WN_RIPPLE",
          "link": 1
        },
        {
          "name": "edited_images",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "edited_anchor_1",
          "shape": 7,
          "type": "IMAGE",
          "link": 73
        },
        {
          "name": "edited_anchor_2",
          "shape": 7,
          "type": "IMAGE",
          "link": 90
        }
      ],
      "outputs": [
        {
          "name": "positive",
          "type": "CONDITIONING",
          "links": [
            8
          ]
        },
        {
          "name": "latent",
          "type": "LATENT",
          "links": [
            13
          ]
        }
      ],
      "title": "Ripple Apply — edited anchor 1 + edited anchor 2",
      "properties": {
        "aux_id": "WepeNerd/ComfyUI-WepeNerd",
        "ver": "b3927ed1a1332756ee0667d6545a4d0303ebb278",
        "Node name for S&R": "WN_RippleApply",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Edit propagation: each edited frame shows exactly how that moment of the video should look after the edit. Apply the same changes to every frame of the clip, before, between and after the edited frames, so the edit stays consistent through the whole video. Keep the guide video's motion, timing, camera movement, composition and all unedited content unchanged."
      ],
      "widgets_values_named": {
        "prompt": "Edit propagation: each edited frame shows exactly how that moment of the video should look after the edit. Apply the same changes to every frame of the clip, before, between and after the edited frames, so the edit stays consistent through the whole video. Keep the guide video's motion, timing, camera movement, composition and all unedited content unchanged."
      }
    },
    {
      "id": 8,
      "type": "RandomNoise",
      "pos": [
        3342.3822561298603,
        4.508755095419972
      ],
      "size": [
        300,
        82
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "NOISE",
          "type": "NOISE",
          "links": [
            9
          ]
        }
      ],
      "title": "Seed (fixed: compare edits)",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "RandomNoise",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        123456,
        "fixed"
      ],
      "widgets_values_named": {
        "noise_seed": 123456,
        "control_after_generate": "fixed"
      }
    },
    {
      "id": 9,
      "type": "KSamplerSelect",
      "pos": [
        3342.3822561298603,
        124.50875509542014
      ],
      "size": [
        300,
        58
      ],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "SAMPLER",
          "type": "SAMPLER",
          "links": [
            11
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "KSamplerSelect",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "euler"
      ],
      "widgets_values_named": {
        "sampler_name": "euler"
      }
    },
    {
      "id": 10,
      "type": "BasicScheduler",
      "pos": [
        3342.3822561298603,
        224.5087550954203
      ],
      "size": [
        300,
        106
      ],
      "flags": {},
      "order": 28,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 55
        }
      ],
      "outputs": [
        {
          "name": "SIGMAS",
          "type": "SIGMAS",
          "links": [
            12
          ]
        }
      ],
      "title": "Steps (8 with the accelerator)",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "BasicScheduler",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "simple",
        4,
        1
      ],
      "widgets_values_named": {
        "scheduler": "simple",
        "steps": 4,
        "denoise": 1
      }
    },
    {
      "id": 11,
      "type": "BasicGuider",
      "pos": [
        3342.3822561298603,
        374.50875509542016
      ],
      "size": [
        300,
        46
      ],
      "flags": {},
      "order": 34,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 56
        },
        {
          "name": "conditioning",
          "type": "CONDITIONING",
          "link": 8
        }
      ],
      "outputs": [
        {
          "name": "GUIDER",
          "type": "GUIDER",
          "links": [
            10
          ]
        }
      ],
      "title": "Guider (CFG 1, no negative)",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "BasicGuider",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 12,
      "type": "SamplerCustomAdvanced",
      "pos": [
        3342.3822561298603,
        464.5087550954194
      ],
      "size": [
        300,
        106
      ],
      "flags": {},
      "order": 35,
      "mode": 0,
      "inputs": [
        {
          "name": "noise",
          "type": "NOISE",
          "link": 9
        },
        {
          "name": "guider",
          "type": "GUIDER",
          "link": 10
        },
        {
          "name": "sampler",
          "type": "SAMPLER",
          "link": 11
        },
        {
          "name": "sigmas",
          "type": "SIGMAS",
          "link": 12
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 13
        }
      ],
      "outputs": [
        {
          "name": "output",
          "type": "LATENT",
          "links": [
            14
          ]
        },
        {
          "name": "denoised_output",
          "type": "LATENT",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "SamplerCustomAdvanced",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 13,
      "type": "VAEDecode",
      "pos": [
        3342.3822561298603,
        614.5087550954183
      ],
      "size": [
        300,
        46
      ],
      "flags": {},
      "order": 36,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 14
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 15
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            16
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "VAEDecode",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 14,
      "type": "WN_RippleOutput",
      "pos": [
        3678.610976476993,
        7.6886134171382094
      ],
      "size": [
        421.4051742802694,
        421.31564196774195
      ],
      "flags": {},
      "order": 37,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 16
        },
        {
          "name": "ripple",
          "type": "WN_RIPPLE",
          "link": 17
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "audio",
          "type": "AUDIO",
          "links": []
        },
        {
          "name": "frame_rate",
          "type": "FLOAT",
          "links": []
        },
        {
          "name": "comparison",
          "type": "IMAGE",
          "links": [
            65
          ]
        }
      ],
      "title": "Ripple Output — MUTED: enable after reviewing edits",
      "properties": {
        "aux_id": "WepeNerd/ComfyUI-WepeNerd",
        "ver": "b3927ed1a1332756ee0667d6545a4d0303ebb278",
        "Node name for S&R": "WN_RippleOutput",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "shot + comparison",
        "ripple/edit",
        false
      ],
      "widgets_values_named": {
        "save": "shot + comparison",
        "filename_prefix": "ripple/edit",
        "show_anchor_markers": false
      }
    },
    {
      "id": 15,
      "type": "MarkdownNote",
      "pos": [
        2400,
        800
      ],
      "size": [
        980,
        1580
      ],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "H3 Ripple · Models & setup",
      "properties": {
        "Node name for S&R": "MarkdownNote",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "# H3 Ripple — Models & setup\n\nUse a current ComfyUI version and install [ComfyUI-WepeNerd](https://github.com/WepeNerd/ComfyUI-WepeNerd). Download the eight files below; folders are relative to your ComfyUI directory. Both Qwen editor branches use the same three files, so download each only once.\n\n## Video editing — MiniMax H3 + Ripple\n\n### H3 FL2VA diffusion model · [Download](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/diffusion_models/minimax_h3_fl2va_pruned_int8_convrot.safetensors)\n\n`minimax_h3_fl2va_pruned_int8_convrot.safetensors`\n\nSave in `models/diffusion_models/`.\n\n### H3 Turbo 4-step LoRA · [Download](https://huggingface.co/lightx2v/Minimax-h3-Turbo/resolve/main/minimax_h3_fl2v_turbo_4step_v1.3_768p_comfyui_bf16.safetensors)\n\n`minimax_h3_fl2v_turbo_4step_v1.3_768p_comfyui_bf16.safetensors`\n\nSave in `models/loras/H3/`.\n\n### H3 Ripple LoRA · [Model page](https://huggingface.co/WepeNerd/H3_Ripple)\n\n`minimax_H3_Ripple-v1.safetensors`\n\nSave in `models/loras/H3/`.\n\n### H3 text encoder · [Download](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors)\n\n`qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors`\n\nSave in `models/text_encoders/`.\n\n### H3 video VAE · [Download](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_video_vae_fp16.safetensors)\n\n`minimax_h3_video_vae_fp16.safetensors`\n\nSave in `models/vae/`.\n\n## Anchor image editing — Qwen Image 2.1\n\n### Qwen Image 2.1 diffusion model · [Download](https://huggingface.co/Comfy-Org/Qwen-Image-2.1/resolve/main/diffusion_models/qwen_image_2.1_int8_convrot.safetensors)\n\n`qwen_image_2.1_int8_convrot.safetensors`\n\nSave in `models/diffusion_models/`.\n\n### Qwen Image text encoder · [Download](https://huggingface.co/Comfy-Org/Qwen-Image-2.1/resolve/main/text_encoders/qwen3vl_8b_int8_convrot.safetensors)\n\n`qwen3vl_8b_int8_convrot.safetensors`\n\nSave in `models/text_encoders/`.\n\n### Qwen Image 2.1 VAE · [Download](https://huggingface.co/Comfy-Org/Qwen-Image-2.1/resolve/main/vae/qwen_image_2.1_vae_bf16.safetensors)\n\n`qwen_image_2.1_vae_bf16.safetensors`\n\nSave in `models/vae/`.\n\n## Setup & saved settings\n\nRefresh the model lists or restart ComfyUI after copying the files, then select them in the loaders. If the published Ripple download has a different filename, select that file in the Ripple LoRA loader.\n\n- **H3:** Turbo LoRA enabled; **4 steps · Euler · simple · CFG 1**. Both LoRA strengths are **1.0**. CLIP type: **minimax**.\n- **Qwen:** **25 steps · Euler · simple · CFG 1** in both branches. CLIP type: **qwen_image**. Encoder resolution: **0**. Keep both sampler seeds fixed for repeatable edits.\n\n## Using this workflow\n\nChoose the video, shot and two anchor markers in Ripple Clip. Write the change in each anchor's edit instruction and keep the two edits consistent. Each Qwen branch edits its anchor and feeds the result into Ripple Apply. Anchor sockets follow marker IDs, even when the markers cross on the timeline.\n\n**Ripple Output is enabled in this file:** queuing runs the local Qwen edits and the H3 video render. The optional API editing nodes are bypassed and are not needed for the local workflow."
      ],
      "widgets_values_named": {
        "text": "# H3 Ripple — Models & setup\n\nUse a current ComfyUI version and install [ComfyUI-WepeNerd](https://github.com/WepeNerd/ComfyUI-WepeNerd). Download the eight files below; folders are relative to your ComfyUI directory. Both Qwen editor branches use the same three files, so download each only once.\n\n## Video editing — MiniMax H3 + Ripple\n\n### H3 FL2VA diffusion model · [Download](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/diffusion_models/minimax_h3_fl2va_pruned_int8_convrot.safetensors)\n\n`minimax_h3_fl2va_pruned_int8_convrot.safetensors`\n\nSave in `models/diffusion_models/`.\n\n### H3 Turbo 4-step LoRA · [Download](https://huggingface.co/lightx2v/Minimax-h3-Turbo/resolve/main/minimax_h3_fl2v_turbo_4step_v1.3_768p_comfyui_bf16.safetensors)\n\n`minimax_h3_fl2v_turbo_4step_v1.3_768p_comfyui_bf16.safetensors`\n\nSave in `models/loras/H3/`.\n\n### H3 Ripple LoRA · [Model page](https://huggingface.co/WepeNerd/H3_Ripple)\n\n`minimax_H3_Ripple-v1.safetensors`\n\nSave in `models/loras/H3/`.\n\n### H3 text encoder · [Download](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors)\n\n`qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors`\n\nSave in `models/text_encoders/`.\n\n### H3 video VAE · [Download](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_video_vae_fp16.safetensors)\n\n`minimax_h3_video_vae_fp16.safetensors`\n\nSave in `models/vae/`.\n\n## Anchor image editing — Qwen Image 2.1\n\n### Qwen Image 2.1 diffusion model · [Download](https://huggingface.co/Comfy-Org/Qwen-Image-2.1/resolve/main/diffusion_models/qwen_image_2.1_int8_convrot.safetensors)\n\n`qwen_image_2.1_int8_convrot.safetensors`\n\nSave in `models/diffusion_models/`.\n\n### Qwen Image text encoder · [Download](https://huggingface.co/Comfy-Org/Qwen-Image-2.1/resolve/main/text_encoders/qwen3vl_8b_int8_convrot.safetensors)\n\n`qwen3vl_8b_int8_convrot.safetensors`\n\nSave in `models/text_encoders/`.\n\n### Qwen Image 2.1 VAE · [Download](https://huggingface.co/Comfy-Org/Qwen-Image-2.1/resolve/main/vae/qwen_image_2.1_vae_bf16.safetensors)\n\n`qwen_image_2.1_vae_bf16.safetensors`\n\nSave in `models/vae/`.\n\n## Setup & saved settings\n\nRefresh the model lists or restart ComfyUI after copying the files, then select them in the loaders. If the published Ripple download has a different filename, select that file in the Ripple LoRA loader.\n\n- **H3:** Turbo LoRA enabled; **4 steps · Euler · simple · CFG 1**. Both LoRA strengths are **1.0**. CLIP type: **minimax**.\n- **Qwen:** **25 steps · Euler · simple · CFG 1** in both branches. CLIP type: **qwen_image**. Encoder resolution: **0**. Keep both sampler seeds fixed for repeatable edits.\n\n## Using this workflow\n\nChoose the video, shot and two anchor markers in Ripple Clip. Write the change in each anchor's edit instruction and keep the two edits consistent. Each Qwen branch edits its anchor and feeds the result into Ripple Apply. Anchor sockets follow marker IDs, even when the markers cross on the timeline.\n\n**Ripple Output is enabled in this file:** queuing runs the local Qwen edits and the H3 video render. The optional API editing nodes are bypassed and are not needed for the local workflow."
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 16,
      "type": "UNETLoader",
      "pos": [
        722.7368328570016,
        266.5788727968613
      ],
      "size": [
        322.4736243141738,
        82
      ],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            22
          ]
        }
      ],
      "title": "Qwen Image 2.1 — local image editor",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "UNETLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen_image_2.1_int8_convrot.safetensors",
        "default"
      ],
      "widgets_values_named": {
        "unet_name": "qwen_image_2.1_int8_convrot.safetensors",
        "weight_dtype": "default"
      }
    },
    {
      "id": 17,
      "type": "CLIPLoader",
      "pos": [
        721.4485139120352,
        388.90490075126905
      ],
      "size": [
        300.94792239913136,
        106
      ],
      "flags": {},
      "order": 8,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            19
          ]
        }
      ],
      "title": "Qwen image text encoder",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "CLIPLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen3vl_8b_int8_convrot.safetensors",
        "qwen_image",
        "default"
      ],
      "widgets_values_named": {
        "clip_name": "qwen3vl_8b_int8_convrot.safetensors",
        "type": "qwen_image",
        "device": "default"
      }
    },
    {
      "id": 18,
      "type": "VAELoader",
      "pos": [
        722.7130037248404,
        533.0611829488538
      ],
      "size": [
        295.78934521947576,
        58
      ],
      "flags": {},
      "order": 9,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            20,
            27
          ]
        }
      ],
      "title": "Qwen Image 2.1 VAE",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "VAELoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen_image_2.1_vae_bf16.safetensors"
      ],
      "widgets_values_named": {
        "vae_name": "qwen_image_2.1_vae_bf16.safetensors"
      }
    },
    {
      "id": 19,
      "type": "PrimitiveStringMultiline",
      "pos": [
        722.7361025713607,
        13.466741338913565
      ],
      "size": [
        628.0893291283867,
        215.8052700415053
      ],
      "flags": {},
      "order": 10,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "STRING",
          "type": "STRING",
          "links": [
            21
          ]
        }
      ],
      "title": "Edit instruction for anchor frame 1",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "PrimitiveStringMultiline",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Change the environment and plants to an African savanna. Preserve the lighting and framing."
      ],
      "widgets_values_named": {
        "value": "Change the environment and plants to an African savanna. Preserve the lighting and framing."
      },
      "color": "#232",
      "bgcolor": "#353"
    },
    {
      "id": 20,
      "type": "TextEncodeQwenImage21",
      "pos": [
        1055.6687658314086,
        387.25656644461196
      ],
      "size": [
        251.3499969482422,
        286
      ],
      "flags": {},
      "order": 18,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 19
        },
        {
          "name": "images.image_1",
          "shape": 7,
          "type": "IMAGE",
          "link": 18
        },
        {
          "name": "images.image_2",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "images.image_3",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "images.image_4",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "vae",
          "shape": 7,
          "type": "VAE",
          "link": 20
        },
        {
          "name": "prompt",
          "type": "STRING",
          "widget": {
            "name": "prompt"
          },
          "link": 21
        }
      ],
      "outputs": [
        {
          "name": "positive",
          "type": "CONDITIONING",
          "links": [
            23
          ]
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "links": [
            24
          ]
        },
        {
          "name": "latent",
          "type": "LATENT",
          "links": [
            25
          ]
        }
      ],
      "title": "Edit anchor 1 — Qwen Image 2.1",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "TextEncodeQwenImage21",
        "ue_properties": {
          "widget_ue_connectable": {
            "prompt": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "",
        "",
        0
      ],
      "widgets_values_named": {
        "prompt": "",
        "negative_prompt": "",
        "resolution": 0
      }
    },
    {
      "id": 21,
      "type": "KSampler",
      "pos": [
        1315.9890287039207,
        366.7302986620854
      ],
      "size": [
        271.52744141593246,
        262
      ],
      "flags": {},
      "order": 23,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 22
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 23
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 24
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 25
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            26
          ]
        }
      ],
      "title": "Anchor 1 sampler — fixed seed",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "KSampler",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        123561,
        "fixed",
        25,
        1,
        "euler",
        "simple",
        1
      ],
      "widgets_values_named": {
        "seed": 123561,
        "control_after_generate": "fixed",
        "steps": 25,
        "cfg": 1,
        "sampler_name": "euler",
        "scheduler": "simple",
        "denoise": 1
      }
    },
    {
      "id": 22,
      "type": "VAEDecode",
      "pos": [
        1393.3037589398696,
        665.7951937039519
      ],
      "size": [
        197.025,
        46
      ],
      "flags": {},
      "order": 26,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 26
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 27
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            66
          ]
        }
      ],
      "title": "Decode edited anchor 1",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "VAEDecode",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 23,
      "type": "PreviewImage",
      "pos": [
        1831.9485180110146,
        366.6671520306202
      ],
      "size": [
        467.033831272719,
        430.51055876709756
      ],
      "flags": {},
      "order": 31,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 72
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": null
        }
      ],
      "title": "Review edited anchor 1 before H3",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 35,
      "type": "OpenAIGPTImageNodeV2",
      "pos": [
        742.7310925113085,
        1825.7686725453696
      ],
      "size": [
        336.9369725343929,
        442.8443412335205
      ],
      "flags": {},
      "order": 15,
      "mode": 4,
      "inputs": [
        {
          "name": "model.images.image_1",
          "shape": 7,
          "type": "IMAGE",
          "link": 54
        },
        {
          "name": "model.images.image_2",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "model.mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            52
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "OpenAIGPTImageNodeV2",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Change the environment and plants to an African savanna. Preserve the lighting and framing.",
        "gpt-image-2.5-sunburst",
        "auto",
        1024,
        1024,
        "auto",
        "medium",
        1,
        123456,
        "fixed"
      ],
      "widgets_values_named": {
        "prompt": "Change the environment and plants to an African savanna. Preserve the lighting and framing.",
        "model": "gpt-image-2.5-sunburst",
        "model.size": "auto",
        "model.custom_width": 1024,
        "model.custom_height": 1024,
        "model.background": "auto",
        "model.quality": "medium",
        "n": 1,
        "seed": 123456,
        "control_after_generate": "fixed"
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 36,
      "type": "OpenAIGPTImageNodeV2",
      "pos": [
        1558.592720189562,
        1827.785932777752
      ],
      "size": [
        341.03505326658296,
        441.47831432279054
      ],
      "flags": {},
      "order": 16,
      "mode": 4,
      "inputs": [
        {
          "name": "model.images.image_1",
          "shape": 7,
          "type": "IMAGE",
          "link": 53
        },
        {
          "name": "model.images.image_2",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "model.mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            51
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "OpenAIGPTImageNodeV2",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Change the cow to a rhino chewing grass. Change the environment to an African savanna. Preserve the pose, lighting and framing.",
        "gpt-image-2.5-sunburst",
        "auto",
        1024,
        1024,
        "auto",
        "medium",
        1,
        123456,
        "fixed"
      ],
      "widgets_values_named": {
        "prompt": "Change the cow to a rhino chewing grass. Change the environment to an African savanna. Preserve the pose, lighting and framing.",
        "model": "gpt-image-2.5-sunburst",
        "model.size": "auto",
        "model.custom_width": 1024,
        "model.custom_height": 1024,
        "model.background": "auto",
        "model.quality": "medium",
        "n": 1,
        "seed": 123456,
        "control_after_generate": "fixed"
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 38,
      "type": "PreviewImage",
      "pos": [
        1908.7720464128306,
        1826.4446336054575
      ],
      "size": [
        440,
        380
      ],
      "flags": {},
      "order": 21,
      "mode": 4,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 51
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Review edited anchor 2 before H3",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 39,
      "type": "PreviewImage",
      "pos": [
        1090.7528862922995,
        1825.7337449345923
      ],
      "size": [
        440,
        380
      ],
      "flags": {},
      "order": 20,
      "mode": 4,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 52
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Review edited anchor 1 before H3",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 40,
      "type": "ModelAttentionBackend",
      "pos": [
        2591.3221908068563,
        372.01827858664865
      ],
      "size": [
        270,
        58
      ],
      "flags": {},
      "order": 25,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 57
        }
      ],
      "outputs": [
        {
          "name": "model",
          "type": "MODEL",
          "links": [
            55,
            56
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "ModelAttentionBackend",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "comfy kitchen attention"
      ],
      "widgets_values_named": {
        "attention": "comfy kitchen attention"
      }
    },
    {
      "id": 41,
      "type": "WN_SaveVideo",
      "pos": [
        4109.535510642603,
        8.950573235994064
      ],
      "size": [
        937.5100468407618,
        667.6220215934741
      ],
      "flags": {},
      "order": 38,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 65
        },
        {
          "name": "audio",
          "shape": 7,
          "type": "AUDIO",
          "link": null
        },
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "filepath",
          "type": "STRING",
          "links": null
        }
      ],
      "properties": {
        "aux_id": "WepeNerd/ComfyUI-WepeNerd",
        "ver": "41d8f6ea19522d7b6378298dc18910eae2416fc5",
        "Node name for S&R": "WN_SaveVideo",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        24,
        "video",
        "MP4 · H.264",
        15,
        false,
        false
      ],
      "widgets_values_named": {
        "fps": 24,
        "filename_prefix": "video",
        "format": "MP4 · H.264",
        "crf": 15,
        "pingpong": false,
        "save_output": false
      }
    },
    {
      "id": 44,
      "type": "WN_VAEDeGrid",
      "pos": [
        1606.838782806946,
        367.13880509134316
      ],
      "size": [
        210,
        178
      ],
      "flags": {},
      "order": 29,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 66
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            72,
            73
          ]
        },
        {
          "name": "removed_grid",
          "type": "IMAGE",
          "links": null
        }
      ],
      "properties": {
        "aux_id": "WepeNerd/ComfyUI-WepeNerd",
        "ver": "1ff6d6e311cd26bd3ab67ceee18623d510704c4f",
        "Node name for S&R": "WN_VAEDeGrid",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "8.0"
        }
      },
      "widgets_values": [
        1,
        8,
        true,
        "strength map"
      ],
      "widgets_values_named": {
        "strength": 1,
        "window": 8,
        "skip_when_clean": true,
        "preview": "strength map"
      }
    },
    {
      "id": 47,
      "type": "PrimitiveStringMultiline",
      "pos": [
        729.9828473631436,
        906.7355301133738
      ],
      "size": [
        628.0893291283867,
        215.8052700415053
      ],
      "flags": {},
      "order": 11,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "STRING",
          "type": "STRING",
          "links": [
            88
          ]
        }
      ],
      "title": "Edit instruction for anchor frame 2",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "PrimitiveStringMultiline",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Change the cow to a rhino chewing grass. Change the environment to an African savanna. Preserve the pose, lighting and framing."
      ],
      "widgets_values_named": {
        "value": "Change the cow to a rhino chewing grass. Change the environment to an African savanna. Preserve the pose, lighting and framing."
      },
      "color": "#232",
      "bgcolor": "#353"
    },
    {
      "id": 48,
      "type": "TextEncodeQwenImage21",
      "pos": [
        1062.9155106231915,
        1280.5253552190723
      ],
      "size": [
        254.20000305175782,
        286
      ],
      "flags": {},
      "order": 19,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 78
        },
        {
          "name": "images.image_1",
          "shape": 7,
          "type": "IMAGE",
          "link": 87
        },
        {
          "name": "images.image_2",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "images.image_3",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "images.image_4",
          "shape": 7,
          "type": "IMAGE",
          "link": null
        },
        {
          "name": "vae",
          "shape": 7,
          "type": "VAE",
          "link": 89
        },
        {
          "name": "prompt",
          "type": "STRING",
          "widget": {
            "name": "prompt"
          },
          "link": 88
        }
      ],
      "outputs": [
        {
          "name": "positive",
          "type": "CONDITIONING",
          "links": [
            80
          ]
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "links": [
            81
          ]
        },
        {
          "name": "latent",
          "type": "LATENT",
          "links": [
            82
          ]
        }
      ],
      "title": "Edit anchor 2 — Qwen Image 2.1",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "TextEncodeQwenImage21",
        "ue_properties": {
          "widget_ue_connectable": {
            "prompt": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "",
        "",
        0
      ],
      "widgets_values_named": {
        "prompt": "",
        "negative_prompt": "",
        "resolution": 0
      }
    },
    {
      "id": 49,
      "type": "KSampler",
      "pos": [
        1323.2357734957036,
        1259.9990874365458
      ],
      "size": [
        271.52744141593246,
        262
      ],
      "flags": {},
      "order": 24,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 79
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 80
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 81
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 82
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            85
          ]
        }
      ],
      "title": "Anchor 2 sampler — fixed seed",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "KSampler",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        123596,
        "fixed",
        25,
        1,
        "euler",
        "simple",
        1
      ],
      "widgets_values_named": {
        "seed": 123596,
        "control_after_generate": "fixed",
        "steps": 25,
        "cfg": 1,
        "sampler_name": "euler",
        "scheduler": "simple",
        "denoise": 1
      }
    },
    {
      "id": 50,
      "type": "PreviewImage",
      "pos": [
        1839.195262802797,
        1259.9359408050805
      ],
      "size": [
        467.033831272719,
        430.51055876709756
      ],
      "flags": {},
      "order": 32,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 83
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Review edited anchor 2 before H3",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "PreviewImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    },
    {
      "id": 51,
      "type": "WN_VAEDeGrid",
      "pos": [
        1614.085527598729,
        1260.4075938658034
      ],
      "size": [
        210,
        178
      ],
      "flags": {},
      "order": 30,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 84
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            83,
            90
          ]
        },
        {
          "name": "removed_grid",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "aux_id": "WepeNerd/ComfyUI-WepeNerd",
        "ver": "1ff6d6e311cd26bd3ab67ceee18623d510704c4f",
        "Node name for S&R": "WN_VAEDeGrid",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "8.0"
        }
      },
      "widgets_values": [
        1,
        8,
        true,
        "strength map"
      ],
      "widgets_values_named": {
        "strength": 1,
        "window": 8,
        "skip_when_clean": true,
        "preview": "strength map"
      }
    },
    {
      "id": 52,
      "type": "UNETLoader",
      "pos": [
        729.9835776487843,
        1159.8476615713214
      ],
      "size": [
        322.4736243141738,
        82
      ],
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            79
          ]
        }
      ],
      "title": "Qwen Image 2.1 — local image editor",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "UNETLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen_image_2.1_int8_convrot.safetensors",
        "default"
      ],
      "widgets_values_named": {
        "unet_name": "qwen_image_2.1_int8_convrot.safetensors",
        "weight_dtype": "default"
      }
    },
    {
      "id": 53,
      "type": "CLIPLoader",
      "pos": [
        728.695258703818,
        1282.1736895257293
      ],
      "size": [
        300.94792239913136,
        106
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            78
          ]
        }
      ],
      "title": "Qwen image text encoder",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "CLIPLoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen3vl_8b_int8_convrot.safetensors",
        "qwen_image",
        "default"
      ],
      "widgets_values_named": {
        "clip_name": "qwen3vl_8b_int8_convrot.safetensors",
        "type": "qwen_image",
        "device": "default"
      }
    },
    {
      "id": 54,
      "type": "VAELoader",
      "pos": [
        729.9597485166231,
        1426.329971723314
      ],
      "size": [
        295.78934521947576,
        58
      ],
      "flags": {},
      "order": 14,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            86,
            89
          ]
        }
      ],
      "title": "Qwen Image 2.1 VAE",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "VAELoader",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "qwen_image_2.1_vae_bf16.safetensors"
      ],
      "widgets_values_named": {
        "vae_name": "qwen_image_2.1_vae_bf16.safetensors"
      }
    },
    {
      "id": 55,
      "type": "VAEDecode",
      "pos": [
        1400.5505037316525,
        1559.063982478412
      ],
      "size": [
        197.025,
        46
      ],
      "flags": {},
      "order": 27,
      "mode": 0,
      "inputs": [
        {
          "name": "samples",
          "type": "LATENT",
          "link": 85
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 86
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            84
          ]
        }
      ],
      "title": "Decode edited anchor 1",
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.43.0",
        "Node name for S&R": "VAEDecode",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      }
    }
  ],
  "links": [
    [
      1,
      1,
      1,
      7,
      2,
      "WN_RIPPLE"
    ],
    [
      2,
      2,
      0,
      3,
      0,
      "MODEL"
    ],
    [
      3,
      3,
      0,
      4,
      0,
      "MODEL"
    ],
    [
      4,
      5,
      0,
      7,
      0,
      "CLIP"
    ],
    [
      5,
      6,
      0,
      7,
      1,
      "VAE"
    ],
    [
      8,
      7,
      0,
      11,
      1,
      "CONDITIONING"
    ],
    [
      9,
      8,
      0,
      12,
      0,
      "NOISE"
    ],
    [
      10,
      11,
      0,
      12,
      1,
      "GUIDER"
    ],
    [
      11,
      9,
      0,
      12,
      2,
      "SAMPLER"
    ],
    [
      12,
      10,
      0,
      12,
      3,
      "SIGMAS"
    ],
    [
      13,
      7,
      1,
      12,
      4,
      "LATENT"
    ],
    [
      14,
      12,
      0,
      13,
      0,
      "LATENT"
    ],
    [
      15,
      6,
      0,
      13,
      1,
      "VAE"
    ],
    [
      22,
      16,
      0,
      21,
      0,
      "MODEL"
    ],
    [
      23,
      20,
      0,
      21,
      1,
      "CONDITIONING"
    ],
    [
      24,
      20,
      1,
      21,
      2,
      "CONDITIONING"
    ],
    [
      25,
      20,
      2,
      21,
      3,
      "LATENT"
    ],
    [
      26,
      21,
      0,
      22,
      0,
      "LATENT"
    ],
    [
      27,
      18,
      0,
      22,
      1,
      "VAE"
    ],
    [
      51,
      36,
      0,
      38,
      0,
      "IMAGE"
    ],
    [
      52,
      35,
      0,
      39,
      0,
      "IMAGE"
    ],
    [
      55,
      40,
      0,
      10,
      0,
      "MODEL"
    ],
    [
      56,
      40,
      0,
      11,
      0,
      "MODEL"
    ],
    [
      57,
      4,
      0,
      40,
      0,
      "MODEL"
    ],
    [
      65,
      14,
      3,
      41,
      0,
      "IMAGE"
    ],
    [
      16,
      13,
      0,
      14,
      0,
      "IMAGE"
    ],
    [
      17,
      1,
      1,
      14,
      1,
      "WN_RIPPLE"
    ],
    [
      66,
      22,
      0,
      44,
      0,
      "IMAGE"
    ],
    [
      72,
      44,
      0,
      23,
      0,
      "IMAGE"
    ],
    [
      73,
      44,
      0,
      7,
      4,
      "IMAGE"
    ],
    [
      79,
      52,
      0,
      49,
      0,
      "MODEL"
    ],
    [
      80,
      48,
      0,
      49,
      1,
      "CONDITIONING"
    ],
    [
      81,
      48,
      1,
      49,
      2,
      "CONDITIONING"
    ],
    [
      82,
      48,
      2,
      49,
      3,
      "LATENT"
    ],
    [
      83,
      51,
      0,
      50,
      0,
      "IMAGE"
    ],
    [
      84,
      55,
      0,
      51,
      0,
      "IMAGE"
    ],
    [
      85,
      49,
      0,
      55,
      0,
      "LATENT"
    ],
    [
      86,
      54,
      0,
      55,
      1,
      "VAE"
    ],
    [
      90,
      51,
      0,
      7,
      5,
      "IMAGE"
    ],
    [
      19,
      17,
      0,
      20,
      0,
      "CLIP"
    ],
    [
      18,
      1,
      4,
      20,
      1,
      "IMAGE"
    ],
    [
      78,
      53,
      0,
      48,
      0,
      "CLIP"
    ],
    [
      87,
      1,
      5,
      48,
      1,
      "IMAGE"
    ],
    [
      20,
      18,
      0,
      20,
      5,
      "VAE"
    ],
    [
      21,
      19,
      0,
      20,
      6,
      "STRING"
    ],
    [
      54,
      1,
      4,
      35,
      0,
      "IMAGE"
    ],
    [
      53,
      1,
      5,
      36,
      0,
      "IMAGE"
    ],
    [
      89,
      54,
      0,
      48,
      5,
      "VAE"
    ],
    [
      88,
      47,
      0,
      48,
      6,
      "STRING"
    ]
  ],
  "groups": [
    {
      "id": 1,
      "title": "Choose the shot and its anchor frame(s)",
      "bounding": [
        -131.59622574718787,
        -60.20057529459634,
        680,
        1270
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 2,
      "title": "1. Edit and review — Qwen Image 2.1",
      "bounding": [
        700,
        -60,
        1652.5125938913088,
        876.450820827841
      ],
      "color": "#5a8162",
      "flags": {}
    },
    {
      "id": 3,
      "title": "2. Render video — enable Ripple Output after reviewing edits",
      "bounding": [
        2380.8561534970618,
        -60.00703634501023,
        2674.3665968169394,
        785.9277616921534
      ],
      "color": "#b06634",
      "flags": {}
    },
    {
      "id": 4,
      "title": "Optional API frame editing",
      "bounding": [
        702.4245774105905,
        1741.1009540349023,
        1649.330336353061,
        563.2797064283918
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 6,
      "title": "1. Edit and review — Qwen Image 2.1",
      "bounding": [
        700.044751052735,
        830.702522704414,
        1652.5125938913088,
        876.450820827841
      ],
      "color": "#5a8162",
      "flags": {}
    }
  ],
  "config": {},
  "extra": {
    "ds": {
      "scale": 0.5500000000000179,
      "offset": [
        358.3859597080124,
        732.9846287659574
      ]
    },
    "ue_links": [],
    "links_added_by_ue": [],
    "frontendVersion": "1.57.6",
    "VHS_latentpreview": false,
    "VHS_latentpreviewrate": 0,
    "VHS_MetadataImage": true,
    "VHS_KeepIntermediate": true
  },
  "extensions": {
    "seed_widgets": {
      "8": 0,
      "21": 0,
      "35": 8,
      "36": 8,
      "49": 0
    }
  },
  "version": 0.4,
  "seed_widgets": {
    "8": 0,
    "21": 0,
    "35": 8,
    "36": 8,
    "49": 0
  }
}