The Nodespell talking-video recipe turns a script and a portrait into a video of that person speaking. Voice Generator reads the script aloud as an audio take, and the Speak Creative Tool animates a still image, or lip-syncs an existing clip, to that audio. Because the voice is its own node, you can change the delivery without regenerating the face, and the other way round.
What you need
- A script, written the way it should be spoken.
- A portrait: a clear, front-facing image of the face, uploaded to Asset Manager or generated in Nodespell. For lip-sync, an existing video clip of the person instead.
- Credits for two runs: Voice Generator and Speak.
Graph at a glance: Prompt (script) → Voice Generator → Speak ← Portrait Asset
Stage 1: Write the script in a Prompt node
Section titled “Stage 1: Write the script in a Prompt node”- Open the Project in Graph mode.
- Press
Taband add a Prompt node. - Double-click the Prompt node and type the script exactly as it should be spoken.
Keeping the script in its own node lets you reuse it and edit it in one place. See Prompts and saved text.
Stage 2: Generate the voice
Section titled “Stage 2: Generate the voice”- Press
Taband add Voice Generator. - Connect the Prompt output to the Voice Generator text input (shown as Text on ElevenLabs TTS V3).
- Select the Voice Generator node. In Parameters, choose a voice. With ElevenLabs TTS V3, for example, choose a Voice and adjust Stability, Style, and Speed. Lower stability sounds more varied; higher stability is steadier.
- Press
Cmd/Ctrl+Shift+Rto run it, or open Run options and choose a batch such as Generate 3 takes to hear several reads. - Play each take, then select Use Take for the best read and choose Keep this take from More take actions.
You can also do this in Create: choose Voice Generator, type the script into the model’s text field, and select Generate. See Voice Generator.
Stage 3: Make the portrait speak
Section titled “Stage 3: Make the portrait speak”- Press
Taband add an Asset node. Right-click it, choose Load Asset, and pick the portrait. - Press
Taband add Speak. - Connect the portrait to the Speak image input (shown as Source image in the Speak controls) and the Voice Generator output to the Speak audio input.
- Select the Speak node. Set Resolution, and adjust the video prompt if the model offers one (P-Video Avatar, for example, starts with “The person is talking.”).
- Run the Speak node. Voice Generator already has a take, so only Speak generates.
See Speak.
Which Speak model fits your source?
Section titled “Which Speak model fits your source?”Speak groups several models that need different inputs. The model picker shows only models that fit the tool.
| Starting point | Example model | Inputs it needs |
|---|---|---|
| A still portrait and your own audio | P-Video Avatar, Omni Human | An image and an audio track |
| A still portrait and a typed script, no separate voice step | P-Video Avatar | An image and a Voice script, with a built-in Voice and Voice Language |
| An existing video of the person | Kling Lip Sync, Sync Lipsync 2 | A video and an audio track |
With P-Video Avatar you can skip Voice Generator entirely: leave Audio empty and type the script into Voice script. The node then needs either audio or a voice script before it can run.
Check the result
Section titled “Check the result”- Play the Speak take with sound and watch the lips on hard consonants such as “p”, “b”, and “m”.
- Check the first and last second: the face should match the portrait and the clip should not cut off a word.
- If the timing is wrong, change the voice take first; it is cheaper than regenerating video and the face can stay the same.
Variations
Section titled “Variations”- Lip-sync existing footage. Switch the Speak node to a lip-sync model such as Sync Lipsync 2 and connect a video instead of an image. Changing the model of a node that has run creates a branch, so the first version stays.
- A consistent presenter. Build the portrait with the consistent character recipe so the same face can speak in several clips.
- Longer scripts. Split the script into several Voice Generator nodes. ElevenLabs TTS V3 accepts previous and next text to keep the delivery consistent across pieces. Then join the Speak clips on the Timeline; see Add a soundtrack to a clip for the Timeline steps.
- Add music under the speech. Place the talking clip and a Music Generator take on the Timeline and lower the music Gain.
Frequently asked questions
Section titled “Frequently asked questions”Do I need Voice Generator to use Speak?
Section titled “Do I need Voice Generator to use Speak?”No. Some Speak models, such as P-Video Avatar, accept a typed Voice script and a built-in voice. Use Voice Generator when you want more control over the voice or want to reuse the same audio.
Why is the Speak node not ready to run?
Section titled “Why is the Speak node not ready to run?”Each Speak model needs specific inputs. P-Video Avatar needs a source image plus either audio or a voice script; lip-sync models need both a video and an audio track.
Can I change the voice without regenerating the face?
Section titled “Can I change the voice without regenerating the face?”The face is regenerated whenever Speak runs, because the mouth must follow the new audio. You can change the voice take freely, but you need a new Speak run to sync to it.
Which languages does the voice support?
Section titled “Which languages does the voice support?”It depends on the model. Check the voice and language options shown in Parameters for the model you picked, or its description in the model picker.
Related
Section titled “Related”- Voice Generator — voices and delivery controls
- Speak — talking-avatar and lip-sync models
- Prompts and saved text — keep the script in a Prompt node
- Takes — choose the best read and the best clip
- Timeline — join several talking clips