[FFmpeg-user] 3 ffprobe (or ffmpeg) questions regarding video identification

Mark Filipak markfilipak.windows+ffmpeg at gmail.com
Fri Nov 15 01:40:08 EET 2019

This is a bit OT but most of the folks here are probably familiar with 

Regarding ffprobe & MPV's File, Video, and Audio properties (keyboard 
'Shift I'),

If ffprobe shows
'23.98 fps, 23.98 tbr' and
MPV shows
'FPS: 23.976 (specified) 23.976 (estimated)'
(i.e., ffprobe & MPV agree),
I understand what that means and how it was determined.

However, if ffprobe shows
'29.83 fps, 59.94 tbr' and
MPV shows something like
'FPS: 29.833 (specified) 23.976 (estimated)',
I'm at a loss on 3 points:
1, Why do ffprobe & MPV differ? and
2, How does MPV know that the video is 23.976 Hz hard telecined (versus 
an NTSC telecast)? and
3, Why is ffprobe displaying a 59.94 Hz time-base rate?

Regarding point 2, I can imagine that MPV is doing some sort of picture 
analysis to determine that the bottom fields contain even-concurrent 
half-pictures (versus sequential half-pictures). Am I correct?

Regarding point 3, does the switch from '23.98 tbr' to '59.94 tbr' 
indicate that ffprobe switches from reporting frame rate to reporting 
field rate when it encounters fields instead of frames?

Most importantly, does anyone know of an ffprobe (or ffmpeg) command 
syntax that will reproduce what MPV is showing (i.e., '23.976' as the 
video origin's, or internal, frame rate)?
My current ffmpeg heuristics probe command is
CMD /K ffmpeg -ss 30.0 -i %1 -filter:v idet -frames:v 900 -an -f 
rawvideo -y NUL
but it does not find what MPV is clearly able to find -- I say that 
because MPV is correct in it's analysis.

Thanks in advance,

More information about the ffmpeg-user mailing list