1. 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
  2. 20 Dec, 2013 - 1 commit
  3. 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
  4. 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
  5. 30 Sep, 2013 - 1 commit
  6. 17 Sep, 2013 - 1 commit
  7. 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
  8. 09 Sep, 2013 - 1 commit
  9. 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
  10. 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
  11. 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
  12. 20 Aug, 2013 - 1 commit
  13. 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
  14. 12 Aug, 2013 - 1 commit
  15. 10 Aug, 2013 - 1 commit
  16. 08 Aug, 2013 - 1 commit
  17. 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
  18. 05 Aug, 2013 - 1 commit
  19. 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
  20. 01 Aug, 2013 - 1 commit
  21. 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
  22. 24 Jul, 2013 - 1 commit
  23. 23 Jul, 2013 - 1 commit
  24. 13 Jul, 2013 - 1 commit
  25. 10 Jun, 2013 - 1 commit
  26. 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
  27. 06 Jun, 2013 - 1 commit
  28. 31 May, 2013 - 2 commits
    • Paul Wilkins's avatar
      vp9_find_mv_refs_idx change for last frame. · cf61fae8
      Paul Wilkins authored
      Restrict get_matching_candidate() to considering
      mvs at 8x8 and larger sizes for last frame case.
      
      This is to reduce the HW load of using vectors down
      to the 4x4 level from the previous frame.
      
      Change-Id: I6505e610fd63a4e22d67f136aec7905a01b893ba
      cf61fae8
    • Ronald S. Bultje's avatar
      Remove splitmv. · e6485581
      Ronald S. Bultje authored
      We leave it in rdopt.c as a local define for now - this can be removed
      later. In all other places, we remove it, thereby slightly decreasing
      the size of some arrays in the bitstream.
      
      Change-Id: Ic2a9beb97a4eda0b086f62c039d994b192f99ca5
      e6485581
  29. 26 May, 2013 - 1 commit
    • Ronald S. Bultje's avatar
      Remove splitmv. · 5cac6607
      Ronald S. Bultje authored
      Also do per-partition motion vector referencing in <sb8x8 partitions,
      and adjust mvref finding for sub8x8 partitions.
      
      Change-Id: Id3ed1ed4d2a8910d11d327db6cc63b8eb79f941f
      5cac6607
  30. 16 May, 2013 - 1 commit
    • Paul Wilkins's avatar
      New inter mode context. · 6ff3eb16
      Paul Wilkins authored
      This patch creates a new inter mode contest that avoids
      a dependence on the reconstructed motion vectors from
      neighboring blocks. This was a change requested by
      a hardware vendor to improve decode performance.
      
      As part of this change I have also made some modifications
      to stats output code (under a flag) to allow accumulation of
      inter mode context flags over multiple clips
      
      Some further changes will be required to accommodate the
      deprecation of the split mv mode over the next few days.
      
      Performance as stands is around -0.25% on derf and
      std-hd but up on the YT and YT-HD sets. With further tuning
      or some adjustment to the context criteria it should be
      possible to make this change broadly neutral.
      
      Change-Id: Ia15cb4470969b9e87332a59c546ae0bd40676f6c
      6ff3eb16
  31. 07 May, 2013 - 1 commit
    • Jingning Han's avatar
      Merge SB8X8 into the codebase · 776c1482
      Jingning Han authored
      Pull sb8x8 out of experimental list. verified via borg run tests.
      Fixed unit test failures.
      
      Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
      776c1482
  32. 01 May, 2013 - 1 commit
  33. 26 Apr, 2013 - 1 commit
  34. 19 Apr, 2013 - 2 commits
    • Paul Wilkins's avatar
      Mv ref candidates cut to 2. · de80da39
      Paul Wilkins authored
      Further simplification of mvref search to return
      only the top two candidates. Distance weights removed
      as the test order reflects distance anyway.
      
      Change-Id: I0518cab7280258fec2058670add4f853fab7b855
      de80da39
    • Paul Wilkins's avatar
      Simplification of MVref search. · 92e8a3f5
      Paul Wilkins authored
      As we are no longer able to sort the candidate
      mvrefs in both encoder and decode and given
      that the cost of explicit signalling has proved
      prohibitive, it no longer makes sense to find more
      than 2 candidates.
      
      This patch:
      
      Modifies and simplifies add_candidate_mv()
      
      Removes the forced addition of a 0 vector in the
      MAX_MV_REF_CANDIDATES-1 position (in preparation
      to reducing MAX_MV_REF_CANDIDATES to 2).
      
      Re-orders the addition of candidates slightly.
      
      This actually gives small gains (circa 0.2% on std-hd)
      
      A subsequent patch will remove NEW_MVREF experiment,
      reduce MAX_MV_REF_CANDIDATES to 2 and remove distance
      weights as these are implicit now in the order.
      
      Change-Id: I3dbe1a6f8a1a18b3c108257069c22a1141a207a4
      92e8a3f5
  35. 15 Apr, 2013 - 1 commit
  36. 11 Apr, 2013 - 1 commit