ComfyUI Node

KlingAI Avatar 2.0 Pro

A talking head from one photo and an audio file

By Runware·Created 2 years ago·Updated about a month ago· 140
KlingAI Avatar 2.0 Pro
  • image
  • video
audio
positivePrompt
numberResults1
safetyfalse
safety.checkContentfalse
safety.modefast
ttlfalse
ttl_value60
outputFormatMP4
outputQuality95

Feed it a photo of a person, feed it an audio file, and it returns video of that person talking - mouth synced to the audio, head moving naturally. That's the whole node. Kling AI Avatar 2.0 Pro is the quality tier of Kuaishou's talking-head model, and on Runware it's the rare video node with two required inputs: image and audio. No prompt needed, though one is there if you want it.

Why you'd reach for it

Digital humans are usually a local headache - a voice clone here, a face-animator there, a pile of custom nodes that all fight each other. Avatar 2.0 Pro collapses it into one cloud call: your still frame becomes the actor, your audio becomes the performance. For explainers, character dialogue, dubs, or just a fun way to make a portrait talk, it's dramatically simpler than the local alternative, which barely exists at this quality.

How it works

The two required inputs take different shapes, so pay attention. image is an IMAGE tensor - wire in Load Image (or any image output), and the pack base64s it to a PNG data URI. audio is a string: a URL, a local file path, or a Runware media UUID. Both ride to the Runware REST API via the runware SDK, and the synced clip returns as a native ComfyUI VIDEO object. The Pro tier is where lip-sync fidelity and head motion look genuinely natural.

Inputs that matter

  • image (IMAGE) - required. A clear, front-facing photo of the person; quality in, quality out.
  • audio (STRING) - required. URL, path, or UUID of the speech/audio track.
  • positivePrompt - optional. Nudge the style, expression, or delivery; the model works without it.
  • numberResults (1–4) - variations, each a separate cost.
  • outputFormat (MP4/WEBM/MOV), outputQuality (95).
  • safety group - content-check toggles; off by default (model default).

Output: one video socket (VIDEO type).

Install and the API key

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

Restart ComfyUI (or Runware via ComfyUI Manager). Key from the Runware dashboardSettings → Runware API key, RUNWARE_API_KEY, or runware auth login.

Gotchas

  • The audio input is the trap: it's a string (URL/path/UUID), not an AUDIO tensor. Don't try to wire a sound node's output into it.
  • The image input is the opposite - it must be a tensor, so Load Image first.
  • Faces: a well-lit, straight-on photo gives dramatically better sync than a side profile. Garbage in, uncanny valley out.
  • It's paid, closed, and per-run: Kuaishou's model, rented by the clip, with the cost printed on the node title bar.

Avatar 2.0 Pro is the "wow, that actually worked" node - one photo, one audio file, a synced talking clip with zero local AI machinery in the way.

CategoryRunware/Video/klingai

Inputs (11)

NameTypeDefaultDescription
imageIMAGE
audioSTRINGAudio input (UUID or URL).
positivePromptoptSTRINGText prompt describing elements to include in the generated output.
numberResultsoptINT11–4Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
safetyoptBOOLEANfalseEnable to set safety. Off uses the model's default.
safety.checkContentoptBOOLEANfalseEnable or disable content safety checking.
safety.modeoptCOMBOfastSafety checking mode for video generation.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOMP4File format for the generated video.
outputQualityoptINT9520–99Compression quality of the output. Higher values preserve quality but increase file size.

Outputs (1)

NameTypeDescription
videoVIDEO