Browse code

vf_overlay: adopts FAST_DIV255 macro for calculating destination alpha

Ease readability, improve exactness.

Stefano Sabatini authored on 2011/10/31 19:32:11
Showing 1 changed files
... ...
@@ -452,7 +452,8 @@ static void blend_slice(AVFilterContext *ctx,
452 452
                         alpha = (alpha_v + alpha_h) >> 1;
453 453
                     } else
454 454
                         alpha = a[0];
455
-                    *d = (*d * (0xff - alpha) + *s++ * alpha + 128) >> 8;
455
+                    *d = FAST_DIV255(*d * (255 - alpha) + *s * alpha);
456
+                    s++;
456 457
                     d++;
457 458
                     a += 1 << hsub;
458 459
                 }