diff options
author | Deb Mukherjee <debargha@google.com> | 2013-01-30 08:38:17 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@gerrit.golo.chromium.org> | 2013-01-30 08:38:17 -0800 |
commit | d28750537eaad88991f84239d1203282b65ca6dd (patch) | |
tree | 7c6246b978b52661399dedb856b24aa2360c0552 /vp9/common | |
parent | 2f6fce3e5a30c9016aa816e2d57678d88729af37 (diff) | |
parent | 3b04d467ac8eb143bceb388d242a199423e006fd (diff) | |
download | libvpx-d28750537eaad88991f84239d1203282b65ca6dd.tar libvpx-d28750537eaad88991f84239d1203282b65ca6dd.tar.gz libvpx-d28750537eaad88991f84239d1203282b65ca6dd.tar.bz2 libvpx-d28750537eaad88991f84239d1203282b65ca6dd.zip |
Merge "Further improvement on compound inter-intra expt" into experimental
Diffstat (limited to 'vp9/common')
-rw-r--r-- | vp9/common/vp9_reconintra.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/vp9/common/vp9_reconintra.c b/vp9/common/vp9_reconintra.c index 2828d0373..9ee89d5cf 100644 --- a/vp9/common/vp9_reconintra.c +++ b/vp9/common/vp9_reconintra.c @@ -393,6 +393,7 @@ static void combine_interintra(MB_PREDICTION_MODE mode, 70, 70, 69, 69, 69, 69, 68, 68, 68, 68, 68, 67, 67, 67, 67, 67, }; + int size_scale = (size >= 64 ? 1: size == 32 ? 2 : size == 16 ? 4 : @@ -469,8 +470,21 @@ static void combine_interintra(MB_PREDICTION_MODE mode, break; case D45_PRED: - case DC_PRED: + for (i = 0; i < size; ++i) { + for (j = 0; j < size; ++j) { + int k = i * interstride + j; + int scale = (weights1d[i * size_scale] + + weights1d[j * size_scale]) >> 1; + interpred[k] = + ((scale_max - scale) * interpred[k] + + scale * intrapred[i * intrastride + j] + scale_round) + >> scale_bits; + } + } + break; + case TM_PRED: + case DC_PRED: default: // simple average for (i = 0; i < size; ++i) { |