summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorDeepa K G <deepa.kg@ittiam.com>2018-12-12 04:47:56 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2018-12-12 04:47:56 +0000
commite9d2f44d12ad22db83ceb09e57c4c6940acbc8f4 (patch)
tree83b9b9b81a3ebf20c32e5738e1e9bf441b6f923c /vp9
parent4c79c3b92230b9be2169f46488bca77c4f5fcb3f (diff)
parent7a19f6afeaf7170d05dce92f11e4ec9b93fa3637 (diff)
downloadlibvpx-e9d2f44d12ad22db83ceb09e57c4c6940acbc8f4.tar
libvpx-e9d2f44d12ad22db83ceb09e57c4c6940acbc8f4.tar.gz
libvpx-e9d2f44d12ad22db83ceb09e57c4c6940acbc8f4.tar.bz2
libvpx-e9d2f44d12ad22db83ceb09e57c4c6940acbc8f4.zip
Merge "Rescale arf bit budget calculation"
Diffstat (limited to 'vp9')
-rw-r--r--vp9/encoder/vp9_firstpass.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/vp9/encoder/vp9_firstpass.c b/vp9/encoder/vp9_firstpass.c
index 30fd842a1..03ac93463 100644
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -2317,9 +2317,9 @@ static void allocate_gf_group_bits(VP9_COMP *cpi, int64_t gf_group_bits,
for (idx = 2; idx < MAX_ARF_LAYERS; ++idx) {
if (arf_depth_boost[idx] == 0) break;
- arf_depth_bits[idx] =
- calculate_boost_bits(rc->baseline_gf_interval - total_arfs,
- arf_depth_boost[idx], total_group_bits);
+ arf_depth_bits[idx] = calculate_boost_bits(
+ rc->baseline_gf_interval - total_arfs - arf_depth_count[idx],
+ arf_depth_boost[idx], total_group_bits);
total_group_bits -= arf_depth_bits[idx];
total_arfs += arf_depth_count[idx];
@@ -2691,8 +2691,8 @@ static void define_gf_group(VP9_COMP *cpi, FIRSTPASS_STATS *this_frame) {
}
// Calculate the extra bits to be used for boosted frame(s)
- gf_arf_bits = calculate_boost_bits(rc->baseline_gf_interval, rc->gfu_boost,
- gf_group_bits);
+ gf_arf_bits = calculate_boost_bits((rc->baseline_gf_interval - 1),
+ rc->gfu_boost, gf_group_bits);
// Adjust KF group bits and error remaining.
twopass->kf_group_error_left -= gf_group_err;