Timeline output size for 21:9 and 16:9 clips: default is 1080x1920

Sume Timeline renders 1080x1920 portrait unless you set output.width and height: even integers, 256 to 2160. Sizes that work for 21:9 and 16:9 AI clips.

5 min readSume
All posts

If you join widescreen AI clips with Sume Timeline and set nothing, you get a 1080 x 1920 portrait MP4, so a 16:9 or 21:9 clip is cropped to fill a vertical frame. Set output.width and output.height yourself, as even integers between 256 and 2160. For a 21:9 cut use 1920 x 822, or 2160 x 926 for the largest allowed canvas.

This matters more this month because Kling 4.0 adds 21:9 (the fal explainer, read 2026-10-05) and long clips come in many ratios. Whatever model made the shots, the Timeline canvas is a separate choice.

What the docs set

The Timeline docs say the default output is 1080 x 1920, and that output.width and output.height must be even integers from 256 to 2160. Each slot's fit field decides what happens when a clip does not match the canvas: cover (the default) fills and crops, contain letterboxes, stretch distorts, and blur fills the bars with a blurred copy.

Because the upper limit is 2160 on both edges, the widest canvas you can ask for is 2160 wide. A Seedance 2.5 clip at 1080p 21:9 is 2205 x 945, which is wider and has an odd height, so it will not fit as a canvas; it is scaled to your canvas instead.

Canvas sizes for common ratios

Timeline output.width x output.height, checked against the even-integer 256-2160 rule (read 2026-10-05)
TargetWidth x heightAllowedNote
16:9 HD1920x1080Yesexact ratio
16:9 720p1280x720Yesexact ratio
21:9 wide1920x822Yes822 is even, ratio 2.336
21:9 largest2160x926Yes926 is even, ratio 2.333
21:9 as Seedance 720p1470x630Yesmatches the clip size
21:9 as Seedance 1080p2205x945Noover 2160 and odd height
Default1080x1920Yesvertical 9:16

Fit, cover and transitions

Fit matters as much as size. If you leave a 21:9 clip on the default portrait canvas, cover crops it to a narrow slice from the middle of the frame, which usually cuts off the subject. On a landscape canvas, a 16:9 clip inside a 21:9 canvas under cover loses the top and bottom, so use contain or blur when the edges carry content such as titles.

Transitions follow the same rules whatever the canvas. A fade must be at most one second and at most half the shorter neighbouring slot, and more than eight chained fades are refused with too_many_chained_transitions. Past 12 slots, the default auto strategy renders in chunks.

Choosing a size, then planning

Match the canvas to the clips where you can. Seedance 2.5 at 720p 21:9 makes 1470 x 630 clips, and a canvas of the same size avoids any scaling. For 1080p 21:9 clips, pick 2160 x 926, which scales the clips down by about two percent and, with cover, trims a hair of the frame.

A Timeline render costs $0.10 per output minute, rounded up, and the plan endpoint is unbilled. Run /plan first: it validates the schema and URLs and returns billable_minutes and estimated_cost_usd_micros without a job or a reserve.

Check a size, then build the field

This script checks a size against the rule and builds the output object for a render. It prints the result and does not call the API.

def valid_edge(n):
    return n % 2 == 0 and 256 <= n <= 2160

def output_for(width, height, fps=None):
    if not (valid_edge(width) and valid_edge(height)):
        raise ValueError(f"{width}x{height} breaks the even 256-2160 rule")
    out = {"width": width, "height": height}
    if fps:
        out["fps"] = fps
    return out

print(output_for(1920, 822))
print(output_for(2160, 926, fps=24))
try:
    output_for(2205, 945)
except ValueError as e:
    print("refused:", e)

Putting it in the render

Send the object as output in the render body next to audio and video[], and set fps only if you want to override the source rate; leaving it out matches the sources, which avoids the judder warning output_fps_resamples_sources. Every source URL must already be a Sume-hosted artifact, and render needs an Idempotency-Key. For a quick 21:9 crop of a single 16:9 clip, a one-op video filter is cheaper than a render: it costs $0.02 per encode, and its free /check endpoint validates the operation first. Import any outside file with POST /v1/media-imports before you reference it, because Timeline refuses URLs that are not in your workspace. A three-shot, 30 second cut is one billable minute, so the render itself is $0.10 whatever the canvas size. Larger canvases cost the same as smaller ones; only the output minutes are billed.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume