1. 10 Dec, 2015 1 commit
  2. 08 Dec, 2015 1 commit
  3. 03 Dec, 2015 1 commit
    • hui su's avatar
      Remove palette from VP10 · 5d3327e8
      hui su authored
      Store it in nextgenv2 for now.
      
      Change-Id: Iab0af0e15246758e3b6e8bde4a74b13c410576fc
      5d3327e8
  4. 01 Dec, 2015 1 commit
    • hui su's avatar
      Speed up angle search in intra mode selection · d7c8bc77
      hui su authored
      Estimate angle histogram using gradient analysis, then skip those
      angles that are unlikely to be chosen.
      
      On ext-intra experiment, turning off filter-intra modes:
      for all-key-frame setting, computation overhead is reduced
      by about 40%, coding gain dropped from +2.08% to +1.96% (derflr);
      with kf-max-dist=150, computation overhead is reduced
      by about 60%, coding gain dropped from +0.58% to +0.49% (derflr).
      
      Change-Id: I36687410fb10561b8e1a8eebb1528cf17755bd5b
      d7c8bc77
  5. 25 Nov, 2015 1 commit
  6. 23 Nov, 2015 2 commits
    • Debargha Mukherjee's avatar
      Reduce transform options for ext-tx experiment · 56ab215d
      Debargha Mukherjee authored
      Reduces the transform optons for INTRA as well as INTER when
      transform size is 16x16 to not use any of the DSTs.
      Thus, a total of 10 options are used for 16x16, while 4x4
      and 8x8 still uses 17 options.
      
      derflr/hevchd actually improves a little, while hevcmr drops
      a little.
      
      About 10% speed improvement.
      
      Change-Id: I920a182231e052cdd622f8bb67085c16c572cb1e
      56ab215d
    • Jingning Han's avatar
      Move n8_w and n8_h out of experiment flag · c335bfeb
      Jingning Han authored
      These primitive variables are commonly required by many other
      experiments as well. The use of n4_w and n4_h was originally
      introduced in the vp9 decoder implementation.
      
      Change-Id: I93d701d891e3860f31150031e3b9a2b29a3993d2
      c335bfeb
  7. 21 Nov, 2015 1 commit
    • Zoe Liu's avatar
      Added 3 more reference frames for inter prediction. · 3ec1601e
      Zoe Liu authored
      Under the experiment of EXT_REFS: LAST2_FRAME, LAST3_FRAME, and
      LAST4_FRAME.
      
      Coding efficiency: derflr +1.601%; hevchr +1.895%
      Speed: Encoder slowed down by ~75%
      
      Change-Id: Ifeee5f049c2c1f7cb29bc897622ef88897082ecf
      3ec1601e
  8. 19 Nov, 2015 1 commit
  9. 17 Nov, 2015 1 commit
    • hui su's avatar
      Merge MISC_FIXES · 66f2f65e
      hui su authored
      Remove MISC_FIXES flags except for the changes on MV precision, which
      has a 0.1% performance drop.
      
      On derflr, the impact is -0.012%.
      
      Change-Id: I0a74e5a212dd0cb827192a318c92a714c9681e45
      66f2f65e
  10. 13 Nov, 2015 1 commit
    • hui su's avatar
      refactor ext-intra · 4aa50c17
      hui su authored
      Coding gain remains about the same, while overall speed is
      substantially increased.
      
      Change-Id: I2989bebcfd21092cd6a02653d4df4a3bf6780874
      4aa50c17
  11. 09 Nov, 2015 1 commit
    • Johann's avatar
      Release v1.5.0 · cbecf57f
      Johann authored
      Javan Whistling Duck release.
      
      Change-Id: If44c9ca16a8188b68759325fbacc771365cb4af8
      cbecf57f
  12. 06 Nov, 2015 1 commit
    • Debargha Mukherjee's avatar
      New interpolation experiment · 85514c40
      Debargha Mukherjee authored
      Adds a new interpolation experiment.
      
      Improves entropy coding to send the filter type only if
      the motion vectors have subpel components.
      Adds one new 8-tap smooth filter, and tweaks the others.
      
      derflr: +0.695%
      hevcmr: +0.305%
      
      About 5% encode slowdown. No visible impact for decoding.
      
      Also makes the interpolation framework flexible to support both
      strictly interpolating filters as well as non-interpolating
      filters that filter integer offsets. This is mainly for
      further experimentation and if not found useful the code will
      be removed.
      
      Change-Id: I8db9cde56ca916be771fe54a130d608bf10786e6
      85514c40
  13. 04 Nov, 2015 1 commit
    • hui su's avatar
      ext-intra experiment · be3559ba
      hui su authored
      Currently there are two parts in this experiment: extra directional intra
      prediction modes and the filter intra modes migrated from the nextgen branch.
      
      Several macros are defined in "blockd.h" to provide controls of the experiment
      settings. Setting "DR_ONLY" as 1 (default is 0) means we only use directional
      modes, and skip the filter-intra modes; "EXT_INTRA_ANGLES" (default is 128)
      defines the number of different angles we want to support; setting
      "ANGLE_FAST_SEARCH" as 1 (default is 1) means we use fast sub-optimal search
      for the best prediction angle, instead of exhaustive search. The fast search
      is about 6 times faster than the exhaustive search, while preserving about
      60% of the coding gains.
      
      With extra directional prediction modes (fast search), we observe the following
      code gains (number in parentheses is for all-key-frame setting):
      derflr +0.42%  (+1.79%)
      hevclr +0.78%  (+2.19%)
      hevcmr +1.20%  (+3.49%)
      stdhd  +0.56%
      Speed-wise, about 110% slower for key frames, and 30% slower overall.
      
      The gains of filter intra modes mostly add up with the gains of directional
      modes. The overall coding gain of this experiment:
      derflr +0.94%
      hevclr +1.46%
      hevcmr +1.94%
      stdhd  +1.58%
      
      Change-Id: Ida9ad00cdb33aff422d06eb42b4f4e5f25df8a2a
      be3559ba
  14. 03 Nov, 2015 1 commit
    • Jingning Han's avatar
      Incorporate flexible tx type and tx partition in RD scheme · 4b594d3d
      Jingning Han authored
      This commit hooks up the rate-distortion optimization system to
      fully exploit recursive transform block partition and multiple
      transform type. The compression performance of the two experiments
      largely adds up. For derf set, ext-tx provides additional 2.1%
      coding gains on top of the gains due to recursive transform block
      partition (0.69%).
      
      Change-Id: I1091fb9545f74e489a6a2489dc3c12f5abd05043
      4b594d3d
  15. 30 Oct, 2015 1 commit
  16. 29 Oct, 2015 2 commits
  17. 23 Oct, 2015 2 commits
    • Jingning Han's avatar
      Use explicit block position in foreach_transformed_block · caeb10bf
      Jingning Han authored
      Add the row and column index to the argument list of unit functions
      called by foreach_transformed_block wrapper. This avoids the
      repeated internal parsing according to the block index.
      
      Change-Id: Ie7508acdac0b498487564639bc5cc6378a8a0df7
      caeb10bf
    • Yaowu Xu's avatar
      Fix merge defects · 5a27b3bb
      Yaowu Xu authored
      This commit fixes the merge conflicts between master and nextgenv2 and
      disable early termination in choose_tx_size() to avoid failure in test.
      
      The test failures are pre-existing, some of the issue were fixed in
      masterbase already, so will have another merge to introduce the fixes.
      
      Change-Id: Ib71889661955e73aedbb4db49d8be70425281dcb
      5a27b3bb
  18. 16 Oct, 2015 3 commits
  19. 12 Oct, 2015 1 commit
    • hui su's avatar
      VP10: Add palette mode part 1 · 5d011cb2
      hui su authored
      Add palette mode for keyframe luma channel. Palette mode is enabled
      when using "--tune-content=screen" in encoding config parameters.
      
      on screen_content testset:  +6.89%
      on derlr                 :  +0.00%
      
      Design doc (WIP):
      https://goo.gl/lD4yJw
      
      Change-Id: Ib368b216bfd3ea21c6c27436934ad87afdaa6f88
      5d011cb2
  20. 08 Oct, 2015 1 commit
    • Jingning Han's avatar
      Add support to recursive transform block coding · cffcfdb8
      Jingning Han authored
      This commit re-designs the bitstream syntax to support recursive
      transform block partition. The initial stage targets the inter
      prediction residuals.
      
      Change-Id: I556ab3c68c198387a2fd2d02e2b475e83cd417c3
      cffcfdb8
  21. 07 Oct, 2015 1 commit
    • Jingning Han's avatar
      Use explicit block position in foreach_transformed_block · ebc48efe
      Jingning Han authored
      Add the row and column index to the argument list of unit functions
      called by foreach_transformed_block wrapper. This avoids the
      repeated internal parsing according to the block index.
      
      Change-Id: I42b3578eac258ebaba7a7c74f684de9abab521a6
      ebc48efe
  22. 02 Oct, 2015 2 commits
  23. 01 Oct, 2015 1 commit
  24. 30 Sep, 2015 1 commit
    • Debargha Mukherjee's avatar
      Speed up of DST and the search in ext_tx · 3e8cceb3
      Debargha Mukherjee authored
      Adds an early termination to the ext_tx search, and also
      implements the DST transforms more efficiently.
      
      About 4 times faster with the ext-tx experiment.
      
      There is a 0.09% drop in performance on derflr from 1.735% to
      1.648%, but worth it with the speedup achieved.
      
      Change-Id: I2ede9d69c557f25e0a76cd5d701cc0e36e825c7c
      3e8cceb3
  25. 16 Sep, 2015 2 commits
    • Debargha Mukherjee's avatar
      Inter UV blocks use the same transform type as Y · 31341374
      Debargha Mukherjee authored
      Extend the ext_tx experiment to make the UV inter blocks use
      the same transform type as the extended transform type used
      for Y.
      
      derflr: +1.792% (about +0.06)
      
      Change-Id: I4a77e1f7764b2e8b523e28f42ba13559dde4f0ca
      31341374
    • Ronald S. Bultje's avatar
      vp10: don't reset contextual skip flag if block has no coefficients. · a5d930e4
      Ronald S. Bultje authored
      The implicitly changed value would be used for contextualizing future
      skip flags of neighbour blocks (bottom/right), which is certainly not
      what was intended. The original code stems from vp8, and was useful
      in cases where coding of the skip flag was disabled. In vp9, the skip
      flag is always coded. The result of this change is that for bitstream
      parsing purposes, decoding of the skip flag becomes independent of
      decoding of block coefficients.
      
      See issue 1014.
      
      Change-Id: I8629e6abe76f7c1d649f28cd6fe22a675ce4a15d
      a5d930e4
  26. 15 Sep, 2015 1 commit
  27. 11 Sep, 2015 1 commit
  28. 10 Sep, 2015 1 commit
    • Debargha Mukherjee's avatar
      Comprehensive support for symmetric DST · 4ce81d66
      Debargha Mukherjee authored
      Creates new hybrid transforms combining symmetric DST with
      ADST and DCT. Thus a total of 16 transforms are supported.
      
      derfl: +1.659% (up about 0.2%)
      
      Change-Id: Idde1cecdb59527890bf05da740099c3f6a5b9764
      4ce81d66
  29. 09 Sep, 2015 1 commit
  30. 31 Aug, 2015 1 commit
  31. 27 Aug, 2015 1 commit
  32. 26 Aug, 2015 1 commit
    • hui su's avatar
      Enable ADST for UV channel · b3cc3a07
      hui su authored
      derflr +0.202%
      hevclf +0.207%
      hevcmr +0.095%
      hevchr +0.077%
      
      Tested locally on several derf sequences, speed (encoder + decoder)
      is slower by less than 1%.
      
      It is part of the EXT_TX experiment, which is to be continued to
      explore different transform variants.
      
      Change-Id: I05d44994a62106538a9a241ed8d89bd7c5d14761
      b3cc3a07
  33. 21 Aug, 2015 1 commit
    • hui su's avatar
      Refactor get_tx_type and get_scan · 5eed74e1
      hui su authored
      This makes it easier to add new transform types and scan orders
      to VP10 in the future.
      
      Change-Id: I94874ddc9b19928d7820d57e94e2af04adf51efe
      5eed74e1