exp_shift doesn't work as expected

I wanted to use the following values to shift exposure :

    imgdata.params.exp_correc = 1;
    imgdata.params.exp_shift = 1.0;
    imgdata.params.exp_preser = 0;

but only value 1.0 <= exp_shift <= 8.0 seems to result in a different exposed output ( lighter ).
All images created with setting 0.25 <= exp_shift < 1.0 look the same ( not darker ) ?

Forums: 

Seems like this is due to

Seems like this is due to

    imgdata.params.no_auto_bright = 0;

Using no_auto_bright = 1 seems to allow using values of 0.25 <= exp_shift < 1.0 !?
API docu doesn't indicate this constraint.

'negative' exposure shift

'negative' exposure shift darkens image (in linear fashion).
Auto-bright - brightens it.
It is expected, is not it?

-- Alex Tutubalin

...kind of expected.

...kind of expected.

But if exp_shift works when auto brightness is enabled, why doesn't it darken the image again when using negativ exposure shift - think of it as means to overwrite the auto brightness functionality - or shift it :-)

positive exposure shift may

positive exposure shift may be non-linear (highlights compression), while auto-bright is linear.

BTW, LibRaw's dcraw_process() is only 'sample' processing. It is not ideal and not in development. We hope developers will implement own processing on top of LibRaw::open_file/unpack.

-- Alex Tutubalin