# Video Frame Extraction

> Extract exact frames from any public YouTube, TikTok, or Instagram video at the timestamps you choose. Study editing rhythm, caption animation, and camera style in timestamped collages.

Section: NexLev MCP  
Badge: New  
Canonical page: /docs/mcp/video-frame-extraction

---

Pull exact stills from any public **YouTube, TikTok, or Instagram** video at the moments you care about. They come back as **collage images with every tile stamped with its timestamp**, so your AI assistant can study the video one frame at a time:

- **Editing**: cut rhythm, b-roll, transitions, jump cuts, and the hook in the first seconds.
- **Animation and motion graphics**: captions, kinetic type, lower thirds, overlays, and how an animation builds frame by frame.
- **Camera**: shot types, framing, movement, zoom, focus, lighting, and color.

## Prerequisites

- **Connected AI assistant**: Claude, ChatGPT, or any MCP-compatible client. See the [Quickstart](/docs/mcp/quickstart).
- **A paid NexLev plan**: Lite, Premium, Niche Finder, Pro, or N8N Pro. Free accounts cannot use frame extraction. [Upgrade your plan](https://dashboard.nexlev.io/?required_nexlev_lite_pro_access=true).
- **A public video**: private, age-restricted, members-only, and live videos fail.

> **Note:** Your AI assistant calls these tools for you. Paste a link, say what you want
> to learn, and it picks the timestamps, waits for the job, and reads the
> collages.

## Frames, transcript, or full watch: which tool to use

Frame extraction looks at the **picture only**. It does not transcribe speech and it does not hear audio.

| You want to know…                                                                      | Use                                                                                                                                                    |
| -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| How a moment **looks**: framing, captions, transitions, grade                          | **Video frame extraction** (this page)                                                                                                                 |
| What is **said**                                                                       | [`get_video_transcript`](/docs/mcp/video-content#transcript)                                                                                           |
| Something that needs **audio or the whole video**: music, tone, story, overall message | [Visual Video Analysis](/docs/mcp/visual-video-analysis): `watch_youtube_video_and_ask`, `watch_tiktok_video_and_ask`, `watch_instagram_video_and_ask` |

Frames and the transcript work well together: read the transcript to find the moment, then grab frames at that exact second.

## What It's For

### Reverse-engineer a video that worked

Found an outlier in your niche? Break it down frame by frame to see exactly how it is built: where the cuts land, when text appears, and how each scene is framed. Then copy the structure, not the content.

### Decode the hook

The first 3–5 seconds decide whether people keep watching. Capture them every 0.25–0.5 seconds to see every cut, zoom, and text pop-in, in order.

### Rebuild captions and motion graphics

Sample an animation every 0.1–0.2 seconds to see how it builds: the font, outline, colors, position, and how each word moves in. Hand the result to an editor or rebuild it in CapCut, Premiere Pro, or After Effects.

### Write an editor brief from a reference video

Turn "make it look like this" into a brief with cut frequency, transitions, caption style, b-roll rules, and color grade, each tied to a timestamp your editor can check.

### Plan shots and match a cinematic look

Get shot types, angles, camera movement, lighting, and color grading from any video, so you can reshoot it on your own setup or match the grade in DaVinci Resolve.

### Audit a competitor's pacing

Compare two videos' openings side by side: how often the shot changes, how much is talking head versus b-roll, and which one moves faster.

> **Tip:** **One video, one request.** Put every timestamp for a video in a single
> request. One call is faster than several small ones, and repeated frames are
> reused.

## Tools

### Extract Frames

#### `extract_video_frames_for_editing_animation_and_camera_style`

Captures frames from a public YouTube, TikTok, or Instagram video at the timestamps you choose and lays them out as timestamped collage images. Returns a `jobId` straight away. Your assistant then polls [`get_video_frames_status`](#frames-status) until the collages are ready.

**Best for:**

- "How is the hook of this video edited?"
- "Break down this caption animation frame by frame"
- "What shot types and camera moves does this Reel use?"
- "How much of this video is b-roll versus talking head?"

**Example prompts:**

```
Grab a frame every 0.25 seconds from the first 5 seconds of this video and
tell me exactly how the hook is edited: every cut, zoom, and text pop-in, in
order. https://www.youtube.com/watch?v=VIDEO_ID
```

```
The title animation between 0:13 and 0:16 is the look I want. Capture a frame
every 0.2 seconds and write keyframe notes my motion designer can rebuild in
After Effects: position, scale, opacity, and easing for each element.
https://youtu.be/VIDEO_ID
```

```
Pull the first 6 seconds of this TikTok at 1440p with 6 frames per collage.
Read every on-screen caption word for word, then write a caption style spec I
can copy in CapCut: font style, weight, outline, colors as hex, position, and
how each word animates in. https://www.tiktok.com/@user/video/VIDEO_ID
```

```
Take one frame every 10 seconds across this whole video and estimate what
share of the runtime is talking head, b-roll, screen recording, and motion
graphics. https://www.youtube.com/watch?v=VIDEO_ID
```

```
What shot types and camera moves does this Reel use? Give me a shot list I can
reshoot on my phone: framing, angle, movement, and roughly how long each shot
lasts. https://www.instagram.com/reel/REEL_ID/
```

**Parameters:**

| Parameter          | Type                   | Description                                                                                                                                                     |
| ------------------ | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `videoUrl`         | string                 | **Required.** Public YouTube (watch, `youtu.be`, `/shorts/`, or 11-character ID), TikTok (including `vm.` / `vt.` short links), or Instagram Reel or video post |
| `timestamps`       | array of string/number | **Required.** 1–160 points in time, in display order. Seconds (`12`, `90.4`) or clock time (`"1:30"`, `"1:02:03.5"`, `"7m23s"`)                                 |
| `framesPerCollage` | integer                | Frames per collage image, 1–16. Default **9**. Extra timestamps spill onto further collages                                                                     |
| `resolution`       | enum                   | `auto` (default: 1080p up to 4 frames, 4K above), `1080p`, `1440p`, or `4k`                                                                                     |

**Example call:**

```json
{
  "videoUrl": "https://youtu.be/VIDEO_ID",
  "timestamps": [
    13, 13.2, 13.4, 13.6, 13.8, 14, 14.2, 14.4, 14.6, 14.8, 15, 15.2, 15.4,
    15.6, 15.8, 16
  ],
  "framesPerCollage": 16
}
```

### Check Progress

#### `get_video_frames_status`

Checks a frame extraction job and returns the finished collages. Your assistant polls this about every 5 seconds until the job reports `completed` or `failed`, for up to 3 minutes. You never need to call it yourself, and **checking progress is free**: it does not use your allowance.

**What it returns:**

- **Collage image URLs**, one per group of `framesPerCollage` timestamps. Links expire after 24 hours.
- **A frame map** showing which timestamp sits in which tile. Frames run left to right, then top to bottom, in the order you asked for, and each tile shows its timestamp in the bottom-left corner
- **Video details**: platform, video ID, title, and length, when the source provides them
- **Skipped timestamps** with the reason, for example a time past the end of the video. The rest of the request still returns.

**Example prompt:**

```
Are the frames ready? Show me the collages
```

**Parameters:**

| Parameter | Type   | Description                                                                                  |
| --------- | ------ | -------------------------------------------------------------------------------------------- |
| `jobId`   | string | **Required.** The `jobId` from `extract_video_frames_for_editing_animation_and_camera_style` |

## Get Better Results: Two Passes

Don't sample a whole video densely. Look wide first, then zoom in on the moment that matters.

1. **Overview pass**: about **16 timestamps** spread across the video, all on one collage (`framesPerCollage: 16`). This shows the pacing, structure, and overall look.
2. **Close-up pass**: **9 to 40 timestamps, 0.1–0.5 seconds apart**, around one cut, transition, or animation you spotted in the overview.

```
First give me an overview of this video: 16 frames spread evenly from start to
finish on one collage. Tell me which moment has the most interesting
transition, then do a close-up pass on it with a frame every 0.1 seconds.
https://www.youtube.com/watch?v=VIDEO_ID
```

**Choosing frames per collage:**

| Goal                                        | Frames per collage | Why                            |
| ------------------------------------------- | ------------------ | ------------------------------ |
| Read captions and small on-screen text      | **4–9**            | Bigger tiles keep text legible |
| Default                                     | **9**              | Balanced                       |
| Judge pacing, composition, and overall look | **12–16**          | More moments side by side      |

**Resolution.** By default a collage is **1080p for 4 frames or fewer** and **4K above that**. You can ask for `1080p`, `1440p`, or `4K` instead.

## Real-World Workflows

These prompts chain frame extraction with other NexLev tools, which is where it gets most useful.

### Reverse-engineer a breakout video's hook

Find what is working in a niche, then study exactly how it opens.

```
Find the biggest outlier video from @channelhandle in the last 90 days. Then
capture its first 8 seconds at a frame every 0.5 seconds and break the hook
down beat by beat: what is on screen, when the first cut lands, and when text
first appears. End with a 3-line hook formula I can reuse.
```

### Give an editor a style brief

Turn a reference video into a brief an editor can follow, without a 20-minute call.

```
This is the editing style I want for my channel:
https://www.youtube.com/watch?v=VIDEO_ID. Check its length, take an overview
of 16 frames, then close-ups on the two most distinctive transitions. Write an
editor brief with cut frequency, transition types, caption style, b-roll
rules, zoom habits, and color grade, and point to a collage timestamp for each
rule.
```

### Find the moment with the transcript, then look at it

Use what is said to find a moment, then look at how it is shown.

```
Get the transcript of this video and find where the sponsor segment starts.
Then grab frames every 0.5 seconds from 3 seconds before to 5 seconds after
that point and show me how the creator moves into the ad visually.
https://www.youtube.com/watch?v=VIDEO_ID
```

### Compare two competitors' pacing

```
Take 16 evenly spaced frames from the first 60 seconds of each of these two
videos. Compare them side by side: shots per minute, how often the framing
changes, text on screen, and which one feels faster. Video A:
https://www.youtube.com/watch?v=VIDEO_A. Video B:
https://www.youtube.com/watch?v=VIDEO_B
```

### Match a cinematic look

```
Grab 6 frames from the most cinematic shots in this video at 4K. For each
frame describe the shot type, how the shot is lit, depth of field, and color
grade, then give me an overall palette as hex codes and grading notes I can
use as a starting point in DaVinci Resolve.
https://www.youtube.com/watch?v=VIDEO_ID
```

### Build a swipefile of hooks

```
Capture the first 3 seconds of each of these 3 Shorts at a frame every 0.5
seconds, describe each hook in one sentence, then save all three videos to my
"Hooks" swipefile folder with that sentence as the note.
```

Your assistant brings in the other tools on its own: [Channel Outliers](/docs/mcp/youtube-tools#channel-outliers) for breakout videos, [Video Details](/docs/mcp/youtube-tools#video-details) for length and chapters, [transcripts](/docs/mcp/video-content#transcript) to find a moment, and [Swipefile](/docs/mcp/swipefile) to save what you find. Find more videos worth studying with [Trending Videos](/docs/mcp/trending-videos).

## Allowance and Pricing

Each extraction counts as **one use**, however many timestamps it has. Checking progress never counts.

| Plan         | Per day | Per week |
| ------------ | ------- | -------- |
| Free         | —       | —        |
| Lite         | 10      | 25       |
| Premium      | 10      | 25       |
| Niche Finder | 10      | 25       |
| Pro          | 30      | 50       |
| N8N Pro      | 30      | 50       |

- **The week is rolling**: 7 days counted from your own first counted call, not a calendar week.
- Reaching **either** the daily or the weekly number stops included use.
- `get_video_frames_status` is free and unlimited.

### Past your allowance

With **usage credits** turned on, each extra extraction costs **$0.20**.

- You're **told the price before** an over-allowance extraction is charged.
- **Failed extractions are refunded** when your assistant checks the result. You only pay for collages that complete.
- Without usage credits, the tool stops at your allowance and tells you when it resets.

> **Tip:** **Make every use count.** Because one extraction costs the same whether it has
> 9 timestamps or 160, ask for everything you need from a video in one request
> instead of several small ones.

## What Won't Work

- **Non-public videos.** Private, age-restricted, members-only, and live videos fail.
- **Timestamps past the end.** They are skipped and reported. Every other frame still returns.
- **Audio and speech.** Frames are images only. Use the [transcript tools](/docs/mcp/video-content) for speech, or [Visual Video Analysis](/docs/mcp/visual-video-analysis) for music, tone, and questions about the whole video.
- **Old links.** Collage URLs expire after 24 hours. Run the extraction again to get fresh links.

## FAQ

### Can I extract a frame from a YouTube video at an exact timestamp?

Yes. Give the timestamp in seconds (`90.4`) or clock time (`1:30.4`). Fractions are kept down to about one video frame (\~0.04 s), so you can land on a single frame of a fast transition.

### Does it work on YouTube Shorts, TikTok, and Instagram Reels?

Yes. It accepts YouTube watch, `youtu.be`, and `/shorts/` links; TikTok video links, including `vm.` and `vt.` short links; and Instagram Reel and video post links. The video must be public.

### How many frames can I get in one request?

Up to **160 timestamps** per request, arranged up to 16 per collage. With the default of 9 per collage, 160 timestamps come back as 18 collages.

### Does checking whether frames are ready use my allowance?

No. Only the extraction itself counts as a use. Your assistant can check progress as often as it needs to for free.

### Can it tell me what is said in the video?

No. Frame extraction only looks at the picture. Ask for the [transcript](/docs/mcp/video-content#transcript) for speech, or use [Visual Video Analysis](/docs/mcp/visual-video-analysis) for questions that need audio.

### Why did my request fail?

The most common reason is that the video is not public: it is private, age-restricted, members-only, or a live stream. If you were charged usage credits for a failed extraction, the charge is refunded when your assistant checks the result.

## What's Next?

- **[Visual Video Analysis](/docs/mcp/visual-video-analysis)**: Ask questions about a whole video, with audio
- **[Video Content](/docs/mcp/video-content)**: Transcripts and subtitles to pinpoint the moments worth capturing
- **[YouTube Tools](/docs/mcp/youtube-tools)**: Video details, chapters, and channel outliers to choose which videos to study
- **[Thumbnail Lab](/docs/mcp/thumbnail-lab)**: Turn what you learned into a thumbnail that matches the style
- **[Send Feedback](/docs/mcp/feedback)**: Tell the NexLev team what frame extraction should do next
