Saving MP4 Larger than 4GB Corrupts File

Issue #505 closed
Paul Roever created an issue

I am encountering an issue with MP4 files that are larger than 4GB (4.29 GB in my case). Opening the file, Subler 1.5.9 reads it correctly and is able to find metadata + artwork for it. Saving it results in the error"The file is bigger than 4GB, but it was created with 32bit data chunk offset. Select 64bit data chunk offset in the save panel". However, even though the save failed, the resulting file is corrupted: it is now 4.30 GB in size, and no longer openable in VLC, for example. Subler is also no longer able to read it when I close and reopen the same file. I can provide the file in question as a link if you would like. I'm able to reliably reproduce this issue, and it happens with another file that is also bigger than 4GB. Here's a log that shows me opening the file, finding metadata for it, attempting to save it, failing, closing the file, and finally attempting to reopen it:

1:13:39 Error: ReadAtom: "/Users/proever/Downloads/True-6/True.Detective.S03E05.1080p.WEB.H264-METCON copy 2.mp4": invalid atom size, extends outside parent atom - skipping to end of "" "mdat" 4326728569 vs 4294967295
1:14:1 Error: ReadAtom: "/Users/proever/Downloads/True-6/True.Detective.S03E05.1080p.WEB.H264-METCON copy 2.mp4": invalid atom size, extends outside parent atom - skipping to end of "" "mdat" 4326728569 vs 4294967295
1:14:1 Error: Write: assert failure: (false) (../src/atom_mdat.cpp,42)
1:14:1 File excedes 4 GB.
1:14:39 Error: ReadAtom: "/Users/proever/Downloads/True-6/True.Detective.S03E05.1080p.WEB.H264-METCON copy 2.mp4": invalid atom size, extends outside parent atom - skipping to end of "" "mdat" 4326728569 vs 4298894126
1:14:39 Warning: ReadChildAtoms: "/Users/proever/Downloads/True-6/True.Detective.S03E05.1080p.WEB.H264-METCON copy 2.mp4": In atom  missing child atom moov
1:14:39 Error: FindIntegerProperty: no such property - moov.mvhd.modificationTime (../src/mp4file.cpp,747)
1:14:39 The movie could not be opened.
1:14:39 Error: ReadAtom: "/Users/proever/Downloads/True-6/True.Detective.S03E05.1080p.WEB.H264-METCON copy 2.mp4": invalid atom size, extends outside parent atom - skipping to end of "" "mdat" 4326728569 vs 4298894126
1:14:39 Warning: ReadChildAtoms: "/Users/proever/Downloads/True-6/True.Detective.S03E05.1080p.WEB.H264-METCON copy 2.mp4": In atom  missing child atom moov
1:14:39 Error: FindIntegerProperty: no such property - moov.mvhd.modificationTime (../src/mp4file.cpp,747)
1:14:39 The movie could not be opened.

Comments (2)

  1. Damiano Galassi repo owner

    The file is invalid. You can remux it to a new file by creating a new document in Subler and importing the original file. Anyway, piracy is not supported here.

  2. Log in to comment