anthwlock / untrunc

Restore a truncated mp4/mov. Improved version of ponchio/untrunc
GNU General Public License v2.0
2.08k stars 199 forks source link

Assertion `end - start == new_length' failed #86

Closed ronminis closed 3 years ago

ronminis commented 3 years ago

I'm trying to restore a 33GB XAVC-S file, tried both latest windows binaries (32 and 64bit) and the docker container file. I looked at an older issue with the same title and moved all the files to a large empty partition. None of the things I tried worked, untrunc only manages to save 10% of the file before crashing. Also using -s.

Any ideas what to try next?

image

anthwlock commented 3 years ago

Try using -v and send me the log. Also try the -k option, in case you haven't already. How big is the resulting file exactly?

If possible upload the files somewhere. I think the first ~5GB (of the broken file) would suffice.

ronminis commented 3 years ago

Here is the output for -v -s -k

image

I managed to get some output after I split the huge 30GB file to small 2GB files, so I'm still guessing this has something to do with storage/memory. Sadly most of the data I got in the recovered files was unusable.

Do you know if there any side effects to splitting the corrupted file and trying to rescue those files?

anthwlock commented 3 years ago

What filesystem do you use? All files are on the same partition?

Sadly most of the data I got in the recovered files was unusable.

What about the first small 2GB file?

Do you know if there any side effects to splitting the corrupted file and trying to rescue those files?

Probably, but it depends on the specific file and the strategy untrunc chooses for recovery. Generally when splitting the file the new parts start at some random position inside of a frame. Untrunc usually assumes that at start of the file also a frame starts. There are fallbacks, but they may produce worse results.

What happens if you don't use -s? How far does it come? Could you send me the output of -v?

anthwlock commented 3 years ago

I think this got fixed with d4f2db7801ec11cc04c30a2310101b390970fc4b

Also this is likely a duplicate of #77