1. 31 Mar, 2017 1 commit
  2. 30 Mar, 2017 1 commit
    • Debargha Mukherjee's avatar
      A few fixes for global motion · 11f0e40d
      Debargha Mukherjee authored
      Handles a rare divisin by 0 case.
      Also adds a check on global motion parameters to disable
      if the parameters obtained are outside the range that the
      shear supports. This fixes a rare assert failure.
      Also changes the recode loop threshold somewhat.
      
      Change-Id: I4c6e74b914ac653cd9caa0563d78b0a19a2a8627
      11f0e40d
  3. 29 Mar, 2017 1 commit
    • Debargha Mukherjee's avatar
      Improves/refactors rd costing for global motion · 265db6d0
      Debargha Mukherjee authored
      Improves and simplifies costing for global motion to use the
      actual bits used to communicate the global motion parameters.
      Removes some of the old hacks.
      This patch also includes necessary refactoring to incorporate
      reference based coding of the motion parameters to follow.
      
      lowres results: -1.489% (up from -1.333%)
      
      Change-Id: I994dc97046011de4261633ccb0c9d71e374f2c5a
      265db6d0
  4. 24 Mar, 2017 1 commit
  5. 17 Mar, 2017 1 commit
    • Sarah Parker's avatar
      Macro to disable warped/obmc_causal with global motion · 19234cc2
      Sarah Parker authored
      Enabling SEPARATE_GLOBAL_MOTION will remove the ability for
      a block that uses zeromv with global motion to pick warped_causal
      or obmc_causal as the motion mode. When this is enabled there is:
      
      0.05% drop on lowres for global + warped enabled
      0.15% drop on midres for global + warped enabled
      
      0.12% drop on lowres with global + motion var enabled
      0.07% drop on midres with global + motion var enabled
      No performance change for global, warped, or motion var individually.
      
      Change-Id: Idbfb8dd7a93da14902438504b06a08e5212e48cb
      19234cc2
  6. 04 Mar, 2017 1 commit
  7. 02 Mar, 2017 1 commit
    • Sarah Parker's avatar
      Turn off global motion for sub8x8 blocks · ae7c458a
      Sarah Parker authored
      Lowres: 0.03% improvement, 1% improvement on waterfall_cif.y4m
      Midres: 0.085% overall improvement, 1.253% improvement on station2_480p25.y4m
      Change-Id: I3872934d978bb4ca828c6b9acd2fdb951d9da299
      ae7c458a
  8. 27 Feb, 2017 1 commit
  9. 23 Feb, 2017 1 commit
    • David Barker's avatar
      Change gm_get_motion_vector · 45390c18
      David Barker authored
      Since gm_get_motion_vector is trying to give a motion vector for
      "the frame as a whole", it makes more sense for it to calculate
      the motion of the *center* of the block rather than the top-left
      corner of the frame.
      
      In theory, this change should also help the encoder make better
      decisions on when to use global motion. It avoids an issue
      where, early in the frame, NEARESTMV looks like a good way to use
      the global motion vector *without* paying the rate cost applied
      to the first few global motion blocks in each frame. This seems
      to lead to a better overall result.
      
      Change-Id: Ia5c6259ceb8b4ff3d00a5d553e1d18bdb802da59
      45390c18
  10. 22 Feb, 2017 1 commit
  11. 17 Feb, 2017 1 commit
    • 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
  12. 09 Dec, 2016 1 commit
    • Debargha Mukherjee's avatar
      Support affine/homography models for global motion · b0f6bd44
      Debargha Mukherjee authored
      With this patch affine or homography models can be enabled
      by simply changing the value of the GLOBAL_TRANS_TYPES
      macro in common/mv.h to 4 and 5 respectively. Currently
      it is left at supporting only rotzoom. There is a small
      gain with enabling affine.
      
      Also refactors costing to change based on the model type.
      
      Change-Id: I46c1759de06c42c176c64ec21307ff347ddcc259
      b0f6bd44
  13. 08 Dec, 2016 1 commit
  14. 07 Dec, 2016 1 commit
  15. 01 Dec, 2016 1 commit
  16. 19 Nov, 2016 1 commit
    • Jingning Han's avatar
      Pre-store the pred_diff for nmv context · 3f338830
      Jingning Han authored
      Replace the int_mv storage in the ref_mv_stack struct with unit8_t
      integer to indicate the prediction difference level.
      
      Change-Id: I0bfbcab350a46ecdd5bc47bd918cce9614365227
      3f338830
  17. 17 Nov, 2016 1 commit
  18. 11 Nov, 2016 1 commit
  19. 10 Nov, 2016 1 commit
  20. 05 Nov, 2016 1 commit
  21. 29 Sep, 2016 1 commit
  22. 07 Sep, 2016 1 commit
    • Sarah Parker's avatar
      Swap order of affine parameters · c4bcb506
      Sarah Parker authored
      This allows for a clean subtraction of 1 along the transform
      matrix diagonal and also makes the order of the parameter list
      a little more intuitive.
      
      Change-Id: I6a5d754af41b8d1292f241f9b21473160517d24f
      c4bcb506
  23. 02 Sep, 2016 2 commits
    • Yaowu Xu's avatar
      Change to use AOM copyright notice · 2ab7ff05
      Yaowu Xu authored
      Change-Id: I2b2b70e756b7eb9611b7b33b7d5f19b3b30e0a50
      2ab7ff05
    • Sarah Parker's avatar
      Add global motion experiment to rdopt · e5299865
      Sarah Parker authored
      This patch completes the global motion experiment
      implementation. It modifies the format of the motion
      parameters to use the mv union to facilitate faster
      copying and checks for parameters equal to 0 that occur
      frequently in rdopt. The rd decisions for the global motion experiment
      have also been added to rdopt.
      Change-Id: Idfb9f0c6d23e538221763881099c5a2a3891f5a9
      e5299865
  24. 01 Sep, 2016 2 commits
  25. 29 Aug, 2016 1 commit
    • Sarah Parker's avatar
      Implement global motion parameter computation · 4dc0f1b1
      Sarah Parker authored
      This computes global motion parameters between 2 frames by
      matching corresponding points using FAST feature and then
      fitting a model using RANSAC.
      
      Change-Id: Ib6664df44090e8cfa4db9f2f9e0556931ccfe5c8
      4dc0f1b1
  26. 12 Aug, 2016 1 commit
  27. 03 Aug, 2016 1 commit
    • Sarah Parker's avatar
      Adjust gm parameter computation to avoid mismatch · aa810c00
      Sarah Parker authored
      The gm parameters need to have WARPED_PRECISION_BITS precision
      until they are written to the bitstream because functions in
      reconinter use these parameters before they are written to
      the bitstream. Previously, the parameters weren't being converted
      to WARPED_PRECISION_BITS until they were read from the bitstream
      which causes an encode/decode mismatch.
      
      Change-Id: I31e76e9d6f7d24df21af287a72f8c01f1997304d
      aa810c00
  28. 21 Jul, 2016 1 commit
  29. 19 Jul, 2016 1 commit
    • Sarah Parker's avatar
      Add global motion parameters to compressed header · 5fa46c0b
      Sarah Parker authored
      Currently nothing is implemented to compute GM parameters, this
      just adds the capability to send them in the bitstream if they
      were computed. Still need to implement the reconstruction
      based on the parameters in reconinter.
      
      Change-Id: I72aea3c6a9de9f5a40f96da76c82b54a52781fe2
      5fa46c0b
  30. 03 May, 2016 1 commit
  31. 22 Mar, 2016 2 commits
    • Yaowu Xu's avatar
      vp10/ -> av1/ · cfea7dd7
      Yaowu Xu authored
      Change-Id: Ia055d03656ad1580447eced8687949583fdf4089
      cfea7dd7
    • Yaowu Xu's avatar
      Rename vpx to aom · bf4202ed
      Yaowu Xu authored
      Change-Id: Ibc7933fba85feeb30ef9b14b302d932aff19f54e
      bf4202ed
  32. 19 Feb, 2016 1 commit
  33. 28 Jan, 2016 1 commit
  34. 11 Jan, 2016 1 commit
    • Jingning Han's avatar
      Refactor ref mv stack system · 253a200d
      Jingning Han authored
      This commit re-works the reference motion vector stack process
      and make it support extended context set. It unifies reference
      motion vector checking process for row and column scan, as well as
      for single block scan.
      
      Change-Id: I68c05cde93cf8b0ca2ef4d1523399f405bd0a337
      253a200d
  35. 25 Nov, 2015 1 commit
  36. 09 Nov, 2015 1 commit
    • Johann's avatar
      Release v1.5.0 · cbecf57f
      Johann authored
      Javan Whistling Duck release.
      
      Change-Id: If44c9ca16a8188b68759325fbacc771365cb4af8
      cbecf57f
  37. 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