CivArchive
    SCAIL-2 Character Swap 12GB — turn anyone in your video into your own character, any clip length, sound kept - v1.1.0
    NSFW
    Preview 148886891
    Preview 148886895
    Preview 148886898
    Preview 148886900
    Preview 148886901

    ☕ One coffee = one happy creator: https://buymeacoffee.com/the_frizzy1


    Swap one person in your video for your own character, a person, an animal or a cartoon. Any clip length, the original sound kept, and it opens in App mode. This was my entry for the ComfyUI #OpenSourceHiggsfield challenge, Openjutsu track: OPENjutsu could not turn me into a dog, so I built my own.

    What you need

    ✔ Custom nodes — None. Core ComfyUI only.
    ✔ ComfyUI version — 0.43.1 — the version it was tested on. Older ones may not have Start Loop / End Loop or the SCAIL-2 nodes
    ✔ VRAM — 12 GB — tested, not estimated
    ✔ System RAM — 32 GB tested. The README gives no peak figure for this one
    ✔ Tested on — RTX 3060 12 GB · 32 GB RAM · ComfyUI 0.43.1 (frontend 1.57.4) · Windows 11
    ✔ Licence — Workflow MIT · SCAIL-2 MIT · SAM 3.1: see its model page

    Models to download

    Click a file name to download it. Put it in the folder shown, inside ComfyUI/models/. Every file name was read from the workflow .json, and ComfyUI's Missing models window offers them too. 28.6 GB is a lot to ask, so start the downloads before you start reading.

    Required — 7 files, 28.6 GB. All links checked on 2026-11-03.

    diffusion_models/

    File: wan2.1_14B_SCAIL_2_int8_convrot.safetensors — 16.65 GB (SCAIL-2 model)
    Download:
    https://huggingface.co/Comfy-Org/SCAIL-2/resolve/main/diffusion_models/wan2.1_14B_SCAIL_2_int8_convrot.safetensors

    Put it here:
    ComfyUI/models/diffusion_models/

    loras/

    File: wan2.1_SCAIL_2_DPO_lora_bf16.safetensors — 1.23 GB (quality LoRA)
    Download:
    https://huggingface.co/Comfy-Org/SCAIL-2/resolve/main/loras/wan2.1_SCAIL_2_DPO_lora_bf16.safetensors

    Put it here:
    ComfyUI/models/loras/

    File: lightx2v_I2V_14B_480p_cfg_step_distill_rank64_bf16.safetensors — 0.74 GB (speed LoRA)
    Download:
    https://huggingface.co/Kijai/WanVideo_comfy/resolve/main/Lightx2v/lightx2v_I2V_14B_480p_cfg_step_distill_rank64_bf16.safetensors

    Put it here:
    ComfyUI/models/loras/

    text_encoders/

    File: umt5_xxl_fp8_e4m3fn_scaled.safetensors — 6.74 GB (text encoder)
    Download:
    https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/text_encoders/umt5_xxl_fp8_e4m3fn_scaled.safetensors

    Put it here:
    ComfyUI/models/text_encoders/

    vae/

    File: Wan2_1_VAE_bf16.safetensors — 0.25 GB (VAE)
    Download:
    https://huggingface.co/Kijai/WanVideo_comfy/resolve/main/Wan2_1_VAE_bf16.safetensors

    Put it here:
    ComfyUI/models/vae/

    clip_vision/

    File: clip_vision_h.safetensors — 1.26 GB (character picture)
    Download:
    https://huggingface.co/Comfy-Org/Wan_2.1_ComfyUI_repackaged/resolve/main/split_files/clip_vision/clip_vision_h.safetensors

    Put it here:
    ComfyUI/models/clip_vision/

    checkpoints/

    File: sam3.1_multiplex_fp16.safetensors — 1.75 GB (finds the people)
    Download:
    https://huggingface.co/Comfy-Org/sam3.1/resolve/main/checkpoints/sam3.1_multiplex_fp16.safetensors

    Put it here:
    ComfyUI/models/checkpoints/

    Inputs

    It opens in App mode. Your video and a character picture, front view and full body if you can. Describe the result in one sentence, e.g. A realistic golden retriever dances in a bright room. Then Who is in the clip, e.g. man in red t-shirt, and What your character is, e.g. dog. Which person: 0 = the left one, 1 = the next one, empty = everyone. Seconds: 0 = the whole clip, try 3 s first. The video lands in ComfyUI/output/SCAIL2 swap/.

    SAM 3.1 finds up to 4 people that match "Who is in the clip" and sorts them left to right. One character per run.

    How the long clips work

    SCAIL-2 makes 81 frames at a time. The workflow runs it inside ComfyUI's own Start Loop / End Loop, one segment per round. Every next round starts 76 frames later and gets the last 5 frames of the round before, drops them again and colour-matches to the previous round with reinhard_lab, so a long clip stays one take. The clip is padded to whole segments and cut back at the end.

    Settings I benchmarked and settled on: int8 model, DPO LoRA 1.0, lightx2v distill LoRA 0.8, 6 steps, CFG 1, shift 5, euler / simple, short side 512.

    Speed on my RTX 3060

    • 9.4 s dance clip, whole clip, sound kept — 512x896, 24:09 wall

    That is 24 minutes for 9.4 seconds, so this is not a fast one. Try 3 s first before you run a whole clip. One run is all the README has: there is no VRAM or RAM column because those were not recorded for it.

    What did not work

    • Two characters in one run: left out on purpose, it was not reliable enough in my tests.

    • A face fix pass: same, left out.

    • One character per run is the hard limit, even when SAM 3.1 finds four people and swaps them all.

    Get the workflow

    More videos on this stuff: https://www.youtube.com/playlist?list=UUGKDBMhTGqvlBZE9cF5d50Q

    Description

    v1.1.0. The README does not say what changed from v1.0.0 — see changelog.md in the repo.

    Workflows
    Wan Video 14B i2v 720p

    Details

    Downloads
    17
    Platform
    CivitAI
    Platform Status
    Available
    Created
    11/13/2026
    Updated
    11/14/2026
    Deleted
    -

    Files

    The_frizzy1_scail2-character-swap-12gb_v1.1.0.json