# Output format

vid2md writes Markdown with timestamped sections.

```markdown
# Video Watch Report

## Timeline

### 00:00.000 - 00:02.000

...

#### Heard words

- 00:00.400 to 00:01.900, speaker context from visual cues above: "..."

### 00:02.000 onward

- Delta-only observation for this segment.
```

## How frames are picked

vid2md asks ffprobe for the video's embedded I-frames (`key_frame=1`). For most encoders that lands at ~2-10 seconds apart — denser around scene changes, sparser through static shots. The processor only falls back to a fixed 2-second interval when the file has fewer than two embedded keyframes.

Concise mode runs the same sampler as Regular and Detailed; the difference is prompt density per frame, not how often a frame is grabbed. A 52-second clip with a typical I-frame layout produces 20-30 keyframes regardless of mode.

The metadata JSON includes provider usage, reported provider cost, frame count, and transcript usage. Public job responses do not expose internal R2 object keys.

Download the Markdown body with:

```bash
curl https://vid2md.com/v1/jobs/job_123/result \
  -H "Authorization: Bearer v2m_your_key" \
  -o job_123.md
```

Download metadata with `?format=json`. The browser app History tab can open previous results, copy Markdown to the clipboard, download the same body as a `.md` file, save edits, or delete saved Markdown from the account.
