• erankor's avatar
    qt-faststart - stco offset bug fix · dc16c9dd
    erankor authored
    when the last offsets in the stco atom are close to 4GB, the addition of
    the moov atom size can overflow, causing corruption near the end of the
    mp4 file.
    this patch upgrades all stco atoms to co64 when such an edge case is
    detected. in order to accomplish this, the implementation was changed to
    walk the atom tree, instead of searching for the strings 'stco'/'co64'.
    this was required since when an stco atom is changed to co64, its size
    changes, and the sizes of all containing atoms (moov, trak, etc.) have
    to be updated as well.
    Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
    dc16c9dd
qt-faststart.c 18.7 KB