Video Assembly

video-assembly

Sets the ordered list of video and image segments to assemble into one timeline around the main asset.

video-assembly[N] accepts an absolute or relative URL, or the reserved token main. Segments are indexed from 0 to 19 (up to 20 segments total, counting the main video). Sparse indices compact in order.

ValueEffect
URLA video or image segment to include at position N
mainThe URL-path asset; if omitted, the main plays first and segments append after it

The main token. If no segment has the value main, the main video plays first and all indexed segments append after it. To build a custom order (intro → main → outro), use video-assembly[0]=intro.mp4, video-assembly[1]=main, video-assembly[2]=outro.mp4.

Still images as segments. PNG, JPEG, WebP, AVIF, HEIC, BMP, and TIFF files may appear as segments. A still photo may also anchor the URL path for a pure slideshow with no video file at all — the still joins as an image segment.

Base64 twin. video-assembly64[N] accepts a Base64-encoded URL for segment URLs that contain reserved characters.

Scope

Assembly applies to all outputs: fm=mp4/webm, gif, hls/dash, thumbnails, spritesheets, and audio-only m4a/mp3/wav (which carry the assembled soundtrack). A video-assembly[N] list alone does not trigger a render — also pass fm=mp4 or another output format.

Long assemblies route to the async queue via the standard long-video threshold (423) — poll the same URL until the finished render is served.

Segment failure

If a segment URL cannot be fetched, probed, or is not a decodable video or image, the render fails with 424 Failed Dependency. Assembly refuses to silently drop content.

A render that uses assembly reports video-assembly in X-Imgix-Video-Operations.