ref: 46a951c846a1f7db5308cfc8ea1c2eaffc391b9d
parent: dd31f2e4ae480f074841e0653dff91ccda9df091
author: Dmitry Kovalev <[email protected]>
date: Mon Jan 13 11:27:50 EST 2014
Using clamp() function instead of the same raw code. Change-Id: Ia2ffca072f5391b277ce1a0c4e5b4ece9ffc6831
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -1932,13 +1932,10 @@
// Allocate bits to a normal frame that is neither a gf an arf or a key frame.
static void assign_std_frame_bits(VP9_COMP *cpi, FIRSTPASS_STATS *this_frame) {
int target_frame_size;
-
double modified_err;
double err_fraction;
+ const int max_bits = frame_max_bits(cpi); // Max for a single frame.
- // Max for a single frame.
- int max_bits = frame_max_bits(cpi);
-
// Calculate modified prediction error used in bit allocation.
modified_err = calculate_modified_err(cpi, this_frame);
@@ -1953,15 +1950,8 @@
// Clip target size to 0 - max_bits (or cpi->twopass.gf_group_bits) at
// the top end.
- if (target_frame_size < 0) {
- target_frame_size = 0;
- } else {
- if (target_frame_size > max_bits)
- target_frame_size = max_bits;
-
- if (target_frame_size > cpi->twopass.gf_group_bits)
- target_frame_size = (int)cpi->twopass.gf_group_bits;
- }
+ target_frame_size = clamp(target_frame_size, 0,
+ MIN(max_bits, (int)cpi->twopass.gf_group_bits));
// Adjust error and bits remaining.
cpi->twopass.gf_group_error_left -= (int64_t)modified_err;