diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2015-05-14 22:40:26 -0400 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2015-05-15 15:43:20 -0400 |
commit | 3e634e3e98216854e7d4083d6b1f89cb79d39f9e (patch) | |
tree | 8a874e7e2cc92d3752ac7f3da9a1a38790fc6b78 /libavcodec/vp9.c | |
parent | 29045fbfd4c77e25909b9227d48d2252b8c2c5d2 (diff) | |
download | ffmpeg-3e634e3e98216854e7d4083d6b1f89cb79d39f9e.tar.gz |
vp9: extend loopfilter workaround for vp9 h/v mix-up to work for 422.
Diffstat (limited to 'libavcodec/vp9.c')
-rw-r--r-- | libavcodec/vp9.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c index bc2dc0d412..8e0d598127 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; |