# Assemble Narrated Video

> Fit each voice take to its video clip and join the blocks into one narrated MP4. Short voices are centered, long voices slow the clip, and no voice is ever cut.

Source: https://nodaro.ai/docs/nodes/video/assemble-narrated-video

The **Assemble Narrated Video** node is the finishing step of a narrated video. It takes ordered pairs of a silent clip and a voice take, fits each voice to its clip, and joins the fitted blocks into one MP4. The node is audio-led: every voice take plays in full and is never cut to fit the picture.

- Found in: Video › Cut & Assemble
- Output: video
- API type: `assemble-narrated-video`

## When to use it
- Build a narrated explainer, with one silent clip and one voice take for each beat of the script.
- Make a product walkthrough where the script is recorded separately from the footage.
- Fit clips and voice takes that were made independently, without editing a timeline by hand.

## How each block is fitted

- **The voice is shorter than the clip, or as long.** The clip plays as it is. The voice is centered in the block, with silence on both sides, and mixed over the clip's own sound at a lower volume.
- **The voice is longer than the clip.** The clip slows down to the length of the voice, up to the **Max Slowdown** factor. If the voice is still longer, the clip's last frame holds for the rest of the voice, so the voice always finishes over picture.
- **The block has no voice.** The block passes through unchanged, with its own sound.
- **The clip has no sound.** With a voice, the voice plays alone. Without a voice, the block gets a silent track, so the final join never breaks.

## Quick start
### Add the node

Press Tab on the canvas and choose **Video › Cut & Assemble › Assemble Narrated Video**.

### Connect the clips

Wire the video clips into the **Clips** input, in playing order. Each clip starts one block.

### Connect the voice takes

Wire the voice takes into the **Voices** input, in the same order. The first voice take goes with the first clip, the second with the second, and so on.

### Run it

Click **Run** on the node. The narrated video appears on the node.

Workflow: Each script beat becomes a silent clip and a voice take, and Assemble Narrated Video fits every voice to its clip and joins the blocks in order.

- List → Generate Video (prompt)
- List → Text to Speech (prompt)
- Generate Video → Assemble Narrated Video (clips)
- Text to Speech → Assemble Narrated Video (voices)

## Inputs
| Input | Accepts | What it does |
| --- | --- | --- |
| **Clips** | Video nodes, such as Generate Video and Upload Video | The ordered video clips, one per block. At least 1 and up to 60. |
| **Voices** | Audio nodes, such as Text to Speech and Upload Audio | The ordered voice takes, one per block, paired to the clips by position. |

The pairing rules:

- **Fewer voice takes than clips is fine.** The clips at the end that have no voice take pass through unchanged.
- **More voice takes than clips is refused** before the run starts, with the message "N voice clips but only M video clips — connect at most one voice clip per video clip". Extra voice takes are never dropped silently.

The output, **Video**, is the single assembled video, with all the blocks in order.

## Settings
| Setting | What it does |
| --- | --- |
| **Voice Volume (%)** | The loudness of the voice in the mix, from 0 to 200. The default is 100. |
| **Clip Audio Volume (%)** | The loudness of the clip's own sound under the voice, from 0 to 200. The default is 40. |
| **Max Slowdown** | How much a clip may slow down to match a longer voice, from 1 to 2 times. The default is 1.5 times. Beyond this factor, the last frame holds instead. |
| **Trim each clip start (frames, except first)** | Frames removed from the start of every clip except the first, from 0 to 120. The default is 0. |
| **Trim each clip end (frames, except last)** | Frames removed from the end of every clip except the last, from 0 to 120. The default is 0. |

The trims work like the frame trims of [Combine Videos](https://nodaro.ai/docs/nodes/video/combine-videos). They only remove frames at the joins between blocks: the first block's start and the last block's end are never trimmed.

## Credits
Assemble Narrated Video is priced per run by the number of blocks, not by the length of the video: a base amount, plus one step for every 6 blocks. The node processes the video locally, with no AI model, and shows the price before you run.

## Tips
- **Keep the clips free of speech.** The voice track carries all the narration. A talking mouth in a slowed-down clip would not match its own words.
- **Use one voice.** Keep the same voice for every block, so the narrator sounds consistent.
- **Leave the trims at 0 for plain cuts.** Set **Trim each clip start** and **Trim each clip end** only when the clips continue each other and their seams need cleaning.
- **Keep the background low.** The default **Clip Audio Volume (%)** of 40 keeps the clip's own sound from competing with the voice.

## From the API
The MCP `assemble_narrated_video` tool and `POST /v1/assemble-narrated-video` take a list of 1 to 60 blocks, each with a video and an optional audio track, plus the volume, slowdown and trim settings above. The `video-explainer` content recipe drives this node from script to finished video. See the [MCP tools](https://nodaro.ai/docs/mcp/tools) and [Content recipes](https://nodaro.ai/docs/mcp/recipes).

## Frequently asked questions

### What happens when a voice take is longer than its clip?

The clip slows down to match the voice, up to the Max Slowdown factor, 1.5 times by default. If the voice is still longer, the clip's last frame holds until the voice ends.

### Can a block have no voice?

Yes. Connect fewer voice takes than clips, and the extra clips at the end pass through unchanged, with their own sound.

### Why is my run refused with the message "voice clips but only video clips"?

You connected more voice takes than video clips. Each clip takes at most one voice take, so remove the extra voice takes or add clips.

### How many blocks can one run assemble?

From 1 to 60 blocks. Each block is one video clip and, optionally, one voice take.

### Should my clips contain speech?

No. Keep the clips free of speech, because the voice track carries the narration. A talking mouth in a slowed-down clip would not match its own words.
