1. 07 Jul, 2015 1 commit
    • Jingning Han's avatar
      Reduce dqcoeff array size in decoder · cccad1c5
      Jingning Han authored
      The decoding process handles detokenization and reconstruction per
      transform block sequentially. There is no need to offset the dqcoeff
      buffer according to the transform block index. This allows to
      reduce the memory spill and improve cache performance.
      Change-Id: Ibb8bfe532a7a08fcabaf6d42cbec1e986901d32d
  2. 05 Jun, 2015 1 commit
  3. 04 Jun, 2015 1 commit
  4. 02 Jun, 2015 1 commit
  5. 22 May, 2015 1 commit
    • Scott LaVarnway's avatar
      Re-worked header files · b962646f
      Scott LaVarnway authored
      Various header/test files had to be re-worked in order to
      build "Remove cm parameter from vp9_decode_block_tokens()".
      This patch reverts the "Remove cm" part and only contains
      the re-worked header files.
      Change-Id: I520958a88d1991fee988a3c784d0eac40e117a32
  6. 28 Apr, 2015 1 commit
  7. 21 Apr, 2015 1 commit
    • Scott LaVarnway's avatar
      Revert "Remove mi_grid_* structures." · 8b17f7f4
      Scott LaVarnway authored
      (see I3a05cf1610679fed26e0b2eadd315a9ae91afdd6)
      For the test clip used, the decoder performance improved by ~2%.
      This is also an intermediate step towards adding back the
      mode_info streams.
      Change-Id: Idddc4a3f46e4180fbebddc156c4bbf177d5c2e0d
  8. 31 Mar, 2015 1 commit
    • hui su's avatar
      Move vp9_coef_con_tree to common/ · 302e24cb
      hui su authored
      This tree should be defined in common/, as it is needed for
      both encoder and decoder.
      Change-Id: I4f5cbc80025cf2ced14182c98f7c82dc7d0f87db
  9. 19 Feb, 2015 1 commit
  10. 03 Feb, 2015 1 commit
    • Yunqing Wang's avatar
      vp9_dthread: pass frame counts to decoder functions · 85a9bc04
      Yunqing Wang authored
      The current multi-threaded tile decoder requires that the videoes
      are encoded with frame_parallel_decoding_mode = 1. This requirement
      is not necessary, and is better to be removed. This patch includes
      the first part of the work.
      Change-Id: Ic7695fb3cfe13f9022582c9f0edd2aa6e2e36d28
  11. 06 Jan, 2015 1 commit
  12. 22 Oct, 2014 1 commit
    • Yunqing Wang's avatar
      vp9_ethread: allocate frame contexts outside VP9_COMMON struct · 7c7e4d4e
      Yunqing Wang authored
      This patch allocated frame contexts outside VP9_COMMON. This allows
      multiple threads to share the same copy of frame contexts, and
      reduces the overhead. It also guarantees the correct update of
      these contexts during bitstream packing. This patch doesn't change
      encoding result.
      Change-Id: Ic181a2460b891d1d587278a6d02d8057b9dbd353
  13. 07 Oct, 2014 1 commit
    • Yaowu Xu's avatar
      Add range checking for decoded coefficients. · 9751aa12
      Yaowu Xu authored
      The coefficient range checking is enabled when configured with
      --enable-debug --enable-coefficient-range-checking
      for vpxdec to detect ill-formed input stream. This addresses the
      problem raised by issue #792.
      Change-Id: I3f9ea541de4dc742dd64389d6c5f543fb1c4f052
  14. 20 Sep, 2014 1 commit
    • hkuang's avatar
      Remove mi_grid_* structures. · c70cea97
      hkuang authored
      mi_grid_* are arrays of pointer to pointer. They save the pointers that point
      to the MIs in cm->mi. But they are unnecessary and complicated. The original
      goal was to remove MODE_INFO_t copy. But with an extra MODE_INFO_t pointer
      inside MODE_INFO_t, same goal could be achieved.
      This commit totally removes the mi_grid_* structures. But there are still
      many dummy MODE_INFO_t inside cm->mi which are a waste of memory. Next commit
      will do on-demand MODE_INFO_t allocation in order to save these memories.
      Change-Id: I3a05cf1610679fed26e0b2eadd315a9ae91afdd6
  15. 19 Sep, 2014 1 commit
  16. 16 Sep, 2014 1 commit
  17. 12 Sep, 2014 1 commit
    • Deb Mukherjee's avatar
      Adds high bitdepth transform functions and tests · 10783d4f
      Deb Mukherjee authored
      Adds various high bitdepth transform functions and tests.
      Much of the changes are related to using typedefs tran_low_t
      and tran_high_t for the final transform cofficients and intermediate
      stages of the transform computation respectively rather than fixed
      types int16_t/int. When vp9_highbitdepth configure flag is off,
      these map tp int16_t/int32_t, but when the flag is on, they map
      to int32_t/int64_t to make space for needed extra precision.
      Change-Id: I3c56de79e15b904d6f655b62ffae170729befdd8
  18. 11 Jul, 2014 1 commit
    • Deb Mukherjee's avatar
      Some extra bit probability cleanups · 6957e7a0
      Deb Mukherjee authored
      Refactoring to remove some duplication of probability
      tables between tokenization and detokenization.
      Change-Id: I2fc6a6497f9c0410021a9b41f828bc58a864e466
  19. 02 Apr, 2014 1 commit
  20. 01 Feb, 2014 1 commit
  21. 04 Jan, 2014 1 commit
  22. 06 Dec, 2013 1 commit
  23. 05 Dec, 2013 1 commit
    • Dmitry Kovalev's avatar
      Cleaning up vp9_detokenize.c file. · 934e10d0
      Dmitry Kovalev authored
      Using consistent names (block_idx => block, dqcoeff_ptr => dqcoeff,
      pt => ctx), inlining get_tx_eob() call.
      Change-Id: I05208e57df81bbb8f25b8274684a48192e9de464
  24. 04 Dec, 2013 2 commits
    • Dmitry Kovalev's avatar
      Moving eob array to the encoder. · f00d157c
      Dmitry Kovalev authored
      In the decoder we don't need to save eobs, we can pass eob as an argument.
      That's why removing eob arrays from VP9Decompressor and TileWorkerData,
      and moving eob pointer from macroblockd_plane to macroblock_plane.
      Change-Id: I8eb919acc837acfb3abdd8319af63d1bbca8217a
    • Dmitry Kovalev's avatar
      Cleaning up vp9_entropy.h file. · 8e89e2f2
      Dmitry Kovalev authored
      Renaming constants for consistency:
        DCT_EOB_TOKEN     => EOB_TOKEN
      Moving constants:
        INTER_MODE_CONTEXTS from vp9_entropy.h to vp9_blockd.h.
        EOSB_TOKEN from vp9_entropy.h to vp9_tokenize.h
      Change-Id: I5fcbf081318e1d365792b6d290a930c6cb0f3fc2
  25. 03 Dec, 2013 1 commit
  26. 02 Dec, 2013 2 commits
    • Dmitry Kovalev's avatar
      Using local variable for token_cache. · 5ab920d2
      Dmitry Kovalev authored
      The difference with the old code is that originally the whole token_cache
      was initialized with zeros at the beginning of decode_coefs() function.
      Now we set several zero values explicitly with "token_cache[scan[c]] = 0".
      Change-Id: I88cc5031f01d13012d1a4491739c36cb44f9401e
    • Dmitry Kovalev's avatar
      Cleaning up decode_coefs() function. · 91441112
      Dmitry Kovalev authored
      Removing goto and using while loop instead, renaming seg_eob to max_eob,
      moving eob token counter increment.
      Change-Id: Idcc4b3a45e4f313596a71776aef56691a6647e5f
  27. 26 Nov, 2013 1 commit
    • Dmitry Kovalev's avatar
      Deleting vp9_treereader.h file. · d7efe068
      Dmitry Kovalev authored
      Renaming treed_read() to consistent vp9_read_tree() and moving it from
      deleted vp9_treereader.h to vp9_dboolhuff.h file.
      Change-Id: Iedd8655acbe25e4fcf62b79e5a13bdea69b6b004
  28. 23 Nov, 2013 1 commit
  29. 22 Nov, 2013 1 commit
  30. 21 Nov, 2013 1 commit
  31. 19 Nov, 2013 3 commits
  32. 14 Nov, 2013 2 commits
  33. 12 Nov, 2013 2 commits
  34. 07 Nov, 2013 1 commit
    • Dmitry Kovalev's avatar
      Using pd->dqcoeff instead of pd->qcoeff in the decoder. · a1dc97be
      Dmitry Kovalev authored
      It is more logical to use dqcoeff buffer to put there *dequantized*
      transform coefficients (inside inverse_transform_block and
      decode_coefs functions). Dequantization happens inside WRITE_COEF_CONTINUE
      qcoeff buffer should be only used in the encoder for *quantized*
      transform coefficients.
      Change-Id: Ifd54bef272bbf5311ced6669c4f1079f998af5d7