One master ad, three cutdowns for 6 cents with video-trim

Cut a 6, 9 and 15 second version of one master with Sume video-trim at $0.02 a job: 3 x $0.02 = $0.06. Exact vs keyframe precision, and what to check.

4 min readSume
All posts

Sume's video trim cuts one range [start, end) out of a hosted clip into a new MP4 for $0.02 per job, so three cutdowns of one master, 6 s, 9 s and 15 s, cost 3 x $0.02 = $0.06. Send start and only one of end or duration; duration runs from 0.2 to 900 seconds. The source is never changed, and there is no provider inference, only worker ffmpeg.

Cutdowns are the usual holiday need: a short bumper, a mid-length social cut and a full spot, all from the same shoot.

Three jobs, three keys

Import the master first (POST /v1/media-imports), because trim reads only a media.sume.com artifact of your workspace. Each trim needs an Idempotency-Key. A key like master-bf26-6s ties the request to the cut it makes.

Three cutdowns from one master (read 2026-10-04, docs rate $0.02 per job)
CutstartdurationCost
Bumper26$0.02
Social19$0.02
Spot015$0.02
Total$0.06

Exact or keyframe

The default precision: exact is a frame-accurate re-encode (libx264, yuv420p), and the audio is kept and remuxed as AAC unless you pass audio: drop. precision: keyframe is a stream copy: the cut can start a GOP early, so re-base your times against actual_start_seconds in the result. Use exact for ads, where a cut a few frames early shows the previous shot.

curl -X POST https://api.sume.com/v1/video-trim \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: master-bf26-6s" \
  -d '{
    "video_url": "https://media.sume.com/artifacts/artf_demo/talk.mp4",
    "start": 2,
    "duration": 6
  }'

Check the results

Poll GET /v1/jobs/:id/status, then GET /v1/jobs/:id/result, which returns kind: video_trim with a new video_url, duration_seconds and actual_start_seconds. If your end is past the source end, Sume clamps and warns with trim_clamped_to_source; read warnings[] before you ship a short clip.

Then put the MP4 into a timeline slot with source_in 0 if you want to assemble it with other clips. Trim does not assemble clips; sequencing, transitions and the audio spine stay on Timeline 1.0.

A cutdown is only good if the best beat survives. Cut the 6 s from the hook, not the front. Watch each output once with sound on before it goes live.

  • Exact for ads, keyframe for speed.
  • Read warnings[] on each result.
  • Name keys by master and length.

Plan the cut points before you pay

Mark the beats in the master first. Note the second where the hook lands, the second where the product first appears clearly and the second of the closing offer. A 6 second bumper should hold the hook and the offer only; a 9 second social cut can add the product shot; the 15 second spot can keep the whole arc. Write the three start and duration pairs in a table before you submit, so every trim is one deliberate request instead of an experiment that costs $0.02 each time.

If you are unsure about a boundary, look before you cut. Pull stills at the candidate times with Sume's video frames endpoint and check the first and last frame of each planned cut for a half-blinked face or a mid-gesture hand. Frames are billed by their own Modal compute rather than at a flat rate, so use few timestamps.

Finally, check sound. If the 6 second cut starts mid-word, shift start by a few tenths of a second, or pass audio: drop and lay a fresh spine under the clip in a timeline render. Name every output by master, length and date, so Black Friday week does not turn into a hunt for the right file.

Related posts

More in Media tools

All Media tools posts

Written by Sume