Media tools
Sume media tools by API: trim, filter, captions, frames, inspect, speech-to-text, upscaling, background removal, transitions, and Timeline assembly.
Start with Video editing API limits: Sume media tool caps in one table

Luma Ray3.2 length by frame rate (24/30/60 fps) and Sume's fps
Luma lists Modify Video at 20 s for 24 fps, 15 s for 30 fps and 7 s for 60 fps. Sume's video-trim and timeline tools output 24, 25, 30 or 60 fps.

Shorts thumbnail 2160x3840 hits GPT Image 2.5's 8,294,400 px cap
YouTube's Shorts thumbnail size, 2160x3840, is exactly 8,294,400 pixels, the top of Sume's GPT Image 2.5 custom range. 1080x1920 is not legal; 1088x1920 is.

Trending videos search for holiday hooks: TikTok metadata only
Sume's trending-videos search returns TikTok video metadata for hook research at $0.10 per call; it does not return downloadable files.

Upload 15 Shorts at once in Studio: probe every file first
Studio takes up to 15 Shorts per upload, each up to 3 minutes and square or vertical. Check duration and frame shape with video-inspect before you queue.

YouTube A/B tests skip Shorts: make two caption-style variants
YouTube's A/B tool does not cover Shorts. Re-burn one Short in a second caption style with source_caption_id, then publish both and compare by hand.

YouTube Create drops library music past 15 seconds: bring a bed
Create's Audio Library music is removed on exports over 15 seconds. Generate a bed with Music Router and lay it under your Short with a Timeline soundtrack.

YouTube Shorts 2x speed: check your script pace with video-inspect
Viewers can now double Shorts playback speed. Measure the words per minute of your Sume clip from its transcript so the 2x version stays understandable.

YouTube Shorts Clear screen mode: check your burned-in text
Clear screen hides icons and text from the Shorts playback view. How to pull stills from a Sume clip and check which words stay in the picture.

YouTube Shorts tap to mute: sound-off captions from cues
A tap now mutes a Short. If your Sume clip has music only or a silent video, burn authored cues with video-captions so the message still reads.

YouTube wants JPG or PNG; Recraft V4 on Sume returns WebP only
YouTube's thumbnail page names JPG or PNG. Recraft V4 on Sume lists only WebP, so convert it with Pillow and stay under the 2 MB mobile cap.

Cut a 3-minute Reel into a 60-second teaser with video trim
Video trim returns a new MP4 for $0.02: start plus duration, exact or keyframe precision, optional audio drop. How to cut a teaser and re-base your timings.

Dim bright footage before burning Reel captions: video filter 0.45
A dim op multiplies luma by an amount between 0 and 1 for $0.02, and the check call is free. Use it to keep captions legible on bright clips, then caption.

How-to Reel: burn numbered step captions with authored cues
A 45-second tutorial Reel with Step 1 to Step 5 on screen: pass authored cues to Sume video captions, skip speech-to-text, and pay $0.20 for up to 60 seconds.

Product still on the top half of a Reel: Timeline compose stack
Timeline compose stacks one still and one video in a 1080x1920 shot for $0.02 flat: ratio 0.1 to 0.9, overlay position, and the 300-second ceiling.

Pull the voiceover out of a Reel MP4: audio detach, wav or mp3
To reuse the voice from a finished Reel, detach its audio for $0.01: wav by default, mp3 optional, a range up to 900 s, and a clean error for silent files.

Reel music bed: prompt section markers for a 3-minute Reel
Music Router rejects a duration field, so steer length in the prompt. Write [0:00-0:30] section markers for a 3-minute Reel bed and loop it in Timeline.

Reel voiceover too long for 60 seconds? Speed setting and re-render
A 68-second TTS read against a 60-second Reel: Sume accepts generation_config.speed from 0.6 to 1.5. The arithmetic, and when a rewrite is better.

A series theme from one Lyria track, ducked under every episode
Generate a theme once with Music 1.0 on Lyria 3.5, then reuse it under each episode with Timeline 1.0 soundtrack, loop, fade_out and duck_db. Request body.

Split one voiceover into six beat files with Timeline audio split
Slice a 180-second voice file into up to 20 ranges for $0.01 flat, then use each file as a beat of a Reel. Ranges can overlap and the last can be open-ended.

Video filter caps sources at 300 s: handling 5-minute TikTok videos
A 5-minute TikTok episode sits exactly on Sume video filter's 300 s source limit. Why /check passes, where the worker refuses, and how to split first. Costs.

Which Sume media tools take a 3-minute Reel and a 5-minute TikTok
A 3-minute Reel is 180 s and a 5-minute TikTok is 300 s. Which Sume media tools accept that source length, which stop short, and the one fix for each limit.

Crop 16:9 to 9:16, 1:1, 4:5, 3:4 and 2:3: video-filter fractions
Video filter crop takes fractions of the frame. For a 16:9 source, a full-height crop is width 0.3164 for 9:16, 0.5625 for 1:1 and 0.45 for 4:5. $0.02 each.

audio_detach_range_empty and detach_start_past_source: what they mean
audio_detach_range_empty: range.end is not after start, or span over 900 s. detach_start_past_source: start is past the source length.

audio_spine_low_fidelity: why a 16 kHz transcript wav warns
Sume warns audio_spine_low_fidelity when a render's audio.url is a 16 kHz mono speech-to-text wav. Detach the track at its source rate instead.

Why did my crossfade render as a hard cut in Sume Timeline?
The clip after a fade needs duration plus the fade length from its source. If the file is shorter, Timeline cuts instead and warns transition_downgraded_to_cut.

Estimate a Sume timeline render before paying: the unbilled plan call
POST /v1/timeline-1.0/plan compiles your document and returns duration, billable minutes and an estimate without creating a job or reserving credits.

Why is my 0.3 s fade 0.32 s? Timeline snaps transitions to frames
Timeline rounds a fade to whole frames, at most half a frame off: 0.3 s is 0.2917 s at 24 fps, 0.32 s at 25, exact at 30. Warning: transition_snapped_to_frame.

Dry-run a Sume timeline and video filter in Python before paying
POST /v1/timeline-1.0/plan and POST /v1/video-filter/check are free. This Python script calls both and prints the estimate.

Short clip in Timeline: when does it loop and when does it freeze?
render.pad_mode auto loops a short source only when the shortfall is over 0.25 s and the clip is at least 0.5 s long. Otherwise it holds the last frame.

Sume media import returns unsupported_platform for a YouTube link
POST /v1/media-imports takes public TikTok and Instagram URLs only. A YouTube link returns 422 unsupported_platform; upload the file you own instead.

Photo in a Timeline slot ignores source_in and motion: why
A still has no time axis, so Timeline holds it for the whole slot and warns still_source_in_ignored or motion_ignored. Real camera moves need a video clip.

video-captions alignment_reason: the six values explained
Failed script_text caption jobs may carry an alignment_reason such as invalid_stt_span or overlapping_stt_spans. Six values are documented in the schema.

Sume STT words_truncated: the 20,000-word cap and what it means
Sume STT caps words[] at 20,000 entries and sets words_truncated and words_total if that is reached. A 600-second job should stay well under the cap.

Timeline render fails bgm_source_not_found: fix a dead soundtrack URL
bgm_source_not_found means the soundtrack URL answered 404 or 410. It is not a missing clip. Re-upload the track or omit soundtrack, then retry the render.

Trimmed video looks squashed: video-trim output width and height
Setting both output.width and output.height on video-trim scales to exactly that box and distorts the picture. Set one side, or crop and fit in a Timeline.

Sume TTS segmentation 400: segmentation_requires_word_timestamps
Asking for segmentation.mode sentence without timestamps.words set to true is refused with segmentation_requires_word_timestamps. Turn word timestamps on.

Why is my crop 606 px wide, not 607? Video filter even rounding
Video filter crop fractions are floored to even pixels so the yuv420p encode stays valid: 0.316406 of 1920 px is 606 px, not 607.5.

Why does my video freeze while the voiceover keeps playing?
Timeline holds the last frame when slots end before audio.duration_seconds, or leave a gap. Plan reports it free as video_coverage_shorter_than_audio.

Why does the weight-shift caption style look flat with another font?
weight-shift and korean-ad animate the wght axis, which only Pretendard has. With any other font they keep colour and scale emphasis but lose the weight travel.

Mailgun's 25 MB message cap: fit a video clip or send a link
Mailgun supports messages up to 25 MB in total, attachments included. Use Sume video trim to cut a clip under that, or send a link when the video is longer.

SES message size: 10 MB on v1, 40 MB on v2 - what a video clip needs
Amazon SES caps a message at 10 MB on v1 and 40 MB on v2 or SMTP, after base64. Size a Sume video trim to fit and avoid the throttled large-message path.

Gmail's 25 MB attachment limit and the Drive link fallback for video
Gmail personal accounts stop at 25 MB per message and turn bigger attachments into Drive links. Trim and downscale a clip with Sume to keep it attached.

Check a 30-minute render before upload: 24 stills and a transcript
Video Inspect reads up to 1,800 seconds, returns up to 24 stills per call and a transcript at $0.01 per audio minute. A QA pass before a long upload.

Cloudflare transforms: 100 MB, 10 min input vs Sume trim's 1800 s
Cloudflare Media Transformations takes input up to 100 MB and 10 minutes and returns 1-60 s. Sume trim reads sources to 1800 s and cuts up to 900 s.

Cloudflare's four transform modes vs Sume frames, detach and trim
Cloudflare Media Transformations has video, frame, spritesheet and audio modes. In Sume these are video trim, video frames and audio detach, each billed apart.

Mux's thumbnail rate limit vs Sume video frames: 24 stills per call
Mux limits thumbnails to 1 per 10 seconds of duration per asset. Sume video frames takes up to 24 times per call. Here is how to plan a contact sheet.

Notion's free-plan 5 MB file limit: a short Sume clip or a link
Notion's help page says free-plan uploads must be under 5 MB. A video that long needs a short Sume trim at a smaller size, or a link instead of an upload.

Airtable's 5 MB direct upload vs attaching a Sume clip by URL
Airtable takes file bytes up to 5 MB for a direct attachment upload and points larger files at public URLs. A Sume clip at a media.sume.com URL fits that route.