Your favorite Apple, iPhone, iPad, iOS, Jailbreak, and Cydia site.
04-27-2009, 04:18 AM #1Editing .mov files for corrupt cycorder videos...
Ok so after many hours of wasted time, I am stuck yet again trying to convert my corrupted cycorder video. Not thinking, I didnt have my phone on airplane mode and I got a call while recording a 30 minute clip. The video is very important to me, and I would like to get it fixed. Heres what I found out so far, and correct me if I'm wrong on some of the info I give you.
Note: Running Vista Premium Home 32-bit (all my hardware and software is top of the line). Please dont cut on Windows, I know it sucks and Mac's are better... And that is not what this thread is about.
Steps that I took (including what happened):
1) Recording video, everything working great.
2) Receive a phone call, deny, and end recording right after.
3) File cannot be played with the player on the iphone, getting an error message inside cycorder saying "The movie could not be played".
4) SSHed the data to my pc, all 146 mb's worth
5) Opened file with quicktime getting the following error message "Error -2048: Couldn't open the file xxxxxxxxxx.mov because it is not a file that quicktime understands".
5) Opened with WMP11, of course that didnt work... Error message saying I dont have the required codec.
6) Started doing a little bit of digging, googling, and downloading crap software that was no help at all.
7) No solutions found, so I decided to check the Atoms and Hash's of the files... Compared them and came to some conclusions that I have no idea on how to fix. If anyone out there knows how to fix the following issues, please help me out with this problem.
A) Noticed that the cycorder app failed to finish the file (obviously) and did not complete the header atoms of the .mov file.
B) The above stated (statement A) is listed under the moov category... Please take a look at these comparisons of a good cycorder .mov recording and a corrupt one:
The window on the right side of the screenshot is the GOOD .mov file.
As to this point, Im stuck. I am just wondering if anyone out there knows how to edit the atoms of these containers. Maybe we could fuze in the atoms of the moov into the corrupted file to make it play as if it were finished inside of cycorder like it was supposed to be.
Message to saurik: What codecs did you use to encode the audio/video into the .mov via cycorder? Maybe we could design a program that can finalize the unfinished/corrupt cycorder videos into the file output that it is supposed to be.
CAN ANYONE HELP ME WITH THIS?
UPDATE: 4:19am (04-27-2009)
Ok so I am going to bed now, its 4:20 am here and I'm beat. I started looking into java conversion by referencing the video and then exporting it into a new moov format container... This will give it the data needed to play the file in quicktime (one of the key elements needed from cycorder upon ending the recording).
I'll get this cracked, It's just a matter of time... And this only applies to the data that is not corrupted beyond repair due to deletion or an empty data shell.
UGHHH I hate this...... Now if only I could build a time machine and turn on the airplane mode on my phone.... DAMM IT!!!!
Update 2:38pm (04-27-2009)
Done with class now, figured I'd get back into getting this file fixed. Realized that java converstion was pointless because it could not recognize the file no matter how much I tweaked the code.
Now looking into some new software to possibly re-encode the file into the correct .mov file with the moov atom present. I will pull the specs from a good cycorder video and place them into the moov information header. Still looking on how to do this though, wish something would just pop up on google search, but of course it doesen't. Big pain in the arse if you ask me, but I like challenges... I will keep you all updated.
SAURIK WE NEED YOUR HELP!!
Update 9:51pm (04-27-2009)
I've given up for today, until I hear something back from Saurik or someone with a little more experience on file coding. Lets all hope we have a fix to this, I know alot of people who had important videos going corrupt because of this problem (including myself).
Also please check out my post below, it gives a little more info following this update.
Update 03-27-2013 (4 Years Later!)
I still have my corrupted video. It seams as though Xylor wrote a python script to fix the corrupted parts of the file, however in my absence I missed the opportunity to get the download from him before it was removed from the internet. Xylor if you ever see this message again, please let me know how you fixed the problem. If any one else was able [or is able] to fix this issue, your input would be greatly appreciated!
Last edited by NFL_Demon; 03-27-2013 at 04:36 PM. Reason: updated
04-27-2009, 06:59 AM #2
Your best bet would probably be to contact Saurik himself. He is all over the web so it shouldn't be hard to find him.
04-27-2009, 09:49 PM #3
Found out that the video data is for sure inside of the file made. The only thing missing is the moov atom information as well as a header and footer. The video must be re-encoded with these specifications:
resolution= 384x288 (4/3)
Codec= Still Image JPEG DIB
Rate= 44100 Hz
Codec= Apple QuickTime SWOT Little Endian
PCM Audio Codec
The .mov file needs this information embedded into the file in order for media players to play the file correctly... Recordings interrupted on cycorder fail to write these upon finalizing.
I messaged saurik on twitter, lets hope he can get a minute to check out this problem; and hopefully help everyone including myself with this error.
Last edited by NFL_Demon; 04-27-2009 at 09:51 PM. Reason: Automerged Doublepost
05-03-2009, 05:35 PM #4
Any luck with this?
05-11-2009, 11:58 AM #5
Last edited by takeoh; 11-02-2009 at 07:11 PM.
05-21-2009, 12:05 AM #6
I'm in the same situation as all you here. If anyone finds a solution please share it, if I find one I will do the same.
05-31-2009, 12:18 AM #7
Any luck with this?
Ive been looking for answers too but unable to find any.
05-31-2009, 05:23 PM #8Me too
I am also having this same issue. If anyone else finds a solution, please post it here. Thanks
06-01-2009, 05:00 PM #9Same Problem!!!
Have the same issue with two corrupted MOV files which i recovered from my memory card using some tool, I'm searching for a way to fix the files to be playable even if some data is still corrupted.
please keep us posted guys and if i reach into anything i'll sure add my help.
06-03-2009, 07:00 AM #10same problem
Any1 found the solution ?? if so please post it here or email me @ [email protected]
06-11-2009, 09:54 AM #11Pay Solution
On my endless search to find something to correct my video file, I managed to find someone than will possibly fix the problem.
Unfortunately it is a paid service and beyond what I'm willing to spend... That said, I thought I would share anyways since others might be willing to pay more. I could see my video in the preview, so I'm just assuming it will work.
06-13-2009, 01:52 AM #12
Treasured works, and the price of the repair service is now down to $49.
That's still expensive, but it's much less than what Treasured indicates first.
(Discounted price is confirmed only after you've sent the Repair Request)
06-13-2009, 05:13 PM #13
have you tried converting the .mov file to a different format (video converter). Also, have you tried playing the file on VLC (computer side)?
08-13-2009, 11:17 PM #14I got something that works!
The program is in the description, it works 100%
Last edited by StealthBravo; 01-15-2011 at 12:37 PM.
08-16-2009, 03:26 AM #15
NFL_Demon: Thanks so much for your time on this. I know you've probably given up on whatever files you had, but you did make some progress.
After poking around, I saw that the main MDAT box (atom) has a length of 0. This is incorrect, and is probably due to the fact that while Cycorder is recording, it doesn't know the final size of the MDAT box. The data is probably truncated, but I put in the correct size anyway (the 4 bytes before "mdat" that are currently all 0's).
Second, there is no MOOV box. This is where I'm stuck: you can just append it to the end of the file, that's probably what Cycorder does when it finalizes the video. In our case though, it is never written. I tried copying over the MOOV box from saurik's sample video, and it then plays in VLC but has tons of artifacts. I'm guessing that the MDAT box (and the contained video data) are relatively intact, so it must be a problem in the MOOV box.
This is where I'm stuck. The MOOV box has tons of metadata about the MDAT data; not just author & title, but a table of samples and iframes. I'm guessing this metadata needs to be recreated for the specific movie, and not copied over from another Cycorder video. Many of the other fields should be fine (codec, dates, resolution, etc).
Anyone know how to recreate the necessary parts of the MOOV for a given movie file? Or maybe how to recreate a video file from just the MDAT box & data?
09-03-2009, 03:49 PM #16
This worked for me. Well, it actually gave me a .jpg for every frame, now I just need to put it back together.
File Juicer - Extract images from PDF, PowerPoint, Word, Excel and other Files on Mac OS X
09-03-2009, 06:42 PM #17Any success yet?
Has anyone successfully recovered a file by any of these tips, bits or suggestions?
I have a few files that still need a recovery. There must be an app or a manipulation that can restore the valid video data between these broken container starts/ends.
Has anyone contacted or corresponded with saurik about this need yet?
Thanks for all the research and attention. I'd love to help follow through on this but don't have the tech expertise with video files.
Last edited by swbratcher; 09-03-2009 at 06:42 PM. Reason: Automerged Doublepost
09-14-2009, 05:20 PM #18
09-23-2009, 12:35 PM #19Cycorder video unplayable
Awesome app to take video on jailbroken iPhones, and Cycorder saves movies in .mov format.
Only problem is that if you are capturing video, and someone calls your phone, someone texts you, or your phone dies, the video will not finalize and therefore will not be playable.
On Cycorder itself, you get this message, "This movie format is not supported."
If you transfer the video to your PC, Quicktime also will not play the file, "Couldn't open the file 125367blakblah.mov because it's not a file Quicktime understands."
VLC player will simply not play it.
It's a corrupt .mov file, and there are missing "headers," etc because Cycorder did not get a chance to finalize the video.
Searched around for possible solutions, tried converting from one format to another with no success. Tried out Bitmap Extractor on PC and I just got some black images, and other images won't open.
This seems like it should be so simple, since there is data inside of this file, something is in it.
Perhaps saurik should offer a solution.
Anyone have ideas or success?
10-05-2009, 10:58 PM #20
There are lots of us out here who have important cycorder videos that have been corrupted. And someone must know the answer!?
Right now the only option is to use File Juicer to extract the information inside of it (works for some people). But this doesn't work for PC.. Anyone know how to correct one of these unfinished cycorder videos?