aleph65 commited on
Commit
233b9a9
·
verified ·
1 Parent(s): 44c2c12

Add SCAIL-2 character replacement workflow (API format)

Browse files
workflows/api/scail2-character-replacement.json ADDED
@@ -0,0 +1,1237 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "155": {
3
+ "class_type": "LoadVideo",
4
+ "inputs": {
5
+ "file": "driving_outdoor_dance.mp4"
6
+ }
7
+ },
8
+ "201": {
9
+ "class_type": "CreateVideo",
10
+ "inputs": {
11
+ "audio": [
12
+ "215",
13
+ 1
14
+ ],
15
+ "bit_depth": 8,
16
+ "fps": [
17
+ "215",
18
+ 2
19
+ ],
20
+ "images": [
21
+ "213:6",
22
+ 0
23
+ ]
24
+ }
25
+ },
26
+ "202": {
27
+ "_meta": {
28
+ "title": "Save Video (First Segement)"
29
+ },
30
+ "class_type": "SaveVideo",
31
+ "inputs": {
32
+ "codec": "auto",
33
+ "filename_prefix": "video/ComfyUI",
34
+ "format": "auto",
35
+ "video": [
36
+ "201",
37
+ 0
38
+ ]
39
+ }
40
+ },
41
+ "213:11": {
42
+ "class_type": "LoraLoaderModelOnly",
43
+ "inputs": {
44
+ "lora_name": "lightx2v_I2V_14B_480p_cfg_step_distill_rank64_bf16.safetensors",
45
+ "model": [
46
+ "213:318",
47
+ 0
48
+ ],
49
+ "strength_model": 0.8
50
+ }
51
+ },
52
+ "213:114": {
53
+ "class_type": "WanSCAILToVideo",
54
+ "inputs": {
55
+ "batch_size": 1,
56
+ "clip_vision_output": [
57
+ "213:76",
58
+ 0
59
+ ],
60
+ "height": [
61
+ "213:163",
62
+ 1
63
+ ],
64
+ "length": [
65
+ "213:163",
66
+ 2
67
+ ],
68
+ "negative": [
69
+ "213:4",
70
+ 0
71
+ ],
72
+ "pose_end": 1,
73
+ "pose_start": 0,
74
+ "pose_strength": 1,
75
+ "pose_video": [
76
+ "213:156",
77
+ 0
78
+ ],
79
+ "pose_video_mask": [
80
+ "213:197",
81
+ 0
82
+ ],
83
+ "positive": [
84
+ "213:3",
85
+ 0
86
+ ],
87
+ "previous_frame_count": 5,
88
+ "reference_image": [
89
+ "30",
90
+ 0
91
+ ],
92
+ "reference_image_mask": [
93
+ "213:197",
94
+ 1
95
+ ],
96
+ "replacement_mode": [
97
+ "213:203",
98
+ 0
99
+ ],
100
+ "vae": [
101
+ "213:7",
102
+ 0
103
+ ],
104
+ "video_frame_offset": 0,
105
+ "width": [
106
+ "213:163",
107
+ 0
108
+ ]
109
+ }
110
+ },
111
+ "213:154": {
112
+ "class_type": "UNETLoader",
113
+ "inputs": {
114
+ "unet_name": "wan2.1_14B_SCAIL_2_fp16.safetensors",
115
+ "weight_dtype": "default"
116
+ }
117
+ },
118
+ "213:156": {
119
+ "class_type": "ResizeImageMaskNode",
120
+ "inputs": {
121
+ "input": [
122
+ "213:177",
123
+ 0
124
+ ],
125
+ "resize_type": "scale dimensions",
126
+ "resize_type.crop": "center",
127
+ "resize_type.height": [
128
+ "213:182",
129
+ 1
130
+ ],
131
+ "resize_type.width": [
132
+ "213:180",
133
+ 1
134
+ ],
135
+ "scale_method": "area"
136
+ }
137
+ },
138
+ "213:157": {
139
+ "class_type": "GetVideoComponents",
140
+ "inputs": {
141
+ "video": [
142
+ "155",
143
+ 0
144
+ ]
145
+ }
146
+ },
147
+ "213:163": {
148
+ "class_type": "GetImageSize",
149
+ "inputs": {
150
+ "image": [
151
+ "213:156",
152
+ 0
153
+ ]
154
+ }
155
+ },
156
+ "213:165": {
157
+ "_meta": {
158
+ "title": "Int (Steps)"
159
+ },
160
+ "class_type": "PrimitiveInt",
161
+ "inputs": {
162
+ "value": 40
163
+ }
164
+ },
165
+ "213:166": {
166
+ "_meta": {
167
+ "title": "Float (CFG)"
168
+ },
169
+ "class_type": "PrimitiveFloat",
170
+ "inputs": {
171
+ "value": 5
172
+ }
173
+ },
174
+ "213:167": {
175
+ "_meta": {
176
+ "title": "Float (CFG)"
177
+ },
178
+ "class_type": "PrimitiveFloat",
179
+ "inputs": {
180
+ "value": 1
181
+ }
182
+ },
183
+ "213:168": {
184
+ "_meta": {
185
+ "title": "Int (Steps)"
186
+ },
187
+ "class_type": "PrimitiveInt",
188
+ "inputs": {
189
+ "value": 6
190
+ }
191
+ },
192
+ "213:169": {
193
+ "_meta": {
194
+ "title": "Switch (Model)"
195
+ },
196
+ "class_type": "ComfySwitchNode",
197
+ "inputs": {
198
+ "on_false": [
199
+ "213:318",
200
+ 0
201
+ ],
202
+ "on_true": [
203
+ "213:11",
204
+ 0
205
+ ],
206
+ "switch": [
207
+ "213:172",
208
+ 0
209
+ ]
210
+ }
211
+ },
212
+ "213:170": {
213
+ "_meta": {
214
+ "title": "Switch (Steps)"
215
+ },
216
+ "class_type": "ComfySwitchNode",
217
+ "inputs": {
218
+ "on_false": [
219
+ "213:165",
220
+ 0
221
+ ],
222
+ "on_true": [
223
+ "213:168",
224
+ 0
225
+ ],
226
+ "switch": [
227
+ "213:172",
228
+ 0
229
+ ]
230
+ }
231
+ },
232
+ "213:171": {
233
+ "_meta": {
234
+ "title": "Switch (Steps)"
235
+ },
236
+ "class_type": "ComfySwitchNode",
237
+ "inputs": {
238
+ "on_false": [
239
+ "213:166",
240
+ 0
241
+ ],
242
+ "on_true": [
243
+ "213:167",
244
+ 0
245
+ ],
246
+ "switch": [
247
+ "213:172",
248
+ 0
249
+ ]
250
+ }
251
+ },
252
+ "213:172": {
253
+ "_meta": {
254
+ "title": "Boolean (Enable Distill LoRA?)"
255
+ },
256
+ "class_type": "PrimitiveBoolean",
257
+ "inputs": {
258
+ "value": true
259
+ }
260
+ },
261
+ "213:177": {
262
+ "class_type": "ImageFromBatch",
263
+ "inputs": {
264
+ "batch_index": [
265
+ "213:184",
266
+ 1
267
+ ],
268
+ "image": [
269
+ "213:157",
270
+ 0
271
+ ],
272
+ "length": 81
273
+ }
274
+ },
275
+ "213:178": {
276
+ "_meta": {
277
+ "title": "Int (Width)"
278
+ },
279
+ "class_type": "PrimitiveInt",
280
+ "inputs": {
281
+ "value": 896
282
+ }
283
+ },
284
+ "213:179": {
285
+ "_meta": {
286
+ "title": "Int (Height)"
287
+ },
288
+ "class_type": "PrimitiveInt",
289
+ "inputs": {
290
+ "value": 512
291
+ }
292
+ },
293
+ "213:18": {
294
+ "class_type": "BasicScheduler",
295
+ "inputs": {
296
+ "denoise": 1,
297
+ "model": [
298
+ "213:11",
299
+ 0
300
+ ],
301
+ "scheduler": "simple",
302
+ "steps": [
303
+ "213:170",
304
+ 0
305
+ ]
306
+ }
307
+ },
308
+ "213:180": {
309
+ "class_type": "ComfyMathExpression",
310
+ "inputs": {
311
+ "expression": "(a // 32) * 32",
312
+ "values.a": [
313
+ "213:178",
314
+ 0
315
+ ]
316
+ }
317
+ },
318
+ "213:182": {
319
+ "class_type": "ComfyMathExpression",
320
+ "inputs": {
321
+ "expression": "(a // 32) * 32",
322
+ "values.a": [
323
+ "213:179",
324
+ 0
325
+ ]
326
+ }
327
+ },
328
+ "213:183": {
329
+ "_meta": {
330
+ "title": "Int (segment index)"
331
+ },
332
+ "class_type": "PrimitiveInt",
333
+ "inputs": {
334
+ "value": 1
335
+ }
336
+ },
337
+ "213:184": {
338
+ "class_type": "ComfyMathExpression",
339
+ "inputs": {
340
+ "expression": "(b - c) * (a - 1)",
341
+ "values.a": [
342
+ "213:183",
343
+ 0
344
+ ],
345
+ "values.b": 81,
346
+ "values.c": 5
347
+ }
348
+ },
349
+ "213:19": {
350
+ "class_type": "SamplerCustom",
351
+ "inputs": {
352
+ "add_noise": true,
353
+ "cfg": [
354
+ "213:171",
355
+ 0
356
+ ],
357
+ "latent_image": [
358
+ "213:114",
359
+ 2
360
+ ],
361
+ "model": [
362
+ "213:95",
363
+ 0
364
+ ],
365
+ "negative": [
366
+ "213:114",
367
+ 1
368
+ ],
369
+ "noise_seed": 1,
370
+ "positive": [
371
+ "213:114",
372
+ 0
373
+ ],
374
+ "sampler": [
375
+ "213:27",
376
+ 0
377
+ ],
378
+ "sigmas": [
379
+ "213:18",
380
+ 0
381
+ ]
382
+ }
383
+ },
384
+ "213:191": {
385
+ "class_type": "CLIPTextEncode",
386
+ "inputs": {
387
+ "clip": [
388
+ "213:193",
389
+ 1
390
+ ],
391
+ "text": "human"
392
+ }
393
+ },
394
+ "213:193": {
395
+ "class_type": "CheckpointLoaderSimple",
396
+ "inputs": {
397
+ "ckpt_name": "sam3.1_multiplex_fp16.safetensors"
398
+ }
399
+ },
400
+ "213:196": {
401
+ "class_type": "SAM3_VideoTrack",
402
+ "inputs": {
403
+ "conditioning": [
404
+ "213:191",
405
+ 0
406
+ ],
407
+ "detect_interval": 1,
408
+ "detection_threshold": 0.5,
409
+ "images": [
410
+ "213:156",
411
+ 0
412
+ ],
413
+ "max_objects": 4,
414
+ "model": [
415
+ "213:193",
416
+ 0
417
+ ]
418
+ }
419
+ },
420
+ "213:197": {
421
+ "class_type": "SCAIL2ColoredMask",
422
+ "inputs": {
423
+ "driving_track_data": [
424
+ "213:196",
425
+ 0
426
+ ],
427
+ "object_indices": "",
428
+ "ref_track_data": [
429
+ "213:198",
430
+ 0
431
+ ],
432
+ "replacement_mode": [
433
+ "213:203",
434
+ 0
435
+ ],
436
+ "sort_by": "left_to_right"
437
+ }
438
+ },
439
+ "213:198": {
440
+ "class_type": "SAM3_VideoTrack",
441
+ "inputs": {
442
+ "conditioning": [
443
+ "213:212",
444
+ 0
445
+ ],
446
+ "detect_interval": 1,
447
+ "detection_threshold": 0.5,
448
+ "images": [
449
+ "30",
450
+ 0
451
+ ],
452
+ "max_objects": 4,
453
+ "model": [
454
+ "213:193",
455
+ 0
456
+ ]
457
+ }
458
+ },
459
+ "213:203": {
460
+ "_meta": {
461
+ "title": "Boolean \uff08Replace Mode\uff09"
462
+ },
463
+ "class_type": "PrimitiveBoolean",
464
+ "inputs": {
465
+ "value": true
466
+ }
467
+ },
468
+ "213:212": {
469
+ "class_type": "CLIPTextEncode",
470
+ "inputs": {
471
+ "clip": [
472
+ "213:193",
473
+ 1
474
+ ],
475
+ "text": "human"
476
+ }
477
+ },
478
+ "213:27": {
479
+ "class_type": "KSamplerSelect",
480
+ "inputs": {
481
+ "sampler_name": "euler"
482
+ }
483
+ },
484
+ "213:3": {
485
+ "class_type": "CLIPTextEncode",
486
+ "inputs": {
487
+ "clip": [
488
+ "213:9",
489
+ 0
490
+ ],
491
+ "text": "A young woman with dark hair tied in a neat high bun, with a few loose strands framing her face, is dancing outdoors on a sunny coastal hillside. She has a normal-sized head and a slim face, with no hat, no headwear, and no oversized hair volume. She wears a fitted black long-sleeve crop top with a shoulder cutout, extremely baggy black cargo pants with straps and pockets, and chunky black combat boots. She performs energetic dance moves with one leg lifted and arms extended, moving naturally in front of a large tree, a small white stone house with a terracotta roof, and a bright blue sea under a clear sky with light clouds."
492
+ }
493
+ },
494
+ "213:318": {
495
+ "class_type": "LoraLoaderModelOnly",
496
+ "inputs": {
497
+ "lora_name": "wan2.1_SCAIL_2_DPO_lora_bf16.safetensors",
498
+ "model": [
499
+ "213:154",
500
+ 0
501
+ ],
502
+ "strength_model": 1
503
+ }
504
+ },
505
+ "213:4": {
506
+ "class_type": "CLIPTextEncode",
507
+ "inputs": {
508
+ "clip": [
509
+ "213:9",
510
+ 0
511
+ ],
512
+ "text": ""
513
+ }
514
+ },
515
+ "213:6": {
516
+ "class_type": "VAEDecode",
517
+ "inputs": {
518
+ "samples": [
519
+ "213:19",
520
+ 1
521
+ ],
522
+ "vae": [
523
+ "213:7",
524
+ 0
525
+ ]
526
+ }
527
+ },
528
+ "213:7": {
529
+ "class_type": "VAELoader",
530
+ "inputs": {
531
+ "vae_name": "Wan2_1_VAE_bf16.safetensors"
532
+ }
533
+ },
534
+ "213:75": {
535
+ "class_type": "CLIPVisionLoader",
536
+ "inputs": {
537
+ "clip_name": "clip_vision_h.safetensors"
538
+ }
539
+ },
540
+ "213:76": {
541
+ "class_type": "CLIPVisionEncode",
542
+ "inputs": {
543
+ "clip_vision": [
544
+ "213:75",
545
+ 0
546
+ ],
547
+ "crop": "none",
548
+ "image": [
549
+ "30",
550
+ 0
551
+ ]
552
+ }
553
+ },
554
+ "213:9": {
555
+ "class_type": "CLIPLoader",
556
+ "inputs": {
557
+ "clip_name": "umt5_xxl_fp8_e4m3fn_scaled.safetensors",
558
+ "device": "default",
559
+ "type": "wan"
560
+ }
561
+ },
562
+ "213:95": {
563
+ "class_type": "ModelSamplingSD3",
564
+ "inputs": {
565
+ "model": [
566
+ "213:169",
567
+ 0
568
+ ],
569
+ "shift": 5
570
+ }
571
+ },
572
+ "215": {
573
+ "class_type": "GetVideoComponents",
574
+ "inputs": {
575
+ "video": [
576
+ "155",
577
+ 0
578
+ ]
579
+ }
580
+ },
581
+ "262:216": {
582
+ "class_type": "LoraLoaderModelOnly",
583
+ "inputs": {
584
+ "lora_name": "lightx2v_I2V_14B_480p_cfg_step_distill_rank64_bf16.safetensors",
585
+ "model": [
586
+ "262:319",
587
+ 0
588
+ ],
589
+ "strength_model": 0.8
590
+ }
591
+ },
592
+ "262:217": {
593
+ "class_type": "VAELoader",
594
+ "inputs": {
595
+ "vae_name": "Wan2_1_VAE_bf16.safetensors"
596
+ }
597
+ },
598
+ "262:218": {
599
+ "class_type": "ResizeImageMaskNode",
600
+ "inputs": {
601
+ "input": [
602
+ "262:235",
603
+ 0
604
+ ],
605
+ "resize_type": "scale dimensions",
606
+ "resize_type.crop": "center",
607
+ "resize_type.height": [
608
+ "262:239",
609
+ 1
610
+ ],
611
+ "resize_type.width": [
612
+ "262:238",
613
+ 1
614
+ ],
615
+ "scale_method": "area"
616
+ }
617
+ },
618
+ "262:219": {
619
+ "class_type": "GetVideoComponents",
620
+ "inputs": {
621
+ "video": [
622
+ "155",
623
+ 0
624
+ ]
625
+ }
626
+ },
627
+ "262:220": {
628
+ "class_type": "GetImageSize",
629
+ "inputs": {
630
+ "image": [
631
+ "262:218",
632
+ 0
633
+ ]
634
+ }
635
+ },
636
+ "262:221": {
637
+ "class_type": "CLIPLoader",
638
+ "inputs": {
639
+ "clip_name": "umt5_xxl_fp8_e4m3fn_scaled.safetensors",
640
+ "device": "default",
641
+ "type": "wan"
642
+ }
643
+ },
644
+ "262:222": {
645
+ "class_type": "CLIPVisionLoader",
646
+ "inputs": {
647
+ "clip_name": "clip_vision_h.safetensors"
648
+ }
649
+ },
650
+ "262:223": {
651
+ "class_type": "UNETLoader",
652
+ "inputs": {
653
+ "unet_name": "wan2.1_14B_SCAIL_2_fp16.safetensors",
654
+ "weight_dtype": "default"
655
+ }
656
+ },
657
+ "262:224": {
658
+ "class_type": "ModelSamplingSD3",
659
+ "inputs": {
660
+ "model": [
661
+ "262:232",
662
+ 0
663
+ ],
664
+ "shift": 5
665
+ }
666
+ },
667
+ "262:225": {
668
+ "class_type": "KSamplerSelect",
669
+ "inputs": {
670
+ "sampler_name": "euler"
671
+ }
672
+ },
673
+ "262:226": {
674
+ "class_type": "BasicScheduler",
675
+ "inputs": {
676
+ "denoise": 1,
677
+ "model": [
678
+ "262:216",
679
+ 0
680
+ ],
681
+ "scheduler": "simple",
682
+ "steps": [
683
+ "262:233",
684
+ 0
685
+ ]
686
+ }
687
+ },
688
+ "262:227": {
689
+ "class_type": "SamplerCustom",
690
+ "inputs": {
691
+ "add_noise": true,
692
+ "cfg": [
693
+ "262:234",
694
+ 0
695
+ ],
696
+ "latent_image": [
697
+ "262:259",
698
+ 2
699
+ ],
700
+ "model": [
701
+ "262:224",
702
+ 0
703
+ ],
704
+ "negative": [
705
+ "262:259",
706
+ 1
707
+ ],
708
+ "noise_seed": 1,
709
+ "positive": [
710
+ "262:259",
711
+ 0
712
+ ],
713
+ "sampler": [
714
+ "262:225",
715
+ 0
716
+ ],
717
+ "sigmas": [
718
+ "262:226",
719
+ 0
720
+ ]
721
+ }
722
+ },
723
+ "262:228": {
724
+ "_meta": {
725
+ "title": "Int (Steps)"
726
+ },
727
+ "class_type": "PrimitiveInt",
728
+ "inputs": {
729
+ "value": 6
730
+ }
731
+ },
732
+ "262:229": {
733
+ "_meta": {
734
+ "title": "Float (CFG)"
735
+ },
736
+ "class_type": "PrimitiveFloat",
737
+ "inputs": {
738
+ "value": 1
739
+ }
740
+ },
741
+ "262:230": {
742
+ "_meta": {
743
+ "title": "Int (Steps)"
744
+ },
745
+ "class_type": "PrimitiveInt",
746
+ "inputs": {
747
+ "value": 40
748
+ }
749
+ },
750
+ "262:231": {
751
+ "_meta": {
752
+ "title": "Float (CFG)"
753
+ },
754
+ "class_type": "PrimitiveFloat",
755
+ "inputs": {
756
+ "value": 5
757
+ }
758
+ },
759
+ "262:232": {
760
+ "_meta": {
761
+ "title": "Switch (Model)"
762
+ },
763
+ "class_type": "ComfySwitchNode",
764
+ "inputs": {
765
+ "on_false": [
766
+ "262:319",
767
+ 0
768
+ ],
769
+ "on_true": [
770
+ "262:216",
771
+ 0
772
+ ],
773
+ "switch": [
774
+ "262:255",
775
+ 0
776
+ ]
777
+ }
778
+ },
779
+ "262:233": {
780
+ "_meta": {
781
+ "title": "Switch (Steps)"
782
+ },
783
+ "class_type": "ComfySwitchNode",
784
+ "inputs": {
785
+ "on_false": [
786
+ "262:230",
787
+ 0
788
+ ],
789
+ "on_true": [
790
+ "262:228",
791
+ 0
792
+ ],
793
+ "switch": [
794
+ "262:255",
795
+ 0
796
+ ]
797
+ }
798
+ },
799
+ "262:234": {
800
+ "_meta": {
801
+ "title": "Switch (Steps)"
802
+ },
803
+ "class_type": "ComfySwitchNode",
804
+ "inputs": {
805
+ "on_false": [
806
+ "262:231",
807
+ 0
808
+ ],
809
+ "on_true": [
810
+ "262:229",
811
+ 0
812
+ ],
813
+ "switch": [
814
+ "262:255",
815
+ 0
816
+ ]
817
+ }
818
+ },
819
+ "262:235": {
820
+ "class_type": "ImageFromBatch",
821
+ "inputs": {
822
+ "batch_index": [
823
+ "262:241",
824
+ 1
825
+ ],
826
+ "image": [
827
+ "262:219",
828
+ 0
829
+ ],
830
+ "length": 81
831
+ }
832
+ },
833
+ "262:236": {
834
+ "_meta": {
835
+ "title": "Int (Width)"
836
+ },
837
+ "class_type": "PrimitiveInt",
838
+ "inputs": {
839
+ "value": 896
840
+ }
841
+ },
842
+ "262:237": {
843
+ "_meta": {
844
+ "title": "Int (Height)"
845
+ },
846
+ "class_type": "PrimitiveInt",
847
+ "inputs": {
848
+ "value": 512
849
+ }
850
+ },
851
+ "262:238": {
852
+ "class_type": "ComfyMathExpression",
853
+ "inputs": {
854
+ "expression": "(a // 32) * 32",
855
+ "values.a": [
856
+ "262:236",
857
+ 0
858
+ ]
859
+ }
860
+ },
861
+ "262:239": {
862
+ "class_type": "ComfyMathExpression",
863
+ "inputs": {
864
+ "expression": "(a // 32) * 32",
865
+ "values.a": [
866
+ "262:237",
867
+ 0
868
+ ]
869
+ }
870
+ },
871
+ "262:240": {
872
+ "_meta": {
873
+ "title": "Int (segment index)"
874
+ },
875
+ "class_type": "PrimitiveInt",
876
+ "inputs": {
877
+ "value": 2
878
+ }
879
+ },
880
+ "262:241": {
881
+ "class_type": "ComfyMathExpression",
882
+ "inputs": {
883
+ "expression": "(b - c) * (a - 1)",
884
+ "values.a": [
885
+ "262:240",
886
+ 0
887
+ ],
888
+ "values.b": 81,
889
+ "values.c": 5
890
+ }
891
+ },
892
+ "262:242": {
893
+ "class_type": "CLIPTextEncode",
894
+ "inputs": {
895
+ "clip": [
896
+ "262:243",
897
+ 1
898
+ ],
899
+ "text": "human"
900
+ }
901
+ },
902
+ "262:243": {
903
+ "class_type": "CheckpointLoaderSimple",
904
+ "inputs": {
905
+ "ckpt_name": "sam3.1_multiplex_fp16.safetensors"
906
+ }
907
+ },
908
+ "262:244": {
909
+ "class_type": "SAM3_VideoTrack",
910
+ "inputs": {
911
+ "conditioning": [
912
+ "262:242",
913
+ 0
914
+ ],
915
+ "detect_interval": 1,
916
+ "detection_threshold": 0.5,
917
+ "images": [
918
+ "262:218",
919
+ 0
920
+ ],
921
+ "max_objects": 4,
922
+ "model": [
923
+ "262:243",
924
+ 0
925
+ ]
926
+ }
927
+ },
928
+ "262:245": {
929
+ "class_type": "SCAIL2ColoredMask",
930
+ "inputs": {
931
+ "driving_track_data": [
932
+ "262:244",
933
+ 0
934
+ ],
935
+ "object_indices": "",
936
+ "ref_track_data": [
937
+ "262:246",
938
+ 0
939
+ ],
940
+ "replacement_mode": [
941
+ "262:247",
942
+ 0
943
+ ],
944
+ "sort_by": "left_to_right"
945
+ }
946
+ },
947
+ "262:246": {
948
+ "class_type": "SAM3_VideoTrack",
949
+ "inputs": {
950
+ "conditioning": [
951
+ "262:261",
952
+ 0
953
+ ],
954
+ "detect_interval": 1,
955
+ "detection_threshold": 0.5,
956
+ "images": [
957
+ "30",
958
+ 0
959
+ ],
960
+ "max_objects": 4,
961
+ "model": [
962
+ "262:243",
963
+ 0
964
+ ]
965
+ }
966
+ },
967
+ "262:247": {
968
+ "_meta": {
969
+ "title": "Boolean \uff08Replace Mode\uff09"
970
+ },
971
+ "class_type": "PrimitiveBoolean",
972
+ "inputs": {
973
+ "value": true
974
+ }
975
+ },
976
+ "262:250": {
977
+ "class_type": "VAEDecode",
978
+ "inputs": {
979
+ "samples": [
980
+ "262:227",
981
+ 1
982
+ ],
983
+ "vae": [
984
+ "262:217",
985
+ 0
986
+ ]
987
+ }
988
+ },
989
+ "262:251": {
990
+ "class_type": "ImageFromBatch",
991
+ "inputs": {
992
+ "batch_index": 5,
993
+ "image": [
994
+ "262:250",
995
+ 0
996
+ ],
997
+ "length": 4096
998
+ }
999
+ },
1000
+ "262:252": {
1001
+ "class_type": "ColorTransfer",
1002
+ "inputs": {
1003
+ "image_ref": [
1004
+ "262:253",
1005
+ 0
1006
+ ],
1007
+ "image_target": [
1008
+ "262:251",
1009
+ 0
1010
+ ],
1011
+ "method": "reinhard_lab",
1012
+ "source_stats": "per_frame",
1013
+ "strength": 1
1014
+ }
1015
+ },
1016
+ "262:253": {
1017
+ "class_type": "ImageFromBatch",
1018
+ "inputs": {
1019
+ "batch_index": -1,
1020
+ "image": [
1021
+ "213:6",
1022
+ 0
1023
+ ],
1024
+ "length": 1
1025
+ }
1026
+ },
1027
+ "262:255": {
1028
+ "_meta": {
1029
+ "title": "Boolean (Enable Distill LoRA?)"
1030
+ },
1031
+ "class_type": "PrimitiveBoolean",
1032
+ "inputs": {
1033
+ "value": true
1034
+ }
1035
+ },
1036
+ "262:256": {
1037
+ "class_type": "CLIPVisionEncode",
1038
+ "inputs": {
1039
+ "clip_vision": [
1040
+ "262:222",
1041
+ 0
1042
+ ],
1043
+ "crop": "none",
1044
+ "image": [
1045
+ "30",
1046
+ 0
1047
+ ]
1048
+ }
1049
+ },
1050
+ "262:257": {
1051
+ "class_type": "CLIPTextEncode",
1052
+ "inputs": {
1053
+ "clip": [
1054
+ "262:221",
1055
+ 0
1056
+ ],
1057
+ "text": ""
1058
+ }
1059
+ },
1060
+ "262:258": {
1061
+ "class_type": "CLIPTextEncode",
1062
+ "inputs": {
1063
+ "clip": [
1064
+ "262:221",
1065
+ 0
1066
+ ],
1067
+ "text": "A young woman with dark hair tied in a neat high bun, with a few loose strands framing her face, is dancing outdoors on a sunny coastal hillside. She has a normal-sized head and a slim face, with no hat, no headwear, and no oversized hair volume. She wears a fitted black long-sleeve crop top with a shoulder cutout, extremely baggy black cargo pants with straps and pockets, and chunky black combat boots. She performs energetic dance moves with one leg lifted and arms extended, moving naturally in front of a large tree, a small white stone house with a terracotta roof, and a bright blue sea under a clear sky with light clouds."
1068
+ }
1069
+ },
1070
+ "262:259": {
1071
+ "class_type": "WanSCAILToVideo",
1072
+ "inputs": {
1073
+ "batch_size": 1,
1074
+ "clip_vision_output": [
1075
+ "262:256",
1076
+ 0
1077
+ ],
1078
+ "height": [
1079
+ "262:220",
1080
+ 1
1081
+ ],
1082
+ "length": [
1083
+ "262:220",
1084
+ 2
1085
+ ],
1086
+ "negative": [
1087
+ "262:257",
1088
+ 0
1089
+ ],
1090
+ "pose_end": 1,
1091
+ "pose_start": 0,
1092
+ "pose_strength": 1,
1093
+ "pose_video": [
1094
+ "262:218",
1095
+ 0
1096
+ ],
1097
+ "pose_video_mask": [
1098
+ "262:245",
1099
+ 0
1100
+ ],
1101
+ "positive": [
1102
+ "262:258",
1103
+ 0
1104
+ ],
1105
+ "previous_frame_count": 5,
1106
+ "previous_frames": [
1107
+ "213:6",
1108
+ 0
1109
+ ],
1110
+ "reference_image": [
1111
+ "30",
1112
+ 0
1113
+ ],
1114
+ "reference_image_mask": [
1115
+ "262:245",
1116
+ 1
1117
+ ],
1118
+ "replacement_mode": [
1119
+ "262:247",
1120
+ 0
1121
+ ],
1122
+ "vae": [
1123
+ "262:217",
1124
+ 0
1125
+ ],
1126
+ "video_frame_offset": 0,
1127
+ "width": [
1128
+ "262:220",
1129
+ 0
1130
+ ]
1131
+ }
1132
+ },
1133
+ "262:261": {
1134
+ "class_type": "CLIPTextEncode",
1135
+ "inputs": {
1136
+ "clip": [
1137
+ "262:243",
1138
+ 1
1139
+ ],
1140
+ "text": "human"
1141
+ }
1142
+ },
1143
+ "262:319": {
1144
+ "class_type": "LoraLoaderModelOnly",
1145
+ "inputs": {
1146
+ "lora_name": "wan2.1_SCAIL_2_DPO_lora_bf16.safetensors",
1147
+ "model": [
1148
+ "262:223",
1149
+ 0
1150
+ ],
1151
+ "strength_model": 1
1152
+ }
1153
+ },
1154
+ "263": {
1155
+ "class_type": "GetImageSize",
1156
+ "inputs": {
1157
+ "image": [
1158
+ "215",
1159
+ 0
1160
+ ]
1161
+ }
1162
+ },
1163
+ "264": {
1164
+ "class_type": "ComfyMathExpression",
1165
+ "inputs": {
1166
+ "expression": "ceil(a / (81 - 5))",
1167
+ "values.a": [
1168
+ "263",
1169
+ 2
1170
+ ]
1171
+ }
1172
+ },
1173
+ "265": {
1174
+ "_meta": {
1175
+ "title": "Preview as Text ()"
1176
+ },
1177
+ "class_type": "PreviewAny",
1178
+ "inputs": {
1179
+ "source": [
1180
+ "264",
1181
+ 1
1182
+ ]
1183
+ }
1184
+ },
1185
+ "269": {
1186
+ "class_type": "BatchImagesNode",
1187
+ "inputs": {
1188
+ "images.image0": [
1189
+ "213:6",
1190
+ 0
1191
+ ],
1192
+ "images.image1": [
1193
+ "262:252",
1194
+ 0
1195
+ ]
1196
+ }
1197
+ },
1198
+ "270": {
1199
+ "class_type": "CreateVideo",
1200
+ "inputs": {
1201
+ "audio": [
1202
+ "215",
1203
+ 1
1204
+ ],
1205
+ "bit_depth": 8,
1206
+ "fps": [
1207
+ "215",
1208
+ 2
1209
+ ],
1210
+ "images": [
1211
+ "269",
1212
+ 0
1213
+ ]
1214
+ }
1215
+ },
1216
+ "271": {
1217
+ "_meta": {
1218
+ "title": "Save Video (Final output)"
1219
+ },
1220
+ "class_type": "SaveVideo",
1221
+ "inputs": {
1222
+ "codec": "auto",
1223
+ "filename_prefix": "video/SCAIL2",
1224
+ "format": "auto",
1225
+ "video": [
1226
+ "270",
1227
+ 0
1228
+ ]
1229
+ }
1230
+ },
1231
+ "30": {
1232
+ "class_type": "LoadImage",
1233
+ "inputs": {
1234
+ "image": "reference_streetwear_character.png"
1235
+ }
1236
+ }
1237
+ }