Corrupted output files after certain point

Started by Bosanek, May 01, 2014, 07:08:28 PM

Previous topic - Next topic

Bosanek

I have just discovered one very nasty bug in Avidemux v2.5.6 (I use the 64-bit edition). The bug is not present in Avidemux v2.5.3.

I am using source MP4 files with AVC video. I am setting input audio to "None".

All source files are original files from GoPro Hero3+ Silver camera. I tried files in 1920x1080 resolution and in 1280x720 resolution. FPS is 25 in all source files. GoPro Hero3+ camera uses fixed GOP of 32 frames, and bitrate of around 14 Mb/s. If the recording exceeds 29824 frames (19m52s920f), the camera records all further footage in a new file, and so on. In other words, the maximum length of a file from this camera can be 29824 frames or (19m52s920f).


The issue is the following:

1. Load a source MP4 file in Avidemux v2.5.6 (the source file has to be longer than 19m05s);
2. Set input audio to "none" (as I don't need it);
3. Set "direct stream copy" for video;
4. Optional: Set "A" and "B" markers on I frames (positioning with UP and DOWN keys);
5. If step 4 is used: distance between A and B markers has to be more than 19m05s;
6. Make an output MP4 file from the above settings;

7. Load the output MP4 file in a new instance of Avidemux v2.5.6 (or 2.5.3, does not matter);
8. The file plays (or seeks with UP/DOWN keys) in Avidemux just fine, UNTIL frame 28635 (19m05s400f)! After that point, the playback simply freezes, and positioning is not working.

I have not managed to figure out why Avidemux v2.5.6 corrupts output files during writing exactly after frame 28635, but I have found the bug to be repeatable and consistent with every source MP4/AVC file which I load (however, all my files are "similar", as they have been produced by the same camera). This bug is (of course) present only if the source file is longer than 19m05s, and if the A-B selection in it (if applied) is longer than 19m05s.