Frame Sampling: Which Frames Get Embedded, and What It Costs
Embedding is the expensive step, so the frames you choose to embed are the biggest lever on the cost and recall of a video search system.

An hour of 30 fps video is 108,000 frames, and adjacent frames within a shot are near identical: their embeddings land almost on top of each other, so indexing both adds storage and query fan-out, not recall. Embedding is the expensive step, which makes sampling policy the single biggest lever on the cost and recall of a video search system. A sampling change can move the cost line more than switching models does.
Take one timeline: a 3 minute lecture slide followed by a 4 second chaotic cut. Fixed-rate sampling at 1 fps spends the same budget everywhere: it embeds 184 frames and still skips half the shots in the burst, because it pays for recall where nothing is happening and starves it where everything is. A scene-adaptive budget places a floor of 1 to 2 frames on quiet stretches and a cap of about 8 on busy ones, covering the whole clip with 9 frames. Embedding-space keyframe selection goes further: it generates cheap dense candidates, then keeps a handful (6 here) chosen for visual diversity rather than by the clock.
The honest output of a sampling study is not a single number, it is a frontier. Plot recall against vectors stored per video-hour and look for the knee, and measure it per query class, because the right sampling rate for a static screen recording is the wrong one for sports. Cache frames and embeddings by content hash, or a re-run silently re-pays the full embedding bill.
Where this diagram appears
Run this on your own data
Mixpeek turns video, images, audio, and documents in your object storage into searchable, timestamped results through one API.
Search your own data, free

