untrunc
untrunc copied to clipboard
Crashes on Hero 11 files unless `-s` is used
Without -s:
qlyoung@aquila ~/P/g/bad> untrunc ../qlgp-20240831135814-GX010021.MP4 ./qlgp-20240901170515-GX010039.MP4
Info: version 'v367-13cafed' using ffmpeg 'n7.0.2' Lavc61.3.100
Info: reading ../qlgp-20240831135814-GX010021.MP4
Info: parsing healthy moov atom ...
Info: special track found (tmcd, 'GoPro TCD')
Info: special track found (meta, 'GoPro MET')
Info: reading mdat from truncated file ...
[aac @ 0x5db4cda6a800] channel element 2.3 is not allocated
Error: unable to find correct codec -> premature end (~0%)
try '-s' to skip unknown sequences
Warning: guessed frame durations of 'gpmd' will probably be wrong!
Info: Found 0 packets ( gpmd: 0 mp4a: 0 hvc1: 0 hvc1-keyframes: 0 tmcd: 0 )
/usr/include/c++/14.2.1/bits/stl_vector.h:1130: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp = Track::Chunk; _Alloc = std::allocator<Track::Chunk>; reference = Track::Chunk&; size_type = long unsigned int]: Assertion '__n < this->size()' failed.
fish: Job 1, 'untrunc ../qlgp-20240831135814-…' terminated by signal SIGABRT (Abort)
With -s the file is successfully recovered.
Hey - please send me the files (healthy+broken) and I will take a look. You can upload them on wetransfer. If you think they are too big, you can use . In case you want to keep the link private, you can send me an email - see my Profile page. Thank you!
You can download the zip containing both files and the untrunc version string from my personal file server here. The zip size is about 1gb.
https://files.qlyoung.net/web/client/pubshares/6a6kNbWS8FT8mKhf9QzKZR/download
Let me know if you encounter problems or have questions.