Review 30 episode exports fast: video-inspect seek fast vs precise
Sume video-inspect gives 8 stills by default. Seek fast jumps to a keyframe at or before each time; precise lands on the frame. Pick by the check.

With Sume video-inspect, seek: "fast" picks the nearest keyframe at or before each requested time, which is quick but can be a moment early, and seek: "precise" decodes to the exact frame, which is slower. For a batch of 30 episode exports, use fast to scan for obvious problems and precise for the one frame you must verify, such as a product label.
Both modes work on a clip hosted at media.sume.com, up to 1800 seconds, so import the file first with POST /v1/media-imports.
Defaults and limits
Video inspect returns 8 stills by default. You can pass at[] times or an fps value (up to 24 stills), switch off stills with frames: false, ask for a transcript with transcribe, and read probe.has_audio to see whether there is sound. The sync request waits 30 seconds by default before returning a job.
| Setting | Value | Use |
|---|---|---|
| frames | Default 8 | Spot-check composition |
| at[] or fps | Up to 24 stills | Fixed times or even sampling |
| seek | fast or precise | Speed or exact frame |
| transcribe | STT $0.01/audio-min plus Modal compute | Check spoken claims |
| Source length | Up to 1800 s | Whole episodes |
Choose a mode per check
- Scan for glitches or a wrong scene:
fast, evenfps. - Check the caption line or product label at a given time:
precisewithat[]. - Check the disclosure on-screen note at the start:
preciseat a time just after it should appear. - Confirm there is audio before paying for a caption job: read
probe.has_audio.
A batch routine
Import all 30 files, then inspect each with frames: false and transcribe only where you need to check wording; that avoids stills you will not view. For the frame checks, call inspect again with a short at[] list and precise. For clips of 300 seconds or less, video frames takes up to 24 times and always returns 202, so poll the job.
Timing and cost notes
The sync request waits up to 30 seconds by default, then returns a job to poll. For long episodes, expect the job path and poll it, rather than holding the connection. Each inspect is billed by its own compute, and transcription adds speech-to-text at $0.01 per audio minute plus Modal compute.
A routine for 30 files: run all inspections in parallel with a small concurrency limit, store the returned stills next to the episode name, and flag any file where probe.has_audio is false when you expected sound. The review then takes minutes of looking, not hours of scrubbing.
Why does fast land early? Video files store full frames only at keyframes, with the frames between them described as changes from the last one. Jumping to a keyframe skips decoding, which is why it is quick, and why the still can be a few frames before the time you asked for. For a scan of composition that difference does not matter.
It matters when you are checking a short on-screen note that appears for a second, or a label that shows only in one shot. There, take the extra time and use precise.
Sources
Related posts
More in Media tools
- How do I cut a 15-second series trailer from my Shorts episodes?
Use POST /v1/video-trim with start and end on a Sume-hosted master: $0.02 per cut, so five trailer beats cost $0.10 and join in one Timeline render.
- How do I pull a Shorts thumbnail frame from an episode with Sume?
Call POST /v1/video-frames with a time in seconds to get a durable still from a Sume-hosted episode. Sume bills the job by its Modal compute.
- How do I reuse one theme track across every Shorts episode?
Detach or build the audio once, then join parts with Timeline audio concat: $0.01 per job, up to 20 ordered parts in one gapless file.
- Skippable in-stream bills at 30 seconds: cut a 30-second version
Google bills skippable in-stream per view at 30 seconds watched, or full length if shorter. Cut a 30-second version of a long master with video-trim.
Written by Sume