1. 10 Oct, 2014 - 1 commit
  2. 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
      c70cea97
  3. 08 Aug, 2014 - 1 commit
  4. 26 Jun, 2014 - 1 commit
    • Jingning Han's avatar
      Enable real-time version reference motion vector search · 46ea9ec7
      Jingning Han authored
      This commit enables a fast reference motion vector search scheme.
      It checks the nearest top and left neighboring blocks to decide the
      most probable predicted motion vector. If it finds the two have
      the same motion vectors, it then skip finding exterior range for
      the second most probable motion vector, and correspondingly skips
      the check for NEARMV.
      
      The runtime of speed -5 goes down
      pedestrian at 1080p 29377 ms -> 27783 ms
      vidyo at 720p       11830 ms -> 10990 ms
      i.e., 6%-8% speed-up.
      
      For rtc set, the compression performance
      goes down by about -1.3% for both speed -5 and -6.
      
      Change-Id: I2a7794fa99734f739f8b30519ad4dfd511ab91a5
      46ea9ec7
  5. 09 Apr, 2014 - 1 commit
  6. 07 Apr, 2014 - 1 commit
  7. 02 Apr, 2014 - 1 commit
  8. 28 Mar, 2014 - 1 commit
  9. 26 Mar, 2014 - 1 commit
  10. 10 Mar, 2014 - 1 commit
  11. 28 Feb, 2014 - 1 commit
    • Dmitry Kovalev's avatar
      Cleaning up vp9_mvref_common.c. · d689f2ad
      Dmitry Kovalev authored
      different_ref_found is always equal to one (if calculated) because
      ref_frame[0] != ref_frame[1] for each mi-block.
      
      Change-Id: Ibd7625b7b29dec2fd3c40edbc3de1169abb78585
      d689f2ad
  12. 19 Feb, 2014 - 1 commit
    • Dmitry Kovalev's avatar
      Cleaning up vp9_mvref_common.{h, c}. · d43c5cc5
      Dmitry Kovalev authored
      Hiding vp9_find_mv_refs_idx() inside vp9_mvref_common.c, moving definition
      of vp9_find_mv_refs() to vp9_mvref_common.c.
      
      Change-Id: I0c9f34b03648785a7d18edf6d4fddd34e55dfcc5
      d43c5cc5
  13. 13 Feb, 2014 - 1 commit
    • Yaowu Xu's avatar
      Removed the reset of mode_info from previous frame · 896d79a5
      Yaowu Xu authored
      Prior to this commit, both encoder and decoder reset mode/mv info from
      previous frame in error resilient mode to ensure bitstreams are able to
      decode when there is loss of frame in decoder side. However, this is
      not necessary. This commit changed to remove the reset, so encoder can
      continue to use mode/mv/partition information from previously encoded
      frame without affecting decodeablilty under loss of frame.
      
      Change-Id: I0279f862900dc647fb471ae3389770bb1b9f454f
      896d79a5
  14. 20 Dec, 2013 - 1 commit
  15. 17 Dec, 2013 - 1 commit
    • Yaowu Xu's avatar
      Define POSITION to differentiate from MV · 3cce4643
      Yaowu Xu authored
      MV struct was ussed to indicate the postition of a MI_BLOCK with row
      and col components. The expression was confusing, this commit added a
      new stucture "POSITION" with row and col component to better describe
      the position of a mi_block.
      
      Change-Id: I59fdd4b45010fe7d85a8db22a55503265c4f5b2b
      3cce4643
  16. 28 Oct, 2013 - 1 commit
    • James Zern's avatar
      vp9: add TileInfo · 58a0f6db
      James Zern authored
      replaces use of cur_tile_mi_(row|col)_(start|end) by VP9_COMMON, making
      it less stateful and more reusable for parallel tile decoding
      
      Change-Id: I1df09382b4567a0e5f4434825d47c79afe2399be
      58a0f6db
  17. 30 Sep, 2013 - 1 commit
  18. 17 Sep, 2013 - 1 commit
  19. 11 Sep, 2013 - 1 commit
    • Scott LaVarnway's avatar
      New mode_info_context storage -- undo revert · ac6093d1
      Scott LaVarnway authored
      mode_info_context was stored as a grid of MODE_INFO structs.
      The grid now constists of pointers to MODE_INFO structs.  The
      MODE_INFO structs are now stored as a stream (decoder only),
      eliminating unnecessary copies and is a little more cache
      friendly.
      
      Change-Id: I031d376284c6eb98a38ad5595b797f048a6cfc0d
      ac6093d1
  20. 09 Sep, 2013 - 1 commit
  21. 06 Sep, 2013 - 1 commit
    • Scott LaVarnway's avatar
      New mode_info_context storage · dae17734
      Scott LaVarnway authored
      mode_info_context was stored as a grid of MODE_INFO structs.
      The grid now constists of a pointer to a MODE_INFO struct and
      a "in the image" flag.  The MODE_INFO structs are now stored
      as a stream, eliminating unnecessary copies and is a little
      more cache friendly.
      
      For the test clips used, the decoder performance improved
      by ~4.3% (1080p) and ~9.7% (720p).
      
      Patch Set 2: Re-encoded clips with latest. Now ~1.7% (1080p)
      and 5.9% (720p).
      
      Change-Id: I846f29e88610fce2523ca697a9a9ef2a182e9256
      dae17734
  22. 24 Aug, 2013 - 1 commit
    • Dmitry Kovalev's avatar
      Renaming D27 to D207. · 50ee61db
      Dmitry Kovalev authored
      I've already renamed d27_predictor to d207_predictor but forgot about the
      corresponding constant.
      
      Change-Id: Id312aa80fc5b5a1ab8a709a33418a029552a6857
      50ee61db
  23. 23 Aug, 2013 - 1 commit
    • Dmitry Kovalev's avatar
      Cleanup in mvref_common.{h, c}. · 21d8e859
      Dmitry Kovalev authored
      Making code more compact, adding consts, removing redundant arguments,
      adding do/while(0) for macros.
      
      Change-Id: Ic9ec0bc58cee0910a5450b7fb8cfbf35fa9d0d16
      21d8e859
  24. 20 Aug, 2013 - 1 commit
  25. 14 Aug, 2013 - 1 commit
    • Paul Wilkins's avatar
      Renaming in MB_MODE_INFO · 26fead7e
      Paul Wilkins authored
      The macro block mode info context originally contained an
      entry for each 16x16 macroblock. In VP9 each entry refers
      to an 8x8 region not a macro block, so the naming is misleading.
      
      This first stage clean up changes the names of 3 entries in the
      structure to remove the mb_ prefix.
      
      TODO clean up the nomenclature more widely in respect of
      mbmi and bmi.
      
      Change-Id: Ia7305c6d0cb805dfe8cdc98dad21338f502e49c6
      26fead7e
  26. 12 Aug, 2013 - 1 commit
  27. 10 Aug, 2013 - 1 commit
  28. 08 Aug, 2013 - 1 commit
  29. 06 Aug, 2013 - 1 commit
    • Dmitry Kovalev's avatar
      Motion vector code cleanup. · a39abe26
      Dmitry Kovalev authored
      Converting arguments of two functions (clamp_mv_ref, lower_mv_precision)
      from int_mv* to MV*. Rewriting is_inside function to make it much shorter.
      
      Change-Id: Ie4c4cf3eccd46707c7df099ec21fb1b61c72fc7a
      a39abe26
  30. 05 Aug, 2013 - 1 commit
  31. 04 Aug, 2013 - 1 commit
    • Jim Bankoski's avatar
      reworked find_mv_ref · f703f987
      Jim Bankoski authored
      This is an attempt at rewriting vp9_find_mv_refs_idx.   I believe that it gains
      about 1-2% decode speed
      
      Change-Id: Ia5359c94ce9bb43b32652890e605e9a385485c1b
      f703f987
  32. 01 Aug, 2013 - 1 commit
  33. 31 Jul, 2013 - 1 commit
    • Dmitry Kovalev's avatar
      Removing get_mi_{row, col} functions. · 9239e965
      Dmitry Kovalev authored
      Passing mi_row and mi_col parameters to functions explicitly. Removing
      unused xd argument from scale_mv function.
      
      Change-Id: Icb4c495ec72d26fb066c14470d3ae0b741fbf18a
      9239e965
  34. 24 Jul, 2013 - 1 commit
  35. 23 Jul, 2013 - 1 commit
  36. 13 Jul, 2013 - 1 commit
  37. 10 Jun, 2013 - 1 commit
  38. 07 Jun, 2013 - 3 commits
    • Ronald S. Bultje's avatar
      Don't crash if motion vector ref points to out-of-bounds area. · 363dc6ce
      Ronald S. Bultje authored
      This can only happen if partition is partly out-of-frame, in which
      case the referenced mv is either out-of-frame also (and thus has the
      same value as an already-read one), or it is actually uninitialized,
      in which case we don't want to use it.
      
      Change-Id: Icf39fa4d987c7abcbebb9bbdcdd6311e8fb9d3c9
      363dc6ce
    • Yaowu Xu's avatar
      Specify mv neighborhood for block larger than 8x8 · 8b3ad752
      Yaowu Xu authored
      The new neighorbhood adapts to the shape and size of the block type
      cif +.16%
      stdhd +.13%
      
      Change-Id: I978db58278e9ae3fbd6726ef831bdfc5f5f37d02
      8b3ad752
    • Ronald S. Bultje's avatar
      Change ref frame coding. · 6ef805eb
      Ronald S. Bultje authored
      Code intra/inter, then comp/single, then the ref frame selection.
      Use contextualization for all steps. Don't code two past frames
      in comp pred mode.
      
      Change-Id: I4639a78cd5cccb283023265dbcc07898c3e7cf95
      6ef805eb