[FFmpeg-cvslog] avfilter/vf_alphamerge: use av_image_copy_plane()

Paul B Mahol git at videolan.org
Mon Apr 10 18:40:21 EEST 2017


ffmpeg | branch: master | Paul B Mahol <onemda at gmail.com> | Mon Apr 10 17:23:49 2017 +0200| [d6b9f2b7da8eff480c4c454841d769b75e30f536] | committer: Paul B Mahol

avfilter/vf_alphamerge: use av_image_copy_plane()

Signed-off-by: Paul B Mahol <onemda at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d6b9f2b7da8eff480c4c454841d769b75e30f536
---

 libavfilter/vf_alphamerge.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/libavfilter/vf_alphamerge.c b/libavfilter/vf_alphamerge.c
index a8a8d56824..a4aa8dbe16 100644
--- a/libavfilter/vf_alphamerge.c
+++ b/libavfilter/vf_alphamerge.c
@@ -25,6 +25,7 @@
 
 #include <string.h>
 
+#include "libavutil/imgutils.h"
 #include "libavutil/pixfmt.h"
 #include "avfilter.h"
 #include "bufferqueue.h"
@@ -129,14 +130,11 @@ static void draw_frame(AVFilterContext *ctx,
             }
         }
     } else {
-        int y;
         const int main_linesize = main_buf->linesize[A];
         const int alpha_linesize = alpha_buf->linesize[Y];
-        for (y = 0; y < h && y < alpha_buf->height; y++) {
-            memcpy(main_buf->data[A] + y * main_linesize,
-                   alpha_buf->data[Y] + y * alpha_linesize,
-                   FFMIN(main_linesize, alpha_linesize));
-        }
+        av_image_copy_plane(main_buf->data[A], main_linesize,
+                            alpha_buf->data[Y], alpha_linesize,
+                            FFMIN(main_linesize, alpha_linesize), alpha_buf->height);
     }
 }
 



More information about the ffmpeg-cvslog mailing list