1. 03 Nov, 2015 1 commit
    • Jingning Han's avatar
      Incorporate flexible tx type and tx partition in RD scheme · 4b594d3d
      Jingning Han authored
      This commit hooks up the rate-distortion optimization system to
      fully exploit recursive transform block partition and multiple
      transform type. The compression performance of the two experiments
      largely adds up. For derf set, ext-tx provides additional 2.1%
      coding gains on top of the gains due to recursive transform block
      partition (0.69%).
      
      Change-Id: I1091fb9545f74e489a6a2489dc3c12f5abd05043
      4b594d3d
  2. 30 Oct, 2015 1 commit
    • Jingning Han's avatar
      Refactor loop filter mask · 6727943c
      Jingning Han authored
      This commit refactors the loop filter selection process to support
      variable transform block sizes based filter mask. It disables the
      multi-thread loop filter implementation to simplify the experiments.
      The speed impact on speed 0 encoding is negligible.
      
      Change-Id: Ia470b6da9ad833fe6eb72d2cbeda9296b21910ec
      6727943c
  3. 29 Oct, 2015 2 commits
  4. 21 Oct, 2015 1 commit
  5. 20 Oct, 2015 1 commit
  6. 19 Oct, 2015 1 commit
  7. 16 Oct, 2015 5 commits
  8. 15 Oct, 2015 2 commits
  9. 13 Oct, 2015 1 commit
  10. 12 Oct, 2015 3 commits
  11. 08 Oct, 2015 2 commits
  12. 06 Oct, 2015 3 commits
  13. 02 Oct, 2015 3 commits
  14. 01 Oct, 2015 1 commit
  15. 29 Sep, 2015 1 commit
    • Yaowu Xu's avatar
      Merged branch 'master' into nextgenv2 · 7c514e2d
      Yaowu Xu authored
      Resolved Conflicts in the following files:
              configure
              vp10/common/idct.c
              vp10/encoder/dct.c
              vp10/encoder/encodemb.c
              vp10/encoder/rdopt.c
      
      Change-Id: I4cb3986b0b80de65c722ca29d53a0a57f5a94316
      7c514e2d
  16. 26 Sep, 2015 3 commits
    • Ronald S. Bultje's avatar
      vp9/10: improve support for render_width/height. · 812945a8
      Ronald S. Bultje authored
      In the decoder, map this to the output variable vpx_image_t.r_w/h.
      This is intended as an improved version of VP9D_GET_DISPLAY_SIZE,
      which doesn't work with parallel frame decoding. In the encoder,
      map this to a codec control func (VP9E_SET_RENDER_SIZE) that takes
      a w/h pair argument in a int[2] (identical to VP9D_GET_DISPLAY_SIZE).
      
      Also add render_size to the encoder_param_get_to_decoder unit test.
      
      See issue 1030.
      
      Change-Id: I12124c13602d832bf4c44090db08c1009c94c7e8
      812945a8
    • Ronald S. Bultje's avatar
      Rename display_{size,width,height} to render_*. · 36ffe644
      Ronald S. Bultje authored
      The name "display_*" (or "d_*") is used for non-compatible information
      (that is, the cropped frame dimensions in pixels, as opposed to the
      intended screen rendering surface size). Therefore, continuing to use
      display_* would be confusing to end users. Instead, rename the field
      to render_*, so that struct vpx_image can include it.
      
      Change-Id: Iab8d2eae96492b71c4ea60c4bce8121cb2a1fe2d
      36ffe644
    • Ronald S. Bultje's avatar
      vp10: code reference_mode in uncompressed header. · 8979e9e3
      Ronald S. Bultje authored
      See issue 1041 point 2.
      
      Change-Id: I6fc6427b1a0edff828e39d43428e3271491f8ac5
      8979e9e3
  17. 25 Sep, 2015 1 commit
  18. 16 Sep, 2015 6 commits
    • Ronald S. Bultje's avatar
      vp10: do sub8x8 block reconstruction in full subblocks. · 50f94427
      Ronald S. Bultje authored
      This means that we don't reconstruct in 4x4 dimensions, but in
      blocksize dimensions, e.g. 4x8 or 8x4. This may in some cases lead
      to performance improvements. Also, if we decide to re-introduce
      scalable coding support, this would fix the fact that you need to
      re-scale the MV halfway the block in sub8x8 non-4x4 blocks.
      
      See issue 1013.
      
      Change-Id: If39c890cad20dff96635720d8c75b910cafac495
      50f94427
    • Ronald S. Bultje's avatar
      vp10: fix 4:2:2 chroma MVs for 8x4/4x4 blocks. · ed29c2f9
      Ronald S. Bultje authored
      In vp9, the bottom MV would be the average of the topright and
      bottomleft luma MV (instead of the bottomleft/bottomright luma MV).
      
      See issue 993.
      
      Change-Id: Ic91c0b195950e7b32fc26c84c04788a09321e391
      ed29c2f9
    • Ronald S. Bultje's avatar
      vp10: move coding of tx_mode element to the non-arithcoded header. · 00a203b7
      Ronald S. Bultje authored
      See issue 1040 point 3.
      
      Change-Id: If051b92c24a34d6a39861fb7d7180c5ca32f3d82
      00a203b7
    • Ronald S. Bultje's avatar
      vp10: code sign bit before absolute value in non-arithcoded header. · a3df343c
      Ronald S. Bultje authored
      For reading, this makes the operation branchless, although it still
      requires two shifts. For writing, this makes the operation as fast
      as writing an unsigned value, branchlessly. This is also how other
      codecs typically code signed, non-arithcoded bitstream elements.
      
      See issue 1039.
      
      Change-Id: I6a8182cc88a16842fb431688c38f6b52d7f24ead
      a3df343c
    • Ronald S. Bultje's avatar
      vp10: don't reset contextual skip flag if block has no coefficients. · a5d930e4
      Ronald S. Bultje authored
      The implicitly changed value would be used for contextualizing future
      skip flags of neighbour blocks (bottom/right), which is certainly not
      what was intended. The original code stems from vp8, and was useful
      in cases where coding of the skip flag was disabled. In vp9, the skip
      flag is always coded. The result of this change is that for bitstream
      parsing purposes, decoding of the skip flag becomes independent of
      decoding of block coefficients.
      
      See issue 1014.
      
      Change-Id: I8629e6abe76f7c1d649f28cd6fe22a675ce4a15d
      a5d930e4
    • Ronald S. Bultje's avatar
      Add support for color-range. · eeb5ef0a
      Ronald S. Bultje authored
      In decoder, export (eventually) into vpx_image_t.range field. In
      encoder, use oxcf->color_range to set it (same way as for
      color_space).
      
      See issue 1059.
      
      Change-Id: Ieabbb2a785fa58cc4044bd54eee66f328f3906ce
      eeb5ef0a
  19. 15 Sep, 2015 1 commit
  20. 11 Sep, 2015 1 commit