Hello,
I have added a bunch of table based functions for fast char/float/char
conversion, which can also simultaneosly do almost arbitrary gama->linear and
back conversions.
I plan to change the existing plugins which work with float, to use these
functions, and of course use them in future plugins.
This way, we can have liear color space processing, which was discussed here
recently, not only at zero cost, but even with some speed gain, as I have
found that these functions are faster than the usual
out[i].r=f1*(float)*cin++;
and
*cout++=(uint8_t)(in[i].r*255.0);
The new float to char conversion can also take ANY floating value as input and
return a valid 0...255, thus removing the need for [0...1] range checking in
the float domain, making further speed improvements possible.
Marko Cebokli