1. 21 Mar, 2014 1 commit
  2. 20 Mar, 2014 2 commits
  3. 19 Mar, 2014 1 commit
  4. 13 Mar, 2014 1 commit
  5. 10 Mar, 2014 1 commit
  6. 06 Mar, 2014 1 commit
  7. 05 Mar, 2014 1 commit
  8. 01 Mar, 2014 1 commit
    • Yaowu Xu's avatar
      Remove vp9_create_common() · 2f4eb5f0
      Yaowu Xu authored
      The function has evolved over time, now only calls vp9_rtcd(), so this
      commit removes the function and changes to call vp9_rtcd() directly.
      
      Change-Id: I8cfa6190daa4b28f6f3d1e11bb3a07f9c95322bf
      2f4eb5f0
  9. 28 Feb, 2014 1 commit
  10. 12 Feb, 2014 1 commit
  11. 10 Feb, 2014 1 commit
    • Frank Galligan's avatar
      Add get release decoder frame buffer functions. · e8e15279
      Frank Galligan authored
      This CL changes libvpx to call a function when a frame buffer
      is needed for decode. Libvpx will call a release callback when
      no other frames reference the frame buffer. This CL adds a
      default implementation of the frame buffer callbacks. Currently
      only VP9 is supported. A future CL will add support for
      applications to supply their own frame buffer callbacks.
      
      Change-Id: I1405a320118f1cdd95f80c670d52b085a62cb10d
      e8e15279
  12. 31 Jan, 2014 2 commits
    • Yunqing Wang's avatar
      vp9 decoder: row-based multi-threaded loopfilter · 903801f1
      Yunqing Wang authored
      Implemented parallel loopfiltering, which uses existing tile-
      decoding threads. Each thread works on one row, and when that row
      is loopfiltered, it moves to next unattended row. To ensure the
      correct filtering order, threads are synchronized and one
      superblock is filtered only if the superblocks it depends on are
      filtered already.
      
      To reduce synchronization overhead and speed up the decoder, we use
      nsync > 1 for high resolution.
      
      Performance tests:
      1. on desktop:
      8-tile 4k video using 8 threads, speedup: 70% - 80%
      4-tile HD video using 4 threads, speedup: ~35%
      2. on mobile device(Nexus 7):
      4-tile 1080p video using 4 threads, speedup: 18% - 25%
      4-tile 1080p video using 2 threads, speedup: 10% - 15%
      
      Change-Id: If54b4a11960dd706c22d5ad145ad94156031f36a
      903801f1
    • Adrian Grange's avatar
      Disable update of last_show_frame for existing frame · 64e25974
      Adrian Grange authored
      When showing a previously decoded frame, i.e. when
      show_existing_frame=1, the update of the
      last_show_frame flag must be disabled.
      
      This is to ensure that the last_show_frame flag
      reflects the state of the flag for the immediately
      previously decoded frame rather then the value that
      was forced to ensure that a previously decoded frame
      would be displayed.
      
      This patch also adds a test vector to verify that the
      display_existing_frame flag works as expected. Code
      for generating the test vector can be found in this
      patch:
      https://gerrit.chromium.org/gerrit/#/c/68581/
      
      (Bug originally reported by Alexander Voronov
      <ru.xalba@gmail.com>).
      
      Change-Id: I731d288fba02088959f7fcc87707137fffc6acf5
      64e25974
  13. 29 Jan, 2014 1 commit
  14. 03 Jan, 2014 1 commit
    • Dmitry Kovalev's avatar
      Adding RefBuffer struct. · ba41e9d4
      Dmitry Kovalev authored
      Adding RefBuffer to simplify reference buffer management. The struct has a
      pointer to image data and scale factors relative to the current frame.
      
      Change-Id: If38eb1491ff687cc11428aee339f3e052e2c5d9e
      ba41e9d4
  15. 10 Dec, 2013 1 commit
  16. 06 Dec, 2013 1 commit
    • Dmitry Kovalev's avatar
      Renaming constants. · 0d4b8d7e
      Dmitry Kovalev authored
      NUM_YV12_BUFFERS        => FRAME_BUFFERS
      ALLOWED_REFS_PER_FRAME  => REFS_PER_FRAME
      NUM_REF_FRAMES_LOG2     => REF_FRAMES_LOG2
      NUM_REF_FRAMES          => REF_FRAMES
      NUM_FRAME_CONTEXTS_LOG2 => FRAME_CONTEXTS_LOG2
      NUM_FRAME_CONTEXTS      => FRAME_CONTEXTS
      
      Change-Id: I4e1ada08f25d8fa30fdf03aebe1b1c9df0f87e63
      0d4b8d7e
  17. 05 Dec, 2013 2 commits
    • Tero Rintaluoma's avatar
      Fix show existing frame · 047b0b01
      Tero Rintaluoma authored
      - Disable mode info update in case where current frame is coded
        as "show existing frame".
      - Should fix issue 676.
      
      Change-Id: Ibee681850eb307f982da6528d3e31cb94f881c08
      047b0b01
    • Frank Galligan's avatar
      Fix the initial references to frame buffers. · 9ed616a5
      Frank Galligan authored
      The old code would start in a mixed state, where all the reference
      frames were pointing to frame buffer 0, but the reference counts
      were 0. This is why we needed special code for the first frame.
      
      Change-Id: I734961012917654ff8c0c8b317aac00ab75ded1a
      9ed616a5
  18. 04 Dec, 2013 1 commit
    • 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
      f00d157c
  19. 27 Nov, 2013 1 commit
  20. 15 Nov, 2013 1 commit
    • Yaowu Xu's avatar
      Renamed two files · 49cbe458
      Yaowu Xu authored
      from vp9_decodframe.{c,h} to vp9_decodeframe.{c,h}
      
      Change-Id: I21ac4b14fc90246e3f16bd90c52c12d126d791f8
      49cbe458
  21. 11 Nov, 2013 1 commit
    • Jingning Han's avatar
      Decouple macroblockd_plane buffer usage · d8b4c792
      Jingning Han authored
      Make the macroblockd_plane contain dynamic buffer pointers instead
      static pointers to the memory space allocated therein. The decoder
      uses the buffer allocated in pbi, while encoder will use a dual
      buffer approach for rate-distortion optimization search.
      
      Change-Id: Ie6f24be2dcda35df7c15b4014e5ccf236fb3f76c
      d8b4c792
  22. 30 Oct, 2013 1 commit
  23. 28 Oct, 2013 2 commits
  24. 26 Oct, 2013 1 commit
  25. 24 Oct, 2013 2 commits
  26. 21 Oct, 2013 1 commit
  27. 16 Oct, 2013 2 commits
  28. 10 Oct, 2013 1 commit
  29. 05 Oct, 2013 1 commit
  30. 29 Sep, 2013 1 commit
  31. 24 Sep, 2013 1 commit
  32. 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
  33. 09 Sep, 2013 1 commit
  34. 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