Skip to main content

PNG default · ZIP artifacts · Frame metadata

Export Video Frames and Dataset Artifacts

Use the dataset preset to sample a compatible video, review the frames, and download images with metadata files for your next dataset step.

The extraction controls are currently available in English.

Upload your video

Drop your video here

Drag and drop a video or choose one from your device. MP4, MOV, WebM, MKV or AVI.

Stays on your device · No signup · No watermark

What the dataset preset does

The ML Dataset preset starts in interval mode: one frame every second, PNG output, and a dataset filename pattern. You can change the interval, choose JPEG, PNG, or WebP, set a maximum width, and select only the extracted frames you want in the ZIP. This page documents the export workflow; choosing a sampling strategy is a separate dataset-design decision.

What is in the downloaded ZIP

The ZIP uses the sanitized source basename followed by -frames.zip. It contains the selected images, a root manifest.json, metadata/frames.csv, metadata/frames.json, metadata/frames.jsonl, metadata/source-manifest.json, metadata/coco-images.json, yolo/data.yaml, and splits/train.txt, splits/validation.txt, and splits/test.txt. The COCO and YOLO files describe images only: they contain no labels, annotations, or categories.

How frame names and the manifest work

By default, dataset filenames use {name}_{index}: the index is one-based and padded to five digits, such as clip_00001.png. You may replace the pattern with the extractor’s visible naming tokens. The root manifest records tool, video, frames, and generated_at. Each root-manifest frame records file, time_ms, index, width, and height; the source manifest adds source details, split ratios, annotation_status, and frame bytes, MIME type, and split.

Current limitations to plan for

This export does not create labels, annotations, categories, blur scores, or duplicate detection. Its deterministic train, validation, and test lists are generated from exported-frame metadata, not a substitute for source-level split design or leakage review. Browser decoding and extraction can also vary by the video and browser. Check the output before using it in a training or evaluation pipeline.

Use the right next step

Use this tool to create and inspect export artifacts. For command-line automation, read the FFmpeg frame extraction guide. For a general extraction task instead of a dataset export, open the frame extractor.

FAQ

Frequently asked questions

How do I export frames for a machine learning dataset?
Add a compatible video, set the interval and output options, extract the frames, choose any frames to keep, and download the ZIP. Dataset mode adds image metadata and split-list artifacts to the selected images.
What settings does the dataset preset start with?
It starts with interval extraction, a one-second interval, PNG output, and the dataset filename pattern {name}_{index}. The controls let you change the interval, format, maximum width, and filename pattern before extraction.
What fields are in manifest.json?
The root manifest includes tool, video, frames, and generated_at. Each frame entry includes file, time_ms, index, width, and height. The ZIP also contains metadata/source-manifest.json with source details, split ratios, annotation status, and expanded frame metadata.
Does the export include labels or annotations?
No. The exported COCO image metadata has empty annotations and categories, and the YOLO file has an empty names mapping. Add labels and categories in the annotation workflow you choose.
Does this tool prevent duplicate frames or dataset leakage?
No. It does not score blur, remove duplicates, or validate a dataset split. The deterministic split files describe exported frames only, so evaluate your dataset methodology before treating them as training, validation, and test partitions.