[FFmpeg-cvslog] avfilter/vf_hflip : move context func init in ff_hflip_init

Martin Vignali git at videolan.org
Wed Dec 13 12:35:43 EET 2017


ffmpeg | branch: master | Martin Vignali <martin.vignali at gmail.com> | Mon Dec 11 11:22:56 2017 +0100| [46f534bdee3439a1a803392b83fb867fcbc0adce] | committer: Martin Vignali

avfilter/vf_hflip : move context func init in ff_hflip_init

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

 libavfilter/hflip.h    |  1 +
 libavfilter/vf_hflip.c | 14 ++++++++++----
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/libavfilter/hflip.h b/libavfilter/hflip.h
index cbe1fb3d8c..204090dbb4 100644
--- a/libavfilter/hflip.h
+++ b/libavfilter/hflip.h
@@ -33,6 +33,7 @@ typedef struct FlipContext {
     void (*flip_line[4])(const uint8_t *src, uint8_t *dst, int w);
 } FlipContext;
 
+int ff_hflip_init(FlipContext *s, int step[4], int nb_planes);
 void ff_hflip_init_x86(FlipContext *s, int step[4], int nb_planes);
 
 #endif /* AVFILTER_HFLIP_H */
diff --git a/libavfilter/vf_hflip.c b/libavfilter/vf_hflip.c
index 957ddd9900..b77afc77fc 100644
--- a/libavfilter/vf_hflip.c
+++ b/libavfilter/vf_hflip.c
@@ -131,7 +131,7 @@ static int config_props(AVFilterLink *inlink)
     const AVPixFmtDescriptor *pix_desc = av_pix_fmt_desc_get(inlink->format);
     const int hsub = pix_desc->log2_chroma_w;
     const int vsub = pix_desc->log2_chroma_h;
-    int nb_planes, i;
+    int nb_planes;
 
     av_image_fill_max_pixsteps(s->max_step, NULL, pix_desc);
     s->planewidth[0]  = s->planewidth[3]  = inlink->w;
@@ -141,8 +141,15 @@ static int config_props(AVFilterLink *inlink)
 
     nb_planes = av_pix_fmt_count_planes(inlink->format);
 
+    return ff_hflip_init(s, s->max_step, nb_planes);
+}
+
+int ff_hflip_init(FlipContext *s, int step[4], int nb_planes)
+{
+    int i;
+
     for (i = 0; i < nb_planes; i++) {
-        switch (s->max_step[i]) {
+        switch (step[i]) {
         case 1: s->flip_line[i] = hflip_byte_c;  break;
         case 2: s->flip_line[i] = hflip_short_c; break;
         case 3: s->flip_line[i] = hflip_b24_c;   break;
@@ -153,9 +160,8 @@ static int config_props(AVFilterLink *inlink)
             return AVERROR_BUG;
         }
     }
-
     if (ARCH_X86)
-        ff_hflip_init_x86(s, s->max_step, nb_planes);
+        ff_hflip_init_x86(s, step, nb_planes);
 
     return 0;
 }



More information about the ffmpeg-cvslog mailing list