工作流 /
视频工具 /
视频放大:RelayVSR 2x

视频放大:RelayVSR 2x
Video Upscale: RelayVSR 2x
用 RelayVSR 把实拍素材放大 2 倍:大模型只为稀疏关键帧写参考潜变量,紧凑的 Flash 解码器把这些参考带到每一帧,整段视频一次流式完成、只需一步采样。输出正好是输入的 2 倍,帧率与音轨保持不变,适合作为 480p-768p 生成之后的收尾放大。
视频工具
7 个节点 1 个输入 55 次使用 ComfyUI ≥ 0.45.0 ComfyUI 35 KB
需要的权重
这个工作流引用了 2 个权重文件,其中 2 个能在本站模型库里找到。
节点构成
MarkdownNote
× 3
LoadVideo
× 1
SaveVideo
× 1
655021b4-71af-43ca-91cd-267bb1bd9167
× 1
Video Slice
× 1
官方标注的模型
RelayVSR
工作流 JSON
和上面「下载工作流 JSON」是同一份文件。
1{
2 "id": "6fce58e3-5712-414f-9fc8-daa030e61e1f",
3 "revision": 0,
4 "last_node_id": 203,
5 "last_link_id": 42,
6 "nodes": [
7 {
8 "id": 1,
9 "type": "LoadVideo",
10 "pos": [
11 -1282.8280369450674,
12 -204.9575240503122
13 ],
14 "size": [
15 300,
16 457.3333333333333
17 ],
18 "flags": [],
19 "order": 0,
20 "mode": 0,
21 "inputs": [],
22 "outputs": [
23 {
24 "name": "VIDEO",
25 "type": "VIDEO",
26 "slot_index": 0,
27 "links": [
28 30
29 ]
30 }
31 ],
32 "properties": {
33 "Node name for S&R": "LoadVideo"
34 },
35 "widgets_values": [
36 "utility_relayvsr_video_x2_upscale_input.mp4",
37 "image"
38 ],
39 "widgets_values_named": {
40 "file": "utility_relayvsr_video_upscale_input.mp4",
41 "upload": "image",
42 "video": "utility_relayvsr_video_x2_upscale_input.mp4"
43 }
44 },
45 {
46 "id": 106,
47 "type": "SaveVideo",
48 "pos": [
49 -480.1997105163638,
50 -204.9575240503122
51 ],
52 "size": [
53 329.7088173432227,
54 471.94065334157233
55 ],
56 "flags": [],
57 "order": 6,
58 "mode": 0,
59 "inputs": [
60 {
61 "name": "video",
62 "type": "VIDEO",
63 "link": 31
64 }
65 ],
66 "outputs": [
67 {
68 "name": "video",
69 "type": "VIDEO",
70 "links": null
71 }
72 ],
73 "properties": [],
74 "widgets_values": [
75 "video/RelayVSR",
76 "auto",
77 "auto",
78 "auto"
79 ],
80 "widgets_values_named": {
81 "filename_prefix": "video/RelayVSR",
82 "format": "auto",
83 "format.codec": "auto",
84 "codec": "auto"
85 }
86 },
87 {
88 "id": 108,
89 "type": "655021b4-71af-43ca-91cd-267bb1bd9167",
90 "pos": [
91 -934.8280369450674,
92 -204.9575240503122
93 ],
94 "size": [
95 406.62832642870364,
96 433.4509005942805
97 ],
98 "flags": [],
99 "order": 5,
100 "mode": 0,
101 "inputs": [
102 {
103 "label": "output_bit_depth",
104 "name": "bit_depth",
105 "shape": 7,
106 "type": "COMBO",
107 "widget": {
108 "name": "bit_depth"
109 },
110 "link": null
111 },
112 {
113 "label": "output_color_space",
114 "name": "color_space",
115 "shape": 7,
116 "type": "COMBO",
117 "widget": {
118 "name": "color_space"
119 },
120 "link": null
121 },
122 {
123 "label": "output_chroma_subsampling",
124 "name": "chroma_subsampling",
125 "shape": 7,
126 "type": "COMBO",
127 "widget": {
128 "name": "chroma_subsampling"
129 },
130 "link": null
131 },
132 {
133 "name": "video",
134 "type": "VIDEO",
135 "link": 30
136 }
137 ],
138 "outputs": [
139 {
140 "name": "VIDEO",
141 "type": "VIDEO",
142 "links": [
143 31
144 ]
145 }
146 ],
147 "properties": {
148 "previewExposures": [
149 {
150 "name": "$$canvas-image-preview",
151 "sourceNodeId": "6",
152 "sourcePreviewName": "$$canvas-image-preview"
153 }
154 ]
155 },
156 "widgets_values": [
157 1,
158 1,
159 42,
160 "euler",
161 "simple",
162 "auto",
163 "sRGB",
164 "auto",
165 "relayvsr_x2_lightx2v_int8_convrot.safetensors",
166 "relayvsr_flash_vae_x2_fp32.safetensors"
167 ],
168 "widgets_values_named": {
169 "steps": 1,
170 "cfg": 1,
171 "seed": 42,
172 "sampler_name": "euler",
173 "scheduler": "simple",
174 "bit_depth": "auto",
175 "color_space": "sRGB",
176 "chroma_subsampling": "auto",
177 "unet_name": "relayvsr_x2_lightx2v_int8_convrot.safetensors",
178 "vae_name": "relayvsr_flash_vae_x2_fp32.safetensors"
179 }
180 },
181 {
182 "id": 109,
183 "type": "MarkdownNote",
184 "pos": [
185 -2255.4356165153445,
186 -219.02155918113678
187 ],
188 "size": [
189 428,
190 620
191 ],
192 "flags": [],
193 "order": 1,
194 "mode": 0,
195 "inputs": [],
196 "outputs": [],
197 "title": "Note: Model links",
198 "properties": [],
199 "widgets_values": [
200 "Guide: [Subgraph](https://docs.comfy.org/interface/features/subgraph)\n\n## Input Asset\n\n- [utility_relayvsr_video_x2_upscale_input.mp4](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/utility_relayvsr_video_x2_upscale_input.mp4)\n\n## Model Links\n\n- [Hugging Face:Comfy-Org/RelayVSR](https://huggingface.co/Comfy-Org/RelayVSR)\n\n**diffusion_models**\n\n- [relayvsr_x2_lightx2v_int8_convrot.safetensors](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors) (4.81 GB)\n\n**vae**\n\n- [relayvsr_flash_vae_x2_fp32.safetensors](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors) (121.8 MB)\n\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 diffusion_models/\n│ │ └── relayvsr_x2_lightx2v_int8_convrot.safetensors\n│ └── 📂 vae/\n│ └── relayvsr_flash_vae_x2_fp32.safetensors\n```\n\n## About this model\n\nRelayVSR upscales real video in one step: a large Wan-based model paints reference latents for sparse keyframes and a light \"Flash\" decoder carries them across every frame, so a long clip is restored in a streaming pass. The 2x pair here was retrained by LightX2V for the step after H3 generation; native in ComfyUI since #17511.\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"
201 ],
202 "widgets_values_named": {
203 "text": "Guide: [Subgraph](https://docs.comfy.org/interface/features/subgraph)\n\n## Input Asset\n\n- [utility_relayvsr_video_x2_upscale_input.mp4](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/utility_relayvsr_video_x2_upscale_input.mp4)\n\n## Model Links\n\n- [Hugging Face:Comfy-Org/RelayVSR](https://huggingface.co/Comfy-Org/RelayVSR)\n\n**diffusion_models**\n\n- [relayvsr_x2_lightx2v_int8_convrot.safetensors](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors) (4.81 GB)\n\n**vae**\n\n- [relayvsr_flash_vae_x2_fp32.safetensors](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors) (121.8 MB)\n\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 diffusion_models/\n│ │ └── relayvsr_x2_lightx2v_int8_convrot.safetensors\n│ └── 📂 vae/\n│ └── relayvsr_flash_vae_x2_fp32.safetensors\n```\n\n## About this model\n\nRelayVSR upscales real video in one step: a large Wan-based model paints reference latents for sparse keyframes and a light \"Flash\" decoder carries them across every frame, so a long clip is restored in a streaming pass. The 2x pair here was retrained by LightX2V for the step after H3 generation; native in ComfyUI since #17511.\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"
204 },
205 "color": "#222",
206 "bgcolor": "#000"
207 },
208 {
209 "id": 200,
210 "type": "MarkdownNote",
211 "pos": [
212 -1790.183713274726,
213 -213.70891542099045
214 ],
215 "size": [
216 391.267521580828,
217 482.28240674042127
218 ],
219 "flags": [],
220 "order": 2,
221 "mode": 0,
222 "inputs": [],
223 "outputs": [],
224 "title": "Note",
225 "properties": {
226 "text": ""
227 },
228 "widgets_values": [
229 "## How to use\n\n**Load Video** → **RelayVSR Video Upscaler** (subgraph) → **Save Video**. Frame rate and audio pass through; only the picture is scaled, exactly 2x.\n\nIn the subgraph: `steps 1`, `cfg 1`, `euler` / `simple`, and a matching weight pair — `relayvsr_x2_lightx2v_int8_convrot` with `relayvsr_flash_vae_x2_fp32`. \n\nThe factor comes from the checkpoint, not from a widget, and mixing x2 with x4 files fails. The big model writes a keyframe every 15 frames; `VSRDecode` expands them to every frame.\n\n- For 4x, swap in `relayvsr_x4_int8_convrot` + `relayvsr_flash_vae_x4_fp32`. Nothing else changes.\n"
230 ],
231 "widgets_values_named": {
232 "text": "## How to use\n\n**Load Video** → **RelayVSR Video Upscaler** (subgraph) → **Save Video**. Frame rate and audio pass through; only the picture is scaled, exactly 2x.\n\nIn the subgraph: `steps 1`, `cfg 1`, `euler` / `simple`, and a matching weight pair — `relayvsr_x2_lightx2v_int8_convrot` with `relayvsr_flash_vae_x2_fp32`. \n\nThe factor comes from the checkpoint, not from a widget, and mixing x2 with x4 files fails. The big model writes a keyframe every 15 frames; `VSRDecode` expands them to every frame.\n\n- For 4x, swap in `relayvsr_x4_int8_convrot` + `relayvsr_flash_vae_x4_fp32`. Nothing else changes.\n"
233 },
234 "color": "#222",
235 "bgcolor": "#000"
236 },
237 {
238 "id": 202,
239 "type": "Video Slice",
240 "pos": [
241 -1272.6619671011513,
242 329.034953866231
243 ],
244 "size": [
245 270,
246 106
247 ],
248 "flags": [],
249 "order": 3,
250 "mode": 0,
251 "inputs": [
252 {
253 "name": "video",
254 "type": "VIDEO",
255 "link": null
256 }
257 ],
258 "outputs": [
259 {
260 "name": "VIDEO",
261 "type": "VIDEO",
262 "links": null
263 }
264 ],
265 "properties": {
266 "Node name for S&R": "Video Slice"
267 },
268 "widgets_values": [
269 0,
270 5,
271 false
272 ],
273 "widgets_values_named": {
274 "start_time": 0,
275 "duration": 5,
276 "strict_duration": false
277 }
278 },
279 {
280 "id": 203,
281 "type": "MarkdownNote",
282 "pos": [
283 -1266.5941414477786,
284 494.71349202518604
285 ],
286 "size": [
287 269.93971866259943,
288 88
289 ],
290 "flags": [],
291 "order": 4,
292 "mode": 0,
293 "inputs": [],
294 "outputs": [],
295 "properties": [],
296 "widgets_values": [
297 "If you get OOM while using this workflow, try to trim the input and split the whole process into several passes"
298 ],
299 "widgets_values_named": {
300 "text": "If you get OOM while using this workflow, try to trim the input and split the whole process into several passes"
301 },
302 "color": "#222",
303 "bgcolor": "#000"
304 }
305 ],
306 "links": [
307 [
308 30,
309 1,
310 0,
311 108,
312 3,
313 "VIDEO"
314 ],
315 [
316 31,
317 108,
318 0,
319 106,
320 0,
321 "VIDEO"
322 ]
323 ],
324 "groups": [],
325 "definitions": {
326 "subgraphs": [
327 {
328 "id": "655021b4-71af-43ca-91cd-267bb1bd9167",
329 "version": 1,
330 "state": {
331 "lastGroupId": 2,
332 "lastNodeId": 203,
333 "lastLinkId": 42,
334 "lastRerouteId": 0
335 },
336 "revision": 0,
337 "config": [],
338 "name": "RelayVSR Video Upscaler",
339 "inputNode": {
340 "id": -10,
341 "bounding": [
342 -476.2763123874787,
343 360.99369632984616,
344 210.216796875,
345 268.00000000000006
346 ]
347 },
348 "outputNode": {
349 "id": -20,
350 "bounding": [
351 1873.6723518072329,
352 395.5975473722079,
353 128,
354 68
355 ]
356 },
357 "inputs": [
358 {
359 "id": "1377e673-937d-4fa0-8fc9-c5710e72a612",
360 "name": "steps",
361 "type": "INT",
362 "linkIds": [
363 33
364 ],
365 "pos": [
366 -290.0595155124787,
367 384.99369632984616
368 ]
369 },
370 {
371 "id": "0bcb2c73-0510-4898-b632-2047f9a8e867",
372 "name": "cfg",
373 "type": "FLOAT",
374 "linkIds": [
375 34
376 ],
377 "pos": [
378 -290.0595155124787,
379 404.99369632984616
380 ]
381 },
382 {
383 "id": "de8baacb-fb30-421c-9afd-6bf43fe5c44e",
384 "name": "seed",
385 "type": "INT",
386 "linkIds": [
387 32
388 ],
389 "pos": [
390 -290.0595155124787,
391 424.99369632984616
392 ]
393 },
394 {
395 "id": "ff7a8224-3d5e-410a-af46-5c500167cbfe",
396 "name": "sampler_name",
397 "type": "COMBO",
398 "linkIds": [
399 36
400 ],
401 "pos": [
402 -290.0595155124787,
403 444.99369632984616
404 ]
405 },
406 {
407 "id": "a09dfa31-e6ae-4585-b9f3-6abb8e3eee21",
408 "name": "scheduler",
409 "type": "COMBO",
410 "linkIds": [
411 37
412 ],
413 "pos": [
414 -290.0595155124787,
415 464.99369632984616
416 ]
417 },
418 {
419 "id": "3aa35cc0-9d14-4d8f-9a5e-cbcc692554c2",
420 "name": "bit_depth",
421 "type": "COMBO",
422 "linkIds": [
423 38
424 ],
425 "label": "output_bit_depth",
426 "pos": [
427 -290.0595155124787,
428 484.99369632984616
429 ]
430 },
431 {
432 "id": "f978aa27-3209-4f79-8eb7-08b91ef89617",
433 "name": "color_space",
434 "type": "COMBO",
435 "linkIds": [
436 39
437 ],
438 "label": "output_color_space",
439 "pos": [
440 -290.0595155124787,
441 504.99369632984616
442 ]
443 },
444 {
445 "id": "380c1a64-f3a5-4458-a9e3-38a280b7af60",
446 "name": "chroma_subsampling",
447 "type": "COMBO",
448 "linkIds": [
449 40
450 ],
451 "label": "output_chroma_subsampling",
452 "pos": [
453 -290.0595155124787,
454 524.9936963298462
455 ]
456 },
457 {
458 "id": "8cb01e99-2606-4970-84be-abdc96cf2733",
459 "name": "unet_name",
460 "type": "COMBO",
461 "linkIds": [
462 41
463 ],
464 "pos": [
465 -290.0595155124787,
466 544.9936963298462
467 ]
468 },
469 {
470 "id": "10d25e22-ba5f-443e-9f3c-c5cff1f37756",
471 "name": "vae_name",
472 "type": "COMBO",
473 "linkIds": [
474 42
475 ],
476 "pos": [
477 -290.0595155124787,
478 564.9936963298462
479 ]
480 },
481 {
482 "id": "6cd668fd-a5d2-4b3d-9249-c7979d88285c",
483 "name": "video",
484 "type": "VIDEO",
485 "linkIds": [
486 1
487 ],
488 "localized_name": "video",
489 "pos": [
490 -290.0595155124787,
491 584.9936963298462
492 ]
493 }
494 ],
495 "outputs": [
496 {
497 "id": "d24339c8-ea16-46fe-a2c7-f54e1e20ac04",
498 "name": "VIDEO",
499 "type": "VIDEO",
500 "linkIds": [
501 27
502 ],
503 "localized_name": "VIDEO",
504 "pos": [
505 1897.6723518072329,
506 419.5975473722079
507 ]
508 }
509 ],
510 "widgets": [],
511 "nodes": [
512 {
513 "id": 4,
514 "type": "UNETLoader",
515 "pos": [
516 36.14119638309489,
517 165.77170932508847
518 ],
519 "size": [
520 420,
521 82
522 ],
523 "flags": [],
524 "order": 1,
525 "mode": 0,
526 "inputs": [
527 {
528 "localized_name": "unet_name",
529 "name": "unet_name",
530 "type": "COMBO",
531 "widget": {
532 "name": "unet_name"
533 },
534 "link": 41
535 }
536 ],
537 "outputs": [
538 {
539 "localized_name": "MODEL",
540 "name": "MODEL",
541 "type": "MODEL",
542 "slot_index": 0,
543 "links": [
544 2,
545 4
546 ]
547 }
548 ],
549 "properties": {
550 "Node name for S&R": "UNETLoader",
551 "models": [
552 {
553 "name": "relayvsr_x2_lightx2v_int8_convrot.safetensors",
554 "url": "https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors",
555 "directory": "diffusion_models"
556 }
557 ]
558 },
559 "widgets_values": [
560 "relayvsr_x2_lightx2v_int8_convrot.safetensors",
561 "default"
562 ],
563 "widgets_values_named": {
564 "unet_name": "relayvsr_x2_lightx2v_int8_convrot.safetensors",
565 "weight_dtype": "default"
566 },
567 "color": "#223",
568 "bgcolor": "#335"
569 },
570 {
571 "id": 5,
572 "type": "RelayVSRConditioning",
573 "pos": [
574 528.1656185055422,
575 199.48462933424344
576 ],
577 "size": [
578 260,
579 70
580 ],
581 "flags": [],
582 "order": 2,
583 "mode": 0,
584 "inputs": [
585 {
586 "localized_name": "model",
587 "name": "model",
588 "type": "MODEL",
589 "link": 2
590 },
591 {
592 "localized_name": "images",
593 "name": "images",
594 "type": "IMAGE",
595 "link": 3
596 }
597 ],
598 "outputs": [
599 {
600 "localized_name": "positive",
601 "name": "positive",
602 "type": "CONDITIONING",
603 "slot_index": 0,
604 "links": [
605 5,
606 6
607 ]
608 },
609 {
610 "localized_name": "latent",
611 "name": "latent",
612 "type": "LATENT",
613 "slot_index": 1,
614 "links": [
615 7
616 ]
617 }
618 ],
619 "properties": {
620 "Node name for S&R": "RelayVSRConditioning"
621 }
622 },
623 {
624 "id": 7,
625 "type": "VAELoader",
626 "pos": [
627 36.86204224395368,
628 305.43419029406977
629 ],
630 "size": [
631 416.0616892926638,
632 62.573757290024105
633 ],
634 "flags": [],
635 "order": 4,
636 "mode": 0,
637 "inputs": [
638 {
639 "localized_name": "vae_name",
640 "name": "vae_name",
641 "type": "COMBO",
642 "widget": {
643 "name": "vae_name"
644 },
645 "link": 42
646 }
647 ],
648 "outputs": [
649 {
650 "localized_name": "VAE",
651 "name": "VAE",
652 "type": "VAE",
653 "slot_index": 0,
654 "links": [
655 18
656 ]
657 }
658 ],
659 "properties": {
660 "Node name for S&R": "VAELoader",
661 "models": [
662 {
663 "name": "relayvsr_flash_vae_x2_fp32.safetensors",
664 "url": "https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors",
665 "directory": "vae"
666 }
667 ]
668 },
669 "widgets_values": [
670 "relayvsr_flash_vae_x2_fp32.safetensors"
671 ],
672 "widgets_values_named": {
673 "vae_name": "relayvsr_flash_vae_x2_fp32.safetensors"
674 },
675 "color": "#322",
676 "bgcolor": "#533"
677 },
678 {
679 "id": 6,
680 "type": "KSampler",
681 "pos": [
682 839.9649481560102,
683 144.1205338292143
684 ],
685 "size": [
686 300,
687 434.66666666666663
688 ],
689 "flags": [],
690 "order": 3,
691 "mode": 0,
692 "inputs": [
693 {
694 "localized_name": "model",
695 "name": "model",
696 "type": "MODEL",
697 "link": 4
698 },
699 {
700 "localized_name": "positive",
701 "name": "positive",
702 "type": "CONDITIONING",
703 "link": 5
704 },
705 {
706 "localized_name": "negative",
707 "name": "negative",
708 "type": "CONDITIONING",
709 "link": 6
710 },
711 {
712 "localized_name": "latent_image",
713 "name": "latent_image",
714 "type": "LATENT",
715 "link": 7
716 },
717 {
718 "localized_name": "seed",
719 "name": "seed",
720 "type": "INT",
721 "widget": {
722 "name": "seed"
723 },
724 "link": 32
725 },
726 {
727 "localized_name": "steps",
728 "name": "steps",
729 "type": "INT",
730 "widget": {
731 "name": "steps"
732 },
733 "link": 33
734 },
735 {
736 "localized_name": "cfg",
737 "name": "cfg",
738 "type": "FLOAT",
739 "widget": {
740 "name": "cfg"
741 },
742 "link": 34
743 },
744 {
745 "localized_name": "sampler_name",
746 "name": "sampler_name",
747 "type": "COMBO",
748 "widget": {
749 "name": "sampler_name"
750 },
751 "link": 36
752 },
753 {
754 "localized_name": "scheduler",
755 "name": "scheduler",
756 "type": "COMBO",
757 "widget": {
758 "name": "scheduler"
759 },
760 "link": 37
761 }
762 ],
763 "outputs": [
764 {
765 "localized_name": "LATENT",
766 "name": "LATENT",
767 "type": "LATENT",
768 "slot_index": 0,
769 "links": [
770 19
771 ]
772 }
773 ],
774 "properties": {
775 "Node name for S&R": "KSampler"
776 },
777 "widgets_values": [
778 0,
779 "randomize",
780 1,
781 1,
782 "euler",
783 "simple",
784 1
785 ],
786 "widgets_values_named": {
787 "seed": 0,
788 "control_after_generate": "randomize",
789 "steps": 1,
790 "cfg": 1,
791 "sampler_name": "euler",
792 "scheduler": "simple",
793 "denoise": 1
794 }
795 },
796 {
797 "id": 2,
798 "type": "GetVideoComponents",
799 "pos": [
800 25.603671599811207,
801 580.8386895289361
802 ],
803 "size": [
804 225,
805 120
806 ],
807 "flags": [],
808 "order": 0,
809 "mode": 0,
810 "inputs": [
811 {
812 "localized_name": "video",
813 "name": "video",
814 "type": "VIDEO",
815 "link": 1
816 }
817 ],
818 "outputs": [
819 {
820 "localized_name": "images",
821 "name": "images",
822 "type": "IMAGE",
823 "slot_index": 0,
824 "links": [
825 3,
826 20
827 ]
828 },
829 {
830 "localized_name": "audio",
831 "name": "audio",
832 "type": "AUDIO",
833 "slot_index": 1,
834 "links": [
835 29
836 ]
837 },
838 {
839 "localized_name": "fps",
840 "name": "fps",
841 "type": "FLOAT",
842 "slot_index": 2,
843 "links": [
844 28
845 ]
846 },
847 {
848 "localized_name": "bit_depth",
849 "name": "bit_depth",
850 "type": "COMBO",
851 "slot_index": 3,
852 "links": []
853 },
854 {
855 "localized_name": "color_space",
856 "name": "color_space",
857 "type": "COMBO",
858 "slot_index": 4,
859 "links": []
860 }
861 ],
862 "properties": {
863 "Node name for S&R": "GetVideoComponents"
864 }
865 },
866 {
867 "id": 104,
868 "type": "VSRDecode",
869 "pos": [
870 1194.578056597372,
871 146.14681509202373
872 ],
873 "size": [
874 220,
875 98
876 ],
877 "flags": [],
878 "order": 5,
879 "mode": 0,
880 "inputs": [
881 {
882 "localized_name": "vae",
883 "name": "vae",
884 "type": "VAE",
885 "link": 18
886 },
887 {
888 "localized_name": "samples",
889 "name": "samples",
890 "type": "LATENT",
891 "link": 19
892 },
893 {
894 "localized_name": "images",
895 "name": "images",
896 "type": "IMAGE",
897 "link": 20
898 }
899 ],
900 "outputs": [
901 {
902 "localized_name": "IMAGE",
903 "name": "IMAGE",
904 "type": "IMAGE",
905 "slot_index": 0,
906 "links": [
907 26
908 ]
909 }
910 ],
911 "properties": {
912 "Node name for S&R": "VSRDecode"
913 },
914 "widgets_values": [
915 1
916 ],
917 "widgets_values_named": {
918 "detail": 1
919 }
920 },
921 {
922 "id": 105,
923 "type": "CreateVideo",
924 "pos": [
925 1529.5141486822329,
926 577.5171354193274
927 ],
928 "size": [
929 284.158203125,
930 174
931 ],
932 "flags": [],
933 "order": 6,
934 "mode": 0,
935 "inputs": [
936 {
937 "localized_name": "images",
938 "name": "images",
939 "type": "IMAGE",
940 "link": 26
941 },
942 {
943 "localized_name": "audio",
944 "name": "audio",
945 "shape": 7,
946 "type": "AUDIO",
947 "link": 29
948 },
949 {
950 "localized_name": "fps",
951 "name": "fps",
952 "type": "FLOAT",
953 "widget": {
954 "name": "fps"
955 },
956 "link": 28
957 },
958 {
959 "localized_name": "bit_depth",
960 "name": "bit_depth",
961 "shape": 7,
962 "type": "COMBO",
963 "widget": {
964 "name": "bit_depth"
965 },
966 "link": 38
967 },
968 {
969 "localized_name": "color_space",
970 "name": "color_space",
971 "shape": 7,
972 "type": "COMBO",
973 "widget": {
974 "name": "color_space"
975 },
976 "link": 39
977 },
978 {
979 "localized_name": "chroma_subsampling",
980 "name": "chroma_subsampling",
981 "shape": 7,
982 "type": "COMBO",
983 "widget": {
984 "name": "chroma_subsampling"
985 },
986 "link": 40
987 }
988 ],
989 "outputs": [
990 {
991 "localized_name": "VIDEO",
992 "name": "VIDEO",
993 "type": "VIDEO",
994 "links": [
995 27
996 ]
997 }
998 ],
999 "properties": {
1000 "Node name for S&R": "CreateVideo"
1001 },
1002 "widgets_values": [
1003 30,
1004 "auto",
1005 "sRGB",
1006 "auto",
1007 "none"
1008 ],
1009 "widgets_values_named": {
1010 "fps": 30,
1011 "bit_depth": "auto",
1012 "color_space": "sRGB",
1013 "chroma_subsampling": "auto",
1014 "codec": "none"
1015 }
1016 }
1017 ],
1018 "groups": [
1019 {
1020 "id": 1,
1021 "title": "Models",
1022 "bounding": [
1023 26.141196383094893,
1024 95.77170932508847,
1025 440,
1026 282.2362382590054
1027 ],
1028 "color": "#3f789e",
1029 "flags": []
1030 }
1031 ],
1032 "links": [
1033 {
1034 "id": 2,
1035 "origin_id": 4,
1036 "origin_slot": 0,
1037 "target_id": 5,
1038 "target_slot": 0,
1039 "type": "MODEL"
1040 },
1041 {
1042 "id": 3,
1043 "origin_id": 2,
1044 "origin_slot": 0,
1045 "target_id": 5,
1046 "target_slot": 1,
1047 "type": "IMAGE"
1048 },
1049 {
1050 "id": 4,
1051 "origin_id": 4,
1052 "origin_slot": 0,
1053 "target_id": 6,
1054 "target_slot": 0,
1055 "type": "MODEL"
1056 },
1057 {
1058 "id": 5,
1059 "origin_id": 5,
1060 "origin_slot": 0,
1061 "target_id": 6,
1062 "target_slot": 1,
1063 "type": "CONDITIONING"
1064 },
1065 {
1066 "id": 6,
1067 "origin_id": 5,
1068 "origin_slot": 0,
1069 "target_id": 6,
1070 "target_slot": 2,
1071 "type": "CONDITIONING"
1072 },
1073 {
1074 "id": 7,
1075 "origin_id": 5,
1076 "origin_slot": 1,
1077 "target_id": 6,
1078 "target_slot": 3,
1079 "type": "LATENT"
1080 },
1081 {
1082 "id": 18,
1083 "origin_id": 7,
1084 "origin_slot": 0,
1085 "target_id": 104,
1086 "target_slot": 0,
1087 "type": "VAE"
1088 },
1089 {
1090 "id": 19,
1091 "origin_id": 6,
1092 "origin_slot": 0,
1093 "target_id": 104,
1094 "target_slot": 1,
1095 "type": "LATENT"
1096 },
1097 {
1098 "id": 20,
1099 "origin_id": 2,
1100 "origin_slot": 0,
1101 "target_id": 104,
1102 "target_slot": 2,
1103 "type": "IMAGE"
1104 },
1105 {
1106 "id": 26,
1107 "origin_id": 104,
1108 "origin_slot": 0,
1109 "target_id": 105,
1110 "target_slot": 0,
1111 "type": "IMAGE"
1112 },
1113 {
1114 "id": 29,
1115 "origin_id": 2,
1116 "origin_slot": 1,
1117 "target_id": 105,
1118 "target_slot": 1,
1119 "type": "AUDIO"
1120 },
1121 {
1122 "id": 28,
1123 "origin_id": 2,
1124 "origin_slot": 2,
1125 "target_id": 105,
1126 "target_slot": 2,
1127 "type": "FLOAT"
1128 },
1129 {
1130 "id": 27,
1131 "origin_id": 105,
1132 "origin_slot": 0,
1133 "target_id": -20,
1134 "target_slot": 0,
1135 "type": "VIDEO"
1136 },
1137 {
1138 "id": 33,
1139 "origin_id": -10,
1140 "origin_slot": 0,
1141 "target_id": 6,
1142 "target_slot": 5,
1143 "type": "INT"
1144 },
1145 {
1146 "id": 34,
1147 "origin_id": -10,
1148 "origin_slot": 1,
1149 "target_id": 6,
1150 "target_slot": 6,
1151 "type": "FLOAT"
1152 },
1153 {
1154 "id": 32,
1155 "origin_id": -10,
1156 "origin_slot": 2,
1157 "target_id": 6,
1158 "target_slot": 4,
1159 "type": "INT"
1160 },
1161 {
1162 "id": 36,
1163 "origin_id": -10,
1164 "origin_slot": 3,
1165 "target_id": 6,
1166 "target_slot": 7,
1167 "type": "COMBO"
1168 },
1169 {
1170 "id": 37,
1171 "origin_id": -10,
1172 "origin_slot": 4,
1173 "target_id": 6,
1174 "target_slot": 8,
1175 "type": "COMBO"
1176 },
1177 {
1178 "id": 38,
1179 "origin_id": -10,
1180 "origin_slot": 5,
1181 "target_id": 105,
1182 "target_slot": 3,
1183 "type": "COMBO"
1184 },
1185 {
1186 "id": 39,
1187 "origin_id": -10,
1188 "origin_slot": 6,
1189 "target_id": 105,
1190 "target_slot": 4,
1191 "type": "COMBO"
1192 },
1193 {
1194 "id": 40,
1195 "origin_id": -10,
1196 "origin_slot": 7,
1197 "target_id": 105,
1198 "target_slot": 5,
1199 "type": "COMBO"
1200 },
1201 {
1202 "id": 41,
1203 "origin_id": -10,
1204 "origin_slot": 8,
1205 "target_id": 4,
1206 "target_slot": 0,
1207 "type": "COMBO"
1208 },
1209 {
1210 "id": 42,
1211 "origin_id": -10,
1212 "origin_slot": 9,
1213 "target_id": 7,
1214 "target_slot": 0,
1215 "type": "COMBO"
1216 },
1217 {
1218 "id": 1,
1219 "origin_id": -10,
1220 "origin_slot": 10,
1221 "target_id": 2,
1222 "target_slot": 0,
1223 "type": "VIDEO"
1224 }
1225 ],
1226 "extra": []
1227 }
1228 ]
1229 },
1230 "config": [],
1231 "extra": {
1232 "ds": {
1233 "scale": 0.519885474349126,
1234 "offset": [
1235 3073.814476534135,
1236 728.1932494162718
1237 ]
1238 },
1239 "frontendVersion": "1.58.5",
1240 "VHS_latentpreview": true,
1241 "VHS_latentpreviewrate": 0,
1242 "VHS_MetadataImage": false,
1243 "VHS_KeepIntermediate": true
1244 },
1245 "version": 0.4
1246}