diff options
author | Adrian Grange <agrange@google.com> | 2012-01-13 14:09:40 -0800 |
---|---|---|
committer | Adrian Grange <agrange@google.com> | 2012-01-13 16:52:25 -0800 |
commit | e479379abb071050d45273c614c37253522bf7b0 (patch) | |
tree | e52a71136a42aea682e149143caa7a307c706430 /vp8/common | |
parent | 9c2ca8c1ca87f219965f3a528190a57a1ce72da8 (diff) | |
download | libvpx-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.h | 6 |
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; |