]> git.sesse.net Git - ffmpeg/blobdiff - libavfilter/vf_hflip.c
avfilter/Makefile: skip compiling vaapi_vpp.h when vaapi is not enabled
[ffmpeg] / libavfilter / vf_hflip.c
index 957ddd99003217e5edc2c086ef930859b4124607..b77afc77fc9ec343ad76348cbc3ed95aa24cfa85 100644 (file)
@@ -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;
 }