diff options
author | Jingning Han <jingning@google.com> | 2013-11-12 18:11:41 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@gerrit.golo.chromium.org> | 2013-11-12 18:11:41 -0800 |
commit | e69461593d97e7b3648b220343a01e0777816d82 (patch) | |
tree | 59bc9688c6c342a1b7cc302d6eabfc355e5b4bc0 /vp9/encoder/vp9_encodeframe.c | |
parent | 25af150911d57524a77e04be9b854c051c111a1a (diff) | |
parent | 34b6abefa2c2e78d85adca528fd8eca98a13439c (diff) | |
download | libvpx-e69461593d97e7b3648b220343a01e0777816d82.tar libvpx-e69461593d97e7b3648b220343a01e0777816d82.tar.gz libvpx-e69461593d97e7b3648b220343a01e0777816d82.tar.bz2 libvpx-e69461593d97e7b3648b220343a01e0777816d82.zip |
Merge "Enable dual buffer rd search and encoding scheme"
Diffstat (limited to 'vp9/encoder/vp9_encodeframe.c')
-rw-r--r-- | vp9/encoder/vp9_encodeframe.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 2e2ecf8cd..9d806508e 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -613,11 +613,12 @@ static void pick_sb_modes(VP9_COMP *cpi, const TileInfo *const tile, xd->mi_8x8[0]->mbmi.sb_type = bsize; for (i = 0; i < MAX_MB_PLANE; ++i) { - p[i].coeff = ctx->coeff_pbuf[i][1]; - pd[i].qcoeff = ctx->qcoeff_pbuf[i][1]; - pd[i].dqcoeff = ctx->dqcoeff_pbuf[i][1]; - pd[i].eobs = ctx->eobs_pbuf[i][1]; + p[i].coeff = ctx->coeff_pbuf[i][0]; + pd[i].qcoeff = ctx->qcoeff_pbuf[i][0]; + pd[i].dqcoeff = ctx->dqcoeff_pbuf[i][0]; + pd[i].eobs = ctx->eobs_pbuf[i][0]; } + ctx->is_coded = 0; // Set to zero to make sure we do not use the previous encoded frame stats xd->mi_8x8[0]->mbmi.skip_coeff = 0; @@ -2400,10 +2401,13 @@ static void encode_superblock(VP9_COMP *cpi, TOKENEXTRA **t, int output_enabled, MODE_INFO **mi_8x8 = xd->mi_8x8; MODE_INFO *mi = mi_8x8[0]; MB_MODE_INFO *mbmi = &mi->mbmi; + PICK_MODE_CONTEXT *ctx = get_block_context(x, bsize); unsigned int segment_id = mbmi->segment_id; const int mis = cm->mode_info_stride; const int mi_width = num_8x8_blocks_wide_lookup[bsize]; const int mi_height = num_8x8_blocks_high_lookup[bsize]; + x->skip_optimize = ctx->is_coded; + ctx->is_coded = 1; x->use_lp32x32fdct = cpi->sf.use_lp32x32fdct; x->skip_encode = (!output_enabled && cpi->sf.skip_encode_frame && xd->q_index < QIDX_SKIP_THRESH); |