Skip to content

Add a VQ mode

Hassen Guermazi requested to merge svt-team/svt-team-p/SVT-AV1:add-tune into master

Description

Add a VQ (Visual Quality) mode option towards sharpness preservation. The new “—tune” CLI token is supported as follows:

  1. use the VQ mode,
  2. use the regular (or PSNR) mode. If not specified then default is 1.

List of changes:

  • TF: If high noise level then: • limit window-size to [0,1] and to [-1,1] for I, and B, respectively. • decrease the strength (decay=1).
  • IFS: Applied a QP-aware penalty to smooth if high noise-level; the lower the QP, the less the smooth filter is selected.
  • md-stage0/post-md-stage3: • Decrease the uniped-cost at both md-stage0 and post-md-stage3 if high noise-level towards less INTRA and less Bipred. • The bias is QP-aware; the higher the QP, the more conservative the bias is.
  • CDEF: shut CDEF If high noise level
  • Restoration: shut Restoration If high noise level
  • SCD: optimized the 1st BASE after a scene change; inherited the I_SLICE depth removal, modes, PF, subres, LPD level, and set the QP = (BASE_QP+ Last I_QP) / 2.
  • Depth-refinement: shut the cost-based refinement if high 8x8 me-distortion variance (i.e. only use the depth-cost-deviation refinement).

Note that we use the noise level of the preceding BASE picture at tf (Temporal Filtering).

Issue

Author(s)

@hguermaz, @dxyliu, @danielkong.

Performance impact

  • quality
  • memory
  • speed
  • 8 bit
  • 10 bit
  • N/A

Test set

  • obj-1-fast can be found here
  • other
  • N/A

Merge method

  • Allow the maintainer to squash and merge when PR is ready to create a 1-commit to the master branch. The maintainer will be able to fix typos / combine commit messages to create a more readable 1-commit message or use whatever is stated in the 'Description' section
  • I will clean up my commits and the maintainer shall use 'rebase and merge' to the master branch
Edited by Hassen Guermazi

Merge request reports