After a frame-rate change: conform the clip in Sume Video trim

Got a clip at 48 or 120 fps back from an Enhance Frame Rate tool? Sume Video trim re-encodes to 24, 25, 30 or 60 fps and 256 to 2160 px, for $0.02 per job.

4 min readSume
All posts

If a rate change leaves you with a 48 or 120 fps file, Sume Video trim can conform it to 24, 25, 30 or 60 fps in one call at $0.02 per job. The output block takes width and height from 256 to 2160 and needs precision exact. Sume's docs describe it as a conform, not frame interpolation, so do not expect added smoothness.

What does the output block accept?

The source must be a media.sume.com file of up to 1800 seconds, and the output is at most 900 seconds. Asking for output with precision keyframe is refused with video_trim_output_requires_exact.

Video trim output options. Sume Video trim docs, read 2026-10-02.
OptionValues
output.fps24, 25, 30 or 60
output.width, output.height256 to 2160
precisionexact (default) or keyframe
audiokeep or drop
duration0.2 to 900 s

Why conform at all?

A Timeline render takes sources and an output rate. If you omit output.fps it matches the sources. Mixed rates in one render are met by repeating or dropping frames, and Sume reports output_fps_resamples_sources. Conforming each part first gives you one clear point where the rate changes.

What does the call look like?

Use a stable Idempotency-Key so a retry does not create a second job.

import os, requests

r = requests.post(
    "https://api.sume.com/v1/video-trim",
    headers={"Authorization": "Bearer " + os.environ["SUME_API_KEY"],
             "Idempotency-Key": "conform-60-001"},
    json={"video_url": "https://media.sume.com/artifacts/artf_demo/clip.mp4",
          "start": 0, "duration": 60, "precision": "exact",
          "output": {"width": 1920, "height": 1080, "fps": 60}},
    timeout=60,
)
r.raise_for_status()
print(r.status_code, r.json())

What is the catch?

A file from outside Sume must be in your media library before trim can read it. Going from 120 fps to 60 fps halves the frame count, so detail from the extra frames is lost. If you want to keep the extra frames, keep the file and use Sume only for the parts of the edit that fit its rates.

How do I check the result?

Probe the output with Video inspect and frames set to false. Confirm fps, width, height and duration_seconds match what you asked for. Then compare a few stills with Video frames at the same time on the source and on the output. A trim with precision exact reports the cut you asked for, so the start time should match. Sume's docs list the exact limits and error codes for each call, so read the page for the endpoint you use before you build on it, and keep a short note of which limits applied to your run, so a later change is easy to spot. If a call is refused, the error code names the cause, and fixing that one input is usually enough to retry safely with the same Idempotency-Key.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume