• Paul Wilkins's avatar
    Add adaptation option for VBR. · f7f0eaa5
    Paul Wilkins authored
    Allow min and maxQ to creep when the undershoot
    or overshoot exceeds thresholds controlled by the
    command line under_shoot_pct and over_shoot_pct
    values.
    
    Default is 100%,100% which ~disables adaptation.
    
    Derf results for example undershoot% / overshoot%:-
    
    Head:- Mean abs (%rate error) = 14.4%
    
    This check in:-
    25%/25% - Mean abs (%rate error) = 6.7%
                      PSNR hit -1% SSIM -0.1%
    
    5% / 5%  - Mean abs (%rate error) = 2.2%
                     PSNR hit -3.3% SSIM - 1.1%
    
    Most of the remaining error and most of the quality hit is
    at extreme data rates. The adaptation code still has an
    exception for material that is in effect static so that we
    don't over adjust and over spend on YT slide show type
    content.
    
    (Rebase of If25a2449a415449c150acff23df713e9598d64c9
    to resolve a auto-merge error)
    
    Change-Id: Iec4e1613ef0d067454751d8220edb7058dfbd816
    f7f0eaa5
vp9_ratectrl.c 57.1 KB