diff mbox series

[FFmpeg-devel,05/18] avcodec/vp8: Inline inner_filter for VP7

Message ID AS8P250MB07448786AF3137BEC7DA51F68F429@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM
State New
Headers show
Series [FFmpeg-devel,01/18] avcodec/vp8: Disable segmentation for VP7 | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Andreas Rheinhardt Sept. 10, 2022, 1:07 a.m. UTC
It is always true for VP7.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/vp8.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/libavcodec/vp8.c b/libavcodec/vp8.c
index 635e45f87e..35d75170f1 100644
--- a/libavcodec/vp8.c
+++ b/libavcodec/vp8.c
@@ -2223,7 +2223,7 @@  void filter_mb(VP8Context *s, uint8_t *dst[3], VP8FilterStrength *f,
     }
 
 #define H_LOOP_FILTER_16Y_INNER(cond)                                         \
-    if (cond && inner_filter) {                                               \
+    if (cond && (is_vp7 || inner_filter)) {                                   \
         s->vp8dsp.vp8_h_loop_filter16y_inner(dst[0] +  4, linesize,           \
                                              bedge_lim_y, inner_limit,        \
                                              hev_thresh);                     \
@@ -2247,7 +2247,7 @@  void filter_mb(VP8Context *s, uint8_t *dst[3], VP8FilterStrength *f,
                                        mbedge_lim, inner_limit, hev_thresh);
     }
 
-    if (inner_filter) {
+    if (is_vp7 || inner_filter) {
         s->vp8dsp.vp8_v_loop_filter16y_inner(dst[0] +  4 * linesize,
                                              linesize, bedge_lim_y,
                                              inner_limit, hev_thresh);
@@ -2268,7 +2268,7 @@  void filter_mb(VP8Context *s, uint8_t *dst[3], VP8FilterStrength *f,
 
 static av_always_inline
 void filter_mb_simple(VP8Context *s, uint8_t *dst, VP8FilterStrength *f,
-                      int mb_x, int mb_y)
+                      int mb_x, int mb_y, int is_vp7)
 {
     int mbedge_lim, bedge_lim;
     int filter_level = f->filter_level;
@@ -2284,7 +2284,7 @@  void filter_mb_simple(VP8Context *s, uint8_t *dst, VP8FilterStrength *f,
 
     if (mb_x)
         s->vp8dsp.vp8_h_loop_filter_simple(dst, linesize, mbedge_lim);
-    if (inner_filter) {
+    if (is_vp7 || inner_filter) {
         s->vp8dsp.vp8_h_loop_filter_simple(dst +  4, linesize, bedge_lim);
         s->vp8dsp.vp8_h_loop_filter_simple(dst +  8, linesize, bedge_lim);
         s->vp8dsp.vp8_h_loop_filter_simple(dst + 12, linesize, bedge_lim);
@@ -2292,7 +2292,7 @@  void filter_mb_simple(VP8Context *s, uint8_t *dst, VP8FilterStrength *f,
 
     if (mb_y)
         s->vp8dsp.vp8_v_loop_filter_simple(dst, linesize, mbedge_lim);
-    if (inner_filter) {
+    if (is_vp7 || inner_filter) {
         s->vp8dsp.vp8_v_loop_filter_simple(dst +  4 * linesize, linesize, bedge_lim);
         s->vp8dsp.vp8_v_loop_filter_simple(dst +  8 * linesize, linesize, bedge_lim);
         s->vp8dsp.vp8_v_loop_filter_simple(dst + 12 * linesize, linesize, bedge_lim);
@@ -2577,7 +2577,7 @@  static av_always_inline void filter_mb_row(AVCodecContext *avctx, void *tdata,
         }
 
         if (s->filter.simple)
-            filter_mb_simple(s, dst[0], f, mb_x, mb_y);
+            filter_mb_simple(s, dst[0], f, mb_x, mb_y, is_vp7);
         else
             filter_mb(s, dst, f, mb_x, mb_y, is_vp7);
         dst[0] += 16;