Fixing a Truncated MP4 File
HTML-код
- Опубликовано: 11 сен 2024
- If your camera ran out of battery or your computer froze in the middle of a recording, you may be left with an unplayable file. Here's a long explanation and a short tutorial on how to repair certain video files using a free & open program called Untrunc.
Untrunc homepage: vcg.isti.cnr.it...
Untrunc GitHub page: github.com/pon...
My modified version of Untrunc: nerdonthestree...
Untrunc was created by Federico Ponchio. Please consider donating to him through his website if this program helped you! Also, if anyone wants to submit the changes I made to the program's GitHub page, it would probably be appreciated.
---
Support us on Patreon! / nerdonthestreet
nerdonthestree...
/ jacobgkau
/ nots_network
plus.google.co...
E-Mail: jacob@nerdonthestreet.com
18:32 You'll thank me later
Sir, you are truly a gentleman. You have my gratitude
Stunning
lol
you are a king
dear lord what was he saying for 18 minutes beforehand?
This program is no longer only for Linux! Github user anthwlock has a github page with a version that is a straight up Windows .exe with a GUI and everything! Super easy to download and use! fixed my truncated video flawlessly! Thanks for posting this, you put me on the right path to help me save my recording!
Supermega
Matt? Ryan? I know youre here show urselfs cowards lol
Holy crap, dude, I'm yet to try this out, but what you did is really impressive. Thank you for not giving up and taking the time to share the result :)
Really appreciate the tutorial man, you're a lifesaver! Quick question though, do you have any comment on the thousands of deaths caused by your actions in November 2017? Just curious!
Edward Cullen fell off man
Thanks it worked! I really liked how you tooted your own horn and went on about how great it is that you did it because it took a lot of effort. It's great! Because of you (and the original developer ofcourse) my first baby videos from the ultrasound were recovered. :)
Relatable lol
THANK YOU MAN, used your version, WORKED FLAWSLESLY (obs mp4 was saving file and computer shut off)
this is fantastic. I just watched the old video you did on the imac g3 hdd upgrade. then i went to this video . the change in 3 years is amazing
Thanks a lot for the video and the 64-bit compiled executable! I managed to recover a livestream recording of nearly 200 mins and OBS decided to write out a corrupted MP4.
Hey, great to hear that it still works! I personally switched my OBS from MP4 to MKV for recording after I found out how much of a pain it is to recover MP4s, and it's saved me at least once already.
Did you do it on Linux or Windows etc? Just lost my last section of Outlast and... I need to fix it. Im thinking ill change my OBS settings from here on out but I need the recording
Man, you've just saved me!
I have a big damaged MP4 file shot a couple of weeks ago... I wasn't ready to edit it so I didn't realize it was damaged...
Today I shot the second part of the video, started editing it, and got stuck because the first part was no good...
I tried fixing it with ffmpeg and got "moov atom not found". Then I tried untrunc but got a very bad result (repaired video freezing after a minute or so...).
Then while listening to you, I realized that even though the sample I was using came from the same camera and was even shot in the same place, it was much shorter... My damaged file weighs about 8.3GB I tried fixing it with a 52MB sample...
The second part that I shot today weighs 7.3GB so that's much closer. Same camera, same place, even same time of day (so same light)... I used the regular version of untrunc... And it worked! I have my first part back.
Thanks a lot!
Great to hear, thanks for the data point about the working/non-working replacement files!
@@NerdOnTheStreet yw
This freaking worked! 😭 A million praises!!! The one thing I will say is that the working video I had that was most similar was twice as long so the whole thing ended up in slow-mo, but I'm pretty sure I can fix that. This is still better than nothing.
holy crap you are a life saver.
it just works. we truly live in the future
Thank you man! You don't know how much I love you right now :D
Just used this on a 3.3gb video encoded by OBS using nvec. It worked great on my Steam Deck. Saved me a bunch of time. Thanks a ton!
So I had a similar situation occur. Was using OBS + webcam to record longer than what my camcorder can store... HDD filled up. In the process of attempting recovery, but there are a couple of newer 64 bit builds for untrunc now, including a prebuilt windows version.
Thx for this video.. hope to save this unwieldy sized mp4 with this!
Thank you! Worked a treat. Surprised how many times you'd edited the intro though....
Thanks for this video man, it's so weird that people on the OBS forums usually will just give you a death sentence whenever a problem like this happens, instead of trying to help you fix the problem itself. I'm glad i found your video and managed to recover 2 hours of gameplay footage!!!
Love from Brazil!
Ik this is extremely old but cannot thank you enough for this!!!
Thank you so much for this, I always thought it was weird that gigabytes of data can just be lost like that if the recording messes up, but this video helped a ton! 😁
thanks, you saved my life, trying the apps for the second time using segmented mp4 simple-screen-recorder, its really working, just tips for any of you: remember to always check the recorder video files, and monitor the battery capacity when doing online meeting recording, i wish i can setup the simple screen recorder to monitor the battery capacity of laptop when to automate save the recording progress,
Getting it set up was a pain but using Ubuntu through windows got it working and fixed my screen recording! Thanks for the walkthrough of it!
Thanks for making it 64 bit! I used to get a memory issue as well.
OBS is such a mess. Not stopping the recording automatically when you run out of disk space, then when you go on the forums they tell you "hurr durr should have saved in FLV" which wasn't even the question people asked. Then they tell you mp4's cannot be recovered, which is simply not true
To be fair, OBS does give you a 3-line-long, orange warning about how interrupted MP4s are unrecoverable if you select that as your recording format. That said, I do hate when people on forums tell you what you SHOULD have done rather than how to fix it now. I hope you were able to recover your recording. Personally, I started saving my OBS recordings in .mkv after this experience, just to be safe. (I'd go MKV or MOV if I were you, nobody on planet Earth should need to use FLV for anything.)
Nerd on the Street - Tech
Sony Vegas DOES NOT open Flv vids
Used to save as flv but after every video you have to remux recordings and that is too long
Recorded hundreds of vids so far; mp4 was never ever corrupted randomly. Only when I ran low on disk space so it was a pretty controlled event.
“You should have used flv” is not an excuse on OBS’ part. When the app senses low disk space it should fucking stop recording and save. Yet another reason after a dozen others why this software sucks
I specifically said NOBODY should be using FLV, so I'm not sure why you're talking to me about how bad FLVs are. However, "you should have used MKV" or "you should have read the warning the software gave you" are both perfectly valid suggestions. OBS is a live production application, it's not the job of your video program to make sure you don't run out of free space. That's just you not managing your storage properly.
OBS is amazing software, and you're acting pretty darn butthurt about an easily avoidable problem. At least in my case the issue was caused by a CRASH (in VMware) and not my own incompetence.
Nerd on the Street - Tech
I didn’t read your full first comment to be honest - my bad. On the other hand I don’t really blame myself for running out of disk space. For whatever reason my dvd reader didn’t recognize the discs (wanted to save old footage and then delete)
Not to mention on older versions of windows, it used to tell you when you were low on space at like a few gigabytes if I recall. This time I literally ran out of space mid commentary.
On the other hand, I disagree with the OBS thought of yours. I think it’s extremely easy to do what I suggested and they should strive to have a decent software. I did not mention the dozens of other problems and baffling design choices they made with OBS. Stuff breaking for no reason. Then you go on the forums. Moderators giving the worst advice possible, or straight up lying that a very basic feature would be in the next iteration...and it never is 3 years later. Not an isolated case either.
I don’t want to get into it - In my personal opinion and experience, OBS was not a good example of a well developed software. Maybe others had a different experience.
I wish there was an alternative, but I haven’t heard of a recording software besides Fraps that people used, and it’s not 2007 anymore lol maybe you would know of a better solution
By the way tomorrow I’ll try to save my footage; you said your solution wouldn’t work on Windows but the original creator’s readme file had Windows instructions. Downloaded cygwin and all, I was just wasn’t clever enough to get the libraries working I guess. Downloaded Ubuntu, wish me luck haha
When i saw the title: " Fixing a Truncated MP4 File. "
Me: Whats Truncated?
same here
Truncated means the start or the end of the file was cut off or missing.
When your Pc crashes while recording the file didn't close properly, so data is missing and thus corrupts the file.
@frag is correct. Nothing to do with broken. Truncated means it was literally "chopped off".
Truncated floats are floating point numbers (ex. 3.14159265358979 => 3.14) that have had decimal points after a certain number chopped off.
4.4567 truncated to 2 points = 4.45
Different from "rounded" numbers:
4.4567 rounded to 2 places = 4.46
Imagine a digital meat cleaver on the end of data. In this case, the "compression information" located in the "atom data" at the end of the file while writing is what is missing, and therefore has been truncated from the end of the file. Without this, the MP4 can't buffer properly into a video player, and the video data is garbage. By using some spiffy logic, this program likely (I haven't looked at the source, so just speculating at this) takes existing atom data and appends it on to the end of the broken file. Perhaps there is some more nuanced things happening, but as I understand, that is the gist of it.
Truncated simply needs a drunk is intoxicated with tequila. A.k.a. truncated.
Thank you for your effort and for sharing with us. This helped restore a very important video!
Great job you have saved me approximately 27 hours of trouble 😀👍
I had no idea what you were doing. I couldn't understand all the tech talk. I have multiple mov files that are corrupted. I tried all of the video repair tools I could find on the internet and they all said my file was "too damaged". I have very important footage on these files and would greatly appreciate any help I could get.
Please make a video for Windows users. Most of this video flew far over my head.
Sorry, this program is only available for Linux. If you have any questions about getting Linux set up, feel free to check out the other videos on this channel, or ask questions in our website's forums!
@@NerdOnTheStreet
Does it work for wsl though? Or does it require a genuine linux kernel
I would like to thank you from the bottom of my heart for this video. You saved a video that was priceless for me. Thank goodness I know linux and have a spare linux desktop (for online banking and stuff). I run elementary. A type of Ubuntu. I really canty believe I was able to save my file where everywhere and everyone else said it could not be done. Thank you! Seriously, thank you.
Thatios!!! Can you give me any advice on how this worked for you pleeease?!! Did you run into any problems at all?
I keep getting really close and then getting this error
"al@al-VirtualBox:~/Desktop/Repair/untrunc/untrunc-master$ ./untrunc '/home/al/Desktop/Repair/C0001.MP4' '/home/al/Desktop/Repair/v1.MP4'
Reading: /home/al/Desktop/Repair/C0001.MP4
Composition time offset atom found. Out of order samples possible.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/al/Desktop/Repair/C0001.MP4':
Metadata:
major_brand : XAVC
minor_version : 16785407
compatible_brands: XAVCmp42iso2
creation_time : 2017-08-31 22:56:18
Duration: 00:13:08.64, start: 0.000000, bitrate: 51702 kb/s
Stream #0.0(und): Video: h264 (High), yuvj420p, 1920x1080 [PAR 1:1 DAR 16:9], 49959 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc
Metadata:
creation_time : 2017-08-31 22:56:18
Stream #0.1(und): Audio: pcm_s16be, 48000 Hz, 2 channels, s16, 1536 kb/s
Metadata:
creation_time : 2017-08-31 22:56:18
Stream #0.2(und): Data: rtmd / 0x646D7472, 204 kb/s
Metadata:
creation_time : 2017-08-31 22:56:18
terminate called after throwing an instance of 'std::__cxx11::basic_string'
Aborted (core dumped)"
Please Please respond
What if my videos are not cam recorded but downloaded from the net? I did a recovery but 15% of the recovered files were corrupt. What can I do?
Using the docker approach given in the github is much easier. Thanks for the video. Pretty helpful.
Thank you! But how to do it on mac os?
Windows 10 being able to use Ubuntu in it is pretty damn handy. Have any idea why it would fail because of null header? I started running through everything rapidly like it did for you then failed.
Same. It still outputs a file with good sound, but the video is a slideshow
@@Jayden933 The working video that was most similar to the broken one I had was twice as long and I noticed that it came out to the same length as the working video. I think you should be able to split the audio out, speed up the, now, fixed video and then sync the audio back in. I haven't tried this yet, but I'm just so happy to have a working video at all!
I just ran Ubuntu in Hyper-V to avoid any compatibility issues with the Windows subsystem for Linux. I didn't know how well it would run but next time I will try it like this and compare.
I really really appreciate all the work you did to put into this and i really do appreciate you explaining everything and whatnot, but i wish this was a more compressed tutorial... i watched this before going to work and not my anxiety will be through the roof all day at work just thinking about this hoping it works for me. I wanted to try to fix it before going to work! I cant wait to get home to try this! Thanks a bunch for all the hard work, im glad it worked for some people.
Had a similar issue with an Mp4, used untrunc and it fixed it... only problem, the audio. Its unsynced, cuts in and out. Trying to find a quick solution as I can't be bothered to manually correct the audio, as that would be long!
Thanks for this... I was able to recover a 5 hour 3.5GB video but unfortunately all my audio is now messed up and out of sync. I originally recorded with OBS and had 1 track set for all audio, and 2 more tracks for separate game and voice audio so i could edit volumes later... Since recovering the file with Untrunc it seems all my tracks have been muxed into track 1 so i have an echo going on with all the tracks repeating over each other, and track 2 and 3 are none existant. I know its a longshot but is there anyway to get the audio back into separate tracks again?
OK man I know you’re a kid and everything and I know you’re an over excited millennial chip geek.
You know what that’s actually like a complement Sorta.
But if you’re only talking to your 20 some game PALSor maybe even 2000 game PALS that’s fine.
For the rest of us here we get thrown into massive anxiety about the first five minutes and then we’re getting almost comatose by 10 minutes about 15 minutes are really getting over in inundated by Lenix and who knows what you’re even talking about.
I 17 minutes and 59 seconds I finally found out that this thing method fix whatever you’ve got only works on Linux. Great
OK man I know you're not a Linux user and everything and I know you're an entitled Windows user. But if you're only talking to your 20 some gamer PALSor maybe even 200 gamer PALS that's fine. For the rest of us here we get tired of using such a terrible operating system and then we're getting almost comatose by the time Windows Update starts to do its thing. 17 minutes and 59 seconds into your comment I finally found out that you don't know how to use GNU/Linux.
But that's okay! I have videos about Linux, too. Check out my channel or my website sometime.
@@alyoshazeifman4657 Needing Linux is not a "bomb," just a requirement. :-)
when I try to fix the file it says error channel 0.0 allocated and then the file is only 100 kilobytes eventhough the reference file is 8 gigabytes and the corrupted file is 231 gigabytes
Great video!
And great version of untrunc!
Thanks a lot!
Yo you just saved me like 2 hours of rerecording video. I would kiss you if I could.
for anyone struggling, i used this software its free and worked! however, the first time i tried it, and when it asked me for a second reference file, i chose a much smaller one, and it completely worked (after it failed with a larger reference file).. link is below:
www.risingresearch.com/en/dvr/
This is not really a freeze. I had that happen before. It has to do with the io failing. Ssh in to reset the controls then everything resumes, without reboot.
...The problem is situated around vmware capturing control of keyboard and mouse to use the input for the guest. Running 'setxkbmap' should do the trick.
Thank you so much for the tip!
Hi, thanks for your video. It worked partially for me but I get an error during the process. "terminate called after throwing an instance of 'std::__cxx11::basic_string'". Any idea where it could come from?
saved me! thanks!
Glad this is still working!
I had 2 files, the working one was the 1h21m duration and the broken one was 3h17m duration. Your modified untrunc was able to recover it, although with incorrect framerate, but every player besides MPV can seek only within 1h21m - it seems your working file should be longer than truncated one, or the program won't be able to write timestamps correctly.
A workaround for this might be using ffmpeg (or a frontend like Kdenlive) to re-encode the fixed video into a different format. New timestamps should be created during the encoding.
hey bro thank you for your hard work i saw you video i have one mp4 decrypted fille wihch is not opening do you think this one is work my my mp4 file
I've got all the way up to adding the broken file to terminal and then i get this:
"terminate called after throwing an instance of 'std::bad_alloc'"
So after this I increased the ammount of RAM and Processing cores dedicated to my Virtual machine and now i get this.
"al@al-VirtualBox:~/Desktop/Repair/untrunc/untrunc-master$ ./untrunc --help
Usage: untrunc [options] []
al@al-VirtualBox:~/Desktop/Repair/untrunc/untrunc-master$ ./untrunc '/home/al/Desktop/Repair/C0001.MP4' '/home/al/Desktop/Repair/v1.MP4'
Reading: /home/al/Desktop/Repair/C0001.MP4
Composition time offset atom found. Out of order samples possible.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/al/Desktop/Repair/C0001.MP4':
Metadata:
major_brand : XAVC
minor_version : 16785407
compatible_brands: XAVCmp42iso2
creation_time : 2017-08-31 22:56:18
Duration: 00:13:08.64, start: 0.000000, bitrate: 51702 kb/s
Stream #0.0(und): Video: h264 (High), yuvj420p, 1920x1080 [PAR 1:1 DAR 16:9], 49959 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc
Metadata:
creation_time : 2017-08-31 22:56:18
Stream #0.1(und): Audio: pcm_s16be, 48000 Hz, 2 channels, s16, 1536 kb/s
Metadata:
creation_time : 2017-08-31 22:56:18
Stream #0.2(und): Data: rtmd / 0x646D7472, 204 kb/s
Metadata:
creation_time : 2017-08-31 22:56:18
terminate called after throwing an instance of 'std::__cxx11::basic_string'
Aborted (core dumped)"
Please help me, I feel like i'm soo close to getting this actually fixed
@@AlPottDrums hi! were you ever able to figure out the "terminate called after throwing an instance of 'std::bad_alloc" issue? i'm running into this problem now and haven't figured out a way to solve it.
It definitely worked, but it made the audio choppy and unusable for me. I wonder what I did wrong??
"CXXABI_1.3.9 not found" (required by ./untrunc)
"GLIBCXX_3.4.21 not found" (required by ./untrunc)
Right when I'm about to fix them with bash on Windows. Some help please? I've been doing this for hours on end.
+Kapeesh I haven't tried it on Bash on Windows, try installing a real Linux distribution.
Nerd on the Street - Tech It's the same thing.
I don't want to give up Windows, just for this to be fixed.
The exact same error is on the original Bash as well. Many people have complained about it.
+Kapeesh It sounds like you're missing a dependency that some Linux distributions might provide but Windows might not.
So no fix? :/
how about for windows users?
This shows how to do it with like 6 lines of code. ruclips.net/video/K3nWw9aX5kw/видео.html
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted
:(
My input file is 200GB. There is no way that will fit in RAM. I imagine this is my issue.
Mine isn't even recognizing my working mp4 as a video file... Any ideas? Please help... haven't been able to find anything referencing this online...Some kind of reference to line 121 in file.cpp ??? Very bizzarre, using two files from the same camera and it hasn't even gotten around to addressing the broken one. Spent about two days trying to compile the damn thing and get it working. Any help greatly appreciated thank you.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7fb5a8000a00] Non-increasing DTS in stream 4: packet 69 with DTS 0, packet 70 with DTS 0
Not an Audio nor Video track.
Not an Audio nor Video track.
Not an Audio nor Video track.
Repair: /Users/bill/Desktop/ftf/VID30086.mp4
Assertion failed: (offset >= 0), function seek, file file.cpp, line 121.
Abort trap: 6
Any way you can compile for Windows i don't have Linux.
+GamingDamned It might be possible, but I don't know how. It would be easier to just install Linux.
I just tired it and i get this error thing is my video file does play audio but no video just black but i do know video data is there. imgur.com/a/QflCE
Install a linux virtual machine
Every home should have a linux desktop, if you do not, you are losing out
I would but if it doesn't fix my issue then no point of keeping linux.
Other than its the worlds most powerful OS? Only reason I have one computer in my office on windows is so I can game :P However, I deal with sensitive information and its impossible to secure windows, so every other desktop in my office is linux. Not a days problems, no viruses, no malware, low skilled people can not break it. #LoveIt. Russians and Chinese are not getting my data :D I could never imagine doing my online banking and transactions on a microsoft desktop. Ehgaaads!
I need help doing this with Windows 10 please
Hello, please I need help, lost all my mp4 videos files I made using Windows Movie Maker to a ransomware virus called COVM, it changed all my mp4 files extensions to .covm, Can you help me please?
This is a different problem, unfortunately. Ransomware encrypts the files. Without the decryption key, there's not really a way to recover it. Luckily there are tools out there that have been able to reclaim the decryption keys from common ransomware and may be able to decrypt your files. I would look up the ransomware that got your computer and see if you can find a decryptor out there. Good luck!
I'm sure your tut would have worked but I didn't want to install Linux just for this.
just curiosity
which distribution of linux do you use? :)
also, haven't tested yet, i will still record something long enough to test, but you got a subscriber, very good explanation :D
At the time that I recorded this video, I was using Antergos, an Arch variant with built-in GUI controls. Arch is still my preferred distro, although I'm trying out openSUSE Tumbleweed as of yesterday.
oh, i was just about to start using antergos recently, coincidence
Do you have to be using Antergos for this to work?
got the same problems with my files....but i dont know nothing about linux ive tryed allready Grau GmbH Video Repair and Mp4 Video Recovery Tool but only one file of 8 in total worked -.-
Y entonces ... dios bajo y dijo:
or record in mkv.
Thanks a lot, Sir!
Nothing about this tutorial is short. You should probably put a disclaimer that Linux is required for this particular solution, and add timestamps to your video for the parts that are actually relevant. People looking for a fix are not quite as interested in the backstory as you might hope. Cheers.
😺 I used it to fix my drone videos, thanks 😺
Hey Nerd! You decide on a Inter-Frame screen recorder yet? Im only asking for I have been looking to do just the same.
What if my videos have been written over down to 2kb, or 0bytes?
You can only repair an MP4 file if the file contains data to be salvaged. The technique in this video is about accessing the data that you've lost the index to. If the file itself has actually been written over or deleted, you're not going to have any data to access. Your only hope would be some kind of hard drive file recovery tool, but that's a long shot, and entirely different from what I demonstrated here.
Do you know any good recovery tools?
32 mins.... it's shorter to just re-record my file...
If your file is easily reproducible enough that you're considering rerecording it instead of watching a video about recovery, then it's probably not worth it to attempt recovery. Some videos, on the other hand, are valuable enough that it's worth watching a 32-minute video (or, in my case, spending several days fixing a program) for a shot at getting it back.
so random to click on this video and see Grimm Eclipse lol i helped make that game!
Wow, I remember your name floating around in the Rooster Teeth community back then! Really cool you would stumble across this. I was a huge fan of RWBY and RT back in the 2012-2017 era, and it influenced this channel/company and my life a lot.
Man i am well confused, lost me right at opening a terminal inside a folder.. wtf? bahaha :(
plz help me with unplay video,
thnx man for the hard work.. i'm using ubuntu-16.04.1-desktop-i386 in vmware workstation 10
when i try to lunch the programm i got this message
" bash: ./untrunc: cannot execute binary file: Exec format error "
whish you can help
That error message occurs when you're using the wrong architecture. Since it's now a 64-bit program, I would try running it with 64-bit Ubuntu (that's AMD-64, rather than the i386 that you're using.)
thx for the reply.. i didn't notice that it's a 64 bits programm. So i will setup ubuntu amd-64 in virtual machine and give it a try.
man you are my savior ! thanks to you i was able to fix my 3.8 GB corrupted mp4 file :) it took me some time because i have no background on Linux but i managed to make it work after a lot of research and googling.. btw the reference video was only 107 MB and it worked just fine.. thank you so much again, you really saved me :)
i just want to tell noobs like me if they want to use this programm just run in under the last version of ubuntu "16.04.1" because if you use older versions you are going to face many problems as i did.
Were you running the VM of ubuntu from a Windows or Mac OS? I'm using virtual box on mac and at the moment it won't even download VLC properly 😫 .
I desperately need to repair this mp4 file and i'm feel like i'm running into stupid problems.
Any advice you can give me from when you did this would be seriously appreciated
Great
game?
Are you asking what game the footage I recovered was from? It was RWBY: Grimm Eclipse, like I said at the beginning of the video.
oh sorry... wasn't paying attention to what you were saying.. my bad
If that works I have to spent smth :D
Hey guys if you're anywhere like me where you have Windows 10 and NOT Linux, here is a Windows 10 tutorial in under 11 minutes (: ruclips.net/video/K3nWw9aX5kw/видео.html
Much longer version??? You must be 🙃 joking. Would have been great to know your solution only works in linux!!!! You stole 32 minutes of my life! news flash: most people use windows or macintosh pcs .
News flash: Linux is free to use, so if you have a video you need to repair, you can just download it.
ruclips.net/video/K3nWw9aX5kw/видео.html This shows how to do it with like 6 lines of code. I know this was 1 year ago, but it's helpful