1. 14 Feb, 2017 4 commits
    • James Zern's avatar
      rtcd.pl: tolerate mixed output line endings · 2b3496f4
      James Zern authored
      strip the default eol from the config header line, then a '\r' if there
      is one. this can occur if cmake used to output the header uses windows
      eol, but the perl used expects newlines for instance.
      
      Change-Id: I687415878b1a04fd94b12d7b3d3066f448630607
      2b3496f4
    • James Zern's avatar
      av1/encoder/block.h: s/inline/INLINE/ · d90eefeb
      James Zern authored
      vs2013 is still supported, it still uses the old behavior which supports
      inline in c++ only.
      
      Change-Id: I74417c6c93774e55122bbbf1db0283e2c30fe63e
      d90eefeb
    • Yushin Cho's avatar
      Clean up pvq codes in bitstream packing · 4483ea21
      Yushin Cho authored
      Change-Id: Id9e43dcda3e356296ca138ec913579822c514019
      4483ea21
    • Tom Finegan's avatar
      Tidy up latest googletest update. · 49c8585f
      Tom Finegan authored
      - Remove gtest files that aren't necessary in libaom.
      - Correct the removals noted in README.libaom
      
      Change-Id: Icb5dd6340334d5d0db0072ee0d101709cf785feb
      49c8585f
  2. 13 Feb, 2017 18 commits
  3. 12 Feb, 2017 4 commits
    • 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
  4. 11 Feb, 2017 1 commit
    • 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
  5. 10 Feb, 2017 4 commits
    • 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
  6. 09 Feb, 2017 1 commit
  7. 08 Feb, 2017 3 commits
  8. 07 Feb, 2017 5 commits
    • Tom Finegan's avatar
      Add CONFIG_INTERNAL_STATS support to the cmake build. · 0115691e
      Tom Finegan authored
      Includes CONFIG_AOM_HIGHBITDEPTH support for same.
      
      BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76
      
      Change-Id: I99893c8c3c7e163383f7297d0df777c9c21822fd
      0115691e
    • Tom Finegan's avatar
      Add high bit depth support to the cmake build. · 633b9539
      Tom Finegan authored
      BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76
      
      Change-Id: Ibb5564989bd02cf3fec7b8e1d61d2dee1a96c42d
      633b9539
    • Tom Finegan's avatar
      Fix cmake test_libaom build with CONFIG_AOM_HIGHBITDEPTH enabled. · ce4bcebe
      Tom Finegan authored
      - Comment out the sources that require CONFIG_MOTION_VAR.
      - Add missing preproc wrap at the sites in test sources that
        require CONFIG_MOTION_VAR.
      
      Change-Id: I703c2bfd829a579793ad55ae713973d327354473
      ce4bcebe
    • Timothy B. Terriberry's avatar
      Scale PVQ input to OD_COEFF_SHIFT resolution. · e93acb2d
      Timothy B. Terriberry authored
      This ensures we operate at the same precision that Daala uses, which matters
      when activity masking is enabled, because of the gain companding.
      
      Metrics from Patchset 4 (which had slightly incorrect rounding):
      
      With activity masking (5 frames only):
      av1_pvq_AM_ref_5f@2017-02-07T03:37:53.702Z -> av1_pvq_AM_derf_fix2_coeff_scaling_5f@2017-02-07T00:12:24.427Z
      
          PSNR |  PSNR Cb |  PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
        0.6653 | -12.3177 | -12.1858 |   0.3350 | 4.1013 |  2.0964 |    -4.0539
      
      In particular for Netflix_Crosswalk_1920x1080_60fps_8bit_420_60f.y4m
       -5.0589 | -22.3077 | -21.2188 |  -7.0389 | -3.3715 |-5.7794 |   -13.1891
      
      I.e., it fixes the large regression with AM on this sequence, and
       substantially improves chroma (at a lesser cost to other metrics).
      
      Without activity masking (5 frames only):
      av1_pvq_ref_5f@2017-02-07T03:52:51.279Z -> av1_pvq_derf_fix2_coeff_scaling_5f@2017-02-07T00:12:48.873Z
      
          PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
        0.0989 | -0.0322 | -0.0464 |   0.1883 | 0.0795 |  0.0579 |     0.0923
      
      Change-Id: I46b808b7c8e4733465f8bebc8336dfd5b75783ec
      e93acb2d
    • Urvang Joshi's avatar
      ALT_INTRA: Integerize the weights for SMOOTH_PRED. · 7a40600c
      Urvang Joshi authored
      Insignificant change in BDRate.
      
      Change-Id: Id1aa798393fd4c4c174dfcb9a8315828b531996f
      7a40600c