]> granicus.if.org Git - libvpx/commit
Fix RD multiplier bug impacting AQ1.
authorpaulwilkins <paulwilkins@google.com>
Tue, 26 Feb 2019 12:34:07 +0000 (12:34 +0000)
committerPaul Wilkins <paulwilkins@google.com>
Thu, 28 Feb 2019 13:03:42 +0000 (13:03 +0000)
commit135fe47602ecc0deef4f5943bd5266c7a23d18aa
tree2286c04732ea71ad83b7882c25ea9ce414634d50
parentdfcf95162b6a1be91c771fb39f22a0116c802f41
Fix RD multiplier bug impacting AQ1.

Change to the default RD multiplier computation in set_segment_rdmult()

The default here is wrong as for modes like AQ 1 setting the rdmult based on the
segment ID for bsize will tend to result in the RD loop favoring partition sizes where
the resulting segment assignment has the lowest Q, as these partition sizes will be
then evaluated with a lower value of rdmult. For a valid rd comparison between
partition sizes within a single SB64 we need to use the same value of rdmult.

This change fixes an observed issue with AQ 1 where almost all the blocks were being
assigned to segment 0.

Change-Id: Ibf87e8ca60bca45b8fee866ac6fd53feae11dab4
vp9/encoder/vp9_encodeframe.c