[FFmpeg-cvslog] vp9: extend loopfilter workaround for vp9 h/v mix-up to work for 422.

Ronald S. Bultje git at videolan.org
Mon May 18 02:44:28 CEST 2015


ffmpeg | branch: master | Ronald S. Bultje <rsbultje at gmail.com> | Thu May 14 22:40:26 2015 -0400| [3e634e3e98216854e7d4083d6b1f89cb79d39f9e] | committer: Ronald S. Bultje

vp9: extend loopfilter workaround for vp9 h/v mix-up to work for 422.

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

 libavcodec/vp9.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
index bc2dc0d..8e0d598 100644
--- a/libavcodec/vp9.c
+++ b/libavcodec/vp9.c
@@ -3108,8 +3108,12 @@ static av_always_inline void mask_edges(uint8_t (*mask)[8][4], int ss_h, int ss_
             }
             if (!ss_h)
                 mask[0][y][3] |= m_col;
-            if (!ss_v)
-                mask[1][y][3] |= m_col;
+            if (!ss_v) {
+                if (ss_h && (col_end & 1))
+                    mask[1][y][3] |= (t << (w - 1)) - t;
+                else
+                    mask[1][y][3] |= m_col;
+            }
         }
     } else {
         int y, t = 1 << col_and_7, m_col = (t << w) - t;



More information about the ffmpeg-cvslog mailing list