summaryrefslogtreecommitdiff
path: root/vp8/common
diff options
context:
space:
mode:
authorAdrian Grange <agrange@google.com>2012-01-13 14:09:40 -0800
committerAdrian Grange <agrange@google.com>2012-01-13 16:52:25 -0800
commite479379abb071050d45273c614c37253522bf7b0 (patch)
treee52a71136a42aea682e149143caa7a307c706430 /vp8/common
parent9c2ca8c1ca87f219965f3a528190a57a1ce72da8 (diff)
downloadlibvpx-e479379abb071050d45273c614c37253522bf7b0.tar
libvpx-e479379abb071050d45273c614c37253522bf7b0.tar.gz
libvpx-e479379abb071050d45273c614c37253522bf7b0.tar.bz2
libvpx-e479379abb071050d45273c614c37253522bf7b0.zip
Fixed bugs in multi-layer code related to changing params
When running multi-layer (ML) encodes and dynamically changing coding parameters on the fly (e.g. frame duration/rate, bandwidths allocated to each layer) the encoder would not produce sensible output. In certain cases the rate targeting would be hideously inaccurate. These fixes make it possible to change these coding parameters correctly and to maintain accurate control of the rate targeting. I also added the specification of the input timebase into the test program, vp8_scalable_patterns.c. Patch 2: Moved declaration to appease MS compiler) Change-Id: Ic8bb5a16daa924bb64974e740696e040d07ae363
Diffstat (limited to 'vp8/common')
-rw-r--r--vp8/common/onyx.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/vp8/common/onyx.h b/vp8/common/onyx.h
index d17a32b82..eb7d5458d 100644
--- a/vp8/common/onyx.h
+++ b/vp8/common/onyx.h
@@ -147,10 +147,14 @@ extern "C"
int over_shoot_pct;
// buffering parameters
- int64_t starting_buffer_level; // in seconds
+ int64_t starting_buffer_level; // in bytes
int64_t optimal_buffer_level;
int64_t maximum_buffer_size;
+ int64_t starting_buffer_level_in_ms; // in milli-seconds
+ int64_t optimal_buffer_level_in_ms;
+ int64_t maximum_buffer_size_in_ms;
+
// controlling quality
int fixed_q;
int worst_allowed_q;