]> granicus.if.org Git - libvpx/commit
Add support for VP9 level targeting
authorhui su <huisu@google.com>
Fri, 2 Dec 2016 18:11:33 +0000 (10:11 -0800)
committerhui su <huisu@google.com>
Fri, 6 Jan 2017 18:07:31 +0000 (10:07 -0800)
commit337ad83e5893e8e6e0bbaf42d1ed6a61399f9ddf
tree21d5f25fa621a1d7408c8df1cfc368343e97db05
parent2d12a52ff09ff47cd69659b6d2f862af1913c779
Add support for VP9 level targeting

Constraints on encoder config:
-target_bandwidth is no larger than 80% of level bitrate limit
-target_bandwidth * (1 + max_over_shoot_pct) is no larger than
88% of level bitrate limit
-min_gf_interval is no smaller than level limit
-tile_columns is no larger than level limit

Constraints on rate control:
-current frame size plus previous three frames' size is no larger
than the CPB level limit
-current frame size is no larger than 50%/40%/20% of the CPB
level limit if it's a key/alt-ref/other frame.

Change-Id: I84d1a2d6d6e3c82bfd533b3309ce999cfaba2c8b
test/level_test.cc
vp9/encoder/vp9_encoder.c
vp9/encoder/vp9_encoder.h
vp9/vp9_cx_iface.c