summaryrefslogtreecommitdiff
path: root/vp8/common/reconintra4x4.c
diff options
context:
space:
mode:
authorDeb Mukherjee <debargha@google.com>2012-10-19 15:12:12 -0700
committerDeb Mukherjee <debargha@google.com>2012-10-20 21:28:38 -0700
commit57679badf2970455117fb95e766d2ed202eb31bf (patch)
tree952b83e722c475d394ca08986f7482d27c309b4c /vp8/common/reconintra4x4.c
parentf3208f362b0a08b815a3439c7d71890eef49f174 (diff)
downloadlibvpx-57679badf2970455117fb95e766d2ed202eb31bf.tar
libvpx-57679badf2970455117fb95e766d2ed202eb31bf.tar.gz
libvpx-57679badf2970455117fb95e766d2ed202eb31bf.tar.bz2
libvpx-57679badf2970455117fb95e766d2ed202eb31bf.zip
Allow B_VL_PRED & B_LD_PRED modes with Superblocks
Allows B_VL_PRED & B_LD_PRED modes to be used for all blocks within a MB in B_PRED mode. These modes were temporarily disabled with super-block coding. Change-Id: I973b9bdb82c3da5f12d7cc963162a28805f25303
Diffstat (limited to 'vp8/common/reconintra4x4.c')
-rw-r--r--vp8/common/reconintra4x4.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/vp8/common/reconintra4x4.c b/vp8/common/reconintra4x4.c
index 0ba0a2cff..dfbaf137b 100644
--- a/vp8/common/reconintra4x4.c
+++ b/vp8/common/reconintra4x4.c
@@ -298,18 +298,19 @@ void vp8_comp_intra4x4_predict_c(BLOCKD *x,
void vp8_intra_prediction_down_copy(MACROBLOCKD *xd) {
unsigned char *above_right = *(xd->block[0].base_dst) + xd->block[0].dst -
xd->block[0].dst_stride + 16;
+ unsigned int *src_ptr = (unsigned int *)
+ (above_right - (xd->mb_index == 3 ? 16 * xd->block[0].dst_stride : 0));
- unsigned int *src_ptr = (unsigned int *)above_right;
- unsigned int *dst_ptr0 =
- (unsigned int *)(above_right + 4 * xd->block[0].dst_stride);
+ unsigned int *dst_ptr0 = (unsigned int *)above_right;
unsigned int *dst_ptr1 =
- (unsigned int *)(above_right + 8 * xd->block[0].dst_stride);
+ (unsigned int *)(above_right + 4 * xd->block[0].dst_stride);
unsigned int *dst_ptr2 =
+ (unsigned int *)(above_right + 8 * xd->block[0].dst_stride);
+ unsigned int *dst_ptr3 =
(unsigned int *)(above_right + 12 * xd->block[0].dst_stride);
*dst_ptr0 = *src_ptr;
*dst_ptr1 = *src_ptr;
*dst_ptr2 = *src_ptr;
+ *dst_ptr3 = *src_ptr;
}
-
-