What is Wan 2.1 VACE?
Wan 2.1 VACE is an editing model for Wan 2.1 video generation.
It has features that summarize ControlNet for video, inpainting / outpainting / reference2video into a single node (WanVaceToVideo).
- Control "movement only" with pose or depth map for existing videos
- Swap characters or adapt styles based on reference images
- Inpaint / outpaint only specific areas
- Generate video continuation (Extension), loop, or create in-between frames
You can handle these things while maintaining the generation quality of Wan 2.1.
Recommended Settings
- Recommended Resolution
- Around 720p, and multiple of 16
- Maximum Frames
- 81 frames
Model Download
For Wan 2.1 VACE, use a VACE-dedicated diffusion model separate from the normal T2V model. Here we only handle 14B.
- diffusion_models
- text encoder
- VAE
- gguf (Optional)
📂ComfyUI/
└── 📂models/
├── 📂diffusion_models/
│ └── wan2.1_vace_14B_fp16.safetensors
├── 📂text_encoders/
│ └── umt5_xxl_fp8_e4m3fn_scaled.safetensors
├── 📂unet/
│ └── Wan2.1_14B_VACE-XXXX.gguf ← Only when using gguf
└── 📂vae/
└── wan_2.1_vae.safetensors
Basic Structure
In any pattern, the basic form is adding the WanVaceToVideo node based on Wan 2.1 text2video.

control_video- "Guide video" such as pose, depth map, scribble, optical_flow, layout, etc.
control_masks- Mask for inpainting
reference_image- Reference image you want to transfer character or style
ControlNet-like Usage
Control video movement using pose or depth map.

{
"id": "d8034549-7e0a-40f1-8c2e-de3ffc6f1cae",
"revision": 0,
"last_node_id": 153,
"last_link_id": 311,
"nodes": [
{
"id": 38,
"type": "CLIPLoader",
"pos": [
56.288665771484375,
312.74468994140625
],
"size": [
301.3524169921875,
106
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 0,
"links": [
74,
75
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPLoader"
},
"widgets_values": [
"umt5_xxl_fp8_e4m3fn_scaled.safetensors",
"wan",
"default"
]
},
{
"id": 76,
"type": "CFGZeroStar",
"pos": [
1000.048828125,
-59.61582946777344
],
"size": [
167.09765625,
26
],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 145
}
],
"outputs": [
{
"name": "patched_model",
"type": "MODEL",
"links": [
140
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CFGZeroStar"
},
"widgets_values": []
},
{
"id": 81,
"type": "UNetTemporalAttentionMultiply",
"pos": [
721.2425537109375,
-59.61582946777344
],
"size": [
246.86484375,
150
],
"flags": {
"collapsed": false
},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 306
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
145
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.27",
"Node name for S&R": "UNetTemporalAttentionMultiply",
"enableTabs": false,
"tabWidth": 65,
"tabXOffset": 10,
"hasSecondTab": false,
"secondTabText": "Send Back",
"secondTabOffset": 80,
"secondTabWidth": 65
},
"widgets_values": [
1,
1,
1.2,
1.3
]
},
{
"id": 39,
"type": "VAELoader",
"pos": [
530.832763671875,
587.7254638671875
],
"size": [
306.36004638671875,
58
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "VAE",
"type": "VAE",
"slot_index": 0,
"links": [
76,
152
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAELoader"
},
"widgets_values": [
"wan_2.1_vae.safetensors"
]
},
{
"id": 8,
"type": "VAEDecode",
"pos": [
1553.4351806640625,
187
],
"size": [
157.56002807617188,
46
],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 35
},
{
"name": "vae",
"type": "VAE",
"link": 76
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
256
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 6,
"type": "CLIPTextEncode",
"pos": [
417.9232177734375,
186
],
"size": [
419.26959228515625,
148.8194122314453
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 74
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
150
]
}
],
"title": "CLIP Text Encode (Positive Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"A man in a suit is dancing in the ruins"
]
},
{
"id": 83,
"type": "WanVaceToVideo",
"pos": [
891.0216064453125,
206.52101135253906
],
"size": [
270,
254
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "positive",
"type": "CONDITIONING",
"link": 150
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 151
},
{
"name": "vae",
"type": "VAE",
"link": 152
},
{
"name": "control_video",
"shape": 7,
"type": "IMAGE",
"link": 304
},
{
"name": "control_masks",
"shape": 7,
"type": "MASK",
"link": null
},
{
"name": "reference_image",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "width",
"type": "INT",
"widget": {
"name": "width"
},
"link": 310
},
{
"name": "height",
"type": "INT",
"widget": {
"name": "height"
},
"link": 311
},
{
"name": "length",
"type": "INT",
"widget": {
"name": "length"
},
"link": 301
}
],
"outputs": [
{
"name": "positive",
"type": "CONDITIONING",
"links": [
148
]
},
{
"name": "negative",
"type": "CONDITIONING",
"links": [
149
]
},
{
"name": "latent",
"type": "LATENT",
"links": [
165
]
},
{
"name": "trim_latent",
"type": "INT",
"links": null
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "WanVaceToVideo"
},
"widgets_values": [
480,
832,
49,
1,
0.7000000000000002
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 48,
"type": "ModelSamplingSD3",
"pos": [
476.0362548828125,
-59.61582946777344
],
"size": [
210,
58
],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 134
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"slot_index": 0,
"links": [
306
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "ModelSamplingSD3"
},
"widgets_values": [
8
]
},
{
"id": 7,
"type": "CLIPTextEncode",
"pos": [
417.8738708496094,
389
],
"size": [
419.3189392089844,
138.8924560546875
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 75
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
151
]
}
],
"title": "CLIP Text Encode (Negative Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走 "
]
},
{
"id": 151,
"type": "MarkdownNote",
"pos": [
-222.96632385253906,
-59.982730865478516
],
"size": [
363.34173583984375,
260.9707946777344
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [],
"properties": {},
"widgets_values": [
"## models\n- [wan2.1_vace_14B_fp16.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/diffusion_models/wan2.1_vace_14B_fp16.safetensors)\n- [umt5_xxl.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/text_encoders)\n- [wan_2.1_vae.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/vae/wan_2.1_vae.safetensors)\n\n\n```\n📂ComfyUI/\n└──📂models/\n ├── 📂diffusion_models/\n │ └── wan2.1_vace_14B_fp16.safetensors\n ├── 📂text_encoders/\n │ └── umt5_xxl (fp16 or fp8).safetensors\n └── 📂vae/\n └── wan_2.1_vae.safetensors\n\n```"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 152,
"type": "ImageScaleToTotalPixels",
"pos": [
-11.743981588775075,
717.6988525390625
],
"size": [
231.0368144252442,
83.50262960180316
],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 309
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
307
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "ImageScaleToTotalPixels"
},
"widgets_values": [
"nearest-exact",
0.5
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 149,
"type": "OpenposePreprocessor",
"pos": [
542.4701538085939,
717.6988525390625
],
"size": [
294.72265625,
174
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 308
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
303,
304
]
},
{
"name": "POSE_KEYPOINT",
"type": "POSE_KEYPOINT",
"links": null
}
],
"properties": {
"cnr_id": "comfyui_controlnet_aux",
"ver": "83463c2e4b04e729268e57f638b4212e0da4badc",
"Node name for S&R": "OpenposePreprocessor"
},
"widgets_values": [
"enable",
"enable",
"enable",
512,
"disable"
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 3,
"type": "KSampler",
"pos": [
1204.0506591796875,
187
],
"size": [
315,
262
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 140
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 148
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 149
},
{
"name": "latent_image",
"type": "LATENT",
"link": 165
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
35
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "KSampler"
},
"widgets_values": [
1234,
"fixed",
20,
4,
"euler",
"simple",
1
]
},
{
"id": 73,
"type": "UNETLoader",
"pos": [
170.8299560546875,
-59.61582946777344
],
"size": [
270,
82
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
134
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "UNETLoader"
},
"widgets_values": [
"Wan2.1\\wan2.1_vace_14B_fp16.safetensors",
"fp8_e4m3fn"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 84,
"type": "VHS_LoadVideo",
"pos": [
-301.8867888336184,
717.6988525390625
],
"size": [
261.6533203125,
753.272357822205
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
309
]
},
{
"name": "frame_count",
"type": "INT",
"links": [
301
]
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "8628502-hd_1080_1920_25fps.mp4",
"force_rate": 16,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 81,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "Wan",
"choose video to upload": "image",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "8628502-hd_1080_1920_25fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 16,
"custom_width": 832,
"custom_height": 0,
"frame_load_cap": 81,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 113,
"type": "VHS_VideoCombine",
"pos": [
1745.3797607421875,
187
],
"size": [
424.88425208085937,
1084.1531856015624
],
"flags": {},
"order": 17,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 256
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 16,
"loop_count": 0,
"filename_prefix": "Wan2.1",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": true,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Wan2.1_00025.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 16,
"workflow": "Wan2.1_00025.png",
"fullpath": "D:\\AI\\ComfyUI_windows_portable\\ComfyUI\\output\\Wan2.1_00025.mp4"
}
}
}
},
{
"id": 153,
"type": "ImageResizeKJv2",
"pos": [
247.78231976881247,
717.6988525390625
],
"size": [
266.19834710743805,
348
],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 307
},
{
"name": "mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
308
]
},
{
"name": "width",
"type": "INT",
"links": [
310
]
},
{
"name": "height",
"type": "INT",
"links": [
311
]
},
{
"name": "mask",
"type": "MASK",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "4dfb85dcc52e4315c33170d97bb987baa46d128b",
"Node name for S&R": "ImageResizeKJv2"
},
"widgets_values": [
0,
0,
"nearest-exact",
"crop",
"0, 0, 0",
"center",
16,
"cpu",
"<tr><td>Output: </td><td><b>81</b> x <b>528</b> x <b>960 | 469.86MB</b></td></tr>"
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 143,
"type": "PreviewImage",
"pos": [
880.061767578125,
726.25927734375
],
"size": [
210,
258
],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 303
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "PreviewImage"
},
"widgets_values": []
}
],
"links": [
[
35,
3,
0,
8,
0,
"LATENT"
],
[
74,
38,
0,
6,
0,
"CLIP"
],
[
75,
38,
0,
7,
0,
"CLIP"
],
[
76,
39,
0,
8,
1,
"VAE"
],
[
134,
73,
0,
48,
0,
"MODEL"
],
[
140,
76,
0,
3,
0,
"MODEL"
],
[
145,
81,
0,
76,
0,
"MODEL"
],
[
148,
83,
0,
3,
1,
"CONDITIONING"
],
[
149,
83,
1,
3,
2,
"CONDITIONING"
],
[
150,
6,
0,
83,
0,
"CONDITIONING"
],
[
151,
7,
0,
83,
1,
"CONDITIONING"
],
[
152,
39,
0,
83,
2,
"VAE"
],
[
165,
83,
2,
3,
3,
"LATENT"
],
[
256,
8,
0,
113,
0,
"IMAGE"
],
[
301,
84,
1,
83,
8,
"INT"
],
[
303,
149,
0,
143,
0,
"IMAGE"
],
[
304,
149,
0,
83,
3,
"IMAGE"
],
[
306,
48,
0,
81,
0,
"MODEL"
],
[
307,
152,
0,
153,
0,
"IMAGE"
],
[
308,
153,
0,
149,
0,
"IMAGE"
],
[
309,
84,
0,
152,
0,
"IMAGE"
],
[
310,
153,
1,
83,
6,
"INT"
],
[
311,
153,
2,
83,
7,
"INT"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.6209213230591555,
"offset": [
401.8867888336184,
159.98273086547852
]
},
"frontendVersion": "1.35.0",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
- Input pose (OpenPose, etc.) or depth map into
control_video. - Can be used for purposes such as "borrowing only the pose from another video while maintaining the camera work of the original video".
reference2video
Transfer the character or style of the reference image to the video.

{
"id": "d8034549-7e0a-40f1-8c2e-de3ffc6f1cae",
"revision": 0,
"last_node_id": 155,
"last_link_id": 318,
"nodes": [
{
"id": 38,
"type": "CLIPLoader",
"pos": [
56.288665771484375,
312.74468994140625
],
"size": [
301.3524169921875,
106
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 0,
"links": [
74,
75
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPLoader"
},
"widgets_values": [
"umt5_xxl_fp8_e4m3fn_scaled.safetensors",
"wan",
"default"
]
},
{
"id": 76,
"type": "CFGZeroStar",
"pos": [
1000.048828125,
-59.61582946777344
],
"size": [
167.09765625,
26
],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 145
}
],
"outputs": [
{
"name": "patched_model",
"type": "MODEL",
"links": [
140
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CFGZeroStar"
},
"widgets_values": []
},
{
"id": 81,
"type": "UNetTemporalAttentionMultiply",
"pos": [
721.2425537109375,
-59.61582946777344
],
"size": [
246.86484375,
150
],
"flags": {
"collapsed": false
},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 306
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
145
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.27",
"Node name for S&R": "UNetTemporalAttentionMultiply",
"enableTabs": false,
"tabWidth": 65,
"tabXOffset": 10,
"hasSecondTab": false,
"secondTabText": "Send Back",
"secondTabOffset": 80,
"secondTabWidth": 65
},
"widgets_values": [
1,
1,
1.2,
1.3
]
},
{
"id": 39,
"type": "VAELoader",
"pos": [
530.832763671875,
587.7254638671875
],
"size": [
306.36004638671875,
58
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "VAE",
"type": "VAE",
"slot_index": 0,
"links": [
76,
152
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAELoader"
},
"widgets_values": [
"wan_2.1_vae.safetensors"
]
},
{
"id": 48,
"type": "ModelSamplingSD3",
"pos": [
476.0362548828125,
-59.61582946777344
],
"size": [
210,
58
],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 134
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"slot_index": 0,
"links": [
306
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "ModelSamplingSD3"
},
"widgets_values": [
8
]
},
{
"id": 7,
"type": "CLIPTextEncode",
"pos": [
417.8738708496094,
389
],
"size": [
419.3189392089844,
138.8924560546875
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 75
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
151
]
}
],
"title": "CLIP Text Encode (Negative Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走 "
]
},
{
"id": 151,
"type": "MarkdownNote",
"pos": [
-222.96632385253906,
-59.982730865478516
],
"size": [
363.34173583984375,
260.9707946777344
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [],
"properties": {},
"widgets_values": [
"## models\n- [wan2.1_vace_14B_fp16.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/diffusion_models/wan2.1_vace_14B_fp16.safetensors)\n- [umt5_xxl.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/text_encoders)\n- [wan_2.1_vae.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/vae/wan_2.1_vae.safetensors)\n\n\n```\n📂ComfyUI/\n└──📂models/\n ├── 📂diffusion_models/\n │ └── wan2.1_vace_14B_fp16.safetensors\n ├── 📂text_encoders/\n │ └── umt5_xxl (fp16 or fp8).safetensors\n └── 📂vae/\n └── wan_2.1_vae.safetensors\n\n```"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 73,
"type": "UNETLoader",
"pos": [
170.8299560546875,
-59.61582946777344
],
"size": [
270,
82
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
134
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "UNETLoader"
},
"widgets_values": [
"Wan2.1\\wan2.1_vace_14B_fp16.safetensors",
"fp8_e4m3fn"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 153,
"type": "ImageResizeKJv2",
"pos": [
563.2368652233583,
710.4261252663354
],
"size": [
266.19834710743805,
348
],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 307
},
{
"name": "mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
315
]
},
{
"name": "width",
"type": "INT",
"links": [
310
]
},
{
"name": "height",
"type": "INT",
"links": [
311
]
},
{
"name": "mask",
"type": "MASK",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "4dfb85dcc52e4315c33170d97bb987baa46d128b",
"Node name for S&R": "ImageResizeKJv2"
},
"widgets_values": [
0,
0,
"nearest-exact",
"crop",
"0, 0, 0",
"center",
16,
"cpu"
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 152,
"type": "ImageScaleToTotalPixels",
"pos": [
302.84062920327506,
710.4261252663354
],
"size": [
231.0368144252442,
83.50262960180316
],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 314
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
307
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "ImageScaleToTotalPixels"
},
"widgets_values": [
"nearest-exact",
0.5
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 6,
"type": "CLIPTextEncode",
"pos": [
417.9232177734375,
186
],
"size": [
419.26959228515625,
148.8194122314453
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 74
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
150
]
}
],
"title": "CLIP Text Encode (Positive Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"A cute Lego minifigure happily swinging back and forth on a swing set in a sunny park."
]
},
{
"id": 3,
"type": "KSampler",
"pos": [
1204.0506591796875,
187
],
"size": [
315,
262
],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 140
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 148
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 149
},
{
"name": "latent_image",
"type": "LATENT",
"link": 165
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
316
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "KSampler"
},
"widgets_values": [
1234,
"fixed",
20,
4,
"euler",
"simple",
1
]
},
{
"id": 8,
"type": "VAEDecode",
"pos": [
1767.6239808978455,
187
],
"size": [
157.56002807617188,
46
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 318
},
{
"name": "vae",
"type": "VAE",
"link": 76
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
256
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 113,
"type": "VHS_VideoCombine",
"pos": [
1944.4706698330965,
187
],
"size": [
424.88425208085937,
752.8842520808594
],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 256
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 16,
"loop_count": 0,
"filename_prefix": "Wan2.1",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": true,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Wan2.1_00028.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 16,
"workflow": "Wan2.1_00028.png",
"fullpath": "D:\\AI\\ComfyUI_windows_portable\\ComfyUI\\output\\Wan2.1_00028.mp4"
}
}
}
},
{
"id": 155,
"type": "TrimVideoLatent",
"pos": [
1538.3373200387666,
187
],
"size": [
210,
58
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 316
},
{
"name": "trim_amount",
"type": "INT",
"widget": {
"name": "trim_amount"
},
"link": 317
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"links": [
318
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "TrimVideoLatent"
},
"widgets_values": [
0
],
"color": "#322",
"bgcolor": "#533"
},
{
"id": 83,
"type": "WanVaceToVideo",
"pos": [
891.0216064453125,
206.52101135253906
],
"size": [
270,
254
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "positive",
"type": "CONDITIONING",
"link": 150
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 151
},
{
"name": "vae",
"type": "VAE",
"link": 152
},
{
"name": "control_video",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "control_masks",
"shape": 7,
"type": "MASK",
"link": null
},
{
"name": "reference_image",
"shape": 7,
"type": "IMAGE",
"link": 315
},
{
"name": "width",
"type": "INT",
"widget": {
"name": "width"
},
"link": 310
},
{
"name": "height",
"type": "INT",
"widget": {
"name": "height"
},
"link": 311
}
],
"outputs": [
{
"name": "positive",
"type": "CONDITIONING",
"links": [
148
]
},
{
"name": "negative",
"type": "CONDITIONING",
"links": [
149
]
},
{
"name": "latent",
"type": "LATENT",
"links": [
165
]
},
{
"name": "trim_latent",
"type": "INT",
"links": [
317
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "WanVaceToVideo"
},
"widgets_values": [
480,
832,
81,
1,
1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 154,
"type": "LoadImage",
"pos": [
1.1823794834359425,
710.4261252663354
],
"size": [
272.298828125,
387.70000000000005
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
314
]
},
{
"name": "MASK",
"type": "MASK",
"links": null
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "LoadImage"
},
"widgets_values": [
"pasted/image (109).png",
"image"
]
}
],
"links": [
[
74,
38,
0,
6,
0,
"CLIP"
],
[
75,
38,
0,
7,
0,
"CLIP"
],
[
76,
39,
0,
8,
1,
"VAE"
],
[
134,
73,
0,
48,
0,
"MODEL"
],
[
140,
76,
0,
3,
0,
"MODEL"
],
[
145,
81,
0,
76,
0,
"MODEL"
],
[
148,
83,
0,
3,
1,
"CONDITIONING"
],
[
149,
83,
1,
3,
2,
"CONDITIONING"
],
[
150,
6,
0,
83,
0,
"CONDITIONING"
],
[
151,
7,
0,
83,
1,
"CONDITIONING"
],
[
152,
39,
0,
83,
2,
"VAE"
],
[
165,
83,
2,
3,
3,
"LATENT"
],
[
256,
8,
0,
113,
0,
"IMAGE"
],
[
306,
48,
0,
81,
0,
"MODEL"
],
[
307,
152,
0,
153,
0,
"IMAGE"
],
[
310,
153,
1,
83,
6,
"INT"
],
[
311,
153,
2,
83,
7,
"INT"
],
[
314,
154,
0,
152,
0,
"IMAGE"
],
[
315,
153,
0,
83,
5,
"IMAGE"
],
[
316,
3,
0,
155,
0,
"LATENT"
],
[
317,
83,
3,
155,
1,
"INT"
],
[
318,
155,
0,
8,
0,
"LATENT"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.26333125430607984,
"offset": [
3864.099928579995,
2004.9183945073578
]
},
"frontendVersion": "1.35.0",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
- Input character image or illustration into
reference_image. - It is easier to stabilize if you use an image with the background cut out and filled with white.
- Since the reference image may remain as is in the beginning of the generated video, it is easier to handle if you cut the initial frames with
TrimVideoLatent. - Resizing the reference image to match the output resolution also prevents breakdown.
Spatial Inpainting
Replace only a part of the video.

{
"id": "d8034549-7e0a-40f1-8c2e-de3ffc6f1cae",
"revision": 0,
"last_node_id": 160,
"last_link_id": 327,
"nodes": [
{
"id": 38,
"type": "CLIPLoader",
"pos": [
56.288665771484375,
312.74468994140625
],
"size": [
301.3524169921875,
106
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 0,
"links": [
74,
75
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPLoader"
},
"widgets_values": [
"umt5_xxl_fp8_e4m3fn_scaled.safetensors",
"wan",
"default"
]
},
{
"id": 76,
"type": "CFGZeroStar",
"pos": [
1000.048828125,
-59.61582946777344
],
"size": [
167.09765625,
26
],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 145
}
],
"outputs": [
{
"name": "patched_model",
"type": "MODEL",
"links": [
140
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CFGZeroStar"
},
"widgets_values": []
},
{
"id": 81,
"type": "UNetTemporalAttentionMultiply",
"pos": [
721.2425537109375,
-59.61582946777344
],
"size": [
246.86484375,
150
],
"flags": {
"collapsed": false
},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 306
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
145
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.27",
"Node name for S&R": "UNetTemporalAttentionMultiply",
"enableTabs": false,
"tabWidth": 65,
"tabXOffset": 10,
"hasSecondTab": false,
"secondTabText": "Send Back",
"secondTabOffset": 80,
"secondTabWidth": 65
},
"widgets_values": [
1,
1,
1.2,
1.3
]
},
{
"id": 39,
"type": "VAELoader",
"pos": [
530.832763671875,
585.3054638671872
],
"size": [
306.36004638671875,
58
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "VAE",
"type": "VAE",
"slot_index": 0,
"links": [
76,
152
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAELoader"
},
"widgets_values": [
"wan_2.1_vae.safetensors"
]
},
{
"id": 8,
"type": "VAEDecode",
"pos": [
1553.4351806640625,
187
],
"size": [
157.56002807617188,
46
],
"flags": {},
"order": 19,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 35
},
{
"name": "vae",
"type": "VAE",
"link": 76
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
256
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 48,
"type": "ModelSamplingSD3",
"pos": [
476.0362548828125,
-59.61582946777344
],
"size": [
210,
58
],
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 134
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"slot_index": 0,
"links": [
306
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "ModelSamplingSD3"
},
"widgets_values": [
8
]
},
{
"id": 7,
"type": "CLIPTextEncode",
"pos": [
417.8738708496094,
389
],
"size": [
419.3189392089844,
138.8924560546875
],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 75
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
151
]
}
],
"title": "CLIP Text Encode (Negative Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走 "
]
},
{
"id": 151,
"type": "MarkdownNote",
"pos": [
-222.96632385253906,
-59.982730865478516
],
"size": [
363.34173583984375,
260.9707946777344
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [],
"properties": {},
"widgets_values": [
"## models\n- [wan2.1_vace_14B_fp16.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/diffusion_models/wan2.1_vace_14B_fp16.safetensors)\n- [umt5_xxl.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/text_encoders)\n- [wan_2.1_vae.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/vae/wan_2.1_vae.safetensors)\n\n\n```\n📂ComfyUI/\n└──📂models/\n ├── 📂diffusion_models/\n │ └── wan2.1_vace_14B_fp16.safetensors\n ├── 📂text_encoders/\n │ └── umt5_xxl (fp16 or fp8).safetensors\n └── 📂vae/\n └── wan_2.1_vae.safetensors\n\n```"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 3,
"type": "KSampler",
"pos": [
1204.0506591796875,
187
],
"size": [
315,
262
],
"flags": {},
"order": 18,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 140
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 148
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 149
},
{
"name": "latent_image",
"type": "LATENT",
"link": 165
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
35
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "KSampler"
},
"widgets_values": [
1234,
"fixed",
20,
4,
"euler",
"simple",
1
]
},
{
"id": 73,
"type": "UNETLoader",
"pos": [
170.8299560546875,
-59.61582946777344
],
"size": [
270,
82
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
134
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "UNETLoader"
},
"widgets_values": [
"Wan2.1\\wan2.1_vace_14B_fp16.safetensors",
"fp8_e4m3fn"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 152,
"type": "ImageScaleToTotalPixels",
"pos": [
-386.1205088076342,
593.4083636651919
],
"size": [
231.0368144252442,
83.50262960180316
],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 314
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
307
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "ImageScaleToTotalPixels"
},
"widgets_values": [
"nearest-exact",
0.5
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 158,
"type": "EmptyImage",
"pos": [
246.96532640968746,
1131.650361238934
],
"size": [
270,
130
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
320
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "EmptyImage"
},
"widgets_values": [
1024,
1024,
1,
8355711
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 153,
"type": "ImageResizeKJv2",
"pos": [
-125.06935956824626,
593.4083636651919
],
"size": [
266.19834710743805,
348
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 307
},
{
"name": "mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
321,
322
]
},
{
"name": "width",
"type": "INT",
"links": [
310
]
},
{
"name": "height",
"type": "INT",
"links": [
311
]
},
{
"name": "mask",
"type": "MASK",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "4dfb85dcc52e4315c33170d97bb987baa46d128b",
"Node name for S&R": "ImageResizeKJv2"
},
"widgets_values": [
0,
0,
"nearest-exact",
"crop",
"0, 0, 0",
"center",
16,
"cpu"
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 159,
"type": "ImageCompositeMasked",
"pos": [
552.7201237729693,
920.2414012779917
],
"size": [
270,
146
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "destination",
"type": "IMAGE",
"link": 322
},
{
"name": "source",
"type": "IMAGE",
"link": 320
},
{
"name": "mask",
"shape": 7,
"type": "MASK",
"link": 323
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
324,
325
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "ImageCompositeMasked"
},
"widgets_values": [
0,
0,
true
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 83,
"type": "WanVaceToVideo",
"pos": [
891.0216064453125,
206.52101135253906
],
"size": [
270,
254
],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{
"name": "positive",
"type": "CONDITIONING",
"link": 150
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 151
},
{
"name": "vae",
"type": "VAE",
"link": 152
},
{
"name": "control_video",
"shape": 7,
"type": "IMAGE",
"link": 324
},
{
"name": "control_masks",
"shape": 7,
"type": "MASK",
"link": 317
},
{
"name": "reference_image",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "width",
"type": "INT",
"widget": {
"name": "width"
},
"link": 310
},
{
"name": "height",
"type": "INT",
"widget": {
"name": "height"
},
"link": 311
},
{
"name": "length",
"type": "INT",
"widget": {
"name": "length"
},
"link": 327
}
],
"outputs": [
{
"name": "positive",
"type": "CONDITIONING",
"links": [
148
]
},
{
"name": "negative",
"type": "CONDITIONING",
"links": [
149
]
},
{
"name": "latent",
"type": "LATENT",
"links": [
165
]
},
{
"name": "trim_latent",
"type": "INT",
"links": null
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "WanVaceToVideo"
},
"widgets_values": [
480,
832,
81,
1,
1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 154,
"type": "VHS_LoadVideo",
"pos": [
-737.2922961656839,
593.4083636651919
],
"size": [
321.1574525439049,
493.0884035877739
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
314
]
},
{
"name": "frame_count",
"type": "INT",
"links": [
327
]
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "13028231_1920_1080_60fps.mp4",
"force_rate": 16,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 81,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "Wan",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "13028231_1920_1080_60fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 16,
"custom_width": 832,
"custom_height": 0,
"frame_load_cap": 81,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 6,
"type": "CLIPTextEncode",
"pos": [
417.9232177734375,
186
],
"size": [
419.26959228515625,
148.8194122314453
],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 74
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
150
]
}
],
"title": "CLIP Text Encode (Positive Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"A video, shot on iPhone, of a beautiful lion with a fine coat running towards the camera on a muddy, curved path"
]
},
{
"id": 156,
"type": "DownloadAndLoadFlorence2Model",
"pos": [
-130.94308379378387,
1002.8095612389338
],
"size": [
272.9986328125,
130
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "lora",
"shape": 7,
"type": "PEFTLORA",
"link": null
}
],
"outputs": [
{
"name": "florence2_model",
"type": "FL2MODEL",
"links": [
313
]
}
],
"properties": {
"cnr_id": "comfyui-florence2",
"ver": "00b63382966a444a9fefacb65b8deb188d12a458",
"Node name for S&R": "DownloadAndLoadFlorence2Model"
},
"widgets_values": [
"microsoft/Florence-2-base-ft",
"fp16",
"sdpa",
true
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 155,
"type": "Florence2Run",
"pos": [
184.32022235333622,
701.7517636651916
],
"size": [
335.0999999999999,
364
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 321
},
{
"name": "florence2_model",
"type": "FL2MODEL",
"link": 313
}
],
"outputs": [
{
"name": "image",
"type": "IMAGE",
"links": null
},
{
"name": "mask",
"type": "MASK",
"links": [
317,
323
]
},
{
"name": "caption",
"type": "STRING",
"links": null
},
{
"name": "data",
"type": "JSON",
"links": []
}
],
"properties": {
"cnr_id": "comfyui-florence2",
"ver": "00b63382966a444a9fefacb65b8deb188d12a458",
"Node name for S&R": "Florence2Run"
},
"widgets_values": [
"car\n",
"caption_to_phrase_grounding",
true,
false,
1024,
3,
true,
"",
1234,
"fixed"
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 160,
"type": "PreviewImage",
"pos": [
860.8459087796853,
920.1332203479927
],
"size": [
276.0811905118501,
297.3775923361068
],
"flags": {},
"order": 17,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 325
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "PreviewImage"
},
"widgets_values": []
},
{
"id": 113,
"type": "VHS_VideoCombine",
"pos": [
1745.3797607421875,
187
],
"size": [
493.77188331854177,
619.4117363491748
],
"flags": {},
"order": 20,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 256
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 16,
"loop_count": 0,
"filename_prefix": "Wan2.1",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": true,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Wan2.1_00032.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 16,
"workflow": "Wan2.1_00032.png",
"fullpath": "D:\\AI\\ComfyUI_windows_portable\\ComfyUI\\output\\Wan2.1_00032.mp4"
}
}
}
}
],
"links": [
[
35,
3,
0,
8,
0,
"LATENT"
],
[
74,
38,
0,
6,
0,
"CLIP"
],
[
75,
38,
0,
7,
0,
"CLIP"
],
[
76,
39,
0,
8,
1,
"VAE"
],
[
134,
73,
0,
48,
0,
"MODEL"
],
[
140,
76,
0,
3,
0,
"MODEL"
],
[
145,
81,
0,
76,
0,
"MODEL"
],
[
148,
83,
0,
3,
1,
"CONDITIONING"
],
[
149,
83,
1,
3,
2,
"CONDITIONING"
],
[
150,
6,
0,
83,
0,
"CONDITIONING"
],
[
151,
7,
0,
83,
1,
"CONDITIONING"
],
[
152,
39,
0,
83,
2,
"VAE"
],
[
165,
83,
2,
3,
3,
"LATENT"
],
[
256,
8,
0,
113,
0,
"IMAGE"
],
[
306,
48,
0,
81,
0,
"MODEL"
],
[
307,
152,
0,
153,
0,
"IMAGE"
],
[
310,
153,
1,
83,
6,
"INT"
],
[
311,
153,
2,
83,
7,
"INT"
],
[
313,
156,
0,
155,
1,
"FL2MODEL"
],
[
314,
154,
0,
152,
0,
"IMAGE"
],
[
317,
155,
1,
83,
4,
"MASK"
],
[
320,
158,
0,
159,
1,
"IMAGE"
],
[
321,
153,
0,
155,
0,
"IMAGE"
],
[
322,
153,
0,
159,
0,
"IMAGE"
],
[
323,
155,
1,
159,
2,
"MASK"
],
[
324,
159,
0,
83,
3,
"IMAGE"
],
[
325,
159,
0,
160,
0,
"IMAGE"
],
[
327,
154,
1,
83,
8,
"INT"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.4918778148104763,
"offset": [
837.2922961656839,
159.98273086547852
]
},
"frontendVersion": "1.35.3",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
- Use a video filled with gray (RGB 127,127,127) in the masked part for
control_video. - Use the original video as is for the untouched area, and replace only the part filled with gray.
Temporal Outpainting (Extension)
Extend the "time direction" of the video. The mechanism uses only the first N frames of the input video and generates the continuation.
{
"id": "d8034549-7e0a-40f1-8c2e-de3ffc6f1cae",
"revision": 0,
"last_node_id": 173,
"last_link_id": 349,
"nodes": [
{
"id": 38,
"type": "CLIPLoader",
"pos": [
56.288665771484375,
312.74468994140625
],
"size": [
301.3524169921875,
106
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 0,
"links": [
74,
75
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPLoader"
},
"widgets_values": [
"umt5_xxl_fp8_e4m3fn_scaled.safetensors",
"wan",
"default"
]
},
{
"id": 76,
"type": "CFGZeroStar",
"pos": [
1000.048828125,
-59.61582946777344
],
"size": [
167.09765625,
26
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 145
}
],
"outputs": [
{
"name": "patched_model",
"type": "MODEL",
"links": [
140
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CFGZeroStar"
},
"widgets_values": []
},
{
"id": 81,
"type": "UNetTemporalAttentionMultiply",
"pos": [
721.2425537109375,
-59.61582946777344
],
"size": [
246.86484375,
150
],
"flags": {
"collapsed": false
},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 306
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
145
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.27",
"Node name for S&R": "UNetTemporalAttentionMultiply",
"enableTabs": false,
"tabWidth": 65,
"tabXOffset": 10,
"hasSecondTab": false,
"secondTabText": "Send Back",
"secondTabOffset": 80,
"secondTabWidth": 65
},
"widgets_values": [
1,
1,
1.2,
1.3
]
},
{
"id": 39,
"type": "VAELoader",
"pos": [
530.832763671875,
585.3054638671872
],
"size": [
306.36004638671875,
58
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "VAE",
"type": "VAE",
"slot_index": 0,
"links": [
76,
152
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAELoader"
},
"widgets_values": [
"wan_2.1_vae.safetensors"
]
},
{
"id": 48,
"type": "ModelSamplingSD3",
"pos": [
476.0362548828125,
-59.61582946777344
],
"size": [
210,
58
],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 134
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"slot_index": 0,
"links": [
306
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "ModelSamplingSD3"
},
"widgets_values": [
8
]
},
{
"id": 7,
"type": "CLIPTextEncode",
"pos": [
417.8738708496094,
389
],
"size": [
419.3189392089844,
138.8924560546875
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 75
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
151
]
}
],
"title": "CLIP Text Encode (Negative Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走 "
]
},
{
"id": 151,
"type": "MarkdownNote",
"pos": [
-222.96632385253906,
-59.982730865478516
],
"size": [
363.34173583984375,
260.9707946777344
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [],
"properties": {},
"widgets_values": [
"## models\n- [wan2.1_vace_14B_fp16.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/diffusion_models/wan2.1_vace_14B_fp16.safetensors)\n- [umt5_xxl.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/tree/main/split_files/text_encoders)\n- [wan_2.1_vae.safetensors](https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/blob/main/split_files/vae/wan_2.1_vae.safetensors)\n\n\n```\n📂ComfyUI/\n└──📂models/\n ├── 📂diffusion_models/\n │ └── wan2.1_vace_14B_fp16.safetensors\n ├── 📂text_encoders/\n │ └── umt5_xxl (fp16 or fp8).safetensors\n └── 📂vae/\n └── wan_2.1_vae.safetensors\n\n```"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 3,
"type": "KSampler",
"pos": [
1204.0506591796875,
187
],
"size": [
315,
262
],
"flags": {},
"order": 20,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 140
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 148
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 149
},
{
"name": "latent_image",
"type": "LATENT",
"link": 165
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
35
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "KSampler"
},
"widgets_values": [
1234,
"fixed",
20,
4,
"euler",
"simple",
1
]
},
{
"id": 73,
"type": "UNETLoader",
"pos": [
170.8299560546875,
-59.61582946777344
],
"size": [
270,
82
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
134
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "UNETLoader"
},
"widgets_values": [
"Wan2.1\\wan2.1_vace_14B_fp16.safetensors",
"fp8_e4m3fn"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 83,
"type": "WanVaceToVideo",
"pos": [
891.0216064453125,
206.52101135253906
],
"size": [
270,
254
],
"flags": {},
"order": 19,
"mode": 0,
"inputs": [
{
"name": "positive",
"type": "CONDITIONING",
"link": 150
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 151
},
{
"name": "vae",
"type": "VAE",
"link": 152
},
{
"name": "control_video",
"shape": 7,
"type": "IMAGE",
"link": 345
},
{
"name": "control_masks",
"shape": 7,
"type": "MASK",
"link": 346
},
{
"name": "reference_image",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "width",
"type": "INT",
"widget": {
"name": "width"
},
"link": 348
},
{
"name": "height",
"type": "INT",
"widget": {
"name": "height"
},
"link": 349
}
],
"outputs": [
{
"name": "positive",
"type": "CONDITIONING",
"links": [
148
]
},
{
"name": "negative",
"type": "CONDITIONING",
"links": [
149
]
},
{
"name": "latent",
"type": "LATENT",
"links": [
165
]
},
{
"name": "trim_latent",
"type": "INT",
"links": null
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "WanVaceToVideo"
},
"widgets_values": [
480,
832,
81,
1,
1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 161,
"type": "ImageScaleToTotalPixels",
"pos": [
-244.8304991078608,
723.4361978289982
],
"size": [
239.38699340820312,
82
],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 328
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
333
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.46",
"Node name for S&R": "ImageScaleToTotalPixels"
},
"widgets_values": [
"nearest-exact",
0.5
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 163,
"type": "ReverseImageBatch",
"pos": [
324.61525589702205,
932.3262735125928
],
"size": [
179.421484375,
26
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 330
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
329
]
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "9d7af919b91838fb22e31ad0107a6ddcf8bd7f3f",
"Node name for S&R": "ReverseImageBatch"
},
"widgets_values": [],
"color": "#223",
"bgcolor": "#335"
},
{
"id": 164,
"type": "ReverseImageBatch",
"pos": [
289.13536698100654,
724.1445718524357
],
"size": [
179.421484375,
26
],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 331
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
332
]
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "9d7af919b91838fb22e31ad0107a6ddcf8bd7f3f",
"Node name for S&R": "ReverseImageBatch"
},
"widgets_values": [],
"color": "#223",
"bgcolor": "#335"
},
{
"id": 165,
"type": "ImageFromBatch",
"pos": [
289.13536698100654,
800.2353921649358
],
"size": [
210,
82
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 332
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
330
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.60",
"Node name for S&R": "ImageFromBatch"
},
"widgets_values": [
0,
5
],
"color": "#223",
"bgcolor": "#335"
},
{
"id": 168,
"type": "PreviewImage",
"pos": [
882.4112764048336,
721.2888589618107
],
"size": [
225.45455932617188,
348.7272644042969
],
"flags": {},
"order": 17,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 334
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.60",
"Node name for S&R": "PreviewImage"
},
"widgets_values": []
},
{
"id": 169,
"type": "MaskPreview",
"pos": [
1140.3951020884283,
726.4173990008732
],
"size": [
226.36363220214844,
338.7272644042969
],
"flags": {},
"order": 18,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 335
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.60",
"Node name for S&R": "MaskPreview"
},
"widgets_values": []
},
{
"id": 162,
"type": "WanVideoVACEStartToEndFrame",
"pos": [
537.5208955454591,
717.7811074969669
],
"size": [
303.84375,
190
],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{
"name": "start_image",
"shape": 7,
"type": "IMAGE",
"link": 329
},
{
"name": "end_image",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "control_images",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "inpaint_mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "images",
"type": "IMAGE",
"links": [
334,
345
]
},
{
"name": "masks",
"type": "MASK",
"links": [
335,
346
]
}
],
"properties": {
"cnr_id": "comfyui-wanvideowrapper",
"ver": "cfdae3b49f10561138f60fb1759c4675c2537d0a",
"Node name for S&R": "WanVideoVACEStartToEndFrame"
},
"widgets_values": [
81,
0.5,
0,
-1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 6,
"type": "CLIPTextEncode",
"pos": [
417.9232177734375,
186
],
"size": [
419.26959228515625,
148.8194122314453
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 74
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
150
]
}
],
"title": "CLIP Text Encode (Positive Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"A cat walking toward the viewer"
]
},
{
"id": 8,
"type": "VAEDecode",
"pos": [
1553.4351806640625,
187
],
"size": [
157.56002807617188,
46
],
"flags": {},
"order": 21,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 35
},
{
"name": "vae",
"type": "VAE",
"link": 76
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
256,
347
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 171,
"type": "ImageBatch",
"pos": [
2271.9495125083563,
292.7855153518865
],
"size": [
140,
46
],
"flags": {},
"order": 24,
"mode": 0,
"inputs": [
{
"name": "image1",
"type": "IMAGE",
"link": 336
},
{
"name": "image2",
"type": "IMAGE",
"link": 337
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
339
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.60",
"Node name for S&R": "ImageBatch"
},
"widgets_values": []
},
{
"id": 166,
"type": "VHS_LoadVideo",
"pos": [
-530.5042509389164,
723.4361978289982
],
"size": [
261.6533203125,
753.272357822205
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
328
]
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": [
338
]
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "0edce8ef7ce173ac97a3ed3d6f4636029d1a4530",
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "12503985_2160_3840_30fps.mp4",
"force_rate": 16,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 0,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "Wan",
"choose video to upload": "image",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "12503985_2160_3840_30fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 16,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 0,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 167,
"type": "ImageResizeKJv2",
"pos": [
26.950796668506413,
723.4361978289982
],
"size": [
227,
333
],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 333
},
{
"name": "mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
331,
336
]
},
{
"name": "width",
"type": "INT",
"links": [
348
]
},
{
"name": "height",
"type": "INT",
"links": [
349
]
},
{
"name": "mask",
"type": "MASK",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "9d7af919b91838fb22e31ad0107a6ddcf8bd7f3f",
"Node name for S&R": "ImageResizeKJv2"
},
"widgets_values": [
0,
0,
"nearest-exact",
"crop",
"0, 0, 0",
"center",
16,
"cpu"
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 172,
"type": "VHS_VideoInfoLoaded",
"pos": [
1422.0722566899906,
1157.122245926656
],
"size": [
256.2392578125,
106
],
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"link": 338
}
],
"outputs": [
{
"name": "fps🟦",
"type": "FLOAT",
"links": [
340
]
},
{
"name": "frame_count🟦",
"type": "INT",
"links": null
},
{
"name": "duration🟦",
"type": "FLOAT",
"links": null
},
{
"name": "width🟦",
"type": "INT",
"links": null
},
{
"name": "height🟦",
"type": "INT",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "0edce8ef7ce173ac97a3ed3d6f4636029d1a4530",
"Node name for S&R": "VHS_VideoInfoLoaded"
},
"widgets_values": {}
},
{
"id": 113,
"type": "VHS_VideoCombine",
"pos": [
1753.666566742186,
182.1055137
],
"size": [
226.5576171875,
723.5593039772727
],
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 256
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 16,
"loop_count": 0,
"filename_prefix": "Wan2.1",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": true,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Wan2.1_00030.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 16,
"workflow": "Wan2.1_00030.png",
"fullpath": "D:\\AI\\ComfyUI_windows_portable\\ComfyUI\\output\\Wan2.1_00030.mp4"
}
}
}
},
{
"id": 170,
"type": "ImageFromBatch",
"pos": [
2037.7049569169294,
313.2161046670009
],
"size": [
210,
82
],
"flags": {},
"order": 23,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 347
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
337
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.60",
"Node name for S&R": "ImageFromBatch"
},
"widgets_values": [
5,
4096
]
},
{
"id": 173,
"type": "VHS_VideoCombine",
"pos": [
2446.674115120057,
291.73054949122115
],
"size": [
379.35513438085945,
1001.3729716015625
],
"flags": {},
"order": 25,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 339
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
},
{
"name": "frame_rate",
"type": "FLOAT",
"widget": {
"name": "frame_rate"
},
"link": 340
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 24,
"loop_count": 0,
"filename_prefix": "Wan2.2",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": true,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Wan2.2_00231.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 16,
"workflow": "Wan2.2_00231.png",
"fullpath": "D:\\AI\\ComfyUI_windows_portable\\ComfyUI\\output\\Wan2.2_00231.mp4"
}
}
}
}
],
"links": [
[
35,
3,
0,
8,
0,
"LATENT"
],
[
74,
38,
0,
6,
0,
"CLIP"
],
[
75,
38,
0,
7,
0,
"CLIP"
],
[
76,
39,
0,
8,
1,
"VAE"
],
[
134,
73,
0,
48,
0,
"MODEL"
],
[
140,
76,
0,
3,
0,
"MODEL"
],
[
145,
81,
0,
76,
0,
"MODEL"
],
[
148,
83,
0,
3,
1,
"CONDITIONING"
],
[
149,
83,
1,
3,
2,
"CONDITIONING"
],
[
150,
6,
0,
83,
0,
"CONDITIONING"
],
[
151,
7,
0,
83,
1,
"CONDITIONING"
],
[
152,
39,
0,
83,
2,
"VAE"
],
[
165,
83,
2,
3,
3,
"LATENT"
],
[
256,
8,
0,
113,
0,
"IMAGE"
],
[
306,
48,
0,
81,
0,
"MODEL"
],
[
328,
166,
0,
161,
0,
"IMAGE"
],
[
329,
163,
0,
162,
0,
"IMAGE"
],
[
330,
165,
0,
163,
0,
"IMAGE"
],
[
331,
167,
0,
164,
0,
"IMAGE"
],
[
332,
164,
0,
165,
0,
"IMAGE"
],
[
333,
161,
0,
167,
0,
"IMAGE"
],
[
334,
162,
0,
168,
0,
"IMAGE"
],
[
335,
162,
1,
169,
0,
"MASK"
],
[
336,
167,
0,
171,
0,
"IMAGE"
],
[
337,
170,
0,
171,
1,
"IMAGE"
],
[
338,
166,
3,
172,
0,
"VHS_VIDEOINFO"
],
[
339,
171,
0,
173,
0,
"IMAGE"
],
[
340,
172,
0,
173,
4,
"FLOAT"
],
[
345,
162,
0,
83,
3,
"IMAGE"
],
[
346,
162,
1,
83,
4,
"MASK"
],
[
347,
8,
0,
170,
0,
"IMAGE"
],
[
348,
167,
1,
83,
6,
"INT"
],
[
349,
167,
2,
83,
7,
"INT"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.42409761837248605,
"offset": [
914.5454711270482,
416.05218709443506
]
},
"reroutes": [
{
"id": 1,
"pos": [
-192.94913619282147,
1167.7909951922807
],
"linkIds": [
338
]
},
{
"id": 2,
"pos": [
301.5540681528816,
1095.2404580829057
],
"linkIds": [
336
]
}
],
"linkExtensions": [
{
"id": 336,
"parentId": 2
},
{
"id": 338,
"parentId": 1
}
],
"frontendVersion": "1.35.0",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
- Make the section you want to generate continuation (e.g., from 11th frame onwards) a full mask with
Create Fade Mask Advancedetc. - If you leave unused frames as is in
control_video, they will become unnecessary guides, so the trick is to fill the parts you want to generate with mask or gray.
Looping Video
Apply Extension to make an existing video loop.
{
"id": "d8034549-7e0a-40f1-8c2e-de3ffc6f1cae",
"revision": 0,
"last_node_id": 200,
"last_link_id": 434,
"nodes": [
{
"id": 159,
"type": "ReverseImageBatch",
"pos": [
-494.59711575932494,
760.362208374645
],
"size": [
189.9746551513672,
26
],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 407
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
324
]
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "44565e9bffc89de454d06b4abe08137d1247652a",
"Node name for S&R": "ReverseImageBatch"
},
"widgets_values": [],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 81,
"type": "UNetTemporalAttentionMultiply",
"pos": [
679.6223999023443,
-98.7926986694336
],
"size": [
246.86484375,
150
],
"flags": {
"collapsed": false
},
"order": 8,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 389
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
145
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.27",
"Node name for S&R": "UNetTemporalAttentionMultiply",
"enableTabs": false,
"tabWidth": 65,
"tabXOffset": 10,
"hasSecondTab": false,
"secondTabText": "Send Back",
"secondTabOffset": 80,
"secondTabWidth": 65
},
"widgets_values": [
1,
1,
1.2,
1.3
]
},
{
"id": 48,
"type": "ModelSamplingSD3",
"pos": [
435.7427307128911,
-98.7926986694336
],
"size": [
210,
58
],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 404
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"slot_index": 0,
"links": [
389
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "ModelSamplingSD3"
},
"widgets_values": [
8
]
},
{
"id": 8,
"type": "VAEDecode",
"pos": [
1752.8529311523425,
129.59507751464844
],
"size": [
157.56002807617188,
46
],
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 431
},
{
"name": "vae",
"type": "VAE",
"link": 76
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"slot_index": 0,
"links": [
371
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAEDecode"
},
"widgets_values": []
},
{
"id": 191,
"type": "UNETLoader",
"pos": [
135.24699318929274,
-99.13363737240883
],
"size": [
270,
82
],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
404
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "UNETLoader"
},
"widgets_values": [
"Wan2.1\\wan2.1_vace_14B_fp16.safetensors",
"fp8_e4m3fn"
],
"color": "#323",
"bgcolor": "#535"
},
{
"id": 192,
"type": "ImageScaleToTotalPixels",
"pos": [
-1035.8858363463928,
755.8816592639552
],
"size": [
231.0368144252442,
83.50262960180316
],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 406
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
405
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.76",
"Node name for S&R": "ImageScaleToTotalPixels"
},
"widgets_values": [
"nearest-exact",
0.5
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 163,
"type": "ImageFromBatch",
"pos": [
-282.59568108076473,
760.362208374645
],
"size": [
245.20660400390625,
82
],
"flags": {},
"order": 13,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 324
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
337
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "ImageFromBatch"
},
"widgets_values": [
0,
15
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 168,
"type": "ReverseImageBatch",
"pos": [
-15.362297549665756,
760.362208374645
],
"size": [
189.9746551513672,
26
],
"flags": {},
"order": 14,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 337
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
421
]
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "44565e9bffc89de454d06b4abe08137d1247652a",
"Node name for S&R": "ReverseImageBatch"
},
"widgets_values": [],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 193,
"type": "ImageResizeKJv2",
"pos": [
-782.8222423939563,
755.8816592639552
],
"size": [
266.19834710743805,
348
],
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 405
},
{
"name": "mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
407,
408,
409
]
},
{
"name": "width",
"type": "INT",
"links": [
411
]
},
{
"name": "height",
"type": "INT",
"links": [
414
]
},
{
"name": "mask",
"type": "MASK",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-kjnodes",
"ver": "4dfb85dcc52e4315c33170d97bb987baa46d128b",
"Node name for S&R": "ImageResizeKJv2"
},
"widgets_values": [
0,
0,
"nearest-exact",
"crop",
"0, 0, 0",
"center",
16,
"cpu"
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 83,
"type": "WanVaceToVideo",
"pos": [
863.1331176757812,
149.76364135742188
],
"size": [
270,
254
],
"flags": {},
"order": 19,
"mode": 0,
"inputs": [
{
"name": "positive",
"type": "CONDITIONING",
"link": 429
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 430
},
{
"name": "vae",
"type": "VAE",
"link": 152
},
{
"name": "control_video",
"shape": 7,
"type": "IMAGE",
"link": 423
},
{
"name": "control_masks",
"shape": 7,
"type": "MASK",
"link": 424
},
{
"name": "reference_image",
"shape": 7,
"type": "IMAGE",
"link": 433
},
{
"name": "width",
"type": "INT",
"widget": {
"name": "width"
},
"link": 411
},
{
"name": "height",
"type": "INT",
"widget": {
"name": "height"
},
"link": 414
}
],
"outputs": [
{
"name": "positive",
"type": "CONDITIONING",
"links": [
148
]
},
{
"name": "negative",
"type": "CONDITIONING",
"links": [
149
]
},
{
"name": "latent",
"type": "LATENT",
"links": [
165
]
},
{
"name": "trim_latent",
"type": "INT",
"links": [
378
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "WanVaceToVideo"
},
"widgets_values": [
720,
720,
81,
1,
1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 196,
"type": "CLIPLoader",
"pos": [
-27.951253381953826,
252.02037974234077
],
"size": [
301.3524169921875,
106
],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "CLIP",
"type": "CLIP",
"slot_index": 0,
"links": [
427,
428
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPLoader"
},
"widgets_values": [
"umt5_xxl_fp8_e4m3fn_scaled.safetensors",
"wan",
"default"
]
},
{
"id": 197,
"type": "CLIPTextEncode",
"pos": [
333.68329861999905,
125.2756898009345
],
"size": [
419.26959228515625,
148.8194122314453
],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 427
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
429
]
}
],
"title": "CLIP Text Encode (Positive Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"The rally car, now covered in mud, drives slowly across a muddy track, kicking up dirt as it moves. Spectators stand by, watching intently, while a banner reading \"Imprint Customs\" flutters in the background. The scene conveys a sense of action and competition."
]
},
{
"id": 198,
"type": "CLIPTextEncode",
"pos": [
333.6339516961709,
328.27568980093446
],
"size": [
419.3189392089844,
138.8924560546875
],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{
"name": "clip",
"type": "CLIP",
"link": 428
}
],
"outputs": [
{
"name": "CONDITIONING",
"type": "CONDITIONING",
"slot_index": 0,
"links": [
430
]
}
],
"title": "CLIP Text Encode (Negative Prompt)",
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CLIPTextEncode"
},
"widgets_values": [
"色调艳丽,过曝,静态,细节模糊不清,字幕,风格,作品,画作,画面,静止,整体发灰,最差质量,低质量,JPEG压缩残留,丑陋的,残缺的,多余的手指,画得不好的手部,画得不好的脸部,畸形的,毁容的,形态畸形的肢体,手指融合,静止不动的画面,杂乱的背景,三条腿,背景人很多,倒着走 "
]
},
{
"id": 39,
"type": "VAELoader",
"pos": [
446.59284451843655,
534.6300725763493
],
"size": [
306.36004638671875,
58
],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "VAE",
"type": "VAE",
"slot_index": 0,
"links": [
76,
152
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "VAELoader"
},
"widgets_values": [
"wan_2.1_vae.safetensors"
]
},
{
"id": 76,
"type": "CFGZeroStar",
"pos": [
957.1023803710943,
-98.7926986694336
],
"size": [
167.09765625,
26
],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 145
}
],
"outputs": [
{
"name": "patched_model",
"type": "MODEL",
"links": [
387
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "CFGZeroStar"
},
"widgets_values": []
},
{
"id": 199,
"type": "ImageFromBatch",
"pos": [
542.9528909051553,
658.1943173997556
],
"size": [
210,
82
],
"flags": {},
"order": 17,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 432
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
433
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.4.0",
"Node name for S&R": "ImageFromBatch"
},
"widgets_values": [
0,
1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 158,
"type": "VHS_LoadVideo",
"pos": [
-1319.5659361860867,
756.9535621832388
],
"size": [
261.6533203125,
460.08634187370603
],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
406
]
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_LoadVideo"
},
"widgets_values": {
"video": "13028231_1920_1080_60fps.mp4",
"force_rate": 16,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 0,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "Wan",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "13028231_1920_1080_60fps.mp4",
"type": "input",
"format": "video/mp4",
"force_rate": 16,
"custom_width": 832,
"custom_height": 0,
"frame_load_cap": 0,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 194,
"type": "WanVideoVACEStartToEndFrame",
"pos": [
196.63913712889453,
759.3527959941271
],
"size": [
303.84375,
190
],
"flags": {},
"order": 15,
"mode": 0,
"inputs": [
{
"name": "start_image",
"shape": 7,
"type": "IMAGE",
"link": 421
},
{
"name": "end_image",
"shape": 7,
"type": "IMAGE",
"link": 419
},
{
"name": "control_images",
"shape": 7,
"type": "IMAGE",
"link": null
},
{
"name": "inpaint_mask",
"shape": 7,
"type": "MASK",
"link": null
}
],
"outputs": [
{
"name": "images",
"type": "IMAGE",
"links": [
416,
423,
432
]
},
{
"name": "masks",
"type": "MASK",
"links": [
420,
424
]
}
],
"properties": {
"cnr_id": "comfyui-wanvideowrapper",
"ver": "cfdae3b49f10561138f60fb1759c4675c2537d0a",
"Node name for S&R": "WanVideoVACEStartToEndFrame"
},
"widgets_values": [
81,
0.5,
0,
-1
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 157,
"type": "ImageFromBatch",
"pos": [
-285.3131805483727,
912.7993921015618
],
"size": [
245.20660400390625,
82
],
"flags": {},
"order": 12,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 408
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
356,
419
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "ImageFromBatch"
},
"widgets_values": [
0,
15
],
"color": "#232",
"bgcolor": "#353"
},
{
"id": 146,
"type": "PreviewImage",
"pos": [
544.9434040117188,
872.6378307382826
],
"size": [
564.8008044433593,
320.9200000000001
],
"flags": {},
"order": 16,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 416
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "PreviewImage"
},
"widgets_values": []
},
{
"id": 195,
"type": "MaskPreview",
"pos": [
547.8239489470752,
1255.0721075395852
],
"size": [
576.3018,
258
],
"flags": {},
"order": 18,
"mode": 0,
"inputs": [
{
"name": "mask",
"type": "MASK",
"link": 420
}
],
"outputs": [],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.4.0",
"Node name for S&R": "MaskPreview"
},
"widgets_values": []
},
{
"id": 3,
"type": "KSampler",
"pos": [
1174.8670654296875,
129.59507751464844
],
"size": [
315,
262
],
"flags": {},
"order": 20,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 387
},
{
"name": "positive",
"type": "CONDITIONING",
"link": 148
},
{
"name": "negative",
"type": "CONDITIONING",
"link": 149
},
{
"name": "latent_image",
"type": "LATENT",
"link": 165
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"slot_index": 0,
"links": [
379
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.33",
"Node name for S&R": "KSampler"
},
"widgets_values": [
1234,
"fixed",
20,
4,
"euler",
"simple",
1
]
},
{
"id": 177,
"type": "ImageFromBatch",
"pos": [
1936.905892089842,
129.59507751464844
],
"size": [
210,
82
],
"flags": {},
"order": 23,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 371
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
372
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "ImageFromBatch"
},
"widgets_values": [
15,
51
]
},
{
"id": 183,
"type": "TrimVideoLatent",
"pos": [
1516.359998291015,
129.59507751464844
],
"size": [
210,
58
],
"flags": {},
"order": 21,
"mode": 0,
"inputs": [
{
"name": "samples",
"type": "LATENT",
"link": 379
},
{
"name": "trim_amount",
"type": "INT",
"widget": {
"name": "trim_amount"
},
"link": 378
}
],
"outputs": [
{
"name": "LATENT",
"type": "LATENT",
"links": [
431
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.36",
"Node name for S&R": "TrimVideoLatent"
},
"widgets_values": [
0
],
"color": "#322",
"bgcolor": "#533"
},
{
"id": 113,
"type": "VHS_VideoCombine",
"pos": [
2360.891757812497,
129.59507751464844
],
"size": [
813.0398559570312,
784.1719207763672
],
"flags": {},
"order": 25,
"mode": 0,
"inputs": [
{
"name": "images",
"type": "IMAGE",
"link": 370
},
{
"name": "audio",
"shape": 7,
"type": "AUDIO",
"link": null
},
{
"name": "meta_batch",
"shape": 7,
"type": "VHS_BatchManager",
"link": null
},
{
"name": "vae",
"shape": 7,
"type": "VAE",
"link": null
}
],
"outputs": [
{
"name": "Filenames",
"type": "VHS_FILENAMES",
"links": null
}
],
"properties": {
"cnr_id": "comfyui-videohelpersuite",
"ver": "a7ce59e381934733bfae03b1be029756d6ce936d",
"Node name for S&R": "VHS_VideoCombine"
},
"widgets_values": {
"frame_rate": 16,
"loop_count": 0,
"filename_prefix": "Wan2.1",
"format": "video/h264-mp4",
"pix_fmt": "yuv420p",
"crf": 19,
"save_metadata": true,
"trim_to_audio": false,
"pingpong": false,
"save_output": true,
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "Wan2.1_00034.mp4",
"subfolder": "",
"type": "output",
"format": "video/h264-mp4",
"frame_rate": 16,
"workflow": "Wan2.1_00034.png",
"fullpath": "D:\\AI\\ComfyUI_windows_portable\\ComfyUI\\output\\Wan2.1_00034.mp4"
}
}
}
},
{
"id": 176,
"type": "ImageBatch",
"pos": [
2173.3988249511694,
129.59507751464844
],
"size": [
161,
46
],
"flags": {},
"order": 24,
"mode": 0,
"inputs": [
{
"name": "image1",
"type": "IMAGE",
"link": 409
},
{
"name": "image2",
"type": "IMAGE",
"link": 372
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
370
]
}
],
"properties": {
"cnr_id": "comfy-core",
"ver": "0.3.34",
"Node name for S&R": "ImageBatch"
},
"widgets_values": []
}
],
"links": [
[
76,
39,
0,
8,
1,
"VAE"
],
[
145,
81,
0,
76,
0,
"MODEL"
],
[
148,
83,
0,
3,
1,
"CONDITIONING"
],
[
149,
83,
1,
3,
2,
"CONDITIONING"
],
[
152,
39,
0,
83,
2,
"VAE"
],
[
165,
83,
2,
3,
3,
"LATENT"
],
[
324,
159,
0,
163,
0,
"IMAGE"
],
[
337,
163,
0,
168,
0,
"IMAGE"
],
[
356,
157,
0,
171,
1,
"IMAGE"
],
[
370,
176,
0,
113,
0,
"IMAGE"
],
[
371,
8,
0,
177,
0,
"IMAGE"
],
[
372,
177,
0,
176,
1,
"IMAGE"
],
[
378,
83,
3,
183,
1,
"INT"
],
[
379,
3,
0,
183,
0,
"LATENT"
],
[
387,
76,
0,
3,
0,
"MODEL"
],
[
389,
48,
0,
81,
0,
"MODEL"
],
[
404,
191,
0,
48,
0,
"MODEL"
],
[
405,
192,
0,
193,
0,
"IMAGE"
],
[
406,
158,
0,
192,
0,
"IMAGE"
],
[
407,
193,
0,
159,
0,
"IMAGE"
],
[
408,
193,
0,
157,
0,
"IMAGE"
],
[
409,
193,
0,
176,
0,
"IMAGE"
],
[
411,
193,
1,
83,
6,
"INT"
],
[
414,
193,
2,
83,
7,
"INT"
],
[
416,
194,
0,
146,
0,
"IMAGE"
],
[
419,
157,
0,
194,
1,
"IMAGE"
],
[
420,
194,
1,
195,
0,
"MASK"
],
[
421,
168,
0,
194,
0,
"IMAGE"
],
[
423,
194,
0,
83,
3,
"IMAGE"
],
[
424,
194,
1,
83,
4,
"MASK"
],
[
427,
196,
0,
197,
0,
"CLIP"
],
[
428,
196,
0,
198,
0,
"CLIP"
],
[
429,
197,
0,
83,
0,
"CONDITIONING"
],
[
430,
198,
0,
83,
1,
"CONDITIONING"
],
[
431,
183,
0,
8,
0,
"LATENT"
],
[
432,
194,
0,
199,
0,
"IMAGE"
],
[
433,
199,
0,
83,
5,
"IMAGE"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.5644739300537778,
"offset": [
1610.8945241860865,
310.74198037240876
]
},
"frontendVersion": "1.35.3",
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
"VHS_MetadataImage": true,
"VHS_KeepIntermediate": true
},
"version": 0.4
}
- Use the beginning and end of the original video, and loop by generating frames connecting them with Extension.