1. 25 Jul, 2013 10 commits
  2. 24 Jul, 2013 8 commits
  3. 23 Jul, 2013 13 commits
    • Jingning Han's avatar
      Unify the use of encode_b_args/optimize_block_args · ab77828b
      Jingning Han authored
      The struct optimize_block_args is defined same as encode_b_args.
      Remove this redundant definition, and use encode_b_args consistently.
      
      Change-Id: I1703aeeb3bacf92e98a34f4355202712110173d9
      ab77828b
    • Dmitry Kovalev's avatar
      Removing LOW_PRECISION_MV_UPDATE define. · 8d13b0d1
      Dmitry Kovalev authored
      Change-Id: I78d16ee758e1fae0200b746f00031f6d9c6d6ce7
      8d13b0d1
    • Adrian Grange's avatar
      Rolled-up several for loops into one · 646edbc1
      Adrian Grange authored
      Several consecutive for loops executed over the same
      index range, so I rolled them into one.
      
      Change-Id: I5cfcc8c38c738478965768409cca9d09adf224e1
      646edbc1
    • Dmitry Kovalev's avatar
      Removing vp9_is_interpolating_filter array. · db7f5d28
      Dmitry Kovalev authored
      All filters are interpolating now, so we don't need this array, all
      values from this array are evaluated to true.
      
      Change-Id: I9af6d8219ae0eb984063cd15e4e2296374ae4961
      db7f5d28
    • Dmitry Kovalev's avatar
      Removing MODE_COUNT_TESTING from vp9_entropymode.c. · a97d4ab1
      Dmitry Kovalev authored
      Change-Id: I5367bc1d9e660d86879d285a6f146d8a47e62464
      a97d4ab1
    • Jingning Han's avatar
      Make xform_quant operations tx_type independent · e9e2fe8e
      Jingning Han authored
      The xform_quant() module is only used by inter modes, hence removing
      the redundant switches therein conditioned on tx_type.
      
      Change-Id: Ib87ce5b2f2e4cbf3ceb133a1108afa173c933a3f
      e9e2fe8e
    • Jingning Han's avatar
      Skip inverse transform when eob is zero · 0359ad7f
      Jingning Han authored
      When all the transform coefficients were quantized to zero, skip
      the inverse transform operation. For bus_cif at 1000 kbps, the
      runtime goes from 154967ms -> 149842ms, i.e., about 3% speed-up,
      at speed 0.
      
      Change-Id: Ic0a813fff5e28972d4888ee42d8747846a6c3cc6
      0359ad7f
    • Scott LaVarnway's avatar
      pack_inter_mode_mvs cleanup · 7bc294a3
      Scott LaVarnway authored
      xd->mode_info_context is set to m prior to this call.
      
      Change-Id: Ibc442529961750c29ccf0c6cae08cb2b0431415f
      7bc294a3
    • Jim Bankoski's avatar
      clean up bw, bh · 86a9dec7
      Jim Bankoski authored
      many structures use bw and bh and they have different meanings.   This cl attempts
      to start this clean up and remove unneccessary 2 step look up log and then
      shift operations...
      
      also removed partition type multiple operation code in bitstream.c.
      
      Change-Id: I7e03e552bdfc0939738e430862e3073d30fdd5db
      86a9dec7
    • Paul Wilkins's avatar
      Renaming of segment constants. · 32042af1
      Paul Wilkins authored
      Renamed:
        MAX_MB_SEGMENTS to MAX_SEGMENTS
        MB_SEG_TREE_PROBS to SEG_TREE_PROBS
      
      The minimum unit for segmentation in the segment map
      is now 8x8 so it is misleading to use MB_ as macro-block
      traditionally refers to a 16x16 region.
      
      Change-Id: I0b55a6f0426bb46dd13435fcfa5bae0a30a7fa22
      32042af1
    • James Zern's avatar
      vp9: make some static tables const · 3c8cce35
      James Zern authored
      Change-Id: I8bcae51271673da8755c66a51aea005dfe6a3739
      3c8cce35
    • Dmitry Kovalev's avatar
      Cleanup inside vp9_get_pred_context_tx_size. · 0ad079e5
      Dmitry Kovalev authored
      Using max_txsize_lookup to get max transform size.
      
      Change-Id: If4b39beba3c06a581effd8cab698ea90727dc2c9
      0ad079e5
    • Frank Galligan's avatar
      Speedup loopfilter neon code. · 5af6bf6c
      Frank Galligan authored
      Try and cut down the cycle count by rearranging the instructions
      so there are less stalls.
      
      Change-Id: Ic1383335ee0f05e656477d9ee9c179ec231285d5
      5af6bf6c
  4. 22 Jul, 2013 9 commits
    • Ronald S. Bultje's avatar
      More optimizations for cost_coeffs(). · e20fcd95
      Ronald S. Bultje authored
      4x4:    163 ->  123 cycles (33% faster)
      8x8:    491 ->  399 cycles (23% faster)
      16x16: 1889 -> 1763 cycles (7% faster)
      32x32: 8311 -> 8180 cycles (1.6% faster)
      
      Overall encoding time of first 50 frames of bus (speed 0) @ 1500kbps
      goes from 1min4.33 to 1min3.00, i.e. 2.11% faster.
      
      Change-Id: Ib52d1dbb5649b14de769d3e7a74af67440b5284f
      e20fcd95
    • James Zern's avatar
      vp9: apply loopfilter inline if possible · 38a4412e
      James Zern authored
      excludes tiled content currently
      
      Change-Id: I44155253e8d6771e5e039d663be5f21cc9d0355d
      38a4412e
    • Dmitry Kovalev's avatar
      Adding update_tx_counts function. · b2fc6fa9
      Dmitry Kovalev authored
      Moving common encoder/decoder code to update_tx_counts. Also renaming
      vp9_get_pred_probs_tx_size to get_tx_probs2 and adding get_tx_probs to
      call vp9_get_pred_context_tx_size inside read_selected_tx_size only once
      (twice before).
      
      Change-Id: Ia50247f3893de88ef8e9041b0d44be44a40aaa4d
      b2fc6fa9
    • James Zern's avatar
      VP9_COMMON: remove unused temp_scale_frame · 0a58f462
      James Zern authored
      Change-Id: I696a0dca1d02d365e283029d1d077710bd5680e0
      0a58f462
    • James Zern's avatar
      VP9_COMMON: drop cur_tile_{row,col}_idx · ccf6710d
      James Zern authored
      these were only being written in one location and never read.
      
      Change-Id: If59f3c09aa1485cf89bac0099a8a79e99688b5d1
      ccf6710d
    • Yaowu Xu's avatar
      fix a build error · fc186dca
      Yaowu Xu authored
      Change-Id: I3b05687f439ff6a7c426d2c97a6c58c831fa51ac
      fc186dca
    • Dmitry Kovalev's avatar
      Using update_ct and update_ct2 functions for probability update. · 8c5ca9ff
      Dmitry Kovalev authored
      Update logic for both mode and mvref was the same, so using MODE_COUNT_SAT,
      MODE_MAX_UPDATE_FACTOR, update_ct, update_ct2 for both cases. Removing
      function update_tx_ct because it was identical to update_mode_ct2.
      
      Change-Id: Iff566be27dbd6cde4c2ec04e8d988f207046b8f0
      8c5ca9ff
    • Deb Mukherjee's avatar
      Diamond search change to accelerate movement · a1e2d50b
      Deb Mukherjee authored
      Optional change in diamond search to continue in the best move
      direction until that move turns worse.
      
      This is still WIP since the exact way the new method is to be used is
      under investigation. One option is to make it an option in diamond
      search and use it only when motion is large.
      
      Overall slightly positive on derfraw300 +0.02%, stdhdraw +0.13%,
      but works a lot better for high motion sequences (ex. football : +1%).
      
      Change-Id: If88e01a6021daa0cda934680cdc70be1ee04f798
      a1e2d50b
    • Jingning Han's avatar
      Optimize operation flow in sub8x8 rd loop · 409e77f2
      Jingning Han authored
      Stack the rate-distortion statistics in the sub8x8 rd loop. This allows
      the encoder to skip the forward transform, quantization, and coeff cost
      estimation, in the sub8x8 rd optimization search, if the motion
      vector(s) are of integer pixel value, and have been tested in the
      previous prediction filter type rd loops of the same block.
      
      This gives about 2% speed-up for bus_cif at 2000 kpbs, for speed 0.
      Its efficacy depends how frequently the motion search will select an
      integer motion vector.
      
      Change-Id: Iee15d4283ad4adea05522c1d40b198b127e6dd97
      409e77f2