How to convert existing framedrops into correct timestamps?
I have this one MPEG-2 file that originally came from a screengrab. The MPEG-4 screengrab setting was set to 25fps max (with a PAL result in mind), resulting in a nominal 25fps framerate of the file, however the screengrabber only captured an actual frame when anything on the screen actually changed (I was capturing a video stream that didn't run too smoothly). This did not pose a problem because the MPEG-4 file used correct timestamps for each field, and so does the converted MPEG-2 file I have of it.
However now I'm trying to edit this MPEG-2 file (crop to actual player window of about 700*380, sharpen, deblock, denoise, all that jazz) which only works by converting to an AVI, and after conversion to AVI, the timestamp information is lost, and the video plays at actual 25fps, which is of course much too fast.
Time-sensitivity is a critical issue here, as I have the audio in a separate file which is in synch with the MPEG-2 file (although recording didn't start or stop at exactly the same moment, which is why muxing audio and video into a complete MPEG doesn't seem that good an idea at first either). In fact, I need more or less lip-synchronicity over a time period of about 60 minutes, which would be easy as cake if I could somehow make use of the original frame timestamps.
I'm not working with simple framedrops caused by capturing from a readily available VHS tape, the framedrops occurred in the original videostream I grabbed from the web, and the MPEG-4 and MPEG-2 file hold correct timestamps to compensate for these original framedrops. The stream can't be repeated as it's outdated by now, so don't tell me to go back and capture it again.
|