☕ One coffee = one happy creator: https://buymeacoffee.com/the_frizzy1
Swap one real person in your video for the person in your photo. The room, the camera and the sound stay. One H3 pass over the whole clip, no seams, and it opens in App mode. Built on the idea of OPENjutsu by D3voz, as one ComfyUI workflow.
What you need
✔ Custom nodes — Two packs: comfyui-h3-oneclick-swap (person mask, grey figure) and ComfyUI-Fantastic-MiniMaxH3-PromptBuilder (masked edit latent)
✔ ComfyUI version — 0.43.1 — the version it was tested on
✔ VRAM — 12 GB — tested, not estimated. Peak 11,598–11,731 MiB
✔ System RAM — 32 GB, 22.6–23.3 GB peak in the runs below
✔ Tested on — RTX 3060 12 GB · 32 GB RAM · ComfyUI 0.43.1 · Windows 11
✔ Licence — Workflow MIT · Singularity V2 on MiniMax H3: MiniMax H3 Community License · SAM 3.1 and Qwen3-VL: see their model pages
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. This is the biggest download of any of my workflows. Already running H3? You only need the first file.
Required — 7 files, 53.2 GB.
diffusion_models/
File: Minimax-h3_Singularity_ref2va_v2_pruned_int8.safetensors — 21.0 GB
Download:
https://huggingface.co/WarmBloodAban/Minimax-h3_Singularity/resolve/main/Minimax-h3_Singularity_ref2va_v2_pruned_int8.safetensors
Put it here:
ComfyUI/models/diffusion_models/
loras/
File: minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors — 2.0 GB
Download:
https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/loras/minimax_h3_ref2v_turbo_4step_v0.1_comfyui_bf16.safetensors
Put it here:
ComfyUI/models/loras/
text_encoders/
File: qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors — 15.7 GB
Download:
https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors
Put it here:
ComfyUI/models/text_encoders/
File: qwen3vl_8b_int8_convrot.safetensors — 9.4 GB
Download:
https://huggingface.co/Comfy-Org/Qwen3-VL/resolve/main/text_encoders/qwen3vl_8b_int8_convrot.safetensors
Put it here:
ComfyUI/models/text_encoders/
vae/
File: minimax_h3_video_vae_int8_convrot.safetensors — 2.8 GB
Download:
https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_video_vae_int8_convrot.safetensors
Put it here:
ComfyUI/models/vae/
File: minimax_h3_audio_vae_fp32.safetensors — 0.6 GB
Download:
https://huggingface.co/Comfy-Org/MiniMax-H3/resolve/main/vae/minimax_h3_audio_vae_fp32.safetensors
Put it here:
ComfyUI/models/vae/
checkpoints/
File: sam3.1_multiplex_fp16.safetensors — 1.7 GB
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 at 24 fps with no mirrors, up to 15 s. One sharp photo with a big face on a plain background. Who to replace, which is what SAM 3.1 looks for, e.g. person or bald man: the biggest match is taken. One line describing the new person, hair, beard, glasses, outfit. Seconds, 0 = the whole clip, try 3 s first. Short side 480 for speed or 736 for close-ups. Lip-sync on for talking, off for music. The video lands in ComfyUI/output/H3 simple swap/.
SAM 3.1 tracks the person. Qwen3-VL 8B looks at four frames and writes one line about the framing and the action. The person is turned into a grey figure that keeps pose, hands and mouth but not the face or clothes. H3 then regenerates only the masked area from your photo and the grey figure, in one pass. Settings: ref2v turbo LoRA 1.0, 6 steps, euler / simple, shift 12 / 2, motion reference 512 px, mask grown 4% of the long side.
Why the describer is in here: without that shot line, Singularity V2 ignored the grey figure in my tests and drew a giant head in the middle of the frame. Plain H3 did not. Singularity follows the prompt harder, so the prompt has to say what the shot is.
Speed on my RTX 3060
Cold start, seed 42. VRAM is the whole GPU, RAM is the ComfyUI process.
9.4 s dance clip, full body, whole clip — 480x864, 13:01 wall, 11,622 MiB peak vram, 23.3 GB peak ram
5.2 s desk clip, close-up, lip-sync on — 1312x736, 12:13 wall, 11,731 MiB peak vram, 23.1 GB peak ram
3 s kitchen clip, medium shot — 768x736, 5:18 wall, 11,598 MiB peak vram, 22.6 GB peak ram
Note the system RAM: it peaks at 22 to 23 GB, so 32 GB is what this was tested on.
What did not work
If your clip shows the legs and your photo stops at the waist, add the trousers and shoes to the description, for example "Dark jeans and sneakers." Without them, Singularity made the head too big in my tests.
In full-body clips the head can still run a little large. A sharp photo and a clear outfit line help.
One person per run.
Mirrors and reflections are not handled.
Clips are read as 24 fps.
Get the workflow
Hugging Face mirror: https://huggingface.co/The-frizzy1/The_frizzy1-Workflows/tree/main/workflows/minimax/h3-singularity-swap-12gb
More videos on this stuff: https://www.youtube.com/playlist?list=UUGKDBMhTGqvlBZE9cF5d50Q
Description
v1.0.0 — first release. The README has no changelog.