Twitch vertical clips: crop an older 16:9 clip to 9:16
Twitch Dual Format makes vertical clips going forward. For a 16:9 clip without one, crop a 9:16 slice with video-filter: width 0.316, height 1.

To cut a vertical 9:16 slice from a horizontal 16:9 clip, send a crop op to Sume's POST /v1/video-filter with width 0.316, height 1 and x 0.342 for a centered slice. Crop values are fractions of the frame, so the same numbers work at any source resolution.
Twitch details are from its 2026-06-17 Dual Format post, and crop rules from Video filter, read 2026-09-30.
What did Twitch change about vertical clips?
The post says Dual Format lets streamers stream horizontal and vertical at the same time, and that streamers get both a horizontal and a vertical version of their Clips and VODs. The post does not say it adds vertical versions to clips made earlier, so for those you may need to make the vertical cut yourself.
What are the crop numbers for 9:16?
A 9:16 slice of a 16:9 frame is as tall as the frame and 9/16 divided by 16/9 wide, about 0.316 of the width. That is arithmetic, not a Sume or Twitch claim.
| Field | Centered slice | Rule in the docs |
|---|---|---|
x | 0.342 | [0, 1], and x + width ≤ 1 |
y | 0 | [0, 1], and y + height ≤ 1 |
width | 0.316 | [0.05, 1] |
height | 1 | [0.05, 1] |
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/clip.mp4",
"ops": [{ "op": "crop", "x": 0.342, "y": 0, "width": 0.316, "height": 1 }]
}'How do I run it?
Import the clip with POST /v1/media-imports first, because the filter only reads media.sume.com files. The /check route above is free and returns diagnostics without creating a job. When it says valid, send the same body to POST /v1/video-filter with an Idempotency-Key. The source must be 300 seconds or shorter; trim longer recordings first with Video trim.
Does a centered slice always work?
No. A fixed slice cuts off whatever sits at the sides, such as a facecam in a corner. Move x to follow the subject: any value from 0 to 0.684 keeps the slice inside the frame. See crop video without losing quality for how the crop behaves on the pixels.
Sources
Related posts
More in Use cases
- Walmart main image size: 2200x2200 and Sume's multiples of 16
Walmart wants a 2200x2200 px main image under 5 MB. 2200 is not a multiple of 16, so generate 2208x2208 on Sume's gpt-image-2.5, then resize.
- WordPress 7.1 client-side media processing and Sume images
WordPress 7.1 resizes and converts uploads in the browser (default quality 0.82). Sume has no output_compression, so request the format you want.
- AI-made captions on YouTube: is a disclosure label required?
YouTube lists caption creation among edits that need no altered-content disclosure. What that covers, and how a Sume burned-in caption job fits.
- YouTube dynamic thumbnails: generate three options by API
Dynamic thumbnails need three candidate files. Send three Sume image jobs in webhook mode, each with its own Idempotency-Key, and collect the files when done.
Written by Sume