# What Happens When a Video Exceeds the 10-Minute Frame Coverage Limit in bradautomates/claude-video

> Discover what happens when a video exceeds the 10-minute frame coverage limit in bradautomates/claude-video. Learn about sparse scan warnings and temporal coverage.

- Repository: [bradautomates/claude-video](https://github.com/bradautomates/claude-video)
- Tags: deep-dive
- Published: 2026-07-09

---

**When processing videos longer than approximately 10 minutes, bradautomates/claude-video maintains its fixed frame cap across the entire duration, triggering a "Sparse scan" warning as temporal coverage thins out to respect OpenAI's context limits.**

The **bradautomates/claude-video** repository provides a video analysis tool that extracts frames to fit within API context-window constraints. When input exceeds the **10-minute frame coverage limit**, the capped detail modes spread fixed frame budgets across longer timelines, creating gaps in visual analysis that the tool explicitly warns about.

## How the 10-Minute Frame Coverage Cap Works

In [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py), the `frame_cap()` function enforces strict limits based on your selected detail mode. The **capped detail modes** apply a fixed maximum regardless of video length:

- **Efficient mode**: 50 frames maximum
- **Balanced mode**: 100 frames maximum

As video duration extends beyond roughly 10 minutes, these fixed caps force the sampler to distribute frames across lengthier intervals, reducing the density of captured images and leaving unanalyzed segments between samples.

## The "Sparse Scan" Warning Mechanism

When frame density becomes insufficient for comprehensive coverage, [`skills/watch/scripts/frames.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/frames.py) emits a **"Sparse scan" warning** to alert users that analysis may miss content between sampled frames. According to the repository documentation, this warning specifically activates when capped modes process videos exceeding the 10-minute threshold, indicating that the frame budget now covers the full duration with reduced granularity.

## Two Methods to Restore Full Coverage

The tool provides distinct strategies to eliminate the sparse scan condition and achieve comprehensive frame analysis.

### Focus the Scan with Time Windows

Use `--start` and `--end` parameters (or `--duration`) to restrict processing to a specific segment. By narrowing the temporal window, the fixed frame cap concentrates on a shorter duration, maintaining full coverage density for that specific section without triggering the warning.

### Disable the Cap with Token-Burner Mode

Set `--detail token-burner` or export `WATCH_DETAIL=token-burner` to completely remove the frame limit. In this uncapped mode, the engine extracts **every scene-change frame** across the entire video duration, eliminating the sparse scan warning but significantly increasing token consumption.

## Configuration Examples

Process a long video using the default balanced mode (will emit sparse scan warning for clips over 10 minutes):

```bash
claude-video /watch "https://example.com/long-video.mp4"

```

Analyze a specific two-minute segment with full frame coverage:

```bash
claude-video /watch "https://example.com/long-video.mp4" --start 00:05:00 --end 00:07:00

```

Enable uncapped coverage to process every scene-change frame:

```bash
claude-video /watch "https://example.com/long-video.mp4" --detail token-burner

```

Or set the environment variable for persistent uncapped behavior:

```bash
export WATCH_DETAIL=token-burner
claude-video /watch "https://example.com/long-video.mp4"

```

## Summary

- **bradautomates/claude-video** applies fixed frame caps (50 or 100 frames) in efficient and balanced modes to respect API context limits.
- Videos exceeding approximately 10 minutes trigger a **"Sparse scan" warning** as the fixed frame budget spreads thinly across extended durations.
- The `frame_cap()` function in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) implements these limits, while [`skills/watch/scripts/frames.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/frames.py) generates the coverage warning when density becomes insufficient.
- Users can **focus the scan** using `--start`/`--end` time windows or enable **token-burner mode** to lift caps and capture every scene-change frame.

## Frequently Asked Questions

### What is the exact frame limit for videos under 10 minutes?

Videos under the 10-minute threshold utilize the full frame cap without triggering the sparse scan warning: 50 frames in efficient mode and 100 frames in balanced mode. The cap remains constant regardless of video length; only the distribution density changes as duration increases beyond the coverage limit.

### How does the token-burner mode affect API costs?

Token-burner mode disables the frame cap in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py), allowing extraction of every scene-change frame across the entire video duration. This significantly increases the number of images sent to the OpenAI API, resulting in substantially higher token consumption and increased costs compared to the capped modes.

### Can I process specific segments without the sparse scan warning?

Yes. By specifying `--start` and `--end` timestamps (or using `--duration`), you constrain the frame cap to a shorter temporal window. This concentration maintains adequate frame density throughout the selected segment, preventing the sparse scan warning while limiting analysis to your target timeframe.

### Where is the frame cap logic implemented in the source code?

The frame limit logic resides in [`skills/watch/scripts/config.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/config.py) within the `frame_cap()` function, which returns `50`, `100`, or `None` based on the selected detail mode. The warning emission occurs in [`skills/watch/scripts/frames.py`](https://github.com/bradautomates/claude-video/blob/main/skills/watch/scripts/frames.py) when the frame extraction algorithm detects insufficient coverage density relative to the total video duration.