Originally posted by lazarustx @
h4yn0nnym0u5e Using your test, I ran through 500 images with no corruption. I set the camera up for another round of images. I'll check those today and see if anything shows up as corrupt. I'm not really sure how this helps to narrow a hardware/vs software issue. Could you explain this a bit more?
Sure, no problem.
My
simplistic understanding of how you get light onto an SD card is that the sensor creates 36 million voltages, one for each pixel (18M green, 9M each red and blue); each voltage in turn is then converted to a 14-bit number and stored in RAM; and these 14-bit numbers are then compressed and stored on the SD card, either as a DNG (lossless compression) or JPEG (lossy compression). There's lots of steps omitted here, no doubt, but it'll do.
We can probably assume the sensor is broadly OK, or every image would be corrupt. Equally, your post #18 suggests that the SD cards are not to blame, as you get identical corruption when writing to two cards.
Getting the voltages off the sensor could be the issue; if there's a loose "red" wire then it could be fine at the start of the conversion process, then lose contact halfway through the conversion process, leaving you with a cyan cast over half the picture. It could equally come back into contact, so you get the cast for a tenth, or a line - either way, it's a hardware problem, the RAM copy is corrupt, and nothing will bring it back. In this case, both the JPEG and DNG on your SD card (if you write RAW+) will show near-identical corruption. A repair might be to replace the sensor or some other part.
Now what happens if the RAM itself is flaky (still a hardware problem)? If it's the area used for the uncompressed image then a major fault would give you many corrupt images, and a minor one probably some coloured dots, like those you get anyway from the sensor not being 100% perfect. So, either
really noticeable, or hardly visible. However, what if the compressed images are stored in flaky RAM prior to writing to SD? Depending on the compression algorithm and the image content, a tiny RAM fault could result in anything from an imperceptible error all the way up to a majorly corrupt image. Such a fault could be a permanently "stuck" bit or one that just occasionally loses its memory, including due to radioactivity in the chip itself - that's really random... In this case you might expect only one of the JPEG or DNG to be corrupt, because they were created from a valid uncompressed image, either in turn or to two different areas of RAM; they
could both be corrupt, but you'd expect the corruptions to be different because of the different compression algorithms. To repair this would require replacing the camera's "motherboard".
Then there's the "corner case" that I failed to explain. It can occasionally happen that an algorithm (compression, in this case) can be "upset" by a particular sequence of data, especially if it hasn't been rigorously tested. Some encodings, for example, don't allow a run of more than 5 zero values; if you have 9 to encode, you have to do 5 zeroes, then a 1 (which is discarded by the decoder), then the last 4 zeroes. That's hard to get wrong in either the encoder or decoder, but the lossless coding used for DNGs looks to be a lot more complex, and it's barely possible that Ricoh have, or had, a bug in their code which is only apparent for some patterns of image data. I'm sure they're constantly tweaking it, because it'll be part of the engineering going into getting the fastest possible buffer clear times. In this case you'd again expect only one of the DNG and JPEG to be corrupt, as the compression algorithms are radically different. A firmware update might fix the problem.
The corner case argument also applies to LR and DCU (and any other PP software you might try). Here, I don't know if there's any commonality - it could be everyone uses the same library code, and
that has a bug in it! But your statement that DCU can actually open a "corrupt" DNG and show it uncorrupted at full resolution (i.e. we're not being confused by the embedded JPEG) is a real head-scratcher. Why on earth would it
then decide to show it corrupted when you do a Save as...? And why
not if you export a JPEG? That just strikes me as bonkers, though it does also suggest the image can't be truly corrupt, just slightly weird in a way that affects all known PP software. [On going back through this thread I noticed that @frankoz has seen this problem too, using C1 and RT, two versions of Windows and Linux.] In this case, sending your camera for repair won't help.
There you go, a bit wordy but I hope it makes some sort of sense.
Cheers
Jonathan