diff options
author | Paul Wilkins <paulwilkins@google.com> | 2017-02-21 09:42:37 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2017-02-21 09:42:38 +0000 |
commit | 4d4231352c8cefdae2e76b7bad4286ec21747c89 (patch) | |
tree | 7692f8186a1c9616c7254b3fb190a79debdbb386 /vp9 | |
parent | f091752a9c71cf029247b9805fc3ad6a76b453af (diff) | |
parent | a63adac6040345003f806fba0e778092c06ffdff (diff) | |
download | libvpx-4d4231352c8cefdae2e76b7bad4286ec21747c89.tar libvpx-4d4231352c8cefdae2e76b7bad4286ec21747c89.tar.gz libvpx-4d4231352c8cefdae2e76b7bad4286ec21747c89.tar.bz2 libvpx-4d4231352c8cefdae2e76b7bad4286ec21747c89.zip |
Merge "Change to prediction decay calculation."
Diffstat (limited to 'vp9')
-rw-r--r-- | vp9/encoder/vp9_firstpass.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_firstpass.c b/vp9/encoder/vp9_firstpass.c index f95081c98..3f722090f 100644 --- a/vp9/encoder/vp9_firstpass.c +++ b/vp9/encoder/vp9_firstpass.c @@ -1275,7 +1275,11 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td, int scaled_low_intra_thresh = scale_sse_threshold(cm, LOW_I_THRESH); if (this_intra_error < scaled_low_intra_thresh) { fp_acc_data->frame_noise_energy += fp_estimate_block_noise(x, bsize); - fp_acc_data->intra_count_low += 1.0; + if (motion_error < scaled_low_intra_thresh) { + fp_acc_data->intra_count_low += 1.0; + } else { + fp_acc_data->intra_count_high += 1.0; + } } else { fp_acc_data->frame_noise_energy += (int64_t)SECTION_NOISE_DEF; fp_acc_data->intra_count_high += 1.0; @@ -1731,7 +1735,8 @@ static double get_sr_decay_rate(const VP9_COMP *cpi, if (((frame->coded_error / num_mbs) > LOW_CODED_ERR_PER_MB) && ((frame->intra_error / DOUBLE_DIVIDE_CHECK(frame->coded_error)) < (double)NCOUNT_FRAME_II_THRESH)) { - modified_pct_inter = frame->pcnt_inter - frame->pcnt_neutral; + modified_pct_inter = + frame->pcnt_inter + frame->pcnt_intra_low - frame->pcnt_neutral; } modified_pcnt_intra = 100 * (1.0 - modified_pct_inter); |