Dim a bright clip so captions are readable: Sume filter, free check

Sume video filter dims or crops a clip for $0.02 an encode, and POST /v1/video-filter/check validates the program free. How to dim 45 percent before captioning.

2 min readSume
All posts

Dim it before you caption. Sume video filter applies an allowlisted dim, crop or filtergraph to one clip and returns a new MP4 for $0.02 per encode job. White captions on a bright beach or a studio-white background lose contrast; a dim pass is the cheap fix, and the source file stays untouched.

Check first, for free

POST /v1/video-filter/check runs the same schema, op whitelist and source preflight as the real encode, but creates no job, reserves no credits and touches no encoder. It returns valid, diagnostics, the compiled filter names, an estimate when valid, and next_action: submit_video_filter or fix_program_and_recheck. It needs no Idempotency-Key. A program that passes can still fail on the box, for example on memory or time, and that comes back as a structured job error.

The pipeline for one bright Short

Run the caption job on the new MP4's video_url, not the original. Over 20 clips a week, the dim pass adds $0.40.

Dim then caption, read 2026-10-03
StepRouteCost
Validate the dimPOST /v1/video-filter/checkFree
Dim 0.45POST /v1/video-filter$0.02
Burn captionsPOST /v1/video-captions$0.20
Total$0.22

Limits

  • The clip must be on media.sume.com. Import it first.
  • You send ops, such as dim with an amount, or a filters-only filtergraph. Fields such as vf, ffmpeg, cmd and codec are rejected with ffmpeg_fields_rejected: the server compiles ffmpeg.
  • An Idempotency-Key is required on the encode, not on the check.

Check, then encode

BODY='{"video_url":"https://media.sume.com/artifacts/artf_demo/talk.mp4","ops":[{"op":"dim","amount":0.45}]}'
curl -X POST https://api.sume.com/v1/video-filter/check \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" -d "$BODY"
curl -X POST https://api.sume.com/v1/video-filter \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: dim-1" -d "$BODY"

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume