Sometimes JPEG photos simply can not be repaired because the majority of the data inside a file simply is not JPEG data. I had one of those cases earlier this week. Good thing was that a reasonably sized thumbnail could be extracted.
The case: a Samsung Galaxy 5
Photos were taken using a Samsung Galaxy 5. Photos were 1600 x 1200 pixels and 90 – 95% of each photo was invisible. Within the actual JPEG bitstream there were thousands of invalid JPEG markers. An invalid JPEG marker is often just the tip of the iceberg. If you see 1 invalid marker, it is often surrounded by more corrupt data. An invalid JPEG marker is a byte that accidentally was turned into a marker: One flipped bit can do the job (FEh -> FFh).
My software JPG-Repair can get rid of all these invalid markers within the JPEG bitstream. But this alone is not enough to repair a severely corrupted JPEG. I have given examples in the past where cutting data surrounding the invalid markers greatly improved a photo to the point where it was view-able again. In the below example, hundreds of bytes around the invalid marker had to be removed.
In the case of the Samsung however, about 30% of the data was corrupt. And that is too much when you only have a 600 KB or so file to work with.
Extract Thumbnails: JPG-Repair vs Stellar Repair for Photos
In most cases thumbnails in JPEG file are useless. They are just too tiny, often only 160 x 120 pixels. In this case however resolution of the embedded thumbnail was just acceptable to the customer: 512 x 384 pixels.
In this case you can extract the thumbnails using the free demo version, it will save them as BMP file though.
Every now and then I compare what you can accomplish with JPG-Repair with other photo repair software. And sometimes the results are very surprising.
In this case I asked Stellar Repair for Photos (previously Stellar JPEG Repair) to repair the same photos. It was unable to repair the photo which is what I expected because it’s just too corrupt. However, like JPG-Repair, Repair for Photos indicated that it would be able to extract the thumbnail. What I do not understand is why it isn’t able to extract/preview the thumbnail intact. Below you can see JPG-repair and repair for Photos processing the exact same file and displaying the exact same thumbnail: