Assemble Narrated Video

Fit N ordered (clip, voice) blocks into one narrated MP4 — audio is never cropped.

Overview

The Assemble Narrated Video node is the finishing step for a narrated-video pipeline: it takes N ordered pairs of (silent clip, voice take) and fits each voice to its clip automatically, then concatenates the fitted blocks into a single MP4. It is audio-led — the voice always plays in full, never trimmed to fit the picture:

All processing is done locally via FFmpeg — there is no external provider call, so pricing is flat per-block rather than per-second of output.

Configuration

Field Type Default Description
Voice Volume Number (%) 100 0–200. Loudness of the voice track in the mix.
Clip Audio Volume Number (%) 40 0–200. Loudness of the clip’s own audio (the “ambient bed”) under the voice.
Max Slowdown Number (×) 1.5 1–2. Cap on how much a clip can be slowed to match a longer voice. Beyond this factor the clip’s last frame holds instead of slowing further.
Trim Start Frames Number (frames) 0 0–120. Trimmed from the start of every clip except the first (interior-join seam trim).
Trim End Frames Number (frames) 0 0–120. Trimmed from the end of every clip except the last (interior-join seam trim).

Trim Start/End Frames mirror Combine Videos’s per-clip trim: the first block’s start edge and the last block’s end edge are always protected, so trimming only ever removes interior-join seams, never the video’s true head or tail.

Inputs & Outputs

Inputs:

Pairing rules:

Outputs: Single assembled video (all blocks concatenated in order).

Credit Cost

Assemble Narrated Video is priced per block, not per second of output (all processing is local FFmpeg — no external provider cost):

credits = 3 + ceil(N / 6)

where N is the number of blocks (video clips) in the run.

Block count (N) Credits
1–6 4
7–12 5
13–18 6
19–24 7
25–30 8
31–36 9
37–42 10
43–48 11
49–54 12
55–60 13

Worked examples: 6 blocks → 4 credits, 24 blocks → 7 credits, 60 blocks (the cap) → 13 credits.

Known gap: the formula above is exact for single-node Run, MCP, and SDK calls (they go through the route’s computeCredits hook). Server-side workflow-engine runs (executing this node as part of a larger workflow) currently reserve the flat 6-block base — 4 credits — regardless of actual block count; the payload builder does not yet build a block-count-scaled composite identifier the way it does for other dynamically priced nodes. This is a tracked billing follow-up, not a docs error.

Fallback & Edge-Case Behaviors

Best Practices

Common Use Cases