diff options
author | Deb Mukherjee <debargha@google.com> | 2013-01-30 12:03:45 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@gerrit.golo.chromium.org> | 2013-01-30 12:03:45 -0800 |
commit | a53be609045e9a4b5c6dec280332745f560de510 (patch) | |
tree | 2a1b232ace7baadbeab43fd90246870b29a734da /vp9/encoder/vp9_onyx_if.c | |
parent | b499c24c2f9430e7f157121fff06aae4ec248ef1 (diff) | |
parent | dfd89f2eab26a761d881ec534239b1cff4e0a9db (diff) | |
download | libvpx-a53be609045e9a4b5c6dec280332745f560de510.tar libvpx-a53be609045e9a4b5c6dec280332745f560de510.tar.gz libvpx-a53be609045e9a4b5c6dec280332745f560de510.tar.bz2 libvpx-a53be609045e9a4b5c6dec280332745f560de510.zip |
Merge "Adding a frame parallel decoding mode" into experimental
Diffstat (limited to 'vp9/encoder/vp9_onyx_if.c')
-rw-r--r-- | vp9/encoder/vp9_onyx_if.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/vp9/encoder/vp9_onyx_if.c b/vp9/encoder/vp9_onyx_if.c index 878844683..4a0794a9b 100644 --- a/vp9/encoder/vp9_onyx_if.c +++ b/vp9/encoder/vp9_onyx_if.c @@ -2811,6 +2811,12 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, } cm->error_resilient_mode = (cpi->oxcf.error_resilient_mode != 0); + cm->frame_parallel_decoding_mode = + (cpi->oxcf.frame_parallel_decoding_mode != 0); + if (cm->error_resilient_mode) { + cm->frame_parallel_decoding_mode = 1; + cm->refresh_entropy_probs = 0; + } } // Test code for new segment features @@ -3436,7 +3442,8 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, vp9_copy(cpi->common.fc.hybrid_coef_counts_16x16, cpi->hybrid_coef_counts_16x16); vp9_copy(cpi->common.fc.coef_counts_32x32, cpi->coef_counts_32x32); - if (!cpi->common.error_resilient_mode) + if (!cpi->common.error_resilient_mode && + !cpi->common.frame_parallel_decoding_mode) vp9_adapt_coef_probs(&cpi->common); if (cpi->common.frame_type != KEY_FRAME) { vp9_copy(cpi->common.fc.sb_ymode_counts, cpi->sb_ymode_count); @@ -3449,12 +3456,13 @@ static void encode_frame_to_data_rate(VP9_COMP *cpi, #if CONFIG_COMP_INTERINTRA_PRED vp9_copy(cpi->common.fc.interintra_counts, cpi->interintra_count); #endif - if (!cpi->common.error_resilient_mode) - vp9_adapt_mode_probs(&cpi->common); - cpi->common.fc.NMVcount = cpi->NMVcount; - if (!cpi->common.error_resilient_mode) + if (!cpi->common.error_resilient_mode && + !cpi->common.frame_parallel_decoding_mode) { + vp9_adapt_mode_probs(&cpi->common); + vp9_adapt_mode_context(&cpi->common); vp9_adapt_nmv_probs(&cpi->common, cpi->mb.e_mbd.allow_high_precision_mv); + } } #if CONFIG_COMP_INTERINTRA_PRED if (cm->frame_type != KEY_FRAME) |