工作流 /
视频 /
MiniMax H3:多帧参考

MiniMax H3:多帧参考
MiniMax H3: Multiframe Reference
使用MiniMax H3从多张静态图像生成视频,可在时间轴任意位置锚定最多四个参考帧,以控制运动和构图。非常适合从现有片段创建视频续集、在特定时刻强制叙事节拍,以及制作带有同步原生音频的电影或社交媒体内容。
视频
41 个节点 4 个输入 270 次使用 ComfyUI ≥ 0.35.0 ComfyUI 75 KB
需要的权重
这个工作流引用了 5 个权重文件,其中 5 个能在本站模型库里找到。
minimax_h3_audio_vae_fp32.safetensors
在模型库查看
minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors
在模型库查看
minimax_h3_ref2va_pruned_int8_convrot.safetensors
在模型库查看
minimax_h3_video_vae_int8_convrot.safetensors
在模型库查看
qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors
在模型库查看
节点构成
MarkdownNote
× 4
ComfyMathExpression
× 4
PrimitiveFloat
× 4
LoadImage
× 4
MiniMaxH3AddGuide
× 3
VAELoader
× 2
ComfySwitchNode
× 2
PrimitiveInt
× 2
SaveVideo
× 1
ResolutionSelector
× 1
VAEDecodeAudio
× 1
VAEDecode
× 1
KSamplerSelect
× 1
BasicScheduler
× 1
SamplerCustomAdvanced
× 1
BasicGuider
× 1
官方标注的模型
MiniMax H3
工作流 JSON
和上面「下载工作流 JSON」是同一份文件。
1{
2 "id": "e3f2b845-8f2c-4b5a-9caf-eac1029d3e7e",
3 "revision": 0,
4 "last_node_id": 171,
5 "last_link_id": 334,
6 "nodes": [
7 {
8 "id": 92,
9 "type": "SaveVideo",
10 "pos": [
11 1920,
12 4220
13 ],
14 "size": [
15 1030,
16 126
17 ],
18 "flags": [],
19 "order": 40,
20 "mode": 0,
21 "inputs": [
22 {
23 "name": "video",
24 "type": "VIDEO",
25 "link": 260
26 }
27 ],
28 "outputs": [
29 {
30 "name": "video",
31 "type": "VIDEO",
32 "links": null
33 }
34 ],
35 "properties": {
36 "cnr_id": "comfy-core",
37 "ver": "0.33.0"
38 },
39 "widgets_values": [
40 "video/MiniMax_H3",
41 "auto",
42 "auto",
43 "auto"
44 ],
45 "widgets_values_named": {
46 "filename_prefix": "video/MiniMax_H3",
47 "format": "auto",
48 "format.codec": "auto",
49 "codec": "auto"
50 }
51 },
52 {
53 "id": 115,
54 "type": "ResolutionSelector",
55 "pos": [
56 -1480,
57 4300
58 ],
59 "size": [
60 270,
61 170
62 ],
63 "flags": [],
64 "order": 0,
65 "mode": 0,
66 "showAdvanced": false,
67 "inputs": [
68 {
69 "name": "preview",
70 "shape": 7,
71 "type": "RESOLUTION_PREVIEW",
72 "link": null
73 }
74 ],
75 "outputs": [
76 {
77 "name": "width",
78 "type": "INT",
79 "links": [
80 276
81 ]
82 },
83 {
84 "name": "height",
85 "type": "INT",
86 "links": [
87 277
88 ]
89 }
90 ],
91 "title": "Resolution Selector (Size)",
92 "properties": {
93 "Node name for S&R": "ResolutionSelector",
94 "cnr_id": "comfy-core",
95 "ver": "0.33.0"
96 },
97 "widgets_values": [
98 "16:9 (Widescreen)",
99 0.4,
100 32
101 ],
102 "widgets_values_named": {
103 "aspect_ratio": "16:9 (Widescreen)",
104 "megapixels": 0.4,
105 "multiple": 32
106 },
107 "color": "#322",
108 "bgcolor": "#533"
109 },
110 {
111 "id": 116,
112 "type": "MarkdownNote",
113 "pos": [
114 -2020,
115 4210
116 ],
117 "size": [
118 450,
119 1337.328125
120 ],
121 "flags": [],
122 "order": 1,
123 "mode": 0,
124 "inputs": [],
125 "outputs": [],
126 "title": "Note: MiniMax H3",
127 "properties": [],
128 "widgets_values": [
129 "## MiniMax H3\n\n[MiniMax H3](https://www.minimax.io/blog/minimax-h3) is MiniMax's general-purpose, omni-modal generation model. It jointly understands text, image, video, and audio, and generates video with **native stereo audio**: voice, sound effects, and music are modeled jointly in a single forward pass, not layered on afterward. Output is up to 2K resolution, 24fps, and up to about 15 seconds.\n\n## ComfyUI links\n- [ComfyUI#15224](https://github.com/Comfy-Org/ComfyUI/pull/15224)\n- [Add Guide for MiniMax H3](https://github.com/Comfy-Org/ComfyUI/pull/15439)\n- [🤗 Comfy-Org/MiniMax-H3](https://huggingface.co/Comfy-Org/MiniMax-H3)\n\n## About this workflow\n\nThis template runs the **reference-to-video (ref2va)** task using the **MiniMax H3 Reference to Video** node. It takes any mix of reference images, videos, and standalone audio, and weaves them into the generation to lock in a character's identity, a style, a motion, a camera move, or a voice.\n\nOn top of that, chained **Add Guide for MiniMax H3** nodes pin extra stills (or short clips, and optional audio) onto specific frames of the *output* timeline. The model can address guides anywhere on a continuous time axis, not only the first and last frame. That is the multi-frame / keyframe path in this graph.\n\n**Key inputs**\n\n- **ref_images / ref_videos / ref_video_audios / ref_audios** on **MiniMax H3 Reference to Video**: up to 9 reference images, 3 reference videos (each may carry its own paired soundtrack), and 3 standalone reference audio clips. These are semantic references. Name them in connection order as `<Picture 1>`, `<Video 1>`, `<Audio 1>`. They do not sit on a timeline by themselves.\n- **prompt** (**Input Text (Prompt)**): reference the inputs by tag, in the exact order they were connected, then describe the target scene, motion, and audio. In this template, also name each later picture as a shot's first frame or keyframe, and cut to it at the matching timestamp in `detailed_description`.\n- **ref_image_size**: `match` scales references down to the generation's resolution (faster); `max` keeps up to a 2048px short edge for stronger identity fidelity, at the cost of speed since reference tokens ride along every sampling step\n- **width / height**: set via **Resolution Selector (Size)**\n- **duration (seconds)** (**Float (Duration)**): converted to a valid frame `length` by the **Math Expression** node\n\n**Multi-frame guides (Add Guide for MiniMax H3)**\n\nEach **Add Guide for MiniMax H3** anchors a guide at `frame_idx` (negative values count from the end of the video):\n\n- a still image\n- a clip (image batches snap down to the model's valid clip lengths: 5, 22, 39... frames; batches shorter than 5 frames use only the first image)\n- audio, starting at the same position\n- any combination. Chain several nodes (`positive` in to `positive` out) for several guides\n\n`frame_idx` is in frames at 24fps. This template sets it from **Frame Index (Second)** through **Math Expression** `round(a * 24)` (1.5s → frame 36). The index plus the guide length must stay inside the generated `length`.\n\nThis graph wires four pictures as follows:\n\n- **Load Image** `h3_frame_ref_1.png` → first `ref_images` input on **MiniMax H3 Reference to Video**. This is `<Picture 1>`, the identity lock and the first frame of Shot 1. There is no Add Guide at 0s; the prompt tells the model the video starts from `<Picture 1>`.\n- **Load Image** `h3_frame_ref_2.png` → first **Add Guide for MiniMax H3** at **1.5s** (Shot 2 keyframe)\n- **Load Image** `h3_frame_ref_3.png` → second Add Guide at **3.0s** (Shot 3 keyframe)\n- **Load Image** `h3_frame_ref_4.png` → third Add Guide at **5.0s** (Shot 4 first frame)\n\nTo add more keyframes, copy the same block: **Load Image** + **Frame Index (Second)** + **Math Expression** + **Add Guide for MiniMax H3**. Keep `positive` in series (last guide → **Basic Guider**). Reuse the same video VAE, audio VAE, and `LATENT` from **MiniMax H3 Reference to Video**. Leave `audio` empty unless you also want a soundtrack anchored at that time.\n\n`<Picture N>` tags only bind to images actually connected on `ref_images`, in that order. Pictures 2-4 here are timeline anchors only. Also plug them into extra `ref_images` slots if you want the text encoder to see them as `<Picture 2>` / `<Picture 3>` / `<Picture 4>`.\n\nOther useful patterns from the same node: feed the first 22 frames of an existing video plus its audio into one Add Guide at `frame_idx` 0 to continue both streams, or drop a still at a mid-clip frame (for example frame 60 of 124) to force the shot to hit that frame.\n"
130 ],
131 "widgets_values_named": {
132 "text": "## MiniMax H3\n\n[MiniMax H3](https://www.minimax.io/blog/minimax-h3) is MiniMax's general-purpose, omni-modal generation model. It jointly understands text, image, video, and audio, and generates video with **native stereo audio**: voice, sound effects, and music are modeled jointly in a single forward pass, not layered on afterward. Output is up to 2K resolution, 24fps, and up to about 15 seconds.\n\n## ComfyUI links\n- [ComfyUI#15224](https://github.com/Comfy-Org/ComfyUI/pull/15224)\n- [Add Guide for MiniMax H3](https://github.com/Comfy-Org/ComfyUI/pull/15439)\n- [🤗 Comfy-Org/MiniMax-H3](https://huggingface.co/Comfy-Org/MiniMax-H3)\n\n## About this workflow\n\nThis template runs the **reference-to-video (ref2va)** task using the **MiniMax H3 Reference to Video** node. It takes any mix of reference images, videos, and standalone audio, and weaves them into the generation to lock in a character's identity, a style, a motion, a camera move, or a voice.\n\nOn top of that, chained **Add Guide for MiniMax H3** nodes pin extra stills (or short clips, and optional audio) onto specific frames of the *output* timeline. The model can address guides anywhere on a continuous time axis, not only the first and last frame. That is the multi-frame / keyframe path in this graph.\n\n**Key inputs**\n\n- **ref_images / ref_videos / ref_video_audios / ref_audios** on **MiniMax H3 Reference to Video**: up to 9 reference images, 3 reference videos (each may carry its own paired soundtrack), and 3 standalone reference audio clips. These are semantic references. Name them in connection order as `<Picture 1>`, `<Video 1>`, `<Audio 1>`. They do not sit on a timeline by themselves.\n- **prompt** (**Input Text (Prompt)**): reference the inputs by tag, in the exact order they were connected, then describe the target scene, motion, and audio. In this template, also name each later picture as a shot's first frame or keyframe, and cut to it at the matching timestamp in `detailed_description`.\n- **ref_image_size**: `match` scales references down to the generation's resolution (faster); `max` keeps up to a 2048px short edge for stronger identity fidelity, at the cost of speed since reference tokens ride along every sampling step\n- **width / height**: set via **Resolution Selector (Size)**\n- **duration (seconds)** (**Float (Duration)**): converted to a valid frame `length` by the **Math Expression** node\n\n**Multi-frame guides (Add Guide for MiniMax H3)**\n\nEach **Add Guide for MiniMax H3** anchors a guide at `frame_idx` (negative values count from the end of the video):\n\n- a still image\n- a clip (image batches snap down to the model's valid clip lengths: 5, 22, 39... frames; batches shorter than 5 frames use only the first image)\n- audio, starting at the same position\n- any combination. Chain several nodes (`positive` in to `positive` out) for several guides\n\n`frame_idx` is in frames at 24fps. This template sets it from **Frame Index (Second)** through **Math Expression** `round(a * 24)` (1.5s → frame 36). The index plus the guide length must stay inside the generated `length`.\n\nThis graph wires four pictures as follows:\n\n- **Load Image** `h3_frame_ref_1.png` → first `ref_images` input on **MiniMax H3 Reference to Video**. This is `<Picture 1>`, the identity lock and the first frame of Shot 1. There is no Add Guide at 0s; the prompt tells the model the video starts from `<Picture 1>`.\n- **Load Image** `h3_frame_ref_2.png` → first **Add Guide for MiniMax H3** at **1.5s** (Shot 2 keyframe)\n- **Load Image** `h3_frame_ref_3.png` → second Add Guide at **3.0s** (Shot 3 keyframe)\n- **Load Image** `h3_frame_ref_4.png` → third Add Guide at **5.0s** (Shot 4 first frame)\n\nTo add more keyframes, copy the same block: **Load Image** + **Frame Index (Second)** + **Math Expression** + **Add Guide for MiniMax H3**. Keep `positive` in series (last guide → **Basic Guider**). Reuse the same video VAE, audio VAE, and `LATENT` from **MiniMax H3 Reference to Video**. Leave `audio` empty unless you also want a soundtrack anchored at that time.\n\n`<Picture N>` tags only bind to images actually connected on `ref_images`, in that order. Pictures 2-4 here are timeline anchors only. Also plug them into extra `ref_images` slots if you want the text encoder to see them as `<Picture 2>` / `<Picture 3>` / `<Picture 4>`.\n\nOther useful patterns from the same node: feed the first 22 frames of an existing video plus its audio into one Add Guide at `frame_idx` 0 to continue both streams, or drop a still at a mid-clip frame (for example frame 60 of 124) to force the shot to hit that frame.\n"
133 },
134 "color": "#222",
135 "bgcolor": "#000"
136 },
137 {
138 "id": 117,
139 "type": "MarkdownNote",
140 "pos": [
141 -2490,
142 4210
143 ],
144 "size": [
145 440,
146 1057.40625
147 ],
148 "flags": [],
149 "order": 2,
150 "mode": 0,
151 "inputs": [],
152 "outputs": [],
153 "title": "Note: Model Links",
154 "properties": [],
155 "widgets_values": [
156 "## Input Assets\n- [h3_frame_ref_1.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_1.png)\n- [h3_frame_ref_2.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_2.png)\n- [h3_frame_ref_3.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_3.png)\n- [h3_frame_ref_4.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_4.png)\n\n## Model Links\n\n- [Hugging Face:Comfy-Org/MiniMax-H3](https://huggingface.co/Comfy-Org/MiniMax-H3)\n\n**ModelScope mirrors** (alternative repo location)\n\n- [ModelScope:Comfy-Org/MiniMax-H3](https://modelscope.cn/models/Comfy-Org/MiniMax-H3)\n\n**vae**\n\n- [minimax_h3_video_vae_int8_convrot.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_video_vae_int8_convrot.safetensors) (2.62 GB)\n- [minimax_h3_audio_vae_fp32.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_audio_vae_fp32.safetensors) (577.2 MB)\n\n**diffusion_models**\n\n- [minimax_h3_ref2va_pruned_int8_convrot.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/diffusion_models/minimax_h3_ref2va_pruned_int8_convrot.safetensors) (19.53 GB)\n\n**text_encoders**\n\n- [qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors) (14.61 GB)\n\n**loras**\n\n- 4 steps: [minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/loras/minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors) (1.82 GB)\n\n**embeddings**\n\n- [10 style embeddings](https://huggingface.co/Comfy-Org/MiniMax-H3/tree/main/embeddings) (`minimaxh3_*.safetensors`), for example `minimaxh3_art_is_explosion`\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 vae/\n│ │ ├── minimax_h3_video_vae_int8_convrot.safetensors\n│ │ └── minimax_h3_audio_vae_fp32.safetensors\n│ ├── 📂 diffusion_models/\n│ │ └── minimax_h3_ref2va_pruned_int8_convrot.safetensors\n│ ├── 📂 text_encoders/\n│ │ └── qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors\n│ ├── 📂 loras/\n│ │ └── minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors\n│ └── 📂 embeddings/\n│ └── minimaxh3_art_is_explosion.safetensors\n```\n\n## Using Prompt Embeddings\n\nPrompt embeddings (supported since [ComfyUI#15697](https://github.com/Comfy-Org/ComfyUI/pull/15697)) add reusable style tokens to your prompt. Download one or more embeddings from the folder above into `ComfyUI/models/embeddings/`, then reference one in the prompt text with the `embedding:` prefix and the filename without its extension, for example:\n\n`embedding:minimaxh3_art_is_explosion`\n\nUsing an embedding is optional and the template runs fine without one.\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
157 ],
158 "widgets_values_named": {
159 "text": "## Input Assets\n- [h3_frame_ref_1.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_1.png)\n- [h3_frame_ref_2.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_2.png)\n- [h3_frame_ref_3.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_3.png)\n- [h3_frame_ref_4.png](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/h3_frame_ref_4.png)\n\n## Model Links\n\n- [Hugging Face:Comfy-Org/MiniMax-H3](https://huggingface.co/Comfy-Org/MiniMax-H3)\n\n**ModelScope mirrors** (alternative repo location)\n\n- [ModelScope:Comfy-Org/MiniMax-H3](https://modelscope.cn/models/Comfy-Org/MiniMax-H3)\n\n**vae**\n\n- [minimax_h3_video_vae_int8_convrot.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_video_vae_int8_convrot.safetensors) (2.62 GB)\n- [minimax_h3_audio_vae_fp32.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_audio_vae_fp32.safetensors) (577.2 MB)\n\n**diffusion_models**\n\n- [minimax_h3_ref2va_pruned_int8_convrot.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/diffusion_models/minimax_h3_ref2va_pruned_int8_convrot.safetensors) (19.53 GB)\n\n**text_encoders**\n\n- [qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors) (14.61 GB)\n\n**loras**\n\n- 4 steps: [minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors](https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/loras/minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors) (1.82 GB)\n\n**embeddings**\n\n- [10 style embeddings](https://huggingface.co/Comfy-Org/MiniMax-H3/tree/main/embeddings) (`minimaxh3_*.safetensors`), for example `minimaxh3_art_is_explosion`\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 vae/\n│ │ ├── minimax_h3_video_vae_int8_convrot.safetensors\n│ │ └── minimax_h3_audio_vae_fp32.safetensors\n│ ├── 📂 diffusion_models/\n│ │ └── minimax_h3_ref2va_pruned_int8_convrot.safetensors\n│ ├── 📂 text_encoders/\n│ │ └── qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors\n│ ├── 📂 loras/\n│ │ └── minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors\n│ └── 📂 embeddings/\n│ └── minimaxh3_art_is_explosion.safetensors\n```\n\n## Using Prompt Embeddings\n\nPrompt embeddings (supported since [ComfyUI#15697](https://github.com/Comfy-Org/ComfyUI/pull/15697)) add reusable style tokens to your prompt. Download one or more embeddings from the folder above into `ComfyUI/models/embeddings/`, then reference one in the prompt text with the `embedding:` prefix and the filename without its extension, for example:\n\n`embedding:minimaxh3_art_is_explosion`\n\nUsing an embedding is optional and the template runs fine without one.\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
160 },
161 "color": "#222",
162 "bgcolor": "#000"
163 },
164 {
165 "id": 119,
166 "type": "VAELoader",
167 "pos": [
168 -1490,
169 5490
170 ],
171 "size": [
172 640,
173 70
174 ],
175 "flags": [],
176 "order": 3,
177 "mode": 0,
178 "inputs": [],
179 "outputs": [
180 {
181 "name": "VAE",
182 "type": "VAE",
183 "links": [
184 251,
185 273,
186 294,
187 308,
188 324
189 ]
190 }
191 ],
192 "properties": {
193 "Node name for S&R": "VAELoader",
194 "cnr_id": "comfy-core",
195 "ver": "0.33.0",
196 "models": [
197 {
198 "name": "minimax_h3_video_vae_int8_convrot.safetensors",
199 "url": "https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_video_vae_int8_convrot.safetensors",
200 "directory": "vae"
201 }
202 ]
203 },
204 "widgets_values": [
205 "minimax_h3_video_vae_int8_convrot.safetensors"
206 ],
207 "widgets_values_named": {
208 "vae_name": "minimax_h3_video_vae_int8_convrot.safetensors"
209 }
210 },
211 {
212 "id": 120,
213 "type": "VAELoader",
214 "pos": [
215 -1490,
216 5630
217 ],
218 "size": [
219 650,
220 70
221 ],
222 "flags": [],
223 "order": 4,
224 "mode": 0,
225 "inputs": [],
226 "outputs": [
227 {
228 "name": "VAE",
229 "type": "VAE",
230 "links": [
231 250,
232 274,
233 295,
234 309,
235 325
236 ]
237 }
238 ],
239 "properties": {
240 "Node name for S&R": "VAELoader",
241 "cnr_id": "comfy-core",
242 "ver": "0.33.0",
243 "models": [
244 {
245 "name": "minimax_h3_audio_vae_fp32.safetensors",
246 "url": "https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_audio_vae_fp32.safetensors",
247 "directory": "vae"
248 }
249 ]
250 },
251 "widgets_values": [
252 "minimax_h3_audio_vae_fp32.safetensors"
253 ],
254 "widgets_values_named": {
255 "vae_name": "minimax_h3_audio_vae_fp32.safetensors"
256 }
257 },
258 {
259 "id": 121,
260 "type": "VAEDecodeAudio",
261 "pos": [
262 1220,
263 5750
264 ],
265 "size": [
266 230,
267 60
268 ],
269 "flags": {
270 "collapsed": false
271 },
272 "order": 38,
273 "mode": 0,
274 "inputs": [
275 {
276 "name": "samples",
277 "type": "LATENT",
278 "link": 281
279 },
280 {
281 "name": "vae",
282 "type": "VAE",
283 "link": 250
284 }
285 ],
286 "outputs": [
287 {
288 "name": "AUDIO",
289 "type": "AUDIO",
290 "links": [
291 259
292 ]
293 }
294 ],
295 "properties": {
296 "Node name for S&R": "VAEDecodeAudio",
297 "cnr_id": "comfy-core",
298 "ver": "0.33.0"
299 }
300 },
301 {
302 "id": 122,
303 "type": "VAEDecode",
304 "pos": [
305 1220,
306 5650
307 ],
308 "size": [
309 230,
310 60
311 ],
312 "flags": {
313 "collapsed": false
314 },
315 "order": 37,
316 "mode": 0,
317 "inputs": [
318 {
319 "name": "samples",
320 "type": "LATENT",
321 "link": 280
322 },
323 {
324 "name": "vae",
325 "type": "VAE",
326 "link": 251
327 }
328 ],
329 "outputs": [
330 {
331 "name": "IMAGE",
332 "type": "IMAGE",
333 "links": [
334 258
335 ]
336 }
337 ],
338 "properties": {
339 "Node name for S&R": "VAEDecode",
340 "cnr_id": "comfy-core",
341 "ver": "0.33.0"
342 }
343 },
344 {
345 "id": 123,
346 "type": "KSamplerSelect",
347 "pos": [
348 1200,
349 5200
350 ],
351 "size": [
352 370,
353 70
354 ],
355 "flags": [],
356 "order": 5,
357 "mode": 0,
358 "inputs": [],
359 "outputs": [
360 {
361 "name": "SAMPLER",
362 "type": "SAMPLER",
363 "links": [
364 255
365 ]
366 }
367 ],
368 "properties": {
369 "Node name for S&R": "KSamplerSelect",
370 "cnr_id": "comfy-core",
371 "ver": "0.33.0"
372 },
373 "widgets_values": [
374 "res_multistep"
375 ],
376 "widgets_values_named": {
377 "sampler_name": "res_multistep"
378 }
379 },
380 {
381 "id": 124,
382 "type": "BasicScheduler",
383 "pos": [
384 1200,
385 5320
386 ],
387 "size": [
388 370,
389 130
390 ],
391 "flags": [],
392 "order": 31,
393 "mode": 0,
394 "inputs": [
395 {
396 "name": "model",
397 "type": "MODEL",
398 "link": 252
399 },
400 {
401 "name": "steps",
402 "type": "INT",
403 "widget": {
404 "name": "steps"
405 },
406 "link": 289
407 }
408 ],
409 "outputs": [
410 {
411 "name": "SIGMAS",
412 "type": "SIGMAS",
413 "links": [
414 256
415 ]
416 }
417 ],
418 "properties": {
419 "Node name for S&R": "BasicScheduler",
420 "cnr_id": "comfy-core",
421 "ver": "0.33.0"
422 },
423 "widgets_values": [
424 "simple",
425 20,
426 1
427 ],
428 "widgets_values_named": {
429 "scheduler": "simple",
430 "steps": 20,
431 "denoise": 1
432 }
433 },
434 {
435 "id": 125,
436 "type": "SamplerCustomAdvanced",
437 "pos": [
438 1610,
439 5120
440 ],
441 "size": [
442 230,
443 140
444 ],
445 "flags": [],
446 "order": 36,
447 "mode": 0,
448 "inputs": [
449 {
450 "name": "noise",
451 "type": "NOISE",
452 "link": 253
453 },
454 {
455 "name": "guider",
456 "type": "GUIDER",
457 "link": 254
458 },
459 {
460 "name": "sampler",
461 "type": "SAMPLER",
462 "link": 255
463 },
464 {
465 "name": "sigmas",
466 "type": "SIGMAS",
467 "link": 256
468 },
469 {
470 "name": "latent_image",
471 "type": "LATENT",
472 "link": 271
473 }
474 ],
475 "outputs": [
476 {
477 "name": "output",
478 "type": "LATENT",
479 "links": [
480 280,
481 281
482 ]
483 },
484 {
485 "name": "denoised_output",
486 "type": "LATENT",
487 "links": []
488 }
489 ],
490 "properties": {
491 "Node name for S&R": "SamplerCustomAdvanced",
492 "cnr_id": "comfy-core",
493 "ver": "0.33.0"
494 }
495 },
496 {
497 "id": 126,
498 "type": "BasicGuider",
499 "pos": [
500 1200,
501 5090
502 ],
503 "size": [
504 360,
505 60
506 ],
507 "flags": [],
508 "order": 35,
509 "mode": 0,
510 "inputs": [
511 {
512 "name": "model",
513 "type": "MODEL",
514 "link": 288
515 },
516 {
517 "name": "conditioning",
518 "type": "CONDITIONING",
519 "link": 330
520 }
521 ],
522 "outputs": [
523 {
524 "name": "GUIDER",
525 "type": "GUIDER",
526 "links": [
527 254
528 ]
529 }
530 ],
531 "properties": {
532 "Node name for S&R": "BasicGuider",
533 "cnr_id": "comfy-core",
534 "ver": "0.33.0"
535 }
536 },
537 {
538 "id": 127,
539 "type": "UNETLoader",
540 "pos": [
541 -1490,
542 4980
543 ],
544 "size": [
545 640,
546 90
547 ],
548 "flags": [],
549 "order": 6,
550 "mode": 0,
551 "inputs": [],
552 "outputs": [
553 {
554 "name": "MODEL",
555 "type": "MODEL",
556 "links": [
557 252,
558 285,
559 287
560 ]
561 }
562 ],
563 "properties": {
564 "Node name for S&R": "UNETLoader",
565 "cnr_id": "comfy-core",
566 "ver": "0.33.0",
567 "models": [
568 {
569 "name": "minimax_h3_ref2va_pruned_int8_convrot.safetensors",
570 "url": "https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/diffusion_models/minimax_h3_ref2va_pruned_int8_convrot.safetensors",
571 "directory": "diffusion_models"
572 }
573 ]
574 },
575 "widgets_values": [
576 "minimax_h3_ref2va_pruned_int8_convrot.safetensors",
577 "default"
578 ],
579 "widgets_values_named": {
580 "unet_name": "minimax_h3_ref2va_pruned_int8_convrot.safetensors",
581 "weight_dtype": "default"
582 }
583 },
584 {
585 "id": 128,
586 "type": "CLIPLoader",
587 "pos": [
588 -1490,
589 5300
590 ],
591 "size": [
592 640,
593 120
594 ],
595 "flags": [],
596 "order": 7,
597 "mode": 0,
598 "inputs": [],
599 "outputs": [
600 {
601 "name": "CLIP",
602 "type": "CLIP",
603 "links": [
604 272
605 ]
606 }
607 ],
608 "properties": {
609 "Node name for S&R": "CLIPLoader",
610 "cnr_id": "comfy-core",
611 "ver": "0.33.0",
612 "models": [
613 {
614 "name": "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
615 "url": "https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
616 "directory": "text_encoders"
617 }
618 ]
619 },
620 "widgets_values": [
621 "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
622 "minimax",
623 "default"
624 ],
625 "widgets_values_named": {
626 "clip_name": "qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
627 "type": "minimax",
628 "device": "default"
629 }
630 },
631 {
632 "id": 129,
633 "type": "RandomNoise",
634 "pos": [
635 1200,
636 4950
637 ],
638 "size": [
639 360,
640 90
641 ],
642 "flags": [],
643 "order": 8,
644 "mode": 0,
645 "inputs": [],
646 "outputs": [
647 {
648 "name": "NOISE",
649 "type": "NOISE",
650 "links": [
651 253
652 ]
653 }
654 ],
655 "properties": {
656 "Node name for S&R": "RandomNoise",
657 "cnr_id": "comfy-core",
658 "ver": "0.33.0"
659 },
660 "widgets_values": [
661 148096032077131,
662 "randomize"
663 ],
664 "widgets_values_named": {
665 "noise_seed": 148096032077131,
666 "control_after_generate": "randomize"
667 }
668 },
669 {
670 "id": 130,
671 "type": "CreateVideo",
672 "pos": [
673 1530,
674 5650
675 ],
676 "size": [
677 270,
678 140
679 ],
680 "flags": [],
681 "order": 39,
682 "mode": 0,
683 "inputs": [
684 {
685 "name": "images",
686 "type": "IMAGE",
687 "link": 258
688 },
689 {
690 "name": "audio",
691 "shape": 7,
692 "type": "AUDIO",
693 "link": 259
694 }
695 ],
696 "outputs": [
697 {
698 "name": "VIDEO",
699 "type": "VIDEO",
700 "links": [
701 260
702 ]
703 }
704 ],
705 "properties": {
706 "Node name for S&R": "CreateVideo",
707 "cnr_id": "comfy-core",
708 "ver": "0.33.0"
709 },
710 "widgets_values": [
711 24,
712 "auto",
713 "sRGB"
714 ],
715 "widgets_values_named": {
716 "fps": 24,
717 "bit_depth": "auto",
718 "color_space": "sRGB"
719 }
720 },
721 {
722 "id": 131,
723 "type": "ComfyMathExpression",
724 "pos": [
725 -1440,
726 4770
727 ],
728 "size": [
729 225,
730 0
731 ],
732 "flags": {
733 "collapsed": true
734 },
735 "order": 24,
736 "mode": 0,
737 "inputs": [
738 {
739 "label": "a",
740 "name": "values.a",
741 "type": "FLOAT,INT,BOOLEAN",
742 "link": 261
743 },
744 {
745 "name": "values.b",
746 "shape": 7,
747 "type": "FLOAT,INT,BOOLEAN",
748 "link": null
749 }
750 ],
751 "outputs": [
752 {
753 "name": "FLOAT",
754 "type": "FLOAT",
755 "links": []
756 },
757 {
758 "name": "INT",
759 "type": "INT",
760 "links": [
761 275
762 ]
763 },
764 {
765 "name": "BOOL",
766 "type": "BOOLEAN",
767 "links": []
768 }
769 ],
770 "properties": {
771 "Node name for S&R": "ComfyMathExpression",
772 "cnr_id": "comfy-core",
773 "ver": "0.33.0"
774 },
775 "widgets_values": [
776 "max(5, round(a * 24)) + (5 - (max(5, round(a * 24)) % 17)) % 17"
777 ],
778 "widgets_values_named": {
779 "expression": "max(5, round(a * 24)) + (5 - (max(5, round(a * 24)) % 17)) % 17"
780 }
781 },
782 {
783 "id": 132,
784 "type": "PrimitiveFloat",
785 "pos": [
786 -1480,
787 4650
788 ],
789 "size": [
790 270,
791 70
792 ],
793 "flags": [],
794 "order": 9,
795 "mode": 0,
796 "inputs": [],
797 "outputs": [
798 {
799 "name": "FLOAT",
800 "type": "FLOAT",
801 "links": [
802 261
803 ]
804 }
805 ],
806 "title": "Float (Duration)",
807 "properties": {
808 "Node name for S&R": "PrimitiveFloat",
809 "cnr_id": "comfy-core",
810 "ver": "0.33.0"
811 },
812 "widgets_values": [
813 5
814 ],
815 "widgets_values_named": {
816 "value": 5
817 },
818 "color": "#322",
819 "bgcolor": "#533"
820 },
821 {
822 "id": 136,
823 "type": "MiniMaxH3ReferenceToVideo",
824 "pos": [
825 -600,
826 4940
827 ],
828 "size": [
829 400,
830 360
831 ],
832 "flags": [],
833 "order": 30,
834 "mode": 0,
835 "inputs": [
836 {
837 "name": "clip",
838 "type": "CLIP",
839 "link": 272
840 },
841 {
842 "name": "vae",
843 "shape": 7,
844 "type": "VAE",
845 "link": 273
846 },
847 {
848 "name": "audio_vae",
849 "shape": 7,
850 "type": "VAE",
851 "link": 274
852 },
853 {
854 "label": "ref_image_0",
855 "name": "ref_images.ref_image_0",
856 "shape": 7,
857 "type": "IMAGE",
858 "link": 314
859 },
860 {
861 "name": "ref_images.ref_image_1",
862 "shape": 7,
863 "type": "IMAGE",
864 "link": null
865 },
866 {
867 "label": "ref_video_0",
868 "name": "ref_videos.ref_video_0",
869 "shape": 7,
870 "type": "IMAGE",
871 "link": null
872 },
873 {
874 "label": "ref_video_audio_0",
875 "name": "ref_video_audios.ref_video_audio_0",
876 "shape": 7,
877 "type": "AUDIO",
878 "link": null
879 },
880 {
881 "label": "ref_audio_0",
882 "name": "ref_audios.ref_audio_0",
883 "shape": 7,
884 "type": "AUDIO",
885 "link": null
886 },
887 {
888 "name": "prompt",
889 "type": "STRING",
890 "widget": {
891 "name": "prompt"
892 },
893 "link": 333
894 },
895 {
896 "name": "width",
897 "type": "INT",
898 "widget": {
899 "name": "width"
900 },
901 "link": 276
902 },
903 {
904 "name": "height",
905 "type": "INT",
906 "widget": {
907 "name": "height"
908 },
909 "link": 277
910 },
911 {
912 "name": "length",
913 "type": "INT",
914 "widget": {
915 "name": "length"
916 },
917 "link": 275
918 }
919 ],
920 "outputs": [
921 {
922 "name": "positive",
923 "type": "CONDITIONING",
924 "links": [
925 292
926 ]
927 },
928 {
929 "name": "LATENT",
930 "type": "LATENT",
931 "links": [
932 271,
933 293,
934 307,
935 323
936 ]
937 }
938 ],
939 "properties": {
940 "Node name for S&R": "MiniMaxH3ReferenceToVideo",
941 "cnr_id": "comfy-core",
942 "ver": "0.33.0"
943 },
944 "widgets_values": [
945 "",
946 1344,
947 768,
948 124,
949 "match"
950 ],
951 "widgets_values_named": {
952 "prompt": "",
953 "width": 1344,
954 "height": 768,
955 "length": 124,
956 "ref_image_size": "match"
957 },
958 "color": "#322",
959 "bgcolor": "#533"
960 },
961 {
962 "id": 138,
963 "type": "PrimitiveStringMultiline",
964 "pos": [
965 -720,
966 4270
967 ],
968 "size": [
969 480,
970 530
971 ],
972 "flags": [],
973 "order": 10,
974 "mode": 0,
975 "inputs": [],
976 "outputs": [
977 {
978 "name": "STRING",
979 "type": "STRING",
980 "links": [
981 333
982 ]
983 }
984 ],
985 "title": "Input Text (Prompt)",
986 "properties": {
987 "Node name for S&R": "PrimitiveStringMultiline",
988 "cnr_id": "comfy-core",
989 "ver": "0.33.0"
990 },
991 "widgets_values": [
992 "subject_definitions:\n<Subject 1> is the woman in <Picture 1>, featuring pale skin, bright red lipstick, wearing a white textured swim cap covered in raised bumps and a blue sleeveless collared shirt with white polka dots.\n<Picture 1> is the first frame of [Shot 1], showing <Subject 1> holding a green apple with a leaf over her right eye against a solid blue background.\n<Picture 2> is the keyframe of [Shot 2], showing the woman wearing a smooth teal green swim cap and a red swimsuit top, resting her chin on a red ball stacked on a soccer ball, while holding a red tennis racket that casts a grid shadow across her face.\n<Picture 3> is the keyframe of [Shot 3], showing the woman in a black geometric textured swim cap and a sleek black swimsuit leaning over a vivid blue table towards a yellow apple with a matchstick stuck in it on a red plate, with a mirror reflecting the arrangement against an ocean background.\n<Picture 4> is the first frame of [Shot 4], showing a blurry, ethereal white humanoid head and neck in profile against a soft blue-gray gradient background.\n\nsummary:\n[keyframe completion + reference generation] The target video is a dynamic fashion photography collection featuring <Subject 1> in various surreal, highly stylized vignettes. It begins with <Picture 1> as <Subject 1> dynamically poses with a green apple against a solid blue background. The video then progresses through rapid stylistic cuts: first matching <Picture 2> where she balances her chin on stacked balls while a racket casts a shifting grid shadow on her face, and then matching <Picture 3> where she leans over a table towards a yellow apple with a matchstick, set against a rippling ocean backdrop. The video concludes by cutting to the abstract, blurry white humanoid profile from <Picture 4>, which slightly vibrates before freezing to end the sequence.\n\nretention_analysis:\n<Subject 1> (appears in [Shot 1], [Shot 2], [Shot 3]): partially_preserved - <Subject 1>'s facial identity, pale skin, and distinct red lipstick are maintained across the first three shots, but her swim cap and clothing are explicitly changed in [Shot 2] and [Shot 3] to match the distinct fashion styles of those keyframes.\n<Picture 1> ([Shot 1] first frame): fully_preserved - the video starts exactly from <Picture 1>'s framing, subject state, and solid blue background.\n<Picture 2> ([Shot 2] keyframe): fully_preserved - the specific surreal arrangement of the red ball, soccer ball, tennis racket, and the resulting grid shadow on the face is accurately recreated in [Shot 2].\n<Picture 3> ([Shot 3] keyframe): fully_preserved - the precise composition of the black-clad model, the yellow apple with a matchstick on a red plate, the mirror reflection, and the outdoor ocean background is accurately established in [Shot 3].\n<Picture 4> ([Shot 4] first frame): fully_preserved - the blurry, abstract white humanoid profile is directly used as the static ending composition of [Shot 4].\n\ndetailed_description:\nThe target video is a dynamic fashion photography film collection presented in a highly stylized, cinematic live-action medium. The visuals are characterized by bold, contrasting primary colors, crisp lighting, and surreal, editorial compositions.\n\n[Shot 1] The shot begins from <Picture 1>. <Subject 1> is positioned centrally against a vibrant, solid blue background. She wears a striking white textured swim cap covered in small raised bumps, complementing her blue sleeveless collared shirt adorned with white polka dots. Her pale skin and bright red lipstick stand out vividly. She holds a bright green apple with a single, crisp green leaf directly over her right eye, gripping it lightly with her slender fingers. To fulfill the dynamic fashion intent, the camera pushes in sharply. As the framing tightens, <Subject 1> slowly lowers the green apple away from her face, revealing her intense, unblinking gaze. The crisp studio lighting highlights the textures of her cap and the smooth surface of the apple, establishing a high-fashion, editorial atmosphere.\n\n[Shot 2] At 00:01.500, the shot cuts to the next fashion vignette, whose keyframe corresponds to <Picture 2>. <Subject 1> is now seen in profile against a two-toned background of solid blue above and a vibrant red surface below. She wears a smooth teal green swim cap and a red swimsuit top. Her pose is sculptural: she rests her chin gracefully atop a small red ball, which is precariously stacked on a classic black-and-white soccer ball. In her hand, she holds a bright red tennis racket vertically near her face. The strong directional sunlight casts a distinct, sharp grid shadow from the racket's strings across her closed eyes and pale skin. The camera executes a smooth, continuous arc shot around her. This movement causes the harsh grid shadow to dynamically glide and warp across her facial contours, while she subtly tilts her head, maintaining her perfectly still, mannequin-like pose amidst the camera motion.\n\n[Shot 3] At 00:03.000, the shot cuts to an outdoor surreal composition, whose keyframe corresponds to <Picture 3>. The setting features a bright blue ocean and a clear sky in the background. <Subject 1>, now wearing a black textured swim cap featuring geometric triangular patterns and a sleek black swimsuit, leans dramatically forward over a vivid blue table. In front of her, a glossy red plate holds a perfectly smooth yellow apple, which has a single unlit matchstick pierced upright into its top. A round vanity mirror on a silver stand sits just behind the plate, perfectly reflecting the back of the apple, the matchstick, and a sliver of the ocean. The camera tracks slowly to the right as <Subject 1> continues to lean closer to the apple, her lips slightly parted. The natural sunlight creates sharp, defined shadows on the blue table, while the ocean waves in the background gently ripple and shift, adding environmental dynamism to the editorial shot.\n\n[Shot 4] At 00:05.000, the shot cuts to the concluding sequence, anchored by <Picture 4>. The scene shifts abruptly to a highly abstract, ethereal presentation. A heavily blurred, glowing white humanoid head and neck in profile are silhouetted against a soft blue-gray gradient background. The figure appears ghost-like, devoid of distinct facial features. The camera holds a static frame as the white silhouette exhibits a subtle, vibrating motion, its edges smearing gently into the blue background. After this brief, haunting movement, the figure completely freezes in place, providing a stark, arresting final image that concludes the dynamic fashion showcase.\n\noverall_soundscape:\nThe video features a stylized, rhythmic soundscape with subtle, crisp Foley effects like fabric swishes, ocean ripples, and gentle air movements synchronized to the camera motions, enhancing the high-end editorial aesthetic.\n\nnon_diegetic_music:\nA punchy, dynamic electronic beat with a fast tempo, ticking hi-hats, and heavy bass serves as the driving soundtrack, matching the high-energy, rapid-fire cuts of the fashion vignettes."
993 ],
994 "widgets_values_named": {
995 "value": "subject_definitions:\n<Subject 1> is the woman in <Picture 1>, featuring pale skin, bright red lipstick, wearing a white textured swim cap covered in raised bumps and a blue sleeveless collared shirt with white polka dots.\n<Picture 1> is the first frame of [Shot 1], showing <Subject 1> holding a green apple with a leaf over her right eye against a solid blue background.\n<Picture 2> is the keyframe of [Shot 2], showing the woman wearing a smooth teal green swim cap and a red swimsuit top, resting her chin on a red ball stacked on a soccer ball, while holding a red tennis racket that casts a grid shadow across her face.\n<Picture 3> is the keyframe of [Shot 3], showing the woman in a black geometric textured swim cap and a sleek black swimsuit leaning over a vivid blue table towards a yellow apple with a matchstick stuck in it on a red plate, with a mirror reflecting the arrangement against an ocean background.\n<Picture 4> is the first frame of [Shot 4], showing a blurry, ethereal white humanoid head and neck in profile against a soft blue-gray gradient background.\n\nsummary:\n[keyframe completion + reference generation] The target video is a dynamic fashion photography collection featuring <Subject 1> in various surreal, highly stylized vignettes. It begins with <Picture 1> as <Subject 1> dynamically poses with a green apple against a solid blue background. The video then progresses through rapid stylistic cuts: first matching <Picture 2> where she balances her chin on stacked balls while a racket casts a shifting grid shadow on her face, and then matching <Picture 3> where she leans over a table towards a yellow apple with a matchstick, set against a rippling ocean backdrop. The video concludes by cutting to the abstract, blurry white humanoid profile from <Picture 4>, which slightly vibrates before freezing to end the sequence.\n\nretention_analysis:\n<Subject 1> (appears in [Shot 1], [Shot 2], [Shot 3]): partially_preserved - <Subject 1>'s facial identity, pale skin, and distinct red lipstick are maintained across the first three shots, but her swim cap and clothing are explicitly changed in [Shot 2] and [Shot 3] to match the distinct fashion styles of those keyframes.\n<Picture 1> ([Shot 1] first frame): fully_preserved - the video starts exactly from <Picture 1>'s framing, subject state, and solid blue background.\n<Picture 2> ([Shot 2] keyframe): fully_preserved - the specific surreal arrangement of the red ball, soccer ball, tennis racket, and the resulting grid shadow on the face is accurately recreated in [Shot 2].\n<Picture 3> ([Shot 3] keyframe): fully_preserved - the precise composition of the black-clad model, the yellow apple with a matchstick on a red plate, the mirror reflection, and the outdoor ocean background is accurately established in [Shot 3].\n<Picture 4> ([Shot 4] first frame): fully_preserved - the blurry, abstract white humanoid profile is directly used as the static ending composition of [Shot 4].\n\ndetailed_description:\nThe target video is a dynamic fashion photography film collection presented in a highly stylized, cinematic live-action medium. The visuals are characterized by bold, contrasting primary colors, crisp lighting, and surreal, editorial compositions.\n\n[Shot 1] The shot begins from <Picture 1>. <Subject 1> is positioned centrally against a vibrant, solid blue background. She wears a striking white textured swim cap covered in small raised bumps, complementing her blue sleeveless collared shirt adorned with white polka dots. Her pale skin and bright red lipstick stand out vividly. She holds a bright green apple with a single, crisp green leaf directly over her right eye, gripping it lightly with her slender fingers. To fulfill the dynamic fashion intent, the camera pushes in sharply. As the framing tightens, <Subject 1> slowly lowers the green apple away from her face, revealing her intense, unblinking gaze. The crisp studio lighting highlights the textures of her cap and the smooth surface of the apple, establishing a high-fashion, editorial atmosphere.\n\n[Shot 2] At 00:01.500, the shot cuts to the next fashion vignette, whose keyframe corresponds to <Picture 2>. <Subject 1> is now seen in profile against a two-toned background of solid blue above and a vibrant red surface below. She wears a smooth teal green swim cap and a red swimsuit top. Her pose is sculptural: she rests her chin gracefully atop a small red ball, which is precariously stacked on a classic black-and-white soccer ball. In her hand, she holds a bright red tennis racket vertically near her face. The strong directional sunlight casts a distinct, sharp grid shadow from the racket's strings across her closed eyes and pale skin. The camera executes a smooth, continuous arc shot around her. This movement causes the harsh grid shadow to dynamically glide and warp across her facial contours, while she subtly tilts her head, maintaining her perfectly still, mannequin-like pose amidst the camera motion.\n\n[Shot 3] At 00:03.000, the shot cuts to an outdoor surreal composition, whose keyframe corresponds to <Picture 3>. The setting features a bright blue ocean and a clear sky in the background. <Subject 1>, now wearing a black textured swim cap featuring geometric triangular patterns and a sleek black swimsuit, leans dramatically forward over a vivid blue table. In front of her, a glossy red plate holds a perfectly smooth yellow apple, which has a single unlit matchstick pierced upright into its top. A round vanity mirror on a silver stand sits just behind the plate, perfectly reflecting the back of the apple, the matchstick, and a sliver of the ocean. The camera tracks slowly to the right as <Subject 1> continues to lean closer to the apple, her lips slightly parted. The natural sunlight creates sharp, defined shadows on the blue table, while the ocean waves in the background gently ripple and shift, adding environmental dynamism to the editorial shot.\n\n[Shot 4] At 00:05.000, the shot cuts to the concluding sequence, anchored by <Picture 4>. The scene shifts abruptly to a highly abstract, ethereal presentation. A heavily blurred, glowing white humanoid head and neck in profile are silhouetted against a soft blue-gray gradient background. The figure appears ghost-like, devoid of distinct facial features. The camera holds a static frame as the white silhouette exhibits a subtle, vibrating motion, its edges smearing gently into the blue background. After this brief, haunting movement, the figure completely freezes in place, providing a stark, arresting final image that concludes the dynamic fashion showcase.\n\noverall_soundscape:\nThe video features a stylized, rhythmic soundscape with subtle, crisp Foley effects like fabric swishes, ocean ripples, and gentle air movements synchronized to the camera motions, enhancing the high-end editorial aesthetic.\n\nnon_diegetic_music:\nA punchy, dynamic electronic beat with a fast tempo, ticking hi-hats, and heavy bass serves as the driving soundtrack, matching the high-energy, rapid-fire cuts of the fashion vignettes."
996 },
997 "color": "#322",
998 "bgcolor": "#533"
999 },
1000 {
1001 "id": 140,
1002 "type": "MarkdownNote",
1003 "pos": [
1004 -1150,
1005 4260
1006 ],
1007 "size": [
1008 300,
1009 540
1010 ],
1011 "flags": [],
1012 "order": 11,
1013 "mode": 0,
1014 "inputs": [],
1015 "outputs": [],
1016 "title": "Note: Video Settings",
1017 "properties": [],
1018 "widgets_values": [
1019 "## Resolution Selector\nDelete the **Resolution Selector** node if you want to customize video size manually\n| megapixels | Aspect | Output (multiple=32) |\n|---|---|---|\n| 0.2 | 16:9 | 608 x 352 |\n| 0.3 | 16:9 | 736 x 416 |\n| 0.4 | 16:9 | 864 x 480 |\n| 0.5 | 16:9 | 960 x 544 |\n| 0.6 | 16:9 | 1056 x 608 |\n| 0.7 | 16:9 | 1152 x 640 |\n| 0.8 | 16:9 | 1216 x 672 |\n| 0.9 | 16:9 | 1280 x 736 |\n| 0.98 | 16:9 | 1344 x 768 (official 768p) |\n\n---\n\n## Lightning LoRA\n\nFor fast video generation, but scarce video quality\n\n---\n## Duration\n\nUp to 15s"
1020 ],
1021 "widgets_values_named": {
1022 "text": "## Resolution Selector\nDelete the **Resolution Selector** node if you want to customize video size manually\n| megapixels | Aspect | Output (multiple=32) |\n|---|---|---|\n| 0.2 | 16:9 | 608 x 352 |\n| 0.3 | 16:9 | 736 x 416 |\n| 0.4 | 16:9 | 864 x 480 |\n| 0.5 | 16:9 | 960 x 544 |\n| 0.6 | 16:9 | 1056 x 608 |\n| 0.7 | 16:9 | 1152 x 640 |\n| 0.8 | 16:9 | 1216 x 672 |\n| 0.9 | 16:9 | 1280 x 736 |\n| 0.98 | 16:9 | 1344 x 768 (official 768p) |\n\n---\n\n## Lightning LoRA\n\nFor fast video generation, but scarce video quality\n\n---\n## Duration\n\nUp to 15s"
1023 },
1024 "color": "#222",
1025 "bgcolor": "#000"
1026 },
1027 {
1028 "id": 141,
1029 "type": "ComfySwitchNode",
1030 "pos": [
1031 -730,
1032 5440
1033 ],
1034 "size": [
1035 270,
1036 110
1037 ],
1038 "flags": [],
1039 "order": 29,
1040 "mode": 0,
1041 "inputs": [
1042 {
1043 "name": "on_false",
1044 "type": "MODEL",
1045 "link": 287
1046 },
1047 {
1048 "name": "on_true",
1049 "type": "MODEL",
1050 "link": 286
1051 },
1052 {
1053 "name": "switch",
1054 "type": "BOOLEAN",
1055 "widget": {
1056 "name": "switch"
1057 },
1058 "link": 290
1059 }
1060 ],
1061 "outputs": [
1062 {
1063 "name": "output",
1064 "type": "MODEL",
1065 "links": [
1066 288
1067 ]
1068 }
1069 ],
1070 "title": "If/Else Switch (model)",
1071 "properties": {
1072 "Node name for S&R": "ComfySwitchNode",
1073 "cnr_id": "comfy-core",
1074 "ver": "0.33.0"
1075 },
1076 "widgets_values": [
1077 false
1078 ],
1079 "widgets_values_named": {
1080 "switch": false
1081 }
1082 },
1083 {
1084 "id": 142,
1085 "type": "ComfySwitchNode",
1086 "pos": [
1087 -390,
1088 5610
1089 ],
1090 "size": [
1091 270,
1092 110
1093 ],
1094 "flags": [],
1095 "order": 25,
1096 "mode": 0,
1097 "inputs": [
1098 {
1099 "name": "on_false",
1100 "type": "INT",
1101 "link": 284
1102 },
1103 {
1104 "name": "on_true",
1105 "type": "INT",
1106 "link": 283
1107 },
1108 {
1109 "name": "switch",
1110 "type": "BOOLEAN",
1111 "widget": {
1112 "name": "switch"
1113 },
1114 "link": 291
1115 }
1116 ],
1117 "outputs": [
1118 {
1119 "name": "output",
1120 "type": "INT",
1121 "links": [
1122 289
1123 ]
1124 }
1125 ],
1126 "title": "If/Else Switch (Steps)",
1127 "properties": {
1128 "Node name for S&R": "ComfySwitchNode",
1129 "cnr_id": "comfy-core",
1130 "ver": "0.33.0"
1131 },
1132 "widgets_values": [
1133 false
1134 ],
1135 "widgets_values_named": {
1136 "switch": false
1137 }
1138 },
1139 {
1140 "id": 143,
1141 "type": "PrimitiveInt",
1142 "pos": [
1143 -730,
1144 5590
1145 ],
1146 "size": [
1147 270,
1148 90
1149 ],
1150 "flags": [],
1151 "order": 12,
1152 "mode": 0,
1153 "inputs": [],
1154 "outputs": [
1155 {
1156 "name": "INT",
1157 "type": "INT",
1158 "links": [
1159 284
1160 ]
1161 }
1162 ],
1163 "title": "Int (Full)",
1164 "properties": {
1165 "Node name for S&R": "PrimitiveInt",
1166 "cnr_id": "comfy-core",
1167 "ver": "0.33.0"
1168 },
1169 "widgets_values": [
1170 20,
1171 "fixed"
1172 ],
1173 "widgets_values_named": {
1174 "value": 20,
1175 "fixed": "fixed"
1176 }
1177 },
1178 {
1179 "id": 144,
1180 "type": "PrimitiveInt",
1181 "pos": [
1182 -730,
1183 5720
1184 ],
1185 "size": [
1186 270,
1187 90
1188 ],
1189 "flags": [],
1190 "order": 13,
1191 "mode": 0,
1192 "inputs": [],
1193 "outputs": [
1194 {
1195 "name": "INT",
1196 "type": "INT",
1197 "links": [
1198 283
1199 ]
1200 }
1201 ],
1202 "title": "Int (Lightning LoRA)",
1203 "properties": {
1204 "Node name for S&R": "PrimitiveInt",
1205 "cnr_id": "comfy-core",
1206 "ver": "0.33.0"
1207 },
1208 "widgets_values": [
1209 4,
1210 "fixed"
1211 ],
1212 "widgets_values_named": {
1213 "value": 4,
1214 "fixed": "fixed"
1215 }
1216 },
1217 {
1218 "id": 145,
1219 "type": "LoraLoaderModelOnly",
1220 "pos": [
1221 -1490,
1222 5140
1223 ],
1224 "size": [
1225 640,
1226 90
1227 ],
1228 "flags": [],
1229 "order": 23,
1230 "mode": 0,
1231 "inputs": [
1232 {
1233 "name": "model",
1234 "type": "MODEL",
1235 "link": 285
1236 }
1237 ],
1238 "outputs": [
1239 {
1240 "name": "MODEL",
1241 "type": "MODEL",
1242 "links": [
1243 286
1244 ]
1245 }
1246 ],
1247 "properties": {
1248 "Node name for S&R": "LoraLoaderModelOnly",
1249 "cnr_id": "comfy-core",
1250 "ver": "0.33.0",
1251 "models": [
1252 {
1253 "name": "minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors",
1254 "url": "https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/loras/minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors",
1255 "directory": "loras"
1256 }
1257 ]
1258 },
1259 "widgets_values": [
1260 "minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors",
1261 1
1262 ],
1263 "widgets_values_named": {
1264 "lora_name": "minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors",
1265 "strength_model": 1
1266 }
1267 },
1268 {
1269 "id": 146,
1270 "type": "PrimitiveBoolean",
1271 "pos": [
1272 -1480,
1273 4530
1274 ],
1275 "size": [
1276 270,
1277 70
1278 ],
1279 "flags": [],
1280 "order": 14,
1281 "mode": 0,
1282 "inputs": [],
1283 "outputs": [
1284 {
1285 "name": "BOOLEAN",
1286 "type": "BOOLEAN",
1287 "links": [
1288 290,
1289 291
1290 ]
1291 }
1292 ],
1293 "title": "Boolean (Enable Lightning LoRA)",
1294 "properties": {
1295 "Node name for S&R": "PrimitiveBoolean",
1296 "cnr_id": "comfy-core",
1297 "ver": "0.33.0"
1298 },
1299 "widgets_values": [
1300 false
1301 ],
1302 "widgets_values_named": {
1303 "value": false
1304 },
1305 "color": "#322",
1306 "bgcolor": "#533"
1307 },
1308 {
1309 "id": 147,
1310 "type": "MiniMaxH3AddGuide",
1311 "pos": [
1312 70,
1313 5330
1314 ],
1315 "size": [
1316 310,
1317 180
1318 ],
1319 "flags": [],
1320 "order": 32,
1321 "mode": 0,
1322 "inputs": [
1323 {
1324 "name": "positive",
1325 "type": "CONDITIONING",
1326 "link": 292
1327 },
1328 {
1329 "name": "latent",
1330 "type": "LATENT",
1331 "link": 293
1332 },
1333 {
1334 "name": "vae",
1335 "shape": 7,
1336 "type": "VAE",
1337 "link": 294
1338 },
1339 {
1340 "name": "audio_vae",
1341 "shape": 7,
1342 "type": "VAE",
1343 "link": 295
1344 },
1345 {
1346 "name": "image",
1347 "shape": 7,
1348 "type": "IMAGE",
1349 "link": 304
1350 },
1351 {
1352 "name": "audio",
1353 "shape": 7,
1354 "type": "AUDIO",
1355 "link": null
1356 },
1357 {
1358 "name": "frame_idx",
1359 "type": "INT",
1360 "widget": {
1361 "name": "frame_idx"
1362 },
1363 "link": 303
1364 }
1365 ],
1366 "outputs": [
1367 {
1368 "name": "positive",
1369 "type": "CONDITIONING",
1370 "links": [
1371 312
1372 ]
1373 }
1374 ],
1375 "properties": {
1376 "Node name for S&R": "MiniMaxH3AddGuide"
1377 },
1378 "widgets_values": [
1379 0
1380 ],
1381 "widgets_values_named": {
1382 "frame_idx": 0
1383 }
1384 },
1385 {
1386 "id": 153,
1387 "type": "ComfyMathExpression",
1388 "pos": [
1389 70,
1390 5110
1391 ],
1392 "size": [
1393 320,
1394 150
1395 ],
1396 "flags": [],
1397 "order": 26,
1398 "mode": 0,
1399 "inputs": [
1400 {
1401 "name": "values.a",
1402 "type": "FLOAT,INT,BOOLEAN",
1403 "link": 301
1404 },
1405 {
1406 "name": "values.b",
1407 "shape": 7,
1408 "type": "FLOAT,INT,BOOLEAN",
1409 "link": null
1410 }
1411 ],
1412 "outputs": [
1413 {
1414 "name": "FLOAT",
1415 "type": "FLOAT",
1416 "links": null
1417 },
1418 {
1419 "name": "INT",
1420 "type": "INT",
1421 "links": [
1422 303
1423 ]
1424 },
1425 {
1426 "name": "BOOL",
1427 "type": "BOOLEAN",
1428 "links": null
1429 }
1430 ],
1431 "properties": {
1432 "Node name for S&R": "ComfyMathExpression"
1433 },
1434 "widgets_values": [
1435 "round (a * 24)"
1436 ],
1437 "widgets_values_named": {
1438 "expression": "round (a * 24)"
1439 }
1440 },
1441 {
1442 "id": 154,
1443 "type": "PrimitiveFloat",
1444 "pos": [
1445 310,
1446 4280
1447 ],
1448 "size": [
1449 320,
1450 70
1451 ],
1452 "flags": [],
1453 "order": 15,
1454 "mode": 0,
1455 "inputs": [],
1456 "outputs": [
1457 {
1458 "name": "FLOAT",
1459 "type": "FLOAT",
1460 "links": [
1461 301
1462 ]
1463 }
1464 ],
1465 "title": "Frame Index (Second)",
1466 "properties": {
1467 "Node name for S&R": "PrimitiveFloat"
1468 },
1469 "widgets_values": [
1470 1.5
1471 ],
1472 "widgets_values_named": {
1473 "value": 1.5
1474 }
1475 },
1476 {
1477 "id": 157,
1478 "type": "LoadImage",
1479 "pos": [
1480 310,
1481 4430
1482 ],
1483 "size": [
1484 290,
1485 330
1486 ],
1487 "flags": [],
1488 "order": 16,
1489 "mode": 0,
1490 "inputs": [],
1491 "outputs": [
1492 {
1493 "name": "IMAGE",
1494 "type": "IMAGE",
1495 "links": [
1496 304
1497 ]
1498 },
1499 {
1500 "name": "MASK",
1501 "type": "MASK",
1502 "links": null
1503 }
1504 ],
1505 "properties": {
1506 "Node name for S&R": "LoadImage"
1507 },
1508 "widgets_values": [
1509 "h3_frame_ref_2.png",
1510 "image"
1511 ],
1512 "widgets_values_named": {
1513 "image": "h3_frame_ref_2.png",
1514 "upload": "image"
1515 }
1516 },
1517 {
1518 "id": 159,
1519 "type": "LoadImage",
1520 "pos": [
1521 760,
1522 4430
1523 ],
1524 "size": [
1525 290,
1526 330
1527 ],
1528 "flags": [],
1529 "order": 17,
1530 "mode": 0,
1531 "inputs": [],
1532 "outputs": [
1533 {
1534 "name": "IMAGE",
1535 "type": "IMAGE",
1536 "links": [
1537 310
1538 ]
1539 },
1540 {
1541 "name": "MASK",
1542 "type": "MASK",
1543 "links": null
1544 }
1545 ],
1546 "properties": {
1547 "Node name for S&R": "LoadImage"
1548 },
1549 "widgets_values": [
1550 "h3_frame_ref_3.png",
1551 "image"
1552 ],
1553 "widgets_values_named": {
1554 "image": "h3_frame_ref_3.png",
1555 "upload": "image"
1556 }
1557 },
1558 {
1559 "id": 160,
1560 "type": "PrimitiveFloat",
1561 "pos": [
1562 750,
1563 4290
1564 ],
1565 "size": [
1566 320,
1567 70
1568 ],
1569 "flags": [],
1570 "order": 18,
1571 "mode": 0,
1572 "inputs": [],
1573 "outputs": [
1574 {
1575 "name": "FLOAT",
1576 "type": "FLOAT",
1577 "links": [
1578 305
1579 ]
1580 }
1581 ],
1582 "title": "Frame Index (Second)",
1583 "properties": {
1584 "Node name for S&R": "PrimitiveFloat"
1585 },
1586 "widgets_values": [
1587 3
1588 ],
1589 "widgets_values_named": {
1590 "value": 3
1591 }
1592 },
1593 {
1594 "id": 161,
1595 "type": "ComfyMathExpression",
1596 "pos": [
1597 430,
1598 5110
1599 ],
1600 "size": [
1601 320,
1602 150
1603 ],
1604 "flags": [],
1605 "order": 27,
1606 "mode": 0,
1607 "inputs": [
1608 {
1609 "name": "values.a",
1610 "type": "FLOAT,INT,BOOLEAN",
1611 "link": 305
1612 },
1613 {
1614 "name": "values.b",
1615 "shape": 7,
1616 "type": "FLOAT,INT,BOOLEAN",
1617 "link": null
1618 }
1619 ],
1620 "outputs": [
1621 {
1622 "name": "FLOAT",
1623 "type": "FLOAT",
1624 "links": null
1625 },
1626 {
1627 "name": "INT",
1628 "type": "INT",
1629 "links": [
1630 311
1631 ]
1632 },
1633 {
1634 "name": "BOOL",
1635 "type": "BOOLEAN",
1636 "links": null
1637 }
1638 ],
1639 "properties": {
1640 "Node name for S&R": "ComfyMathExpression"
1641 },
1642 "widgets_values": [
1643 "round (a * 24)"
1644 ],
1645 "widgets_values_named": {
1646 "expression": "round (a * 24)"
1647 }
1648 },
1649 {
1650 "id": 162,
1651 "type": "MiniMaxH3AddGuide",
1652 "pos": [
1653 430,
1654 5330
1655 ],
1656 "size": [
1657 310,
1658 180
1659 ],
1660 "flags": [],
1661 "order": 33,
1662 "mode": 0,
1663 "inputs": [
1664 {
1665 "name": "positive",
1666 "type": "CONDITIONING",
1667 "link": 312
1668 },
1669 {
1670 "name": "latent",
1671 "type": "LATENT",
1672 "link": 307
1673 },
1674 {
1675 "name": "vae",
1676 "shape": 7,
1677 "type": "VAE",
1678 "link": 308
1679 },
1680 {
1681 "name": "audio_vae",
1682 "shape": 7,
1683 "type": "VAE",
1684 "link": 309
1685 },
1686 {
1687 "name": "image",
1688 "shape": 7,
1689 "type": "IMAGE",
1690 "link": 310
1691 },
1692 {
1693 "name": "audio",
1694 "shape": 7,
1695 "type": "AUDIO",
1696 "link": null
1697 },
1698 {
1699 "name": "frame_idx",
1700 "type": "INT",
1701 "widget": {
1702 "name": "frame_idx"
1703 },
1704 "link": 311
1705 }
1706 ],
1707 "outputs": [
1708 {
1709 "name": "positive",
1710 "type": "CONDITIONING",
1711 "links": [
1712 329
1713 ]
1714 }
1715 ],
1716 "properties": {
1717 "Node name for S&R": "MiniMaxH3AddGuide"
1718 },
1719 "widgets_values": [
1720 0
1721 ],
1722 "widgets_values_named": {
1723 "frame_idx": 0
1724 }
1725 },
1726 {
1727 "id": 164,
1728 "type": "LoadImage",
1729 "pos": [
1730 -80,
1731 4430
1732 ],
1733 "size": [
1734 290,
1735 330
1736 ],
1737 "flags": [],
1738 "order": 19,
1739 "mode": 0,
1740 "inputs": [],
1741 "outputs": [
1742 {
1743 "name": "IMAGE",
1744 "type": "IMAGE",
1745 "links": [
1746 314
1747 ]
1748 },
1749 {
1750 "name": "MASK",
1751 "type": "MASK",
1752 "links": null
1753 }
1754 ],
1755 "properties": {
1756 "Node name for S&R": "LoadImage"
1757 },
1758 "widgets_values": [
1759 "h3_frame_ref_1.png",
1760 "image"
1761 ],
1762 "widgets_values_named": {
1763 "image": "h3_frame_ref_1.png",
1764 "upload": "image"
1765 }
1766 },
1767 {
1768 "id": 167,
1769 "type": "LoadImage",
1770 "pos": [
1771 1200,
1772 4430
1773 ],
1774 "size": [
1775 290,
1776 330
1777 ],
1778 "flags": [],
1779 "order": 20,
1780 "mode": 0,
1781 "inputs": [],
1782 "outputs": [
1783 {
1784 "name": "IMAGE",
1785 "type": "IMAGE",
1786 "links": [
1787 331
1788 ]
1789 },
1790 {
1791 "name": "MASK",
1792 "type": "MASK",
1793 "links": null
1794 }
1795 ],
1796 "properties": {
1797 "Node name for S&R": "LoadImage"
1798 },
1799 "widgets_values": [
1800 "h3_frame_ref_4.png",
1801 "image"
1802 ],
1803 "widgets_values_named": {
1804 "image": "h3_frame_ref_4.png",
1805 "upload": "image"
1806 }
1807 },
1808 {
1809 "id": 168,
1810 "type": "PrimitiveFloat",
1811 "pos": [
1812 1190,
1813 4290
1814 ],
1815 "size": [
1816 320,
1817 70
1818 ],
1819 "flags": [],
1820 "order": 21,
1821 "mode": 0,
1822 "inputs": [],
1823 "outputs": [
1824 {
1825 "name": "FLOAT",
1826 "type": "FLOAT",
1827 "links": [
1828 334
1829 ]
1830 }
1831 ],
1832 "title": "Frame Index (Second)",
1833 "properties": {
1834 "Node name for S&R": "PrimitiveFloat"
1835 },
1836 "widgets_values": [
1837 5
1838 ],
1839 "widgets_values_named": {
1840 "value": 5
1841 }
1842 },
1843 {
1844 "id": 169,
1845 "type": "MiniMaxH3AddGuide",
1846 "pos": [
1847 790,
1848 5330
1849 ],
1850 "size": [
1851 310,
1852 180
1853 ],
1854 "flags": [],
1855 "order": 34,
1856 "mode": 0,
1857 "inputs": [
1858 {
1859 "name": "positive",
1860 "type": "CONDITIONING",
1861 "link": 329
1862 },
1863 {
1864 "name": "latent",
1865 "type": "LATENT",
1866 "link": 323
1867 },
1868 {
1869 "name": "vae",
1870 "shape": 7,
1871 "type": "VAE",
1872 "link": 324
1873 },
1874 {
1875 "name": "audio_vae",
1876 "shape": 7,
1877 "type": "VAE",
1878 "link": 325
1879 },
1880 {
1881 "name": "image",
1882 "shape": 7,
1883 "type": "IMAGE",
1884 "link": 331
1885 },
1886 {
1887 "name": "audio",
1888 "shape": 7,
1889 "type": "AUDIO",
1890 "link": null
1891 },
1892 {
1893 "name": "frame_idx",
1894 "type": "INT",
1895 "widget": {
1896 "name": "frame_idx"
1897 },
1898 "link": 327
1899 }
1900 ],
1901 "outputs": [
1902 {
1903 "name": "positive",
1904 "type": "CONDITIONING",
1905 "links": [
1906 330
1907 ]
1908 }
1909 ],
1910 "properties": {
1911 "Node name for S&R": "MiniMaxH3AddGuide"
1912 },
1913 "widgets_values": [
1914 0
1915 ],
1916 "widgets_values_named": {
1917 "frame_idx": 0
1918 }
1919 },
1920 {
1921 "id": 170,
1922 "type": "ComfyMathExpression",
1923 "pos": [
1924 800,
1925 5110
1926 ],
1927 "size": [
1928 320,
1929 150
1930 ],
1931 "flags": [],
1932 "order": 28,
1933 "mode": 0,
1934 "inputs": [
1935 {
1936 "name": "values.a",
1937 "type": "FLOAT,INT,BOOLEAN",
1938 "link": 334
1939 },
1940 {
1941 "name": "values.b",
1942 "shape": 7,
1943 "type": "FLOAT,INT,BOOLEAN",
1944 "link": null
1945 }
1946 ],
1947 "outputs": [
1948 {
1949 "name": "FLOAT",
1950 "type": "FLOAT",
1951 "links": null
1952 },
1953 {
1954 "name": "INT",
1955 "type": "INT",
1956 "links": [
1957 327
1958 ]
1959 },
1960 {
1961 "name": "BOOL",
1962 "type": "BOOLEAN",
1963 "links": null
1964 }
1965 ],
1966 "properties": {
1967 "Node name for S&R": "ComfyMathExpression"
1968 },
1969 "widgets_values": [
1970 "round (a * 24)"
1971 ],
1972 "widgets_values_named": {
1973 "expression": "round (a * 24)"
1974 }
1975 },
1976 {
1977 "id": 171,
1978 "type": "MarkdownNote",
1979 "pos": [
1980 420,
1981 5580
1982 ],
1983 "size": [
1984 340,
1985 100
1986 ],
1987 "flags": [],
1988 "order": 22,
1989 "mode": 0,
1990 "inputs": [],
1991 "outputs": [],
1992 "title": "Note",
1993 "properties": [],
1994 "widgets_values": [
1995 "Follow the same pattern to add more video frame guidance"
1996 ],
1997 "widgets_values_named": {
1998 "text": "Follow the same pattern to add more video frame guidance"
1999 },
2000 "color": "#222",
2001 "bgcolor": "#000"
2002 }
2003 ],
2004 "links": [
2005 [
2006 250,
2007 120,
2008 0,
2009 121,
2010 1,
2011 "VAE"
2012 ],
2013 [
2014 251,
2015 119,
2016 0,
2017 122,
2018 1,
2019 "VAE"
2020 ],
2021 [
2022 252,
2023 127,
2024 0,
2025 124,
2026 0,
2027 "MODEL"
2028 ],
2029 [
2030 253,
2031 129,
2032 0,
2033 125,
2034 0,
2035 "NOISE"
2036 ],
2037 [
2038 254,
2039 126,
2040 0,
2041 125,
2042 1,
2043 "GUIDER"
2044 ],
2045 [
2046 255,
2047 123,
2048 0,
2049 125,
2050 2,
2051 "SAMPLER"
2052 ],
2053 [
2054 256,
2055 124,
2056 0,
2057 125,
2058 3,
2059 "SIGMAS"
2060 ],
2061 [
2062 258,
2063 122,
2064 0,
2065 130,
2066 0,
2067 "IMAGE"
2068 ],
2069 [
2070 259,
2071 121,
2072 0,
2073 130,
2074 1,
2075 "AUDIO"
2076 ],
2077 [
2078 260,
2079 130,
2080 0,
2081 92,
2082 0,
2083 "VIDEO"
2084 ],
2085 [
2086 261,
2087 132,
2088 0,
2089 131,
2090 0,
2091 "FLOAT"
2092 ],
2093 [
2094 271,
2095 136,
2096 1,
2097 125,
2098 4,
2099 "LATENT"
2100 ],
2101 [
2102 272,
2103 128,
2104 0,
2105 136,
2106 0,
2107 "CLIP"
2108 ],
2109 [
2110 273,
2111 119,
2112 0,
2113 136,
2114 1,
2115 "VAE"
2116 ],
2117 [
2118 274,
2119 120,
2120 0,
2121 136,
2122 2,
2123 "VAE"
2124 ],
2125 [
2126 275,
2127 131,
2128 1,
2129 136,
2130 11,
2131 "INT"
2132 ],
2133 [
2134 276,
2135 115,
2136 0,
2137 136,
2138 9,
2139 "INT"
2140 ],
2141 [
2142 277,
2143 115,
2144 1,
2145 136,
2146 10,
2147 "INT"
2148 ],
2149 [
2150 280,
2151 125,
2152 0,
2153 122,
2154 0,
2155 "LATENT"
2156 ],
2157 [
2158 281,
2159 125,
2160 0,
2161 121,
2162 0,
2163 "LATENT"
2164 ],
2165 [
2166 283,
2167 144,
2168 0,
2169 142,
2170 1,
2171 "INT"
2172 ],
2173 [
2174 284,
2175 143,
2176 0,
2177 142,
2178 0,
2179 "INT"
2180 ],
2181 [
2182 285,
2183 127,
2184 0,
2185 145,
2186 0,
2187 "MODEL"
2188 ],
2189 [
2190 286,
2191 145,
2192 0,
2193 141,
2194 1,
2195 "MODEL"
2196 ],
2197 [
2198 287,
2199 127,
2200 0,
2201 141,
2202 0,
2203 "MODEL"
2204 ],
2205 [
2206 288,
2207 141,
2208 0,
2209 126,
2210 0,
2211 "MODEL"
2212 ],
2213 [
2214 289,
2215 142,
2216 0,
2217 124,
2218 1,
2219 "INT"
2220 ],
2221 [
2222 290,
2223 146,
2224 0,
2225 141,
2226 2,
2227 "BOOLEAN"
2228 ],
2229 [
2230 291,
2231 146,
2232 0,
2233 142,
2234 2,
2235 "BOOLEAN"
2236 ],
2237 [
2238 292,
2239 136,
2240 0,
2241 147,
2242 0,
2243 "CONDITIONING"
2244 ],
2245 [
2246 293,
2247 136,
2248 1,
2249 147,
2250 1,
2251 "LATENT"
2252 ],
2253 [
2254 294,
2255 119,
2256 0,
2257 147,
2258 2,
2259 "VAE"
2260 ],
2261 [
2262 295,
2263 120,
2264 0,
2265 147,
2266 3,
2267 "VAE"
2268 ],
2269 [
2270 301,
2271 154,
2272 0,
2273 153,
2274 0,
2275 "FLOAT"
2276 ],
2277 [
2278 303,
2279 153,
2280 1,
2281 147,
2282 6,
2283 "INT"
2284 ],
2285 [
2286 304,
2287 157,
2288 0,
2289 147,
2290 4,
2291 "IMAGE"
2292 ],
2293 [
2294 305,
2295 160,
2296 0,
2297 161,
2298 0,
2299 "FLOAT"
2300 ],
2301 [
2302 307,
2303 136,
2304 1,
2305 162,
2306 1,
2307 "LATENT"
2308 ],
2309 [
2310 308,
2311 119,
2312 0,
2313 162,
2314 2,
2315 "VAE"
2316 ],
2317 [
2318 309,
2319 120,
2320 0,
2321 162,
2322 3,
2323 "VAE"
2324 ],
2325 [
2326 310,
2327 159,
2328 0,
2329 162,
2330 4,
2331 "IMAGE"
2332 ],
2333 [
2334 311,
2335 161,
2336 1,
2337 162,
2338 6,
2339 "INT"
2340 ],
2341 [
2342 312,
2343 147,
2344 0,
2345 162,
2346 0,
2347 "CONDITIONING"
2348 ],
2349 [
2350 314,
2351 164,
2352 0,
2353 136,
2354 3,
2355 "IMAGE"
2356 ],
2357 [
2358 323,
2359 136,
2360 1,
2361 169,
2362 1,
2363 "LATENT"
2364 ],
2365 [
2366 324,
2367 119,
2368 0,
2369 169,
2370 2,
2371 "VAE"
2372 ],
2373 [
2374 325,
2375 120,
2376 0,
2377 169,
2378 3,
2379 "VAE"
2380 ],
2381 [
2382 327,
2383 170,
2384 1,
2385 169,
2386 6,
2387 "INT"
2388 ],
2389 [
2390 329,
2391 162,
2392 0,
2393 169,
2394 0,
2395 "CONDITIONING"
2396 ],
2397 [
2398 330,
2399 169,
2400 0,
2401 126,
2402 1,
2403 "CONDITIONING"
2404 ],
2405 [
2406 331,
2407 167,
2408 0,
2409 169,
2410 4,
2411 "IMAGE"
2412 ],
2413 [
2414 333,
2415 138,
2416 0,
2417 136,
2418 8,
2419 "STRING"
2420 ],
2421 [
2422 334,
2423 168,
2424 0,
2425 170,
2426 0,
2427 "FLOAT"
2428 ]
2429 ],
2430 "groups": [
2431 {
2432 "id": 1,
2433 "title": "Models",
2434 "bounding": [
2435 -1520,
2436 4840,
2437 700,
2438 990
2439 ],
2440 "color": "#3f789e",
2441 "flags": []
2442 },
2443 {
2444 "id": 2,
2445 "title": "Sampling",
2446 "bounding": [
2447 1170,
2448 4840,
2449 690,
2450 700
2451 ],
2452 "color": "#3f789e",
2453 "flags": []
2454 },
2455 {
2456 "id": 3,
2457 "title": "Switch Model and Settings",
2458 "bounding": [
2459 -790,
2460 5340,
2461 730,
2462 490
2463 ],
2464 "color": "#3f789e",
2465 "flags": []
2466 },
2467 {
2468 "id": 4,
2469 "title": "Decoding and create video",
2470 "bounding": [
2471 1170,
2472 5570,
2473 690,
2474 260
2475 ],
2476 "color": "#3f789e",
2477 "flags": []
2478 },
2479 {
2480 "id": 5,
2481 "title": "User Inputs",
2482 "bounding": [
2483 -1520,
2484 4170,
2485 3380,
2486 650
2487 ],
2488 "color": "#3f789e",
2489 "flags": []
2490 },
2491 {
2492 "id": 6,
2493 "title": "Conditioning",
2494 "bounding": [
2495 -790,
2496 4840,
2497 730,
2498 480
2499 ],
2500 "color": "#3f789e",
2501 "flags": []
2502 },
2503 {
2504 "id": 7,
2505 "title": "Extra Image Guidance Conditioning",
2506 "bounding": [
2507 -30,
2508 4840,
2509 1170,
2510 990
2511 ],
2512 "color": "#3f789e",
2513 "flags": []
2514 },
2515 {
2516 "id": 8,
2517 "title": "Video Settings",
2518 "bounding": [
2519 -1490,
2520 4230,
2521 292.3251232742416,
2522 548.0986135774447
2523 ],
2524 "color": "#3f789e",
2525 "flags": []
2526 }
2527 ],
2528 "config": [],
2529 "extra": {
2530 "ds": {
2531 "scale": 0.3034187631567999,
2532 "offset": [
2533 2890.802057872476,
2534 -3552.5896920944283
2535 ]
2536 },
2537 "frontendVersion": "1.51.9",
2538 "VHS_latentpreview": false,
2539 "VHS_latentpreviewrate": 0,
2540 "VHS_MetadataImage": true,
2541 "VHS_KeepIntermediate": true
2542 },
2543 "version": 0.4
2544}