Page 1 of 1

Codec information fps never spot on.

Posted: 29 Jun 2012 02:51
by redhawk
If I open an NTSC DVD VOB VLC reports 59.940059fps (interlaced 2 x 29.97fps)
if I open an NTSC MPEG-2 VLC reports 29.97029fps
if I open an AVI with set frame rate of 29.97fps VLC reports 29.970628
To add to the confusion VLC thinks one of my mp4 files has 1000fps Avidemux (open source editor) says 11.932fps.

What is going on here why can VLC why am I getting errors in fps calculations (same for 2.0.2. and 1.1.11) ??

While mp4 and avi can have weird fps mpeg-2 adhere to strict frame rates, in the case of NTSC 29.97fps is valid 29.97029fps is not valid.

Richard S.

Re: Codec information fps never spot on.

Posted: 29 Jun 2012 09:15
by Lotesdelere
in the case of NTSC 29.97fps is valid 29.97029fps is not valid.
The second one is valid as it is in fact 30000/1001, the first one being just the usual rounded value for common and easy use.

Re: Codec information fps never spot on.

Posted: 30 Jun 2012 17:16
by redhawk
Hi, I am sure you are correct however after Googling for 29.97029fps I can't find anything to suggest that this is the exact frame rate for NTSC.

Could you elaborate on your formula 30000/1001 what are the 2 numbers referring too??

Richard S.

Re: Codec information fps never spot on.

Posted: 30 Jun 2012 22:45
by VLC_help
It is hard to store floating points in such way that they can correctly parsed with all devices (some devices don't even have floating point support). Because of that, FPS of video is stored in integers (division with two values, e.g. 30000 and 1001) and device does the calculation with these values.

Re: Codec information fps never spot on.

Posted: 01 Jul 2012 00:14
by redhawk
I can appreciate that some programs probably round off the fps at a certain decimal point however could someone please explain what "30000" and "1001" are in relation to the fps calculation for NTSC??

Richard S.

Re: Codec information fps never spot on.

Posted: 01 Jul 2012 10:12
by Lotesdelere
please explain what "30000" and "1001" are in relation to the fps calculation for NTSC??
https://trac.handbrake.fr/wiki/FramerateGuide#fractions
24fps or 23.976? 30fps or 29.976?
Back in the day, NTSC TV video was indeed 30fps. However, video hasn't "really" been 30fps since color TV broadcasts started. Before them it was 30000 frames for every 1000 seconds. But to accommodate the extra color information, the rate was very slightly dropped by stretching the frames to cover an extra second for every 1000 seconds, making it 30000/1001.
30fps == 30000/1001 == 29.97fps
24fps == 24000/1001 == 23.976fps
Use the more precise decimal form when you're telling HandBrake or any other piece of software what to do.

http://en.wikipedia.org/wiki/NTSC#History
In January 1950, the Committee was reconstituted to standardize color television. In December 1953, it unanimously approved what is now called the NTSC color television standard (later defined as RS-170a). The "compatible color" standard retained full backward compatibility with existing black-and-white television sets. Color information was added to the black-and-white image by adding a color subcarrier of 4.5 × 455/572 = 315/88 MHz (approximately 3.58 MHz) to the video signal. To reduce the visibility of interference between the chrominance signal and FM sound carrier required a slight reduction of the frame rate from 30 frames per second to 30/1.001 (approximately 29.97) frames per second, and changing the line frequency from 15,750 Hz to 15,750/1.001 Hz (approximately 15,734.26 Hz).

Re: Codec information fps never spot on.

Posted: 01 Jul 2012 15:55
by redhawk
Thanks for the info I've often wondered how USA having AC electricity at 60Hz could have TV refresh rates were 59.94fps-ish.
It's just a pity TV standard wasn't agreed upon years ago now we many different frame rates, colour encoding techniques etc.
I guess with the advent of HDMI technology this has somewhat addressed the need for a unified TV standard. :)

Richard S.