1. 08 Mar, 2017 2 commits
    • hui su's avatar
      Code refactoring in adapt-scan · ff0da2b4
      hui su authored
      Change-Id: Ie20bd0b05bbf3128933f10787aade7b63c98b52a
      ff0da2b4
    • Fangwen Fu's avatar
      Remove palette interleave · b3be926a
      Fangwen Fu authored
      * Run 45 degree wavefront coding for palette index
      with palette_throughput experiment.
      * Remove palette index interleave.
      
      Change-Id: Ibb57004401f817dec8b00bc2a941d70a26783ff9
      b3be926a
  2. 07 Mar, 2017 3 commits
    • Thomas Davies's avatar
      Add a CDF for coding delta_q. · d6ee8a8c
      Thomas Davies authored
      Also remove forward updates for delta_q when EC_ADAPT
      is enabled.
      
      Change-Id: Idf71b57bfe7763bc60595bc45768e624dd7b67bd
      d6ee8a8c
    • Fangwen Fu's avatar
      dependent tiles togeter with tile groups · 73126c08
      Fangwen Fu authored
      Change-Id: I378eb5b2c03a4c30d261128bcf9ef00ea987ed40
      73126c08
    • hui su's avatar
      Fork the entropy experiment · 0d103578
      hui su authored
      Split it into two experiments:
      q_adapt_probs: multiple initial coeff prob tables based on q-index
      subframe_prob_update: multiple backward prob updates within frame
      
      Change-Id: I78041ebd4ba34afc9152f6861225f63c2e8eb686
      0d103578
  3. 06 Mar, 2017 2 commits
  4. 03 Mar, 2017 2 commits
    • Thomas Davies's avatar
      TILE_GROUPS: omit tile length from last tile in the frame. · a0de6d59
      Thomas Davies authored
      This change improves efficiency and means that tile groups
      cause negligible loss (+0.03% BDR) in the current default
      encoding configurations (1 tile group no matter how many tiles)
      with frame-based wrapping.
      
      In future, when wrapper formats support tile groups, lengths
      can be omitted from the last tile in every tile group.
      
      Change-Id: Ia701e6720208fbfa727f9aef0b692a6aafbcc93f
      a0de6d59
    • Nathan E. Egge's avatar
      Add a simple frame data inspection API. · 2cf03b1a
      Nathan E. Egge authored
      This patch adds a decoder control that exposes frame data via a simple
       callback.
      
      Change-Id: Icae73ae6b5da8a7783db9fadb1fff4a85d77174b
      2cf03b1a
  5. 01 Mar, 2017 1 commit
  6. 27 Feb, 2017 5 commits
  7. 25 Feb, 2017 2 commits
  8. 24 Feb, 2017 4 commits
    • Thomas Davies's avatar
      Use default CDF tables when initialising coef probs. · 87aeeb85
      Thomas Davies authored
      When creating the CDF head, do not use 8-bit probabilities
      to make the CDF tables, but load them directly.
      
      CDF tail values are created from the ONE_TOKEN relative
      probability as before.
      
      No change to BDR.
      
      Change-Id: I7386b8952f6f69cc9b77aa1b2bee71cf8e3cc9ff
      87aeeb85
    • Fangwen Fu's avatar
      improving palette throughput · 33bcd117
      Fangwen Fu authored
      * code the palette color index using 45 wavefront
      * interleave the coeff and palette color index in
        transform block level
      * the above change does not change code efficiency
      
      Details: 
      The 45 wavefront scan allows to compute the ctx of
      the diagonal samples' indices  at the same time. 
      Interleaving palette indices and palette residual
      on a transform block basis means that the entropy
       decoding and further processing of the palette 
      residual is not delayed by the entropy decoding 
      of all the color indices of the palette encoded 
      block.
      Change-Id: Ie9f576002a9a68394b99c23b01e9730df06df070
      33bcd117
    • Sebastien Alaiwan's avatar
      Allow disabling the 8-bit (low-bitdepth) operating path. · 98378137
      Sebastien Alaiwan authored
      This allows compiling a codec using the same operating path (the generic
      "high-bitdepth" one), regardless of the profile of the input bitstream.
      For now, keep the 16-bit (generic) pixel operating path disabled by default.
      
      Change-Id: Idd31a842b801a82c4918b1cfa7cc0bff5b11d060
      98378137
    • Luc Trudeau's avatar
      Add get_plane_type() helper function. · 005feb6b
      Luc Trudeau authored
      Adds the static inline function get_plane_type to convert a plane number
      to the corresponding PLANE_TYPE.
      
      There's no change to the bitstream, it only encapsulates the logic to
      get the PLANE_TYPE.
      
      Change-Id: I1199db3a32c89437d9c029ab5b2b2e62582a13a2
      005feb6b
  9. 23 Feb, 2017 1 commit
    • Jingning Han's avatar
      Add chroma 2x2 block experiment · 31b6a4f9
      Jingning Han authored
      Support the use of 2x2 prediction and transform block size for
      chroma components. This experiment builds on top of cb4x4. It
      brings back the loss in performance gains due to 4x4 chroma
      component constrain. The coding gains for lowres are up from 1.5%
      to 2.5%.
      
      Change-Id: I8e461e230c2d920f6df1af9d935ebe9dfa3820d9
      31b6a4f9
  10. 22 Feb, 2017 3 commits
    • Jingning Han's avatar
      Sync sub8x8 chroma component decoding process · c20dc8eb
      Jingning Han authored
      Process sub8x8 chroma component decoding in the unit of 4x4 block.
      
      Change-Id: I02e149f6076cdb5942b8a0a0b9ac2d833b1a7e49
      c20dc8eb
    • Debargha Mukherjee's avatar
      Reduce transform set for 16x32/32x16 · 08542b96
      Debargha Mukherjee authored
      Previously the transform type sets used for 16x32/32x16 transform
      sizes corresponded to 16x16 transforms. Now they correspond to
      32x32 transforms with a reduced available set.
      
      BDRATE impact:
      0.05% worse for lowres, 0.13% worse for midres
      
      Change-Id: I01d405d497c13837f5404f9e0caf8c571f3b26cf
      08542b96
    • Sarah Parker's avatar
      Add default reduced set for ext-tx · e68a3e4f
      Sarah Parker authored
      Here we create a default set for the ext-tx experiment which
      includes:
      
      Intra: {DCT, ADST} X {DCT, ADST} + IDTX (identity in both directions)
      Inter: DCT_DCT + IDTX
      
      This set is used if indicated in the uncompressed header.
      
      Change-Id: Ic907ada12b4e0c98cabb7c9650ab99942d0c0859
      e68a3e4f
  11. 18 Feb, 2017 2 commits
    • Jean-Marc Valin's avatar
      Merging the dering and clpf experiments into a single experiment: CDEF · 01435130
      Jean-Marc Valin authored
      The result is identical to enabling both deringing and CLPF
      
      Change-Id: I71db5ba9e21fcaf11ad87e94841eaf80be58c0a8
      01435130
    • Nathan E. Egge's avatar
      Remove tx_size_prob from compressed header with EC_ADAPT. · b353a8ed
      Nathan E. Egge authored
      When run with --enable-ec_adapt, forward updates to the tx_size_prob
       array will not be made.
      
      objective-1-fast:
      
      master-ec_adapt-e568e6f0@2017-02-17T15:30:27.109Z ->
       tx_size-ec_adapt@2017-02-17T15:31:49.504Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0113 | -0.0112 | -0.0113 |  -0.0114 | -0.0114 | -0.0114 |    -0.0112
      
      master-ec_adapt-robust-e568e6f0@2017-02-17T20:29:45.315Z ->
       tx_size-ec_adapt-robust@2017-02-17T20:33:06.405Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0244 | -0.0243 | -0.0243 |  -0.0245 | -0.0245 | -0.0245 |    -0.0243
      
      Change-Id: I5873c5d14e3f3868997775f85fa743d2d55d81b7
      b353a8ed
  12. 17 Feb, 2017 2 commits
    • Yaowu Xu's avatar
      Change to use correct size · 0a79a1b1
      Yaowu Xu authored
      Replace obselete size "4" with correct one "tile_size_bytes". This
      fixes a decoder crash.
      
      BUG=aomedia:352
      
      Change-Id: I5b1c606a4d5be946acc68b3cfe0d0603a5591c44
      0a79a1b1
    • Debargha Mukherjee's avatar
      Support trapezoidal models for global motion · 5dfa9300
      Debargha Mukherjee authored
      Adds functinoality for least-squares, RANSAC as well as encoding and
      decoding with new constrained homographies that warp blocks to horizontal
      and/or vertical trapezoids. This is for future experimentation. None
      of the models are actually enabled in the code.
      
      Change-Id: I1936018c6b11587d6fd83c3a2c63548cb641b33f
      5dfa9300
  13. 14 Feb, 2017 1 commit
  14. 13 Feb, 2017 1 commit
  15. 12 Feb, 2017 1 commit
    • 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
  16. 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
  17. 09 Feb, 2017 1 commit
  18. 07 Feb, 2017 1 commit
    • 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
  19. 06 Feb, 2017 1 commit
    • Alex Converse's avatar
      ec_multisymbol: Split off new new_tokenset experiment · a9598cd6
      Alex 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
  20. 04 Feb, 2017 1 commit
  21. 03 Feb, 2017 3 commits