Skip to content
Snippets Groups Projects
  1. Feb 13, 2017
  2. Feb 12, 2017
    • Jingning Han's avatar
      Make adapt-scan support multi-thread encoding · 5d0b310b
      Jingning Han authored
      This commit makes the adaptive scan order system support multi-
      thread encoding. It fixes unit test failure issue associated with
      AV1/AVxEncoderThreadTest.EncoderResultTest/0.
      
      BUG=aomedia:353
      
      Change-Id: I61cbf9531c8deab97fb3bb17428d0b2a63cf309a
      5d0b310b
    • Jingning Han's avatar
      Separate intra tx_size logic between var-tx and rect-tx · cb512283
      Jingning Han authored
      Skip rectangular transform block size coding for intra coded block
      in var-tx mode, when the rect-tx is disabled.
      
      Change-Id: If3a091d25f19bf4a67485b5d235bb3d7d0c2cd03
      cb512283
    • Angie Chiang's avatar
      Implement shorter-tap first in convolve_round · 118bf67c
      Angie Chiang authored
      The performance change is 0.004% on lowres
      
      Change-Id: If3702ba6377ac42997e7d49b8959ff16fb182daa
      118bf67c
    • David Barker's avatar
      Fix segfault with loop-restoration on x86. · befcc425
      David Barker authored
      The WienerInfo struct requires a 16-byte alignment on x86,
      since it contains filter coefficients which are loaded using
      SSE aligned load instructions. But on 32-bit x86, the default
      alignment of aom_malloc/aom_realloc is only 8 bytes, leading
      to occasional segfaults.
      
      To fix this, rather than using aom_realloc to resize WienerInfo
      structures, we always free and re-allocate them using aom_memalign
      
      BUG=aomedia:345
      
      Change-Id: Ib1b2a42d4a2fa215dcc81ea481c51271ab068a37
      befcc425
  3. Feb 11, 2017
    • Zoe Liu's avatar
      Add a new experiment of REF_ADAPT · b05e5d10
      Zoe Liu authored
      Noticed that some ALTREF_FRAMEs could have used compound modes for its
      prediction but have been labeled as SINGLE_REFERENCE mode in the frame
      header. This experiment is to remove the COMPOUND_REFERENCE mode from
      the frame-level reference mode choices and only leave SINGLE_REFERENCE
      and REFERENCE_MODE_SELECT the two choices in the frame header.
      
      When turning on both ext-refs and ref-adapt, compared against ext-refs
      itself, a small gain is achieved. In PSNR, the bitrate saving gains are
      as follows:
      
      lowres: Avg -0.120%; BDRate -0.128%
      midres: Avg -0.155%; BDRate -0.128%
      
      Change-Id: I2cfff8a6b7eaa65ef863dbdbc4dd086d3b586f8c
      b05e5d10
  4. Feb 10, 2017
    • Steinar Midtskogen's avatar
      Speed up CLPF when there's nothing to clip · f844e6ef
      Steinar Midtskogen authored
      Gives 7% speed-up in the CLPF processing (measured on SSE4.2).
      
      Change-Id: I934ad85ef2066086a44387030b42e14301b3d428
      f844e6ef
    • Steinar Midtskogen's avatar
      Retune the CLPF kernel · 4f0b3ed8
      Steinar Midtskogen authored
      CLPF performance had degraded by about 0.5% over the past six months,
      which isn't totally surprising since the codec is a moving target.
      About half of that degradation comes from the improved 7 bit filter
      coefficients.  Therefore, CLPF needs to be retuned for the current
      codec.
      
      This patch makes two (normative) changes to the CLPF kernel:
      
      * The clipping function was changed from clamp(x, -s, s) to
            sign(x) * max(0, abs(x) - max(0, abs(x) - s +
                   (abs(x) >> (bitdepth - 3 - log2(s)))))
        This adds a rampdown to 0 at -32 and 32 (for 8 bit, -128 & 128
        for 10 bit, etc), so large differences are ignored.
      
      * 8 taps instead of 6 taps:
                     1
          4          3
        13 31  ->  13 31
          4          3
                     1
      
      AWCY results: low delay  high delay
      PSNR:           -0.40%     -0.47%
      PSNR HVS:        0.00%     -0.11%
      SSIM:           -0.31%     -0.39%
      CIEDE 2000:     -0.22%     -0.31%
      APSNR:          -0.40%     -0.48%
      MS SSIM:         0.01%     -0.12%
      
      About 3/4 of the gains come from the new clipping function.
      
      Change-Id: Idad9dc4004e71a9c7ec81ba62ebd12fb76fb044a
      4f0b3ed8
    • Angie Chiang's avatar
      Turn on adapt_scan by default · 76ebf7ce
      Angie Chiang authored
      Change-Id: Ibf160e83e7cb1c7dce8b40e7cbead48416440974
      76ebf7ce
    • Angie Chiang's avatar
      Exclusively uses 12-tap filter in convolve_round · 822eea32
      Angie Chiang authored
      Performance drop by 0.084% on lowres
      
      Change-Id: I2bcaae96b68033a0af7a1da988505623bc14ed94
      822eea32
  5. Feb 09, 2017
  6. Feb 08, 2017
  7. Feb 07, 2017
  8. Feb 06, 2017
    • Angie Chiang's avatar
      Add av1_convolve_2d_facade · 7927a97d
      Angie Chiang authored
      When convolve_round is on, av1_convolve_2d_facade will be used for
      interpolation rather than av1_convolve. Will remove the experiment
      code of convolve_round experiment from av1_convolve in another CL.
      
      So far we use 4-bit rounding in the intermediate stage on top of using
      post rounding for compound mode after the last stage.
      
      This will give us roughly 0.45% gain on lowres , 0.39% on midres and
      roughly 0.6-0.7% on hdres
      Altogether, is 1.15% on lowresm, 0.74% on midres and roughly 1.7-1.8% on
      hdres
      
      Note that there no restriction usage of 12-tap filter in the CL.
      Adding that, we will lose roughly 0.1% again on lowres.
      
      Change-Id: I6332e1d888e28a3b3ddc29711817d66e52cb5cdf
      7927a97d
    • Aℓex Converse's avatar
      ec_multisymbol: Split off new new_tokenset experiment · a9598cd6
      Aℓex Converse authored
      The new_tokenset experiment replaces the unconstrained tokenset with a
      multisymbol alphabet in an inventive way.
      
      Tested configurations:
      new_tokenset + ec_adapt, new_tokenset, ec_multisymbol
      
      Change-Id: I846ab2e51c2a1dc3f2f9904ed8c47a8e98f853c5
      a9598cd6
  9. Feb 04, 2017
  10. Feb 03, 2017
    • Yushin Cho's avatar
      Enable an activity masking of PVQ · e4c46918
      Yushin Cho authored
      By default, the activity masking is used with PVQ.
      In addition to '--enable-pvq', '--enable-daala-dist' is also
      required by configure to use the activity masking.
      
      Change-Id: I5100a1db992f0e693e61daf5439de8ae8c64a752
      e4c46918
    • Yushin Cho's avatar
      Fix fixed-pt PVQ compand/expand outputs zero gain · 3ebfe2a4
      Yushin Cho authored
      For fixed-point version of PVQ, which is current default,
      added MAXI(1, ) to limit the minimum companded or expanded gain to be one.
      Previously, gain compand/expand function, which is invoked when
      activity masking is enabled, sometimes outputs zero
      then triggered the assert(gain != 0).
      
      Metric change from floating-pt to fixed-pt PVQ is:
      PSNR  PSNR-HVS  SSIM  CIEDE-2000  PSNR Cb PSNR Cr MS-SSIM VMAF
      0.02  0.10      0.08  0.11        0.01    0.02    0.13    -0.30
      
      Change-Id: I64a60d1970d35a26af227841e4a5e50a89ddc44c
      3ebfe2a4
Loading