Getting live view exposure (was Re: Improving CHDK ND filter support)

  • 3 Replies
  • 126 Views
*

Offline reyalp

  • ******
  • 11448
Advertisements
I tested the get_current_exp function on elph130 bit. All the values seem to be the currently active values, so the Tv reflects what the live view is using, even in half press. I didn't check while a shot was actually in progress. The gain value isn't an sv96 value, I saw values ranging from -155 (aimed directly at a light) to 192 (very low light)

There's a value after gain which comes from a function referencing ImgPixel.c. It was always zero in my testing.

Getting live exposure values without needing half press might be useful.
« Last Edit: 12 / August / 2018, 23:48:22 by reyalp »
Don't forget what the H stands for.

Re: Re: Improving CHDK ND filter support
« Reply #1 on: 06 / August / 2018, 05:17:25 »
Getting live exposure values without needing half press might be useful.
Very useful!

A "live" exposure meter is the final piece of making my GUI 3.0 code useful.
Ported :   A1200    SD940   G10    Powershot N    G16

Re: Re: Improving CHDK ND filter support
« Reply #2 on: 12 / August / 2018, 22:27:45 »
I checked in the finsig_vxworks and finsig_dryos changes for get_nd_value, get_current_nd_value and get_current_exp. These aren't 100% verified, but I checked the disassembly for a pretty good sample and didn't find any issues.
I'm starting to get excited to look at the GUI 3.0 code again.

The gain value isn't an sv96 value, I saw values ranging from -155 (aimed directly at a light) to 192 (very low light)
Wouldn't it be nice if that value simply reflects under & over exposure amounts at the current Tv, Av, Sv, NDfilter, and EvAdjust settings?  Implementing a live GUI exposure meter becomes a simple project at that point.

If I get a few moments, I'll play with it unless someone else chimes in first.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline reyalp

  • ******
  • 11448
Re: Re: Improving CHDK ND filter support
« Reply #3 on: 12 / August / 2018, 23:33:23 »
Wouldn't it be nice if that value simply reflects under & over exposure amounts at the current Tv, Av, Sv, NDfilter, and EvAdjust settings?
Based on the the values I saw, I don't think this is the case. I'd guess it's more like a lower level representation of sensor gain, but that's pretty much a wag.

There's a lot of strings referencing CDSGain that might provide clues. There is a function  SetCDSGainStep which prints a string "SetCDSGainApex %d" which might hint at a conversion.

get_current_exp fills an array of 16 bit values: Av, Tv, "Gain", something from "ImgPixel.c", the ND value (ND + Iris cams only) and one more value that's (often?) hardcoded to 0.

For interactive testing with chdkptp, it's easier to call the functions directly with call_func_ptr so you don't have to deal with allocating memory for the array.

edit:
Split this to a new topic. The only connection to the ND project was that it was a useful path to finding the current ND value.
« Last Edit: 12 / August / 2018, 23:49:23 by reyalp »
Don't forget what the H stands for.


 

Related Topics