summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2015-05-14 22:40:26 -0400
committerRonald S. Bultje <rsbultje@gmail.com>2015-05-15 15:43:20 -0400
commit3e634e3e98216854e7d4083d6b1f89cb79d39f9e (patch)
tree8a874e7e2cc92d3752ac7f3da9a1a38790fc6b78 /libavcodec
parent29045fbfd4c77e25909b9227d48d2252b8c2c5d2 (diff)
vp9: extend loopfilter workaround for vp9 h/v mix-up to work for 422.
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/vp9.c8
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;