Make the spoken caption word bigger or bolder: typography ranges
Sume's design.typography sets weight, spoken-word scale, size, safe width and outline width for burned-in captions. Here are the exact ranges and the 400s.

To make the spoken word in burned-in captions bigger or bolder, send a design.typography object on POST /v1/video-captions. active_scale (0.5 to 2) scales the word being spoken, active_weight (100 to 1000) sets its font weight, and stroke_width_px (0 to 24) sets the outline. Sume merges each field over the style you picked, so one key changes one thing and the rest of the look stays the same.
A value outside its range is rejected with a 400 before the job is accepted, so a bad look costs nothing.
Which typography fields can I change?
The design object has five groups: colors, typography, placement, phrasing and motion. This post is about typography, which has six numeric fields. The request below keeps the style black-outline and only makes the spoken word 30 percent larger with a thicker outline.
Sume's docs describe font_size_ratio as a share of a 1080-wide frame, before the renderer's fit step shrinks a long line. That means a very large value can still be shrunk to fit; treat it as an upper bound on size, not a guarantee.
| Field | Minimum | Maximum | What it changes |
|---|---|---|---|
base_weight | 100 | 1000 | Font weight of words not being spoken |
active_weight | 100 | 1000 | Font weight of the spoken word |
active_scale | 0.5 | 2 | Size of the spoken word relative to the rest |
font_size_ratio | 0.01 | 0.4 | Base size as a share of a 1080-wide frame |
safe_width_ratio | 0.3 | 1 | How much of the frame width a line may use |
stroke_width_px | 0 | 24 | Outline thickness where the style draws one |
curl -X POST https://api.sume.com/v1/video-captions \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: caption-typography-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/example/clean.mp4",
"style": "black-outline",
"design": {
"typography": { "active_scale": 1.3, "stroke_width_px": 10 }
}
}'Why does a heavier weight do nothing on my font?
Weight changes need a variable font. Sume's docs say weight-shift and korean-ad animate the wght axis, and only Pretendard has that axis. On a static face, those styles keep their color and scale emphasis but lose the weight travel. If you set active_weight and see no difference, check which font the style is using before you change the number.
Scale does not depend on the axis, so active_scale is the dependable way to make the spoken word stand out on any face.
Which styles accept design at all?
Every style except two. punch and tiktok-green still render on a path that reads none of the design tokens, so Sume refuses a design sent with them instead of accepting it and ignoring it on a clip you pay for. If you want custom typography, choose a style such as slam for Latin text or one of the Hangul styles for Korean speech.
Korean text has its own rule: slam, punch and tiktok-green return caption_hangul_text_latin_style for Hangul. Use black-outline or another Hangul style, then tune the typography.
What does an override cost?
Nothing extra. Each accepted standalone caption job reserves and captures $0.20 of Sume usage for a video of up to 60 seconds under the current fixed estimate, and a design override does not change that. Check GET /v1/catalog for the live price.
To try several looks on one clip, send source_caption_id instead of video_url. Sume reuses the stored word timings, so speech-to-text does not run again, though each restyle is still a render and still priced as one.
How do I check the result?
Poll GET /v1/jobs/{id}/status, then read the captioned video_url from the job result or from GET /v1/video-captions/{id}. Look at a frame at phone size: heavy outlines and large scales that look fine on a desktop preview can crowd a small screen. If a line wraps badly, adjust phrasing.max_words rather than shrinking the type.
Sources
Related posts
More in Media tools
- Reduce green spill on a subject: despill in Sume video-filter
To remove a green cast from a person shot against a green backdrop, send despill=type=green:mix=0.6 to Sume's video-filter. One $0.02 job per clip.
- Swap the colours of a video by API: the swapuv chroma-swap look
swapuv exchanges a clip's U and V chroma channels and leaves brightness alone, a quick surreal colour look. How to run it in Sume's video filter.
- Turn a video into a line drawing: edgedetect in video-filter
Send edgedetect=low=0.08:high=0.3 to Sume's video-filter for an outline look on any hosted clip. Add negate for dark lines on white. One $0.02 job.
- video-inspect fast seek: sample_times vs requested_times on a Short
Why the still from a fast video-inspect can be earlier than the time you asked for, which field tells you the real instant, and when to use precise instead.
Written by Sume