Some advice I have always given when it comes to shooting weddings, aside from having a secondary camera (in case one breaks) has been to keep the size of flash cards relatively small, forcing you as a photographer to swap cards regularly. Should a card corrupt whilst shooting, only a small subset of images will be lost. This approach certainly has its drawbacks though, chief-among-which is that of needing to swap cards at in-opportune moments. One of the cameras I use (my main camera) takes two cards, and switching between them is a breeze. The other, however, does not. In order to get around this issue, I purchased another couple of cards prior to the most recent wedding that I had to photograph. I deliberately stuck to a brand that I knew well; Lexar Professional, buying an 8GB Compact Flash card for one camera and an 8GB SD card for the other.
Despite trying both these cards in their respective cameras prior to the wedding itself, when I came to copy the images I had taken on both cameras, the computer refused to download the images and removed them from the flash drives. With the CF card, a file for every image was downloaded, but instead of being around 12MB in size they were around 800KB in size and completely useless. The SD card did not even download files but still caused the contents of the disk to be wiped.
The contents of these two cards represented a decent 95% of all the photos I had taken during the day. Without them, the images I had managed to download from another card would count for naught. The only option I had was to crack out the image recovery software. Lexar cards come with a free download of their recovery tool; ImageRescue (priced at $33.99 if purchased from Lexar). I made use of one of the codes supplied with the new cards to start the recovery process on the CF card. The process is naturally quite slow, but eventually, to my great relief, the images were all recovered, with only one raw file having been corrupted.
Based on that success, I plugged the SD card into the computer and began the recovery process, only to find disappointment, when the application could not recover the images. Instead, a file was recovered for every file that should have been on the disk, but these, too, were only a few-hundred KB big (instead of the expected ~16MB raw files). At this point I was really beginning to get worried – I had tried the card in three different memory card readers, all with no success. A few days prior to this happening, I had read an article about image recovery using Photorec; a command-line open-source (free) application for image recovery, so decided to give this tool a go. Being a command-line tool, it’s arguably not the most intuitive tool to use, but there is a decent step-by-step guide. To my great relief (after a bit of to-ing and fro-ing), the tool began to recover files off the card. Looking at the size of the files, they looked correct at around 16MB each. Phew.
Photorec recovered the images as ‘sr2’ files – I assumed this stood for something like Sony Raw and so thought nothing of needing to change the extension back to the standard ARW extension. I loaded the photos from the PC that had been used to recover the images on to my laptop to begin processing them, only to find that every time my editing software tried to load the images, they looked like they were completely corrupt – every image looked the same. Once again, my heart sank! I began investigating tools that might be able to lift the full-size jpg embedded in the raw files out as the image previews were showing correctly. I found a few that looked as though they would offer this functionality, but none were successful at doing so. After all these failed attempts, I had virtually given up hope of recovering these images, until I tried opening one of them using Shotwell – an awful photo management application in Ubuntu.
Despite what I feel about this application, it has turned out to completely save my skin, as it successfully loaded the raw file, and allowed me to save out a full resolution jpg. This got me wondering whether AfterShot was just getting confused as a result of the file extension. I renamed all the files from .sr2 to .arw and imported them into AfterShot once more, this time much happier to see that all the files loaded correctly, thumbnailed and successfully loaded the full-res raw file to the screen. What a relief following some very stressful hours.
At the moment, I have absolutely no clue whatsoever what caused the corruption. The fact that it happened on two different cards, written to by two different cameras make the whole subject very confusing. I will have to experiment some more to try and see whether there is something wrong with the cards, or whether the fault lies elsewhere in the process. Both cards were formatted by the cameras before I began using them.