1. 12 Dec, 2017 1 commit
    • Cheng Chen's avatar
      Make lpf_sb work with loopfilter_level · 765e34e3
      Cheng Chen authored
      Make lpf_sb compatible with loopfilter_level, when USE_GUESS_LEVEL = 1.
      
      Filter levels will be selected based on q index and applied for
      filtering on Y, U, V planes separately.
      
      Current model only allows to guess one filter level.
      Now Y_vert = Y_horz = U = V. In the future, we need to retrain the
      model and get filter levels for Y_vert, Y_horz, U and V separately.
      
      When USE_GUESS_LEVEL = 0, lpf_sb can't work with loopfilter_level yet.
      
      Change-Id: Icd774a147c07a4035cf8204a8754b2a99668bbfd
      765e34e3
  2. 05 Dec, 2017 3 commits
    • Sarah Parker's avatar
      Add macro to allow different tx sets for 16x16 · cec7ba10
      Sarah Parker authored
      This allows for the following options:
       Set 0:
              Inter: All 16 txfms
              Intra: Discrete Trig transforms w/0 flip (4) + Identity (1) +
                     1D Hor/vert DCT (2)
       Set 1:
              Inter: Discrete Trig transforms w/ flip (9) + Identity (1) +
                     1D Hor/Ver DCT (2)
              Intra: Discrete Trig transforms w/0 flip (4) + Identity (1)
       Set 2:
              Inter: Discrete Trig transforms w/ flip (9) + Identity (1)
              Intra: Discrete Trig transforms w/0 flip (4) + Identity (1)
      
      Results on lowres 40 frames with
      disable-ext-partition disable-ext-partition-types
      
      Set 0: 0.03%
      Set 1: No change
      Set 2: 0.06%
      
      Change-Id: Iec57d8c8fcfa0891528de4ca88f54753dfcb5284
      cec7ba10
    • Cheng Chen's avatar
      JNT_COMP: change COMPOUND_AVERAGE in cdf · 2ef24ea2
      Cheng Chen authored
      Remove COMPOUND_AVERAGE from compound_type_cdfs since it is now grouped
      to compound_idx. However, COMPOUND_AVERAGE is still used elsewhere.
      
      Change-Id: Ie0d460aabf9252e80eb4130cfef9aaf0efc3969d
      2ef24ea2
    • Cheng Chen's avatar
      JNT_COMP: divide compound modes into two groups · 33a13d9f
      Cheng Chen authored
      Divide compound inter prediction modes into two groups:
      Group A: jnt_comp, compound_average
      Group B: interintra, compound_segment, wedge
      
      Change-Id: I1142da2e3dfadf382d6b8183a87bde95119cf1b7
      33a13d9f
  3. 02 Dec, 2017 2 commits
    • Yunqing Wang's avatar
      Modify the warped motion mode context · 3afbf3fb
      Yunqing Wang authored
      Modified the warped motion mode context based on neighbor's motion modes
      and current block's mode.
      
      Change-Id: I77ca35fab37ec640bb38661ff1799f643d5aafdc
      3afbf3fb
    • Dake He's avatar
      [lv_map_multi] Simplified multisymbol BR coding · 7d01ab54
      Dake He authored
      Multisymbol BR coding is simplified as follows.
      1. Remove computation of level counts by using a template of size 8;
      2. Context is derived by using a template of size 3.
      3. lps and eob probabilities are trained.
      4. Share contexts between TX_16X16 and above.
      
      The number of probability values used in BR coding are reduced from 1152 to 378.
      
      Change-Id: I0419127e871f9e566c2489aa4b1825c5364aec5a
      7d01ab54
  4. 01 Dec, 2017 1 commit
  5. 30 Nov, 2017 1 commit
  6. 29 Nov, 2017 2 commits
  7. 27 Nov, 2017 3 commits
  8. 24 Nov, 2017 7 commits
  9. 23 Nov, 2017 3 commits
  10. 20 Nov, 2017 3 commits
    • Dake He's avatar
      [lv_map_multi] Base level alphabet adjustment · 3fe369c8
      Dake He authored
      At eob-1, coefficient must be non-zero. As such, this CL changes the
      alphabet for base levels at eob-1 from size 4 to size 3. Minor
      performance improvement is observed. In addition, changes in 33462 made
      by Ola Hugosson were also incorporated.
      
      Now with trained initial probability distributions.
      
      Change-Id: Id6b5d0908b5ff186ed88ab0733ce7cc0c4a468d5
      3fe369c8
    • Yue Chen's avatar
      New filter_intra implementation + entropy coding · da2eefc6
      Yue Chen authored
      Use 4x2 processing unit.
      Reduce # of modes from 6 to 5.
      
      Change-Id: I3c12e18084636de0e279c9102a8b212342faf4c7
      da2eefc6
    • Debargha Mukherjee's avatar
      Remove unused tx_size_implied count · 605d63f3
      Debargha Mukherjee authored
      Change-Id: Icca39f1d037a3aca4540e35b70fdfafeae2b094e
      605d63f3
  11. 17 Nov, 2017 1 commit
  12. 15 Nov, 2017 4 commits
  13. 14 Nov, 2017 2 commits
    • Ola Hugosson's avatar
      WIP: lv_map_multi: make br multi symbol · e72a2091
      Ola Hugosson authored
      The br_cdf and lps_cdf with a new 4-state symbol br_cdf.
      The br symbol indicates whether the level is k, k+1, k+2 or >k+2
      In the latter case, a new br symbol is read. Up to 4 br symbols are
      read which will reach level 14 at most. Levels greater than 14 are
      golomb coded.
      
      The adapted symbol count is reduced further by this commit.
      E.g. for the I-frame of ducks_take_off at cq=12, the number of adapted symbols
      is reduced from 4.27M to 3.85M. About 10% reduction.
      
      Gains seems about neutral on a limitied subset.
      
      Change-Id: I294234dbd63fb0fa26aef297a371cba80bd67383
      e72a2091
    • Ola Hugosson's avatar
      WIP: lv_map_multi: New experiment · 13892108
      Ola Hugosson authored
      This experiment modifies lv_map to make use of multi symbol.
      
      Replace the nz_map and coeff_base binary CDF with a new multi-symbol
      CDF of size 4. The new base_cdf indicates for each coeff if the level
      is 0, 1, 2 or >2. Two new special contexts are added to be used for the
      last coefficient (the EOB coeff). For the EOB coefficient we already know
      that it is non-zero. We use one context for DC EOB and one for AC EOB
      (this can potentially be refined more).
      
      The new symbol is read/written by special bitreader/bitwriter functions.
      Those functions reduce the probability precision from 15bit to 9bit before
      the invocation of the arithmetic coding engine.
      
      The adapted symbol count is significantly reduced by this experiment.
      E.g. for the I-frame of ducks_take_off at cq=12, the number of adapted symbols
      is reduced from 6.7M to 4.3M.
      
      Change-Id: Ifc3927d81ad044fb9b0733f1e54d713cb71a1572
      13892108
  14. 13 Nov, 2017 3 commits
    • Yue Chen's avatar
      Fix inefficient coding of filter_intra modes · 4eba69bb
      Yue Chen authored
      Include a few RDO fixes that properly account for the extra flag
      cost at the right place. Also entropy coding of the flag is made
      contexted on tx_size and based on cdf framework.
      
      Change-Id: I52f98ace7e253ccc08917a4a7b517515d1d58a98
      4eba69bb
    • Hui Su's avatar
      Update the q_adapt_probs experiment · 3694c834
      Hui Su authored
      Make it work with NO_FRAME_CONTEXT_SIGNALING.
      
      Change-Id: I27813305c68de7042678706c1c9b938b172c3666
      3694c834
    • Debargha Mukherjee's avatar
      Change tx_size encoding for intra modes · 6147b1b6
      Debargha Mukherjee authored
      Conveys depth from the largest transform size instead of the
      actual transform size. Besides, the max depth is now limited
      by the macro MAX_TX_DPETH set at 2.
      
      Results: BDRATE lowres (30 frames): -0.005%
      
      Change-Id: I1ccbac8ee18c77b816a6a8f500abfaa7892b21de
      6147b1b6
  15. 10 Nov, 2017 2 commits
  16. 05 Nov, 2017 1 commit
  17. 04 Nov, 2017 1 commit