1. 08 Dec, 2012 - 1 commit
    • Ronald S. Bultje's avatar
      Introduce vp9_coeff_probs/counts/stats/accum types. · 885cf816
      Ronald S. Bultje authored
      Use these, instead of the 4/5-dimensional arrays, to hold statistics,
      counts, accumulations and probabilities for coefficient tokens. This
      commit also re-allows ENTROPY_STATS to compile.
      
      Change-Id: If441ffac936f52a3af91d8f2922ea8a0ceabdaa5
      885cf816
  2. 07 Dec, 2012 - 3 commits
    • Frank Galligan's avatar
      Fix meaninglesss if. · 1c0ee775
      Frank Galligan authored
      Change-Id: I0cb06d77805246fe39d39ad3bc5df3c3f52c7050
      1c0ee775
    • Frank Galligan's avatar
      Remove unused symbols from vp9 asm offsets C files. · 8d449ce0
      Frank Galligan authored
      Change-Id: I366e6d175da3012f1c8607fd7fad99fbbb616091
      8d449ce0
    • Ronald S. Bultje's avatar
      32x32 transform for superblocks. · c456b35f
      Ronald S. Bultje authored
      This adds Debargha's DCT/DWT hybrid and a regular 32x32 DCT, and adds
      code all over the place to wrap that in the bitstream/encoder/decoder/RD.
      
      Some implementation notes (these probably need careful review):
      - token range is extended by 1 bit, since the value range out of this
        transform is [-16384,16383].
      - the coefficients coming out of the FDCT are manually scaled back by
        1 bit, or else they won't fit in int16_t (they are 17 bits). Because
        of this, the RD error scoring does not right-shift the MSE score by
        two (unlike for 4x4/8x8/16x16).
      - to compensate for this loss in precision, the quantizer is halved
        also. This is currently a little hacky.
      - FDCT and IDCT is double-only right now. Needs a fixed-point impl.
      - There are no default probabilities for the 32x32 transform yet; I'm
        simply using the 16x16 luma ones. A future commit will add newly
        generated probabilities for all transforms.
      - No ADST version. I don't think we'll add one for this level; if an
        ADST is desired, transform-size selection can scale back to 16x16
        or lower, and use an ADST at that level.
      
      Additional notes specific to Debargha's DWT/DCT hybrid:
      - coefficient scale is different for the top/left 16x16 (DCT-over-DWT)
        block than for the rest (DWT pixel differences) of the block. Therefore,
        RD error scoring isn't easily scalable between coefficient and pixel
        domain. Thus, unfortunately, we need to compute the RD distortion in
        the pixel domain until we figure out how to scale these appropriately.
      
      Change-Id: I00386f20f35d7fabb19aba94c8162f8aee64ef2b
      c456b35f
  3. 06 Dec, 2012 - 1 commit
  4. 05 Dec, 2012 - 4 commits
    • Johann's avatar
      Begin to refactor vpx_scale usage in VP9 · 52d350fe
      Johann authored
      Only declare the functions in vpx_scale RTCD and include the relevant
      header.
      
      Remove unused files and functions in vpx_scale to avoid wasting time
      renaming. vpx_scale/win32/scaleopt.c contains functions which have not
      been called in a long time but are potentially optimized.
      
      The 'vp8' functions have not been renamed yet. That is for after the
      cleanup.
      
      Change-Id: I2c325a101d60fa9d27e7dfcd5b52a864b4a1e09c
      52d350fe
    • Johann's avatar
      Remove ARM optimizations from VP9 · a9056729
      Johann authored
      Change-Id: I9f0ae635fb9a95c4aa1529c177ccb07e2b76970b
      a9056729
    • John Koleszar's avatar
      vp9_bilinear_filters_mmx: add missing extern specifiers · 4a4d2aa5
      John Koleszar authored
      Change-Id: Ibabf18947f90cb4f45052763ebf44cfb8209bd8b
      4a4d2aa5
    • Paul Wilkins's avatar
      Change to MV reference search. · 4cc657ec
      Paul Wilkins authored
      This patch reduces the cpu cost of the MV ref
      search by only allowing insert for candidates
      that would be in the current top 4.
      
      This could alter the outcome and slightly favors
      near candidates which are tested first but also
      limits the worst case loop count to 4 and means in
      many cases it will drop out and not happen.
      
      Change-Id: Idd795a825f9fd681f30f4fcd550c34c38939e113
      4cc657ec
  5. 03 Dec, 2012 - 6 commits
    • Yaowu Xu's avatar
      merged optimiz_b_16x16() into optmize_b() · 806d05e1
      Yaowu Xu authored
      The commit changed the trellis quantization function optimize_b() to
      work for MBs using all transform sizes, and eliminated the function
      for MB using 16x16 transform only, optimize_b_16x16.
      
      Change-Id: I3fa650587ab5198ed16315b38754783a72b33ba2
      806d05e1
    • Johann's avatar
      Begin to refactor vpx_scale usage in VP9 · c6bd29e2
      Johann authored
      Only declare the functions in vpx_scale RTCD and include the relevant
      header.
      
      Remove unused files and functions in vpx_scale to avoid wasting time
      renaming. vpx_scale/win32/scaleopt.c contains functions which have not
      been called in a long time but are potentially optimized.
      
      The 'vp8' functions have not been renamed yet. That is for after the
      cleanup.
      
      Change-Id: I2c325a101d60fa9d27e7dfcd5b52a864b4a1e09c
      c6bd29e2
    • Johann's avatar
      Remove ARM optimizations from VP9 · 34591b54
      Johann authored
      Change-Id: I9f0ae635fb9a95c4aa1529c177ccb07e2b76970b
      34591b54
    • Jim Bankoski's avatar
      fixes --disable-vp9-encoder · d9038b3c
      Jim Bankoski authored
      Change-Id: I467bf0fdf3b35326bcce58d5459e6d2dbfd6c5e5
      d9038b3c
    • Frank Galligan's avatar
      vp9: Fix assert check. · 0d687ed2
      Frank Galligan authored
      Change-Id: If0cc1ab60dff6abd67dae7c7b3dc83a1afd7fe65
      0d687ed2
    • Frank Galligan's avatar
      vp9: Remove superfluous command. · 3e0ea7f6
      Frank Galligan authored
      - vpx_calloc is called on arf_not_zz above.
      - Note The removed vpx_memset call had an issue with sizeof.
      
      Change-Id: I86fd7a167d0a042e581e613e2a6c0b5e63073fc6
      3e0ea7f6
  6. 01 Dec, 2012 - 1 commit
  7. 30 Nov, 2012 - 3 commits
  8. 29 Nov, 2012 - 14 commits
  9. 28 Nov, 2012 - 6 commits
    • Yaowu Xu's avatar
      remove the vp9_default_mode_contexts_a · 1cc57396
      Yaowu Xu authored
      Given the way mode_context is updated, the benefit of an additional
      default is not signficant.
      
      Change-Id: I67489453e8781340b18e26a1cc2f04e9221004a2
      1cc57396
    • Jim Bankoski's avatar
      fixed includes to be fully specified · c6787398
      Jim Bankoski authored
      Change-Id: Ia1cce221f8511561b9cbd8edb7726fbc286ff243
      c6787398
    • Jim Bankoski's avatar
      remove postproc invokes · 85cba19e
      Jim Bankoski authored
      and some miscellaneous invoke left overs
      
      Change-Id: I63191b1bfd3bea4ce30cceaeb686ec850570fc43
      85cba19e
    • Yaowu Xu's avatar
      Localize Y2 entropy coding context · 3e976bba
      Yaowu Xu authored
      This commit makes sure Y2 entropy coding context is always updated on
      every macroblock even there is no Y2 block.
      
      Change-Id: Ie307cfc46526efe55613be39f9f178d2531b56ba
      3e976bba
    • Yaowu Xu's avatar
      removed redundant mode_context data structures · 12da793d
      Yaowu Xu authored
      This commit removed a couple of redundant data structures in frame
      coding contextsm, mode_context and mode_context_a, and changed to
      use vp9_mode_contexts only. The switch of the context for different
      frame type now relies on the switch of frame coding context between
      lfc and lfc_a. This commit also removed a number of memcpy among
      these redundant data structure.
      
      Change-Id: I42e8174bd60f466b0860afc44c1263896471b0f3
      12da793d
    • John Koleszar's avatar
      Clamp decoded feature data · a1f15814
      John Koleszar authored
      Not all segment feature data elements are full-range powers of two, so
      there are values that can be encoded that are invalid. Add a new function
      to clamp values to the maximum allowed.
      
      Change-Id: Ie47cb80ef2d54292e6b8db9f699c57214a915bc4
      a1f15814
  10. 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