1. 05 Sep, 2013 1 commit
    • Jingning Han's avatar
      Use saturated addition in SSSE3 of 32x32 quant · 458c2833
      Jingning Han authored
      The 32x32 forward transform can potentially reach peak coefficient
      value close to 32700, while the rounding factor can go upto 610.
      This could cause overflow issue in the SSSE3 implementation of 32x32
      quantization process.
      
      This commit resolves this issue by replacing the addition operations
      with saturated addition operations in 32x32 block quantization.
      
      Change-Id: Id6b98996458e16c5b6241338ca113c332bef6e70
      458c2833
  2. 29 Aug, 2013 1 commit
    • Jingning Han's avatar
      Fix overflow issue in SSSE3 32x32 quantization · abff6788
      Jingning Han authored
      The 32x32 quantization process can potentially have the intermediate
      stacks over 16-bit range, thereby causing enc/dec mismatch. This commit
      fixes this overflow issue in the SSSE3 implementation, as well as the
      prototype, of 32x32 quantization.
      
      This fixes issue 607 from webm@googlecode.
      
      Change-Id: I85635e6ca236b90c3dcfc40d449215c7b9caa806
      abff6788
  3. 02 Jul, 2013 1 commit
    • Ronald S. Bultje's avatar
      Use pmovmskb to skip quantize loops over empty coefficients. · e5fb4b61
      Ronald S. Bultje authored
      If none of the 16 coefficients that we quantize per loop iteration
      are larger than the zbin, directly skip to the next round of coeffs,
      rather than doing a full quantize loop that will eventually result
      in 16 zeroes. This incurs a jump cost, but saves a lot of other work.
      32x32 quant goes from 1349 -> 1184 cycles. The same approach yielded
      no significantly positive results for smaller transforms, so is not
      used there (8x8: 103 -> 101 cycles; 16x16: 302 -> 306 cycles).
      
      Change-Id: I8fca17dc2543fc8eed1dbcd5100145e3c3a9b647
      e5fb4b61
  4. 01 Jul, 2013 2 commits
    • Ronald S. Bultje's avatar
      Update quantize SSSE3 SIMD to cover 32x32 transform case also. · c8defcfd
      Ronald S. Bultje authored
      Encode time of bus (speed 0) 50 frames @ 1500kbps goes from 2min14.4 to
      2min10.1, i.e. a 2.3% overall speed increase.
      
      Change-Id: I3699580e74ec26c7d24e03681bc47ba25ee1ee87
      c8defcfd
    • Ronald S. Bultje's avatar
      Quantize (64-bit only, for now) SSSE3 SIMD. · 7353ceab
      Ronald S. Bultje authored
      Total encoding time for first 50 frames of bus (speed 0) @ 1500kbps
      goes 2min34.8 to 2min14.4, i.e. a 10.4% overall speedup. The code is
      x86-64 only, it needs some minor modifications to be 32bit compatible,
      because it uses 15 xmm registers, whereas 32bit only has 8.
      
      Change-Id: I2df53770c2e850813ffa713e1a91b45b0082b904
      7353ceab
  5. 01 May, 2013 1 commit
  6. 25 Apr, 2013 1 commit
  7. 01 Feb, 2013 1 commit
  8. 20 Dec, 2012 1 commit
  9. 27 Nov, 2012 1 commit
    • John Koleszar's avatar
      Add vp9_ prefix to all vp9 files · fcccbcbb
      John Koleszar authored
      Support for gyp which doesn't support multiple objects in the same
      static library having the same basename.
      
      Change-Id: Ib947eefbaf68f8b177a796d23f875ccdfa6bc9dc
      fcccbcbb
  10. 01 Nov, 2012 1 commit
  11. 31 Oct, 2012 2 commits
  12. 30 May, 2012 1 commit
    • Alpha Lam's avatar
      Make libvpx Chromium build friendly · fc2fc899
      Alpha Lam authored
      Add PRIVATE macro for adding private_extern directive for yasm
      to hide global symbols. This is only enabled if -DCHROMIUM is used
      with YASM.
      
      Also fixed a small problem with	rtcd_defs.sh to guard TEMPORAL_DENOISING.
      
      Change-Id: I9027fce3ebddcf20078293e4b86b396f21da7857
      fc2fc899
  13. 24 May, 2012 1 commit
    • Alpha Lam's avatar
      Make libvpx Chromium build friendly · 0f7e4665
      Alpha Lam authored
      Add PRIVATE macro for adding private_extern directive for yasm
      to hide global symbols. This is only enabled if -DCHROMIUM is used
      with YASM.
      
      Also fixed a small problem with	rtcd_defs.sh to guard TEMPORAL_DENOISING.
      
      Change-Id: I9027fce3ebddcf20078293e4b86b396f21da7857
      0f7e4665
  14. 29 Dec, 2011 1 commit
  15. 03 Nov, 2011 1 commit
    • Tero Rintaluoma's avatar
      Change use of eob in the encoder · e4f2ec7a
      Tero Rintaluoma authored
      Changed 'int eob' to 'char *eob' in BLOCKD so that both encoder and
      decoder will use eobs[25] array from MACROBLOCKD structure. In future,
      this will enable use of the decoder side IDCT in the encoder.
      
      Change-Id: I6e1c011628cb8864fd4a0b80f0279ce16a5ca978
      e4f2ec7a
  16. 07 Apr, 2011 1 commit
  17. 14 Jan, 2011 1 commit
    • Johann's avatar
      update sse2 regular quantizer · 15f9bea7
      Johann authored
      about ~5% gain on 32bit. disabled for 64bit
      
      unset executable bit on ssse3 version (cosmetic)
      
      Change-Id: I1a5860839eb294ce4261f819caea2dcfa78e57ca
      15f9bea7
  18. 01 Nov, 2010 1 commit
    • Scott LaVarnway's avatar
      SSSE3 version of fast quantizer · ff4a71f4
      Scott LaVarnway authored
      (test clip: tulip)
      For good quality mode with speed=1, this gave the encoder
      a small (2 - 3%) performance boost.
      
      Change-Id: I8a1d4269465944ac0819986c2f0be4b0a2ee0b35
      ff4a71f4