1. 15 May, 2013 1 commit
    • Scott LaVarnway's avatar
      WIP: 16x16 idct/recon merge · a272ff25
      Scott LaVarnway authored
      This patch eliminates the intermediate diff buffer usage by
      combining the short idct and the add residual into one function.
      The encoder can use the same code as well.
      
      Change-Id: Iea7976b22b1927d24b8004d2a3fddae7ecca3ba1
      a272ff25
  2. 14 May, 2013 2 commits
  3. 13 May, 2013 1 commit
  4. 10 May, 2013 2 commits
    • Dmitry Kovalev's avatar
      Removing unused simple loopfilter code. · effaa326
      Dmitry Kovalev authored
      Change-Id: Ic11dc052fb641687c015e1bbc37181b9babcd43e
      effaa326
    • Yunqing Wang's avatar
      Add joint motion search in comp_inter_inter mode(experiment) · 9f5811c2
      Yunqing Wang authored
      In current code, motion vectors got from single prediction mode are used
      in compound prediction mode directly. These motion vectors may not give
      accurate prediction since they are searched independently. In this patch,
      we took Pascal's suggestion, and did joint motion search in compound
      prediction mode to find better motion vectors in this situation.
      Test results:
      Overall PSNR: 0.570%(derf), 0.918%(stdhd);
      SSIM: 0.572%(derf), 1.009%(stdhd);
      
      The encoder is a little slower. This can be improved since some c
      code is used in motion search.
      
      Change-Id: Ib30c9240f6c56c9b070867b4ca89412a76d9f3c6
      9f5811c2
  5. 07 May, 2013 1 commit
    • Jingning Han's avatar
      Merge SB8X8 into the codebase · 776c1482
      Jingning Han authored
      Pull sb8x8 out of experimental list. verified via borg run tests.
      Fixed unit test failures.
      
      Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
      776c1482
  6. 04 May, 2013 1 commit
  7. 02 May, 2013 2 commits
  8. 01 May, 2013 1 commit
  9. 26 Apr, 2013 3 commits
    • John Koleszar's avatar
      Remove BLOCKD structure · bb41ab4a
      John Koleszar authored
      All members can be referenced from their per-plane counterparts, and
      removes assumptions about 24 blocks per macroblock.
      
      Change-Id: I7ff2fa72d22c29163eb558981c8193765a8113d9
      bb41ab4a
    • John Koleszar's avatar
      Remove destination pointers from BLOCKD · 4f55c561
      John Koleszar authored
      Access these members from MACROBLOCKD instead.
      
      Change-Id: I7907230dd473ff12ebe182b9280d8b7f12a888c4
      4f55c561
    • Scott LaVarnway's avatar
      Removed bmi from blockd · 57f180b3
      Scott LaVarnway authored
      This originally was "Removed update_blockd_bmi()".  Now,
      this patch removed bmi from blockd and uses the bmi found
      in mode_info_context.  Eliminates unnecessary bmi copies between
      blockd and mode_info_context.
      
      Change-Id: I287a4972974bb363f49e528daa9b2a2293f4bc76
      57f180b3
  10. 25 Apr, 2013 1 commit
    • John Koleszar's avatar
      Remove BLOCK structure · 4bd0f4f6
      John Koleszar authored
      All members can be referenced from their per-plane counterparts, and
      removes assumptions about 24 blocks per macroblock.
      
      Change-Id: I593fb0715e74cd84b48facd1c9b18c3ae1185d4b
      4bd0f4f6
  11. 24 Apr, 2013 1 commit
  12. 23 Apr, 2013 2 commits
    • Johann's avatar
      Resolve declaration and implementation. · 7af58d43
      Johann authored
      Clean Windows build warnings:
      warning C4028: formal parameter <N> different from declaration
      
      This was fixed independently in master and experimental but the fixes
      were in opposite directions. One added const to the declaration and the
      other removed it from the implementation.
      
      Also update the variable names. This doesn't modify the data so call it
      ref, matching the functions in the vicinity, rather than dst.
      
      Change-Id: I2ffc6b4a874cb98c26487b909d20a5e099b5582c
      7af58d43
    • John Koleszar's avatar
      Move src_diff to per-plane MACROBLOCK data · cbd1315a
      John Koleszar authored
      First in a series of commits making certain MACROBLOCK members
      addressable per-plane. This commit also refactors the block subtraction
      functions vp9_subtract_b, vp9_subtract_sby_c, etc to be
      loops-over-planes and variable subsampling aware.
      
      Change-Id: I371d092b914ae0a495dfd852ea1a3d2467be6ec3
      cbd1315a
  13. 22 Apr, 2013 2 commits
  14. 19 Apr, 2013 2 commits
  15. 18 Apr, 2013 1 commit
    • Jingning Han's avatar
      Make the use of pred buffers consistent in MB/SB · 6f43ff58
      Jingning Han authored
      Use in-place buffers (dst of MACROBLOCKD) for  macroblock prediction.
      This makes the macroblock buffer handling consistent with those of
      superblock. Remove predictor buffer MACROBLOCKD.
      
      Change-Id: Id1bcd898961097b1e6230c10f0130753a59fc6df
      6f43ff58
  16. 17 Apr, 2013 2 commits
  17. 16 Apr, 2013 3 commits
  18. 15 Apr, 2013 2 commits
  19. 11 Apr, 2013 3 commits
    • Jingning Han's avatar
      Make intra predictor support rectangular blocks · 815e95fb
      Jingning Han authored
      The intra predictor supports configurable block sizes. It can handle
      intra prediction down to 4x4 sizes, when enabled in BLOCK_SIZE_TYPE.
      
      Change-Id: I7399ec2512393aa98aadda9813ca0c83e19af854
      815e95fb
    • John Koleszar's avatar
      Remove unused vp9_recon_mb{y,uv}_s · c382ed09
      John Koleszar authored
      These functions now are handled through the common superblock code.
      
      Change-Id: Ib6688971bae297896dcec42fae1d3c79af7a611c
      c382ed09
    • Scott LaVarnway's avatar
      WIP: removing predictor buffer usage from decoder · 6189f2bc
      Scott LaVarnway authored
      This patch will use the dest buffer instead of the
      predictor buffer.  This will allow us in future commits
      to remove the extra mem copy that occurs in the dequant
      functions when eob == 0.  We should also be able to remove
      extra params that are passed into the dequant functions.
      
      Change-Id: I7241bc1ab797a430418b1f3a95b5476db7455f6a
      6189f2bc
  20. 10 Apr, 2013 2 commits
    • Ronald S. Bultje's avatar
      Make RD superblock mode search size-agnostic. · b4f6098e
      Ronald S. Bultje authored
      Merge various super_block_yrd and super_block_uvrd versions into one
      common function that works for all sizes. Make transform size selection
      size-agnostic also. This fixes a slight bug in the intra UV superblock
      code where it used the wrong transform size for txsz > 8x8, and stores
      the txsz selection for superblocks properly (instead of forgetting it).
      Lastly, it removes the trellis search that was done for 16x16 intra
      predictors, since trellis is relatively expensive and should thus only
      be done after RD mode selection.
      
      Gives basically identical results on derf (+0.009%).
      
      Change-Id: If4485c6f0a0fe4038b3172f7a238477c35a6f8d3
      b4f6098e
    • Ronald S. Bultje's avatar
      Make SB coding size-independent. · a3874850
      Ronald S. Bultje authored
      Merge sb32x32 and sb64x64 functions; allow for rectangular sizes. Code
      gives identical encoder results before and after. There are a few
      macros for rectangular block sizes under the sbsegment experiment; this
      experiment is not yet functional and should not yet be used.
      
      Change-Id: I71f93b5d2a1596e99a6f01f29c3f0a456694d728
      a3874850
  21. 04 Apr, 2013 1 commit
  22. 27 Mar, 2013 1 commit
    • Yunqing Wang's avatar
      Optimize 32x32 idct function · 21a718d9
      Yunqing Wang authored
      Wrote sse2 version of vp9_short_idct_32x32 function. Compared
      to c version, the sse2 version is 5X faster.
      
      Change-Id: I071ab7378358346ab4d9c6e2980f713c3c209864
      21a718d9
  23. 26 Mar, 2013 1 commit
    • Deb Mukherjee's avatar
      Implicit weighted prediction experiment · 23144d23
      Deb Mukherjee authored
      Adds an experiment to use a weighted prediction of two INTER
      predictors, where the weight is one of (1/4, 3/4), (3/8, 5/8),
      (1/2, 1/2), (5/8, 3/8) or (3/4, 1/4), and is chosen implicitly
      based on consistency of the predictors to the already
      reconstructed pixels to the top and left of the current macroblock
      or superblock.
      
      Currently the weighting is not applied to SPLITMV modes, which
      default to the usual (1/2, 1/2) weighting. However the code is in
      place controlled by a macro. The same weighting is used for Y and
      UV components, where the weight is derived from analyzing the Y
      component only.
      
      Results (over compound inter-intra experiment)
      derf: +0.18%
      yt: +0.34%
      hd: +0.49%
      stdhd: +0.23%
      
      The experiment suggests bigger benefit for explicitly signaled weights.
      
      Change-Id: I5438539ff4485c5752874cd1eb078ff14bf5235a
      23144d23
  24. 21 Mar, 2013 2 commits
    • Yunqing Wang's avatar
      Optimize 16x16 idct10 function · 869d6c05
      Yunqing Wang authored
      Wrote sse2 version of vp9_short_idct10_16x16 function. Compared
      to c version, the sse2 version is 2.3X faster.
      
      Change-Id: I314c4f09369648721798321eeed6f58e38857f26
      869d6c05
    • Yunqing Wang's avatar
      Optimize 16x16 idct function · ec310066
      Yunqing Wang authored
      Wrote sse2 version of vp9_short_idct16x16 function. Compared to c
      version, the sse2 version is over 2.5X faster.
      
      Change-Id: I38536e2b846427a2cc5c5423aaf305fd0e605d61
      ec310066