1. 23 Jul, 2014 3 commits
    • Jingning Han's avatar
      Remove redundant argument entry in handle_inter_mode · e945c56d
      Jingning Han authored
      The value of mode_excluded has been properly set in
      vp9_rd_pick_inter_mode_sb(). It is redundant to send it in
      handle_inter_mode() and re-set the value again.
      Change-Id: I408d4731f2f42e0bcf3ae62e85757717bb410471
    • Jingning Han's avatar
      Use the chessboard pattern pred search in newmv mode · 4f2f8672
      Jingning Han authored
      This commit extends the chessboard pattern prediction filter search.
      If the above and left blocks have the same prediction filter type,
      the encoder will skip the prediction filter type search and use the
      reference one.
      The overall chessboard pattern prediction filter type search reduces
      speed 3 runtime for hard clips. Experiments on park joy at 1080p
      and 15000 kbps show that the runtime goes from 723265 ms to 65832 ms,
      i.e., about 10% speed-up. Compression performance wise, it affects
      the coding quality by
      Change-Id: I880975497c7ad166532e9eea9bf46684d77ff327
      derf:    -0.326%
      yt:      -0.257%
      hd:      -0.241%
      stdhd:   -0.417%
    • Jingning Han's avatar
      Remove redundant num_refs definition · 35381910
      Jingning Han authored
      Use is_comp_pred to replace the use case of num_refs.
      Change-Id: I4d0c1e14d5f728428a2ae3d293cd2b4a8b2f31d8
  2. 22 Jul, 2014 2 commits
    • Jingning Han's avatar
      Enable chessboard inter prediction filter type search · 54ad0958
      Jingning Han authored
      This commit enables a chessboard pattern prediction filter type
      search scheme for rate-distortion optimization speed-up. For the
      inferred motion vector modes, the encoder can re-use its above/left
      neighbor blocks' prediction filter type and skip a full test on
      all possible filter types. Such operation is turned on/off
      alternatively in a chessboard manner.
      It is turned on in speed 3. For test clip pedestrian 1080p, the
      runtime is reduced from 231500 ms -> 221700 ms. The compression
      performance is changed:
      derf:  -0.147%
      yt:    -0.134%
      hd:    -0.079%
      stdhd: -0.220%
      Change-Id: I1912f278e7576c2dc632688e3ad7a257410c605a
    • Jingning Han's avatar
      USE local best_filter variable in handle_inter_mode · 5de6114e
      Jingning Han authored
      This should be a local variable. Move the definition from
      vp9_rd_pick_inter_mode_sb to handle_inter_mode.
      Change-Id: I14f4168bb1c896ed04e8f6d4cd89fbf4c9839944
  3. 21 Jul, 2014 1 commit
  4. 11 Jul, 2014 2 commits
  5. 09 Jul, 2014 1 commit
    • Yunqing Wang's avatar
      Remove repetitive code in mcomp.c · a581da21
      Yunqing Wang authored
      Deleted vp9_find_best_sub_pixel_comp_tree(), and combined it in
      Change-Id: Ifb25763c8b19822df5537cc1daa76ce88dc3b056
  6. 02 Jul, 2014 2 commits
    • Alex Converse's avatar
      Split vp9_rdopt into vp9_rdopt and vp9_rd. · 03c276ea
      Alex Converse authored
      vp9_rdopt is for making rd optimal mode decisions. vp9_rd is for all
      other rd related routines. Anything used outside of making an rd optimal
      decision belongs in rd.
      Change-Id: I772a3073f7588bdf139f551fb9810b6864d8e64b
    • Yunqing Wang's avatar
      Fix rd threshold overflow issue · 3bc11932
      Yunqing Wang authored
      Moved the threshold adjustment before reference flag checking,
      which could set the threshold to INT_MAX for disabled reference
      frame, and cause overflow if the adjustment is done after that.
      Change-Id: I85e94f8726d5e3ae93f65965aa978721dddc9957
  7. 01 Jul, 2014 2 commits
    • Alex Converse's avatar
      Allow lossless skipping in RD mode decision. · 0256a759
      Alex Converse authored
      Change-Id: I2fc4ecfc2dd3ff1dd241a68c9ed4c280291b41f2
    • Yunqing Wang's avatar
      Elevate NEWMV mode checking threshold in real time · f31ff029
      Yunqing Wang authored
      The current threshold is knid of low, and in many cases NEWMV
      mode is checked but not picked as the best mode. This patch
      added a speed feature to increase NEWMV threshold, so that
      less partition mode checking goes to check NEWMV. This feature
      is enabled for speed 6 and 7.
      Rtc set borg tests showed:
      1. Speed 6, overall psnr: -0.088%, ssim: -1.339%;
         Average speedup on rtc set is 11.1%.
      2. Speed 7, overall psnr: -0.505%, ssim: -2.320%
         Average speedup on rtc set is 12.9%.
      Change-Id: I953b849eeb6e0d5a1f13eacba30c14204472c5be
  8. 29 Jun, 2014 1 commit
  9. 24 Jun, 2014 1 commit
  10. 20 Jun, 2014 2 commits
  11. 19 Jun, 2014 1 commit
    • Jingning Han's avatar
      Allow key frame more flexibility in mode search · c99a8fd7
      Jingning Han authored
      This commit allows the key frame to search through more prediction
      modes and more flexible block sizes. No speed change observed. The
      coding performance for rtc set is improved by 1.7% for speed -5 and
      3.0% for speed -6.
      Change-Id: Ifd1bc28558017851b210b4004f2d80838938bcc5
  12. 18 Jun, 2014 1 commit
    • Alex Converse's avatar
      BITSTREAM: Handle transform size and motion vectors more logically for non-420. · 7557a65d
      Alex Converse authored
      This breaks the profile 1 bitstream.
      Don't force non420 uv transform size to 1/4 y size. In the 4:2:0 case the
      chroma corresponding to a luma block is 1/4 its size. In the 4:4:4 case
      chroma and luma planes are the same size. Disallowing larger transforms
      can result in a loss of compression efficiency and is inconsistent.
      For sub-8x8 blocks only average corresponding motion vectors.
      4:2:0 and profile 0 behavior remains unchanged.
      Change-Id: I560ae07183012c6734dd1860ea54ed6f62f3cae8
  13. 12 Jun, 2014 4 commits
  14. 10 Jun, 2014 1 commit
  15. 02 Jun, 2014 1 commit
  16. 01 Jun, 2014 1 commit
  17. 29 May, 2014 3 commits
  18. 28 May, 2014 2 commits
  19. 27 May, 2014 1 commit
  20. 23 May, 2014 1 commit
  21. 22 May, 2014 1 commit
  22. 21 May, 2014 1 commit
  23. 19 May, 2014 2 commits
  24. 16 May, 2014 1 commit
  25. 15 May, 2014 2 commits