reyalp
c_joerg
This method has one big disadvantage for timelapse. I this mode (which I use in my script) the camera always open the aperture for measure.
Understood, I'm not suggesting using it for timelapse, I'm just trying to understand the behavior of the
G1x.
I've done a bit more experimenting.
When Tv >= 1.3s and ISO > 320:
- If ISO set manually in Canon settings
- black point = 2048 (in DNG, CR2 has black = 512)
- camera shoots at selected ISO
- max raw image value in DNG = 16384, in CR2 = 14847
- raw image values in CR2 file = raw image values in DNG - 1536 (2048 - 512)
- If ISO set using AUTO mode (Canon setting or CHDK override)
- black point = 2048 (in DNG, CR2 has black = 512)
- camera shoots at 1/2 selected ISO
- max raw image value in DNG = 16384, in CR2 = 16384
- raw image values in CR2 file = raw image values in DNG - 1536, then scaled up by some factor
So Canon is setting the sensor/ADC to a higher black point; but then fudging the raw data in the CR2 file to pretend the black is actually 512. When AUTO ISO is selected it also shoots at 1/2 the selected ISO and scales the raw image data to get the max value back to 16384.
I haven't found a point in the code where the raw buffer data has been changed - it's probably being on the Digic processor as the file is being saved.
It may be possible to 'compensate' for this behaviour in the raw meter - e.g. detect if camera is
G1X, Tv >= 1.3s and ISO > 320, then adjust meter calculation. It would also need to take the calculated black point into account.
I have also seen some cases where the camera shoots at 1/2 ISO but with a black point of 512 - I have not determined the cases where this occurs yet.
Phil.