You'll run ffprobe 10x more than ffmpeg in real workflows. Every encoder bug, every 'why is this audio silent' moment, every 'wait, what frame rate is this' question — ffprobe answers it in two seconds. The five flag combos below cover ~90% of what you'll need.
Output formats
-print_format takes json, xml, csv, flat, ini, or the default human-readable. For scripting, always use json — it's the only format with stable, parseable structure.
Common patterns
Reach for ffprobe when you want to know: duration in seconds, total frame count, exact frame rate (rational, like 30000/1001 = 29.97), bitrate, dimensions, color space, audio channel layout, metadata tags, chapters, stream count, or whether a file even decodes (errors will appear in stderr).
Write a one-liner shell function vinfo <file> that prints, in order: duration (seconds), resolution (WxH), video codec, audio codec, audio channel layout. Test it on three different files. Bonus: add the average video bitrate (stream=bit_rate).
Progress
Progress is local-only — sign in to sync across devices.