Square video to 9:16: crop 0.5625 of the width, or fill with blur?

A 1:1 clip becomes 9:16 by cropping 0.5625 of its width (x 0.2188) or by letting Timeline fit it with blur. How to choose, with the numbers.

5 min readSume
All posts

To convert a 1080x1080 square clip to 9:16 you have two honest options. Crop: keep the full height and 0.5625 of the width (x = 0.2188), which discards 43.75% of the frame. Or fit: leave the square whole and let Timeline 1.0 place it on a 1080x1920 canvas with fit: "blur", which fills the space above and below with a blurred copy. Crop suits a centered subject; fit suits a square that has text or edges you cannot lose.

Crop: the arithmetic

A 9:16 strip from a 1080 px tall frame is 607.5 px wide, and 607.5 / 1080 = 0.5625, exactly 9/16. Centered, x = 0.21875, written 0.2188 here. The compiler floors to even pixels, so the strip is 606x1080 and the offset is 236.

Crop program for a 1080x1080 source (arithmetic from the video-filter docs, read 2026-10-05)
ItemValue
Source frame1080x1080 (1:1)
crop x / y0.2188 / 0.0
crop width / height0.5625 / 1.0
Compiled crop (rounded down to even pixels)606x1080 at x=236, y=0
Scale to 1080x19201.782x wide, 1.778x tall
Share of the source pixels keptabout 56%

Fit: what the other option does

Timeline's video[].fit takes cover (the default), contain, stretch or blur. cover on a square source into a 1080x1920 frame is itself a crop, the same loss as above. contain leaves empty bars, which look unfinished on a vertical feed. blur keeps the whole square sharp in the middle with a soft backdrop. stretch distorts and is almost never what you want.

A square clip at 1080 px wide occupies only 1080 of the 1920 rows, so with blur you get 420 rows of backdrop above and 420 below. Captions placed in the lower third will sit on the blur, not on your picture, which is usually fine.

Crop request

The crop request below is the same shape as every video-filter call: check first, then encode.

At the documented public rate the encode is $0.02 per job and the check is free; confirm the live rate in GET /v1/catalog. The clip must already be a media.sume.com file of your workspace, so import it first with POST /v1/media-imports, and send an Idempotency-Key on the encode.

# 1) free contract check, no job, no charge
curl -X POST https://api.sume.com/v1/video-filter/check \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://media.sume.com/artifacts/artf_demo/square.mp4",
    "ops": [{"op":"crop","x":0.2188,"y":0.0,"width":0.5625,"height":1.0}],
    "filtergraph": "scale=1080:1920,setsar=1"
  }'

# 2) same body to /v1/video-filter, with an Idempotency-Key header, to encode

How to decide

  • Face or product centered, nothing within 22% of either side edge: crop.
  • Text, logo or a chart touching the sides: fit with blur, or crop and re-lay the text as captions.
  • Mixed content in one video: crop per shot with separate trims, then join with Timeline.
  • Not sure: render both; each is a cheap job and neither changes the source.

What each route costs

Both routes are one job, so the choice is about the picture, not the bill. Video filter is $0.02 per encode and its check is free. Timeline 1.0 is $0.10 per started output minute, so a 20-second square clip rendered with blur is one started minute. Confirm both rates in GET /v1/catalog, because the docs give them as the public rates.

If you are unsure, run the free POST /v1/video-filter/check for the crop and POST /v1/timeline-1.0/plan for the fit; neither creates a job. Compare one still from each result with video frames before you commit to either.

A final tip for square sources: if the clip came from a 1:1 social post with captions already burned into the bottom, a center crop keeps the middle 56% of the width and may cut those captions at the sides. In that case the blur-fit route is the only way to keep them, or you can re-render from a clean source and caption it again for 9:16.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume