Media Info
Point it at any video or audio file and read exactly what is inside: container, codec, resolution, frame rate, bitrate, duration and every individual stream. Nothing is uploaded.
MP4 · MOV · MKV · WebM · AVI · MP3 · WAV · FLAC · OGG and anything else FFmpeg reads
What ffprobe tells you
Containers hide a lot. A file ending in .mp4 might hold H.264 or H.265 video, AAC
or AC-3 audio, several subtitle tracks and a thumbnail stream — and the extension says none of
it. ffprobe is FFmpeg's inspection companion: it demuxes the file without
decoding it, so it returns the real codec names, pixel formats, frame rates, channel layouts
and bitrates in well under a second for most files.
Knowing the answer matters more than it sounds. If a clip is already H.264/AAC, the
compressor and trimmer can copy
the streams instead of decoding them, which turns a minute-long job into a second-long one. If
the frame rate reads 30000/1001 you have 29.97 fps drop-frame video, not 30 — the
distinction that decides whether an edit drifts out of sync.
Reading the numbers
- Container
- format_name — mp4, matroska/webm, mov, mpegts and so on
- Streams
- One entry per video, audio, subtitle or data track
- r_frame_rate
- The real rational frame rate, e.g. 30000/1001 = 29.97 fps
- bit_rate
- Bits per second for the whole file and for each stream
- pix_fmt
- Colour layout such as yuv420p (broadly compatible) or yuv422p10le (10-bit)
FAQ
Is my file uploaded anywhere?
No. The file is read from your disk into your browser's memory and inspected on your device. No network request carries the file.
Why does the first run download something?
The inspection is done by ffprobe compiled to WebAssembly — around 32 MB. It downloads once, is cached by your browser, and every BasaltKit media tool reuses it afterwards.
Can it read files with no extension or a wrong one?
Yes. FFmpeg identifies formats by their magic bytes, not by the file name, so a mislabelled file usually still opens fine.