1. 26 Feb, 2016 1 commit
    • Jingning Han's avatar
      Unify frame border extension operation · d1d11fc6
      Jingning Han authored
      This commit unifies the encoder and decoder border extension and
      motion compensated prediction process. Remove the decoder specific
      flow to simplify the development flow.
      
      Change-Id: I9c43bbe6d7c017e6da2db6a62c5bf3d0af7ccfce
      d1d11fc6
  2. 23 Feb, 2016 1 commit
    • hui su's avatar
      Fix palette mode · 875aa1c5
      hui su authored
      It was broken by commit 3787b174
      
      Change-Id: I2be0f6243e8716b9ca4c0321de381419108d1abe
      875aa1c5
  3. 22 Feb, 2016 1 commit
  4. 20 Feb, 2016 1 commit
  5. 17 Feb, 2016 1 commit
  6. 12 Feb, 2016 2 commits
    • Yue Chen's avatar
      Overlapped block motion compensation experiment · d1cad9c3
      Yue Chen authored
      In this experiment, an obmc inter prediction mode is enabled for
      >= 8X8 inter blocks. When the obmc flag is on, the regular block-
      based motion compensation will be refined by using predictors of
      the above and left blocks.
      Fixed some compatibility issues with vp9_highbitdepth, supertx,
      ref_mv, and ext_interp.
      
      Coding gain (%) on derflr/hevcmr/hevchd
      OBMC:
      1.047/1.022/0.708
      OBMC + SUPERTX:
      1.652/1.616/1.137
      SUPERTX:
      0.862/0.779/0.630
      
      Change-Id: I5d8d3c4729c6d3ccb03ec7034563107893103b7f
      d1cad9c3
    • Debargha Mukherjee's avatar
      Adding loop wiener restoration · 8b0a5b87
      Debargha Mukherjee authored
      Adds a wiener filter based restoration scheme in loop which can
      be optionally selected instead of the bilateral filter.
      
      The LMMSE filter generated per frame is a separable symmetric 7
      tap filter. Three parameters for each of horizontal and vertical
      filters are transmitted in the bitstream. The fourth parameter
      is obtained assuming the sum is normalized to 1.
      Also integerizes the bilateral filters, along with other
      refactoring necessary in order to support the new switchable
      restoration type framework.
      
      derflr: -0.75% BDRATE
      
      [A lot of videos still prefer bilateral, however since many frames
      now use the simpler separable filter, the decoding speed is
      much better].
      
      Further experiments to follow, related to replacing the bilateral.
      
      Change-Id: I6b1879983d50aab7ec5647340b6aef6b22299636
      8b0a5b87
  7. 09 Feb, 2016 1 commit
    • Jingning Han's avatar
      Entropy coding for dynamic ref mv modes · 4958987b
      Jingning Han authored
      This commit enables entropy coding for dynamic reference motion
      vector modes. The probability model is contexted on the ranking
      categories of the reference motion vector candidates.
      
      Change-Id: I09b58d98a409d63ec1a407331e29f8945b7ef17d
      4958987b
  8. 06 Feb, 2016 1 commit
  9. 05 Feb, 2016 1 commit
    • Yaowu Xu's avatar
      Fix bad merge artifacts · 105da412
      Yaowu Xu authored
      Temporaly disable warning for unused function for vp10, needs clean
      out the warnings before re-enable the flag for vp10.
      
      Change-Id: I5636f8cd607423f6ea6963db9c2cbd688e30b495
      105da412
  10. 04 Feb, 2016 1 commit
  11. 03 Feb, 2016 1 commit
    • hui su's avatar
      Add 8-tap interpolation filter options for intra prediction · 3b1c7668
      hui su authored
      BD-rate performance improvement (on top of ext-intra):
      derflr  0.22%
      hevclr  0.36%
      hevcmr  0.48%
      hevchr  0.37%
      stdhd   0.19%
      
      Average speed impact on some derf clips is about 40% slower (on
      top of ext-intra). Speed improvment is a to-do.
      
      Change-Id: I8fe3fe8c5e4f60d0462778adbcc15c84dfbe7a25
      3b1c7668
  12. 02 Feb, 2016 1 commit
  13. 29 Jan, 2016 1 commit
  14. 28 Jan, 2016 1 commit
  15. 26 Jan, 2016 1 commit
    • Geza Lore's avatar
      Set inter_tx_size for supertx coded blocks. · e7c0e157
      Geza Lore authored
      The loop filter relies on inter_tx_size in MB_MODE_INFO being set
      properly when VAR_TX is enabled. Supertx coded blocks did not set this
      previously at all, and the differing garbage values eventually resulted
      in in a YUV mismatch between encoder and decoder after loop filtering.
      
      This patch fixes this by setting inter_tx_size to the proper supertx
      size in both the encoder and the decoder. This should also mean that
      loop filtering is done at the proper transform boundaries, even when
      supertx or vartx is being used.
      
      Change-Id: I41a564cd6d34ce4a8313ad4efa89d905f5ead731
      e7c0e157
  16. 25 Jan, 2016 1 commit
    • Debargha Mukherjee's avatar
      Some supertx fixes · 9a8a6a1b
      Debargha Mukherjee authored
      Fixes some of the issues introduced by a merge from master.
      
      derflr: -0.893% BDRATE
      hevcmr: -1.667% BDRATE
      
      Change-Id: I4c5b40ec63a6f19521191d3c730af87db3c4bc00
      9a8a6a1b
  17. 22 Jan, 2016 1 commit
    • Yue Chen's avatar
      Adding new compound modes to EXT_INTER experiment · 968bbc7b
      Yue Chen authored
      Combinations of different mv modes for two reference frames
      are allowed in compound inter modes. 9 options are enabled,
      including NEAREST_NEARESTMV, NEAREST_NEARMV, NEAR_NEARESTMV,
      NEAREST_NEWMV, NEW_NEARESTMV, NEAR_NEWMV, NEW_NEARMV, ZERO_ZEROMV,
      and NEW_NEWMV.
      This experiment is mostly deported from the nextgen branch.
      It is made compatible with other experiments
      
      Coding gain of EXT_INTER(derflr/hevcmr/hevchd): 0.533%/0.728%/0.639%
      
      Change-Id: Id47e97284e6481b186870afbad33204b7a33dbb0
      968bbc7b
  18. 21 Jan, 2016 1 commit
    • Debargha Mukherjee's avatar
      Loop restoration filter · 84ca7a9f
      Debargha Mukherjee authored
      Current implementation is a bilateral filter whose
      parameters are transmitted in the bitstream.
      
      derflr: -0.647% BDRATE
      hevcmr: -0.794% BDRATE
      
      This is a prelimary patch. Various other variations are to
      be investigated next, that will hopefully be less expensive
      on the decoder side.
      
      Change-Id: I50634ae8f5014ad0bf7432306348908a349d81e1
      84ca7a9f
  19. 15 Jan, 2016 2 commits
    • Yue Chen's avatar
      EXT_INTER experiment · 1ac85879
      Yue Chen authored
      NEW2MV is enabled, representing a new motion vector predicted from
      NEARMV. It is mostly ported from nextgen, where it was named
      NEW_INTER.
      A few fixes are done for sub8x8 RDO to correct some misused
      mv references in the original patch.
      A 'bug-fix' for encoding complexity is done, reducing the additional
      encoding time from 50% to 20%. In sub8x8 case, the old patch
      did motion search for every interpolation filter (vp9 only
      searches once). This fix also slightly improves the coding gain.
      This experiment has been made compatible with REF_MV and EXT_REFS.
      
      Coding gain (derflr/hevcmr/hevchd): 0.267%/0.542%/0.257%
      
      Change-Id: I9a94c5f292e7454492a877f65072e8aedba087d4
      1ac85879
    • Debargha Mukherjee's avatar
      Fixing some compile issues · eee6afe0
      Debargha Mukherjee authored
      Fixes a breakage introduced with the latest merge from master and
      cleans up a couple of compiler warnings.
      
      Change-Id: Ia55b39ba78e43f6fe52c54d7f34faa4dd6bbbf26
      eee6afe0
  20. 12 Jan, 2016 1 commit
  21. 08 Jan, 2016 2 commits
  22. 07 Jan, 2016 2 commits
  23. 05 Jan, 2016 1 commit
    • Debargha Mukherjee's avatar
      Super transform - ported from nextgen branch · 3787b174
      Debargha Mukherjee authored
      Various additional changes were made to make the experiment
      compatible with misc_fixes.
      
      derflr: +0.979%
      hevcmr: +0.865%
      
      Speed-wise with --enable-supertx the encoder is only about 10%
      slower than without. Decoding impact is about 30% slowdown.
      
      Note this does not work with ext-tx or var-tx yet. That is
      a TODO.
      
      Change-Id: If25af4241a7a9efbd28f58eda3c4f044c7a7ef4b
      3787b174
  24. 04 Jan, 2016 1 commit
    • Ronald S. Bultje's avatar
      vp10: only assume ONLY_4X4 if segmentation is disabled. · 53a11656
      Ronald S. Bultje authored
      Otherwise, per-segment lossless might mean that some segments are not
      lossless and they could still want to use another mode. The per-block
      tx points remain uncoded on blocks where (per the segment id) the Q
      value implies lossless.
      
      Change-Id: If210206ab1fe3dd11976797370c77f961f13dfa0
      53a11656
  25. 18 Dec, 2015 1 commit
    • Zoe Liu's avatar
      Restore the flexibility for the new 3 references · ec36a2b0
      Zoe Liu authored
      For the experiment of EXT_REFS, removed the previous special handling
      on the new last 3 references, i.e. LAST2_FRAME, LAST3_FRAME, and
      LAST4_FRAME, at the decoder, so that these new last references are
      treated the same way as the other 3 references (LAST_FRAME,
      GOLDEN_FRAME, and ALTREF_FRAME). Encoder changes have been made
      accordingly to realize this flexibility.
      
      Change-Id: Ic6546f9443b4377bb7e7b101bfa3e70a8b8d1c65
      ec36a2b0
  26. 16 Dec, 2015 1 commit
  27. 15 Dec, 2015 1 commit
    • Yaowu Xu's avatar
      Fix a enc/dec mismatch under CONFIG_MISC_FIXES · c7101830
      Yaowu Xu authored
      The culprit is on the decode side xd->lossless[i] setup was in wrong
      location where segment features are not yet decoded.
      
      Also on the encoder side, transform mode was not set consistently
      between when tx_mode is selected and how tx_mode is enforced in
      tx size selection.
      
      Change-Id: I4c4c32188fda7530cadab9b46d4201f33f7ceca3
      c7101830
  28. 10 Dec, 2015 2 commits
  29. 08 Dec, 2015 1 commit
  30. 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
  31. 23 Nov, 2015 1 commit
    • 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
  32. 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
  33. 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
  34. 09 Nov, 2015 1 commit
    • Johann's avatar
      Release v1.5.0 · cbecf57f
      Johann authored
      Javan Whistling Duck release.
      
      Change-Id: If44c9ca16a8188b68759325fbacc771365cb4af8
      cbecf57f
  35. 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