diff options
author | Guillaume Martres <smarter3@gmail.com> | 2014-04-06 01:07:53 +0200 |
---|---|---|
committer | Guillaume Martres <smarter3@gmail.com> | 2014-04-07 18:22:11 +0200 |
commit | 4664b219a298387c009b393de2c2a023adfaa741 (patch) | |
tree | 551dda4c0a9ab582ed9575a7bf19a1e0a8eee8bf | |
parent | 0ec5919d4202c6e99b31cf707c7125536498f1f4 (diff) | |
download | libvpx-4664b219a298387c009b393de2c2a023adfaa741.tar libvpx-4664b219a298387c009b393de2c2a023adfaa741.tar.gz libvpx-4664b219a298387c009b393de2c2a023adfaa741.tar.bz2 libvpx-4664b219a298387c009b393de2c2a023adfaa741.zip |
vp9_ratectrl: change ARF overlays rate correction factor
ARF overlays now use the same rate correction factor as regular inter
frames, further testing would be needed to see if it makes sense to use
a completely separate rate correction factor for ARF overlays.
$ vpxenc --cpu-used=5 --fps=50/1 --target-bitrate=2000
parkjoy.y4m -o out.webm
=> Before: 3356 kb/s
=> After: 2271 kb/s
Change-Id: I73e4defa615ba7a8a2bdb845864f4b1721cbbffe
-rw-r--r-- | vp9/encoder/vp9_ratectrl.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_ratectrl.c b/vp9/encoder/vp9_ratectrl.c index 26e89addf..c033b2fb6 100644 --- a/vp9/encoder/vp9_ratectrl.c +++ b/vp9/encoder/vp9_ratectrl.c @@ -272,6 +272,7 @@ static double get_rate_correction_factor(const VP9_COMP *cpi) { return cpi->rc.key_frame_rate_correction_factor; } else { if ((cpi->refresh_alt_ref_frame || cpi->refresh_golden_frame) && + !cpi->rc.is_src_frame_alt_ref && !(cpi->use_svc && cpi->oxcf.end_usage == USAGE_STREAM_FROM_SERVER)) return cpi->rc.gf_rate_correction_factor; else @@ -284,6 +285,7 @@ static void set_rate_correction_factor(VP9_COMP *cpi, double factor) { cpi->rc.key_frame_rate_correction_factor = factor; } else { if ((cpi->refresh_alt_ref_frame || cpi->refresh_golden_frame) && + !cpi->rc.is_src_frame_alt_ref && !(cpi->use_svc && cpi->oxcf.end_usage == USAGE_STREAM_FROM_SERVER)) cpi->rc.gf_rate_correction_factor = factor; else |