]> git.sesse.net Git - ffmpeg/commitdiff
avfilter/vf_xfade: do not use alpha for average rgb color
authorPaul B Mahol <onemda@gmail.com>
Thu, 27 Aug 2020 12:42:44 +0000 (14:42 +0200)
committerPaul B Mahol <onemda@gmail.com>
Thu, 27 Aug 2020 12:45:21 +0000 (14:45 +0200)
libavfilter/vf_xfade.c

index 05fa32a4db52766220bc1e7ee6aadb09b9d32c84..adfcd759a81cb90d9ead1595537f81565c6e26ef 100644 (file)
@@ -1377,15 +1377,16 @@ static void fadegrays##name##_transition(AVFilterContext *ctx,
                                                      y * a->linesize[p]);            \
                     const type *xf1 = (const type *)(b->data[p] +                    \
                                                      y * b->linesize[p]);            \
-                    bg[0][0] += xf0[x];                                              \
-                    bg[1][0] += xf1[x];                                              \
                     if (p == 3) {                                                    \
                         bg[0][3] = xf0[x];                                           \
                         bg[1][3] = xf1[x];                                           \
+                    } else  {                                                        \
+                        bg[0][0] += xf0[x];                                          \
+                        bg[1][0] += xf1[x];                                          \
                     }                                                                \
                 }                                                                    \
-                bg[0][0] = bg[0][0] / s->nb_planes;                                  \
-                bg[1][0] = bg[1][0] / s->nb_planes;                                  \
+                bg[0][0] = bg[0][0] / 3;                                             \
+                bg[1][0] = bg[1][0] / 3;                                             \
                 bg[0][1] = bg[0][2] = bg[0][0];                                      \
                 bg[1][1] = bg[1][2] = bg[1][0];                                      \
             } else {                                                                 \