MP4 MP4 Analyzer by MediaOnDeck

// alternatives / ffprobe

ffprobe alternative

Up front: a lot of people searching for an "MP4 analysis tool" actually want ffprobe, and it is free, installable and answers in one command. This tool is not a replacement for it — it picks up where ffprobe stops.

1. What ffprobe is

ffprobe ships with the FFmpeg project and is command-line only. It does not decode pictures; it reads metadata and packet structure, which is why it is fast, dependable and works on almost anything. The options you end up using:

  • -show_format — container-level facts (duration, overall bitrate, format name);
  • -show_streams — per-stream facts (codec, profile, resolution, frame rate, pixel format);
  • -show_frames — per-frame facts (frame type, keyframe flag, packet size, PTS/DTS);
  • -show_packets — per-packet facts (timestamps, size, position);
  • -select_streams v:0 — first video stream only;
  • -of json / csv / xml — output format;
  • -read_intervals — read only part of the file instead of scanning the whole thing.

The classic questions — what codec is this, what is the bitrate, how many frames, how are I/B/P distributed — ffprobe answers all of them in one command, without opening a browser.

2. Where it beats this tool

CapabilityDetail
Enormous format coverageAnything FFmpeg supports; this tool handles H.264 / H.265 in MP4-family containers only
ScriptableJSON / CSV output that slots into batch jobs, monitoring and CI — this tool exports nothing
Exact timestampsPer-frame PTS / DTS and duration; this tool does not export per-frame timestamps
No graphical environment neededRuns on servers and inside containers
Zero learning curveAlready installed on nearly every development machine

3. Where it stops, and where this tool continues

The finest granularity ffprobe gives you is the frame: this one is I or P, this big, at this decoding time. It will not tell you which part of that frame was squeezed hardest. QP and motion vectors are coding-layer data, and ffprobe stops at the packet layer.

  • Block-level QP. This tool lays each block's QP over the decoded frame as a heatmap, and reports the block's deviation from the frame's base QP.
  • Motion vectors. Arrows drawn straight onto the picture, so you can see where a block's motion goes and how large it is.
  • Container structure and block data together. Want to know which byte of the file a sample lives at? Click through to the matching hex.
  • No install. ffprobe has to be installed; this tool is a URL, so it also works on the machines where you cannot get a shell — a locked-down laptop, a tablet.

Neither tool is "better": ffprobe answers "what is this file", this tool answers "what is wrong inside this frame". And this tool has an explicit upstream dependency on FFmpeg — see source & license for the attribution.

4. Side by side

CapabilityffprobeMP4 Analyzer
FormCommand lineWeb page, zero install
Codec / bitrate / resolutionYesYes (file info view)
Frame type I/P/BYes (pict_type, key_frame)Yes (frame list)
Per-frame timestampsYes (PTS / DTS)Yes (not exportable)
Block-level QPNoYes (heatmap plus click-to-read)
Motion vectorsNoYes
MP4 box structure + hexPartial (-show_format and friends)Yes (interactive tree)
Scripting / exportYes (JSON / CSV / XML)No
Format coverageMost containers FFmpeg supportsMP4-family containers, H.264 / H.265
PriceFree, open sourceFree, no account

5. Which to pick

Your questionUse
What codec is this, what bitrate, how many framesffprobe
How are I/B/P distributed, how big is each frameffprobe
Run it inside a script or CI jobffprobe
Non-MP4 containers (TS / MKV / WebM and so on)ffprobe
Which blocks in this frame have high QPThis tool
Where does this block's motion vector pointThis tool
You want the picture and the box structure at onceThis tool

In one line: run ffprobe first; if it cannot give you the layer you need, open this tool. For the wider picture, see the full comparison.