MLV File Corrupted From 7D Shutting Down Due to Dead Battery: Help Fixing Please

Started by PaulHarwood856, October 14, 2016, 05:12:50 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

PaulHarwood856

Hello ML Community,

     I was shooting raw video on my 7D a few months back, and during recording a long file my battery died.

     I cannot open the file, and don't have much experience with MLV_Dump. I have read a forum post about this issue and MLV_Dump possibly figuring out what the problem is with the file:

     http://www.magiclantern.fm/forum/index.php?topic=16126.0

     Here is a link to the file via Google Drive if anyone wants to take a look: https://drive.google.com/drive/folders/0Bz5n0qYxIkVOZHo4STFMTzVGdUE?usp=sharing

     I appreciate any help that can be provided. Thank you.

- Paul Harwood

reddeercity

Give this a try if you are on a PC , http://dl.phreekz.de/raw2cdng/mlvdiag.1.0.1.zip
Read this post about mlvdiag.1.0.1
Load your mlv , it should help find the problem. More then likely the file is ok .
you may have a  file that did not get closed when the battery died

PaulHarwood856

Hey reddeercity,

     Thanks so much for your helpful response! Is there a program like this for Mac? If not, I can try doing this on a friend's pc when he's free. Would be neat to be able to do on a Mac if something like this happens again. Thanks again!

- Paul Harwood

reddeercity

Hi Paul ,
Just looking at your mlv files on the google drive and almost all files have 52 bytes ,
temp has 300MB+ so if I'm not mistaken spanning files should be about 4GB each .
As the 7D is like the 5D2 which runs a fat32 , So Do you have the Files on a CF Card Still ?
By My count with 10 spanning files you should have 40GB+ , all you have is 10 spanning x 52 bytes.
If the files just live on a hard drive what is the size of the folder ? If it's not at least
40GB then there are lost , but if there are still on the CF card then there is a great chance
there can be recovered . 

PaulHarwood856

Hey reddeercity,

     Thank you so much for looking at the files on Google Drive. I have 35.28 GB on my hard drive from the card, but there were some pictures I went through. Is there a way I can tell, by looking at the files? If you need me to upload to Google Drive, I can. I appreciate all of your help.

- Paul Harwood

PaulHarwood856

Hey reddeercity,

     Sorry to double post, but I figured I would type out the files and information, to help you further. Thanks again, I really do appreciate it.

M03-1605.MLV - 24.774 seconds 595/595 Frames (1.33 GB)

M03-1607.M00 (52 bytes)

M03-1607.M01 (52 bytes)

M03-1607.M02 (52 bytes)

M03-1607.M03 (52 bytes)

M03-1607.M04 (52 bytes)

M03-1607.M05 (52 bytes)

M03-1607.M06 (52 bytes)

M03-1607.M07 (52 bytes)

M03-1607.M08 (52 bytes)

M03-1607.MLV (608 bytes)

M03-1612.M00 (975.5 MB)

M03-1612.MLV - 1 minute 38.390 seconds 2360/2360 Frames (4.29 GB)

M03-1615.M00 (3.71 GB)

M03-1615.MLV - 2 minutes 29.482 seconds 3585/3585 Frames (4.29 GB)

M03-1618.MLV - 1 minute 9.986 seconds 1679/1679 Frames (3.75 GB)

M03-1620.MLV 9.467 seconds 228/228 Frames (509 MB)

M03-1621.MLV 50.633 seconds 1215/1215 Frames (2.71 GB)

M03-1631.M00 (1.36 GB)

M03-1631.MLV 1 minute 45.480 seconds 2530/2530 Frames (4.29 GB)

M03-1654.M00 (3.38 GB)

M03-1654.MLV 2 minutes 23.309 seconds 3437/3437 Frames (4.29 GB)

MLV_REC.TMP (391.1 MB)

- Paul Harwood

PaulHarwood856

Hey reddeercity,

     Just wanted to let you know that this happened again tonight while shooting the moon. The clip which I filmed a plane flying across the moon won't play in MLVRawviewer, and it's the same problem with chunks and file sizes as the last clip. Is there something wrong with my camera or CF card? I did get an error 70 once tonight, batteries kept dying. But when I shot this clip the battery didn't did midway... Sorry for the hassle, I just want to figure out to get these files to open. Lol.

- Paul Harwood

user0597

I once had a bunch of MLV files I couldn't open so in case it repeated itself I wrote this guide (for myself): https://www.upload.ee/files/6251711/MLV_FIXING_GUIDE_v1.11.pdf.html
It didn't happen again. I instead had a bunch of h264 files I couldn't open when another card decided to call it quits. There's a tool for that but that's off topic.

PaulHarwood856

Hey user0597,

     Thank you so much for providing this guide. I'm having trouble figuring out Hex Key, since my files are a bit different. Is there any way you could take a look at the files and try hex key? And if you figure it out, could you provide screenshots so I know how to do it next time? Here is a link via Google Drive: https://drive.google.com/drive/folders/0Bz5n0qYxIkVORDEweW1ianRrdHc?usp=sharing

     If anyone wants to take a stab at this, I would greatly appreciate it. I would love to get these two files recovered. Any other suggestions are welcomed as well.

- Paul Harwood

user0597

I'm not aware of a tool that does this automatically so I did it manually. If anyone does know a tool that does it, however, I would also like to know.
Anyway, all the small .MLV files are not needed. The large files are the ones that contain everything.

The block that is affected is shown in MLV_dump as Offset:0x00......
So, from that offset mlv_dump showed onward, upto the next NULL@... (you can use Ctrl+F for that), til the last box.

So a block looks like:
VIDFĄé,.Ķ...........
lots and lots and lots of stuff here



And the next block after:
VIDFĄé,.Ķ...........
lots and lots and lots of stuff here



Let me break it down so it could actually be followed:
In HxD you can use "Select Block" or Ctrl+E to select the block.
When on the main screen, the location (the offset) is shown in the lower left corner.
This is what you need to enter into Ctrl+E.


  • First number is from mlv_dump.
  • Ctrl+F  "NULL@" and select the last empty box you see.
  • Make a note of the number in the lower left corner.


  • Scroll randomly way down and select a random block.
  • Ctrl+F VIDF. Note the offset.
  • Ctrl+F "NULL@" and select the last empty box you see. Note the offset.

Enter those last two numbers into Ctrl+E. OK.
Do Ctrl+C.
Enter the first two numbers into Ctrl+E. OK.
Do Ctrl+V.

"Save as" to a new MLV file (Do not overwrite the current one).

PaulHarwood856

Hey user0597,

     Thank you so much for your responses. I appreciate your help. I've looked at healthy .MLV files which have NULL and VIDF, but these files that won't play don't even have NULL or VIDF in them. If you take a look at this forum post: http://www.magiclantern.fm/forum/index.php?topic=14980.0 This is the exact problem I have. Thankfully the plane flying across the moon was not in the clip that failed to record. I thought it was, sorry for the carelessness. And the Guitar MLV file that failed to record had no sound any way, so I guess it's okay I don't have that clip. I know this happened once because my battery died mid-recording, and when shooting the moon I'm not sure why. I was having battery issues previously that night so maybe that was it. It could be the card. I'll have to record some clips to see if I can replicate the issue, if not, then the card and camera is fine. Also, I ran Photorec on the CF card (hadn't formatted it yet, so make a disk image first, then ran PhotoRec), an application for recovering data, and recovered the Moon MLV, but it didn't show anything in the clip when played on MLVRawviewer, and I couldn't get MLVFS to extract DNGs from it. Also, I found some files via Photorec that said if found, please report here. I know it said the recording failed because of battery drainage or something. I'll make sure to go through those files and upload to Google Drive for Magic Lantern to take a look at. I wonder if I keep my batteries in a plastic bag in my camera bag that they wouldn't drain before shooting with this cold weather... Thanks for all the help everyone, and if anyone has any more input please share. Thanks.

- Paul Harwood

a1ex

Since the filesystem table was not updated (because the battery went off while recording), the data is probably present only on the card, but not in the file allocation table. Therefore, copying the files won't do the trick.

In this case, you may have some luck with this: https://bitbucket.org/baldand/mlrawviewer/src/master/tools/rawcover.py

g3gg0

some other way:

1. get an 1:1 image of your card (not copying files only)
2. get photorec
3. let it process the card image

Help us with datasheets - Help us with register dumps
magic lantern: 1Magic9991E1eWbGvrsx186GovYCXFbppY, server expenses: [email protected]
ONLY donate for things we have done, not for things you expect!

PaulHarwood856

Hey a1ex and g3gg0,

     I couldn't figure out how to run Python and the rawcover.py script. I can't figure out how to download the script, all I could do was save as rawcover.py. I downloaded Python 2.7.12 I have already tried the disk image of the CF card and was able to recover the clip, and there were 818 frames, but I couldn't extract any dngs from it. I really tried to understand rawcover and Python and looked on the internet and on the Magic Lantern Forum, and found this: http://www.magiclantern.fm/forum/index.php?topic=10136.0 but it's all a bit over my head. I'm on a Mac, maybe someone could explain what to type in the Terminal... It seems like Python takes a while to understand as well... Thanks for all your help!

- Paul Harwood

PaulHarwood856

Hey sorry to double post, but I was able to export dngs from a few recovered clips from the disk image I made of the CF card, but all the frames were black. I wasn't able to get MLVFS to recognize it, but mlrawviewer was able to export dngs and a ProRes 4444.MOV file. I am curious how to get those mlvs to work with MLVFS though, in case this happens again. The file that wouldn't play was M14-0725.MLV, and I recovered the same file, but it still wouldn't play. It was recovered as: f63726490.mlv, and they both have 608 bytes. The other files that play in mlrawviewer have black frames, and are 992 bytes. Most mlv files recovered wouldn't even open in mlrawviewer. The M14-0725.MLV file would open in mlrawviewer, but wouldn't play/had no frames.

- Paul Harwood