PDA

View Full Version : MPEG2Dec3/MPEGDecoder frame numbers


grrrinnnt
9th November 2003, 13:13
I have got a DVD ripped to multiple vob files und generate a project-file with dvd2avi. Opening it with one of the 2 decoders gives me different frame numbers. If i create the file with the old version of dvd2avii get two framecounts that differ from the first two. Finally decoding the vobs directly with MPEGDecoder gives me a fifth number.

How do I find out what's the right number of frames?

neuron2
9th November 2003, 17:02
Due to RFF flags (field pulldown), the number of displayed frames and the number of coded frames may differ. MPEGDecoder does not honor RFF flags. Also, most versions of DVD2AVI drop frames in different ways.

I have written versions of DVD2AVI and MPEG2DEC3 which do not lose frames. All tests to date show that these serve the correct number of frames, as determined by raw parsing of the MPEG2 file, using several low-level tools.

If you are looking for the number of displayed frames, you can use my modified versions to serve into VirtualDub and then use File Information to determine the frame count. My tools are available at my web site as given below.

grrrinnnt
9th November 2003, 18:01
Thank you very much. I've tried your modified version and compared the framenumbers. It gives me 1-6 frames more compared to my previous results. But something's weird: MPEGDecoder combined with a new (1.77.3) dvd2avi-file gives an output with 253frames more than your version.

neuron2
10th November 2003, 05:33
253 frames! That's a big difference. Can you make the clip available?

grrrinnnt
10th November 2003, 20:55
I did some testing today. Results are:


DVD1 (multiple vobs / PAL 16:9p):

mpegdecoder.dll: 237832
dvd2avi 1.76 - mpeg2dec3.dll: 237835
dvd2avi 1.76 - mpegdecoder.dll: 237835
dvd2avi 1.77.3 - mpeg2dec3.dll: 237835
dvd2avi 1.77.3 - mpegdecoder.dll: 238091
dvd2avi 1.77.3dg - mpec2dec3dg.dll: 237838
dvd2avi 1.77.3dg (1.76) - mpec2dec3dg.dll: 237838

difference: 253 frames




DVD2 (single vob / PAL 4:3i):

mpegdecoder.dll: 160288
dvd2avi 1.76 - mpeg2dec3.dll: 160288
dvd2avi 1.76 - mpegdecoder.dll: 160288
dvd2avi 1.77.3 - mpeg2dec3.dll: 160288
dvd2avi 1.77.3 - mpegdecoder.dll: 160547
dvd2avi 1.77.3dg - mpec2dec3dg.dll: 160291
dvd2avi 1.77.3dg (1.76) - mpec2dec3dg.dll: 160291

difference: 259 frames




Clip1 (0:11 / PAL 4:3i)

dvd2avi 1.77.3 - mpegdecoder.dll: 532
dvd2avi 1.77.3dg - mpec2dec3dg.dll: 281

difference: 251 frames




Clip2 (2:15 / PAL 4:3i)

dvd2avi 1.77.3 - mpegdecoder.dll: 253
dvd2avi 1.77.3dg - mpec2dec3dg.dll: 3379

Strange. It's really just the first 253 frames. Seems like
1.77.3 cant't handle this clip correctly (1.76 works fine)




Clip3 (0:12 / PAL 16:9p)

dvd2avi 1.77.3 - mpegdecoder.dll: 552
dvd2avi 1.77.3dg - mpec2dec3dg.dll: 300

difference: 252 frames




Clip4 (4:13 / PAL 4:3i)

dvd2avi 1.77.3 - mpegdecoder.dll: 6571
dvd2avi 1.77.3dg - mpec2dec3dg.dll: 6319

difference: 252 frames

Conclusion: dvd2avi 1.77.3 combined with mpegdecoder.dll 2.03 always (except for Clip2) resulted in an output that is 25x frames (~10s) longer than it should be. The additional frames are found at the end of the file and contain black stuff.