• Zoe Liu's avatar
    Add encoder support to ALTREF2 · e9b15e2b
    Zoe Liu authored
    This CL adds the use of ALTREF2_FRAME to both single / comp reference
    prediction at the encoder side. In particular, the encoder keeps the
    distant altref as ALTREF, and uses the internal extra altrefs to
    refresh ALTREF2.
    
    Compared with the baseline (ext_tx and global_motion disabled simply
    for speed concern):
    (a) lowres: avg_psnr -0.395% ovr_psnr -0.393% ssim -0.329%
    (b) midres: avg_psnr -0.419% ovr_psnr -0.431% ssim -0.444%
    (c) AWCY High Latency:
       PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
    -0.6661 | -0.5988 | -0.6669 |  -0.6993 | -0.6988 | -0.7303 | -0.6051
    (d) AWCY Low Latency:
      PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
    0.0720 | -0.0505 |  0.1501 |   0.0670 | 0.0842 |  0.0517 |     0.0158
    
    TODO list:
    (1) To have altref2 incorporated with ext-comp-refs;
    (2) To have altref2 fully work with new-multisymbol;
    (3) To re-collect the initial default probs/cdfs;
    (4) To tune the encoder gf group structure design for altref2.
    
    Change-Id: I6ad63fd65afa903d3bba20acdb68e3b67acf7fdf
    e9b15e2b
encoder.h 23.1 KB