Skip to content
Automation
Skill

/wan-multitalk

Build WAN MultiTalk audio-driven talking-avatar / lip-sync video workflows. MeiGen-AI MultiTalk on WAN 2.1 14B I2V via kijai WanVideoWrapper (portrait + audio → lip-synced video)

From plugin
comfyui-mcp
88442 skills4 agents11 commands1 MCP

Claude Code

$ npx -y skills add artokun/comfyui-mcp --skill wan-multitalk --agent claude-code

SKILL.md

wan-multitalk.SKILL.md
name: wan-multitalk
description: Build WAN MultiTalk audio-driven talking-avatar / lip-sync video workflows. MeiGen-AI MultiTalk on WAN 2.1 14B I2V via kijai WanVideoWrapper (portrait + audio → lip-synced video)
globs:
  - "**/*.json"

WAN MultiTalk — Audio-Driven Talking Avatar

Overview

MultiTalk (MeiGen-AI) drives a still portrait's lip-sync and head motion from an audio track. It runs on WAN 2.1 14B Image-to-Video via kijai's ComfyUI-WanVideoWrapper. Wav2Vec speech embeddings condition the WAN sampler so the mouth and expression follow the speech, while the lightx2v step-distill LoRA keeps it to a few sampling steps.

Use it for talking heads, dubbing, and single-speaker avatar clips (~10s at 480p). It is distinct from `wan-animate` (pose/motion-driven character animation). This is audio → lip-sync, not reference-video motion transfer.

Pack: `wan-multitalk` (480p, ~10s). Higher-res/longer variants exist in the source bundle (720p, long-context) as VRAM/duration knobs on the same graph.

Pipeline (node graph)

LoadImage (portrait) ─┐
LoadAudio ─ AudioSeparation ─ AudioCrop ─ DownloadAndLoadWav2VecModel ─ MultiTalkWav2VecEmbeds ─┐
                                                                                                 ▼
WanVideoModelLoader (WAN 2.1 14B I2V GGUF) ─ MultiTalkModelLoader ─ WanVideoLoraSelect (lightx2v)
   + LoadWanVideoT5TextEncoder (umt5) + WanVideoTextEncode + WanVideoClipVisionEncode (clip_vision_h)
   + WanVideoVAELoader ──────────────────────────────────────────────────────────────────────────┘
                                                     ▼
                       WanVideoImageToVideoMultiTalk ─ WanVideoSampler ─ WanVideoDecode ─ VHS_VideoCombine

Key nodes (all kijai WanVideoWrapper unless noted):

  • **DownloadAndLoadWav2VecModel.** Auto-downloads the Wav2Vec speech model on first

run (no manifest entry needed).

  • **MultiTalkWav2VecEmbeds.** Turns the (separated, cropped) speech into the

embeddings that steer the mouth and expression.

  • **MultiTalkModelLoader** + **WanVideoImageToVideoMultiTalk.** The MultiTalk head

on top of the WAN I2V model.

  • **AudioSeparation** and **AudioCrop** (audio-separation-nodes-comfyui). Isolate the

voice from music/noise before embedding and trim the segment you want to animate.

  • **ImageResizeKJv2** (KJNodes), **VHS_VideoCombine** (VideoHelperSuite). Resize and

mux to mp4.

Models

| File | Loader | Folder | |------|--------|--------| | `Wan2.1_14b_Image_to_Video_480p_GGUF_Q8.gguf` | WanVideoModelLoader | `diffusion_models/` | | `WanVideo_2_1_Multitalk_14B_fp8_e4m3fn.safetensors` | MultiTalkModelLoader | `diffusion_models/` | | `umt5_xxl_fp16.safetensors` | LoadWanVideoT5TextEncoder | `text_encoders/` | | `Wan2_1_VAE_bf16.safetensors` | WanVideoVAELoader | `vae/` | | `clip_vision_h.safetensors` | CLIPVisionLoader | `clip_vision/` | | `Wan21_I2V_14B_lightx2v_cfg_step_distill_lora_rank64.safetensors` | WanVideoLoraSelect | `loras/` |

Sources: kijai `Kijai/WanVideo_comfy`, MeiGen-AI `MeiGen-AI/MeiGen-MultiTalk`, GGUF `city96/Wan2.1-I2V-14B-480P-gguf`, and Comfy-Org's repackaged UMT5. See `packs/wan-multitalk/manifest.yaml` (some URLs are best-effort; verify per mirror). Wav2Vec auto-downloads. The bundled WanVideoWrapper loader rejects the scaled_fp8 UMT5 checkpoint; use the UMT5 fp16 file above, not generic `t5xxl_fp16` weights.

Inputs & key parameters

  • Portrait (LoadImage): front-facing, clear face, neutral-ish expression works

best. Resized by ImageResizeKJv2 to the target (480p).

  • Audio (LoadAudio): the speech track. AudioSeparation isolates the voice;

AudioCrop selects the segment (drives clip length).

  • Steps: low (the lightx2v distill LoRA is why; typically ~4 to 8). Raising steps

rarely helps and costs time.

  • BlockSwap (WanVideoBlockSwap): trade VRAM for speed. Increase blocks swapped

to CPU on lower-VRAM cards.

VRAM tiers (from the source bundle's variants)

| Target | Approx VRAM | Lever | |--------|-------------|-------| | 480p 10s | ~8–12 GB | base | | 480p low-VRAM | ~6–8.4 GB | more BlockSwap, GGUF quant, lower quality | | 720p 10s | ~11–16 GB | higher res |

Pair with the VRAM launch-flags guidance (see `troubleshooting`): `--use-sage-attention`

  • appropriate `--*vram` mode; MultiTalk benefits from `--reserve-vram` headroom for

the Wav2Vec + VAE round-trips.

Gotchas

  • **Audio must be voice-isolated** for good lip-sync. Skipping AudioSeparation on a

music-heavy track makes the mouth chase the wrong signal.

  • **One speaker.** This graph is single-speaker; multi-speaker MultiTalk needs the

multi-embed variant (not in this pack).

  • **Wav2Vec first run** downloads a model, so the first render is slower.
  • If lips look under-driven, check the MultiTalk embeds are actually wired into

`WanVideoImageToVideoMultiTalk` (not bypassed), and that the audio isn't silent after AudioCrop.

Sources

  • **Official:** none found.
  • **Empirical:** sampler values, wiring, and prompt notes from working graphs in `packs/` and observed renders; not a vendor prompting guide.
Read more
@artokun
Ships withcomfyui-mcp

<img src="docs/images/demo-poster.jpg" width="760" alt="The Agent panel driving ComfyUI end to end. Click to watch the demo"> The Agent panel driving ComfyUI end to end. It reads what is installed locally, wires the graph, frees VRAM, and runs the render.

88442 skills4 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
884
Star history of artokun/comfyui-mcp on GitHub, a chart by star-history.com

Other skills on comfyui-mcp.

ai-toolkit-trainer

ai-toolkit-trainer

Train custom LoRAs with ostris AI-Toolkit. Covers WAN 2.2/2.1 (people, styles, video motion) and Z-Image (Turbo & Base, low-VRAM…

@artokun@artokunInstall Skill
anima-base

anima-base

Anime/illustration text-to-image (ANIMA 1.0, ~2B Cosmos DiT). Use for anime, manga, illustrated characters; accepts Danbooru tags…

@artokun@artokunInstall Skill
anima-lora-trainer

anima-lora-trainer

Train a custom anime LoRA on the ANIMA base model with Citron's local Gradio trainer (kohya sd-scripts), <6GB VRAM,…

@artokun@artokunInstall Skill
civitai

civitai

Discover Civitai models with the BUILT-IN download_model action:"search_civitai" and install/generate them locally. Find a…

@artokun@artokunInstall Skill
color-correction

color-correction

Diagnose and fix video/image color OBJECTIVELY with the get_image (action:"analyze_color") tool (scopes/stats such as black/white…

@artokun@artokunInstall Skill
comfyui-core

comfyui-core

Core ComfyUI knowledge covering workflow format, node types, pipeline patterns, and MCP tool usage

@artokun@artokunInstall Skill

More skills from other plugins.

agent-builder

agent-builder

Load immediately after an Agent intent, before the first agent_builder_* call. Governs how you create, configure, test, and…

n8n11d209k
@n8n-io@n8n-ioInstall Skill
browser-use

browser-use

Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…

@browser-use@browser-useInstall Skill
agent-browser

agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…

@vercel-labs-2@vercel-labs-2Install Skill
add-anydoc

add-anydoc

Add local office-document-to-Markdown conversion to NanoClaw agent containers with the pinned Firecrawl AnyDoc CLI. Use when…

@nanocoai@nanocoaiInstall Skill

Questions about wan-multitalk.

Which coding agents can use wan-multitalk?
wan-multitalk installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.