Scrubbing back and forth through a long recording just to find out what it contains can be tedious. A contact sheet samples still frames across the video and arranges them in one image so you can scan its contents quickly.

Unlike a single poster-frame thumbnail, a video contact sheet covers many points in the timeline—from early scenes through the middle to the end. It is useful for reviewing lectures, screen recordings, and footage before editing.

Browser Kitty's Video Contact Sheet extracts 12, 24 or 48 evenly spaced frames, adds optional timestamps, and saves a PNG or JPEG image. This guide explains the workflow, a CSV export of frame times, and what to do when a short scene is missing.

Open Video Contact Sheet

1. What is a video contact sheet?

A contact sheet is a single image containing a grid of stills sampled at different points in a video. It helps you summarize the rough sequence of scenes or locate footage to review before editing without replaying the whole recording.

It contains selected still frames, not every frame, and it does not retain audio or motion. For tasks where a fleeting event must not be missed, verify the source video instead of relying only on the sheet.

How the outputs differ
OutputWhat you seeBest use
Single thumbnailOne momentChoosing a poster image
Contact sheetSeveral moments in one gridQuickly scanning a timeline
Original videoMotion, sound and contextChecking details and brief events

2. Choose the MP4, MOV or other video to review

Open Video Contact Sheet and select a video, or drag and drop it. Common containers include MP4/MOV, MKV/WebM, AVI and MPEG-TS. Support also depends on whether the included decoder can handle the video's codec.

The small thumbnail shown during selection uses your browser's native video support and is only a convenience preview. It may be unavailable even when the bundled FFmpeg runtime can generate the full contact sheet.

The selected video is read and processed on your device. For a very long or high-resolution file, start with a short test clip and standard settings to assess your device's available memory and processing capacity.

3. Choose 12, 24 or 48 thumbnails

Choose a frame count. The app arranges 12 frames as 4 columns by 3 rows, 24 as 6 by 4, and 48 as 8 by 6. Start with 24 for a balanced overview; use 12 for a simpler summary or 48 for more samples along the timeline.

More samples give finer temporal coverage, but each thumbnail looks smaller within the grid and the extraction requires more processing.

Choosing the number of frames
FramesGridWhen to use
124 × 3Quick first look
246 × 4Balanced overview
488 × 6More detailed timeline scan

4. Set resolution and timestamp labels

Select Light, Standard, High or Ultra output resolution. High can help with small text in screen recordings, but larger thumbnails increase memory use. Standard is a sensible starting point on phones.

Enable per-frame timestamps to see approximately where each still came from in the source video. This helps you return to a scene later. If you change timestamp labels after generating a result, apply the change using the Generate button.

Ultra resolution is intended for PCs with plenty of memory. If processing becomes slow or fails, switch to Standard or Light. Increasing export resolution cannot restore detail absent from the original video.

5. Generate the contact sheet image

Check the source filename, frame count, resolution and timestamp choice in the Step 3 summary, then press Generate contact sheet. The app seeks to selected positions in the video and assembles a single grid; it does not export every frame of the video.

You can stop an active generation. If a new run is stopped or fails, the last successfully generated image and CSV remain available. Check the source filename shown with the result before saving so you do not mistake an earlier sheet for the current video.

Editing settings alone does not replace the displayed result. When you see Changes not yet applied, generate again. If you change only timestamp labels, the app can redraw already extracted frames.

6. Zoom in to inspect frames and their timestamps

Tap or click the generated grid to open a fullscreen viewer. Pinch to zoom on phones, or use the mouse wheel and drag on a desktop. Fit and 100% options, as well as double-tap or double-click zoom, are available.

Use the timestamp labels to return to the relevant section of the source video and inspect motion or sound around it. The labels help locate a scene; they are not guaranteed frame-accurate edit points. Zooming changes only the viewing scale, not the saved image resolution.

7. Save the thumbnail grid as PNG or JPEG

When the result looks right, edit the filename, choose PNG or JPEG, and press Save image. The suggested filename uses the original video name and frame count; changing the format also updates the file extension.

PNG is useful when you want sharp text and interface edges, while JPEG is often convenient for smaller images of photographic footage. Both exports are single still images, not video files with sound.

The generated result is temporary browser data, so download what you need before closing or reloading the page. The original video is not embedded in the exported image.

8. Export a CSV listing the sampled frame times

Choose Save timestamp list (CSV) to export the positions of the sampled frames as a table. The five columns are frame, row, column, actual_seconds and timestamp. Frame, row and column numbering starts at 1.

actual_seconds stores the decoded frame time in seconds, while timestamp is the seconds-based value used for the visible label. The CSV can be exported even when timestamp labels are disabled in the image. It records selected frames, not every frame of the video.

If you have unapplied settings, the CSV still describes the last successful generation. Use the recorded positions and times to organize footage and navigate back to the original recording.

9. Troubleshooting missing scenes or failed generation

Because frames are sampled at evenly spaced positions, a very short action or screen can fall between samples and never appear in the grid. Switching from 24 to 48 frames reduces the gap but still does not guarantee capturing every event.

If generation is slow, fails or strains a phone, try 12 frames with Standard or Light resolution. Large source files and high-resolution exports require more browser and device memory.

If a file cannot be processed, check the codec as well as the container and the file's integrity. A missing native preview does not necessarily mean FFmpeg generation will fail. The exported times are not a guarantee of frame-accurate edit boundaries, so check the original footage for important decisions.

The bundled FFmpeg WebAssembly runtime and the browser's Canvas handle processing on your device. Runtime network access is blocked by the app's content security policy, and the selected video is not uploaded for conversion. Fetching the web page HTML when you first open it is distinct from processing the video locally.

Try it in Browser Kitty

Video Contact Sheet

Sample frames across a video and combine them into a single contact sheet image.

Open toolView tool details

Tips and limitations

  • Start with 24 frames at Standard resolution. Increase to 48 only if you need closer coverage along the timeline.
  • Try High resolution for small text in a screen recording, but return to Standard if your phone struggles.
  • Save the CSV alongside the image when you want frame times to help you navigate or organize the original footage.
  • Do not use a contact sheet as the sole check for brief motion, flashes or anomalies; review the source video.

Frequently asked questions

Can I create multiple thumbnails from one video at once?

Yes. Choose 12, 24 or 48 evenly sampled frames and combine them in one image. This tool does not export every thumbnail as a separate file.

Does the app support formats besides MP4 and MOV?

It also supports common containers such as MKV, WebM, AVI and MPEG-TS. Success depends on the included decoder's support for the video codec, not just the extension.

Can I freely set the number of thumbnails and columns?

The standard UI offers 12 (4×3), 24 (6×4) or 48 (8×6). It does not offer arbitrary column counts or manually selected timestamps in the normal workflow.

Can the thumbnails show where they were taken in the video?

Yes. Each frame can have a timestamp label, and you can export the sampled times as CSV. The seconds-based label is not a frame-accurate timecode.

Can I save the contact sheet as PNG or JPEG?

Both formats are available. PNG is useful for sharp text and edges, while JPEG is often preferable for a smaller grid of photographic frames.

Is the video uploaded, and can I use the tool on a phone?

The selected video is processed in your browser, not sent to a conversion server. The app has a mobile layout, but long videos and high-resolution output may exceed your phone's memory.

Why is a particular moment missing from the grid?

The app samples at regular positions, so brief events between those positions can be missed. Even 48 samples cannot guarantee every moment will be captured; check the original video.

References

The workflow and export details are based on the application's current README, configuration and implementation.