1. 10 Nov, 2012 - 1 commit
    • Deb Mukherjee's avatar
      New b-intra mode where direction is contextual · d01357bb
      Deb Mukherjee authored
      Preliminary patch on a new 4x4 intra mode B_CONTEXT_PRED where the
      dominant direction from the context is used to encode. Various decoder
      changes are needed to support decoding of B_CONTEXT_PRED in conjunction
      with hybrid transforms since the scan order and tokenization depends on
      the actual direction of prediction obtained from the context. Currently
      the traditional directional modes are used in conjunction with the
      B_CONTEXT_PRED, which also seems to provide the best results.
      
      The gains are small - in the 0.1% range.
      
      Change-Id: I5a7ea80b5218f42a9c0dfb42d3f79a68c7f0cdc2
      d01357bb
  2. 09 Nov, 2012 - 2 commits
    • Deb Mukherjee's avatar
      Build fix in decoder/decodframe.c · 3f7182cb
      Deb Mukherjee authored
      Missing eobs agrument in vp9_dequant_idct_add_16x16_c
      
      Change-Id: I826b1afa0a4ee6398f7373325aa0c75e6a866937
      3f7182cb
    • Vignesh Venkatasubramanian's avatar
      Packing Altref along with succeeding frame and length encoding frames · bc9670ee
      Vignesh Venkatasubramanian authored
      The altref frame is packed along with the next P frame. So that
      outside of the codec there are now only two types of frames P and I.
      Also, now it is one frame in and one frame out with respect to the
      codec. Apart from that, all the frames are length encoded with the
      length of each frame appended to the frame itself. There are
      two categories of frames and each of them will look as follows:
      
        - Packed frames (an altref along with the succeeding p frame)
          - altref_frame_data | altref_lenngth | frame_data | length
        - Unpacked frames (all frames other than the above)
          - frame_data | length
      
      Change-Id: If1eabf5c473f7d46b3f2d026bd30c803588c5330
      bc9670ee
  3. 08 Nov, 2012 - 3 commits
    • Jim Bankoski's avatar
      remove macros obfuscating mv costing · c72be96b
      Jim Bankoski authored
      cleanup
      
      Change-Id: I565eee40d900e0441ad211b65ac829fc5b93d94a
      c72be96b
    • Ronald S. Bultje's avatar
      Implement tx_select for superblock encoding. · 1d4fbeb3
      Ronald S. Bultje authored
      Also split superblock handling code out of decode_macroblock() into
      a new function decode_superblock(), for easier readability.
      
      Derf +0.05%, HD +0.2%, STDHD +0.1%. We can likely get further gains
      by allowing to select mb_skip_coeff for a subset of the complete SB
      or something along those lines, because although this change allows
      coding smaller transforms for bigger predictors, it increases the
      overhead of coding EOBs to skip the parts where the residual is
      near-zero, and thus the overall gain is not as high as we'd expect.
      
      Change-Id: I552ce1286487267f504e3090b683e15515791efa
      1d4fbeb3
    • Yunqing Wang's avatar
      Optimize 16x16 dequant and idct · 6c17c9fa
      Yunqing Wang authored
      As suggested by Yaowu, simplified 16x16 dequant and idct. In decoder,
      after detoken step, we know the number of non-zero dct coefficients
      (eobs) in a macroblock. Idct calculation can be skipped or simplified
      based on eobs, which improves the decoder performance.
      
      Change-Id: I9ffa1cb134bcb5a7d64fcf90c81871a96d1b4018
      6c17c9fa
  4. 07 Nov, 2012 - 2 commits
    • Yaowu Xu's avatar
      merge full pixel refmv experiment · 0cedaa36
      Yaowu Xu authored
      Change-Id: Ib39ad47a7d188f3b45416937b7eeb28c3e79b74c
      0cedaa36
    • James Zern's avatar
      Fix variance (signed integer) overflow · 98473443
      James Zern authored
      In the variance calculations the difference is summed and later squared.
      When the sum exceeds sqrt(2^31) the value is treated as a negative when
      it is shifted which gives incorrect results.
      
      To fix this we force the multiplication to be unsigned.
      
      The alternative fix is to shift sum down by 4 before multiplying.
      However that will reduce precision.
      
      For 16x16 blocks the maximum sum is 65280 and sqrt(2^31) is 46340 (and
      change).
      
      This change is based on:
      16982342 Missed some variance casts
      fea3556e Fix variance overflow
      
      Change-Id: I2c61856cca9db54b9b81de83b4505ea81a050a0f
      98473443
  5. 06 Nov, 2012 - 9 commits
  6. 05 Nov, 2012 - 1 commit
    • James Zern's avatar
      rdopt: fix use of uninitialized value in addition · f2541f8a
      James Zern authored
      rd_pick_intra4x4mby_modes / rd_pick_intra8x8mby_modes would both use the
      input value of 'rate_y' in the return calculation. In many places this
      value is uninitialized. Remove the unneeded sum.
      
      Change-Id: Icbd3df685303000301e69291c0ebc06f74bd548d
      f2541f8a
  7. 03 Nov, 2012 - 1 commit
  8. 02 Nov, 2012 - 4 commits
  9. 01 Nov, 2012 - 1 commit