]> granicus.if.org Git - libvpx/commit
vp9: Reorganize the buffer level for cbr mode
authorMarco Paniconi <marpan@google.com>
Mon, 12 Nov 2018 06:09:31 +0000 (22:09 -0800)
committerMarco Paniconi <marpan@google.com>
Fri, 16 Nov 2018 17:15:11 +0000 (09:15 -0800)
commit84b19ab5acb9f7104441c2c3c5a8157a95e417e1
tree8367534b410196c4fc5199d776c988b42d70b38a
parent460f66aa9985e2546588806f66e0a59d264e76d1
vp9: Reorganize the buffer level for cbr mode

Refactor the code with some changes.

Split update into two parts: move the fillup
(with per-frame-bandwidth) before the encoding, and
keep the leaking part (with encoded_frame_size) after
the encoding (postencode).

For SVC with ref_frame_config usage: allow usage of timestamp
delta for the fillup part of buffer, instead of the (average)
framerate passed in via the duration.

Moving the buffer fillup (+per-frame-bandwidth) part to the
pre-encode causes some difference in performance
(since buffer level affects active_worst/QPand frame-dropping),
but the change is observed to be small.
Made small adjustment to active_worst_quality to compensate.

Adjust some thresholds in datarate tests.

Change-Id: I81a5562367034f318cffd451304bc4a34bf02a1d
test/svc_datarate_test.cc
vp9/encoder/vp9_encoder.c
vp9/encoder/vp9_ratectrl.c
vp9/encoder/vp9_svc_layercontext.h
vp9/vp9_cx_iface.c