Commit b746c3b7 authored by David Barker's avatar David Barker Committed by Yue Chen

Fix bug in highbd wedge-interintra prediction

When calling aom_(highbd_)blend_a64_mask for a subsampled plane,
the mask is subsampled in-place. This means that the mask stride
passed in needs to be the value before subsampling. Since the
wedge masks are set up so that mask stride = mask width, this means
that the stride should equal the width of the current mi block.

However, for the wedge-interintra path in combine_interintra_highbd,
we subsampled the mask stride, resulting in the wrong stride being
used for chroma planes if subsampling_x == 1.

The lowbd path already uses the correct stride, so this patch just
copies the stride calculation over to the highbd path.

Change-Id: I08a4120b11a38912c45d9e637a54e009eddd88ec
parent 7daf0422
......@@ -2944,8 +2944,8 @@ static void combine_interintra_highbd(
const int subh = 2 * num_4x4_blocks_high_lookup[bsize] == bh;
const int subw = 2 * num_4x4_blocks_wide_lookup[bsize] == bw;
aom_highbd_blend_a64_mask(comppred8, compstride, intrapred8, intrastride,
interpred8, interstride, mask, bw, bh, bw, subh,
subw, bd);
interpred8, interstride, mask,
block_size_wide[bsize], bh, bw, subh, subw, bd);
}
return;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment