== Sequencer ==

Fixed order of operation in 3-way color corrector according to

http://rebelsguide.com/forum/viewtopic.php?t=810

Thanks to mindrones for pointing this out.
This commit is contained in:
Peter Schlaile 2008-05-04 15:39:27 +00:00
parent 6c05a92fe1
commit 175a0c34f7

@ -1273,8 +1273,8 @@ static void make_cb_table_byte(float lift, float gain, float gamma,
for (y = 0; y < 256; y++) {
float v = 1.0 * y / 255;
v += lift;
v *= gain;
v += lift;
v = pow(v, gamma);
v *= mul;
if ( v > 1.0) {
@ -1294,8 +1294,8 @@ static void make_cb_table_float(float lift, float gain, float gamma,
for (y = 0; y < 256; y++) {
float v = (float) y * 1.0 / 255.0;
v += lift;
v *= gain;
v += lift;
v = pow(v, gamma);
v *= mul;
table[y] = v;
@ -1371,7 +1371,7 @@ static void color_balance_float_float(Sequence * seq, TStripElem* se,
while (p < e) {
int c;
for (c = 0; c < 3; c++) {
p[c] = pow((p[c] + cb.lift[c]) * cb.gain[c],
p[c] = pow(p[c] * cb.gain[c] + cb.lift[c],
cb.gamma[c]) * mul;
}
p += 4;