1. 03 Oct, 2012 2 commits
    • Adrian Grange's avatar
      Add initialization and per frame flag members · 4206c6dd
      Adrian Grange authored
      Modified EncoderTest class to have separate member variables
      for initialization time and per-frame.
      Change-Id: I08a1901f8f3ec16e45f96297e08e7f6df0f4aa0b
    • Adrian Grange's avatar
      Added Reset method to TwopassStatsStore · 30f58b52
      Adrian Grange authored
      The stats buffer needs to be reset between runs of the
      encoder. I added a Reset() function to TwopassStatsStore
      and called it at the beginning of each encode.
      This enables us to run multiple encodes which was
      previously not possible since there was no way to reset
      the stats between runs.
      Change-Id: Iebb18dab83ba9331f009f764cc858609738a27f9
  2. 27 Sep, 2012 1 commit
    • Marco Paniconi's avatar
      Resetting of the cyclic_refresh_mode_index: · 9704cdec
      Marco Paniconi authored
      Reset the cyclie refresh mode index in alloc_compressor_data().
      This is needed to handle both cases of internal and
      external spatial resizing.
      Change-Id: I2697e12d45135eae2e8f0d45161811f24722312a
  3. 26 Sep, 2012 1 commit
  4. 25 Sep, 2012 5 commits
  5. 24 Sep, 2012 6 commits
  6. 22 Sep, 2012 1 commit
    • Marco Paniconi's avatar
      Update to cyclic refresh. · 5979b89b
      Marco Paniconi authored
      -Increase the amount of mbs to be refreshed.
      -Replace the delta qp with a fixed and reduced delta.
      -Change to the mb update loop to try to always update same amount of mbs.
      Change-Id: I93ac88002fd8dc677d2337f77998ff93f64e4ff9
  7. 21 Sep, 2012 1 commit
  8. 19 Sep, 2012 1 commit
    • Scott LaVarnway's avatar
      Moved vp8dx_get_raw_frame() call to vp8_get_frame() · e278673c
      Scott LaVarnway authored
      This change is necessary for the frame-based multithreading
      Since the postproc occurs in this call, vpxdec was modified to time around
      Change-Id: I389acf78b6003cd35e41becc16c893f7d3028523
  9. 17 Sep, 2012 5 commits
  10. 14 Sep, 2012 2 commits
  11. 13 Sep, 2012 3 commits
  12. 12 Sep, 2012 1 commit
  13. 11 Sep, 2012 3 commits
  14. 07 Sep, 2012 1 commit
    • Jim Bankoski's avatar
      valgrind caught uninitialized cond · 2ff6d350
      Jim Bankoski authored
      If the decoder crashes and returned an error before it set up
      block offsets but after it set up frame buffers.   We had a
      problem decoding the next keyframe because the block offsets
      were never set.
      Change-Id: Ied2866e9770d80fc66241d5e0d978d4f5f9cdd89
  15. 06 Sep, 2012 1 commit
  16. 04 Sep, 2012 1 commit
    • Deb Mukherjee's avatar
      Adjusting thresholds in mfqe post-processing · c6fd0a5d
      Deb Mukherjee authored
      Adjusts some of the qualification thresholds in mfqe to eliminate
      artifacts due to wrong decisions. Besides, a new qualification
      criteria is used to disable mfqe if the quality of the previous
      frame is itself not too good.
      Change-Id: I4097c20b7fd4fcc60cc3003c1e33e8faae2ff066
  17. 31 Aug, 2012 5 commits
    • Yunqing Wang's avatar
    • Yunqing Wang's avatar
      Encoder denoiser performance improvement · 64075c9b
      Yunqing Wang authored
      The denoiser function was modified to reduce the computational
      1. The denoiser c function modification:
      The original implementation calculated pixel's filter_coefficient
      based on the pixel value difference between current raw frame and last
      denoised raw frame, and stored them in lookup tables. For each pixel c,
      find its coefficient using
          filter_coefficient[c] = LUT[abs_diff[c]];
      and then apply filtering operation for the pixel.
      The denoising filter costed about 12% of encoding time when it was
      turned on, and half of the time was spent on finding coefficients in
      lookup tables. In order to simplify the process, a short cut was taken.
      The pixel adjustments vs. pixel diff value were calculated ahead of time.
          adjustment = filtered_value - current_raw
                     = (filter_coefficient * diff + 128) >> 8
      The adjustment vs. diff curve becomes flat very quick when diff increases.
      This allowed us to use only several levels to get a close approximation
      of the curve. Following the denoiser algorithm, the adjustments are
      further modified according to how big the motion magnitude is.
      2. The sse2 function was rewritten.
      This change made denoiser filter function 3x faster, and improved the
      encoder performance by 7% ~ 10% with the denoiser on.
      Change-Id: I93a4308963b8e80c7307f96ffa8b8c667425bf50
    • Yaowu Xu's avatar
      added encode/decode matching validation to tests · c953aeac
      Yaowu Xu authored
      This commit adds the ability of validating matched encoder and
      decoder to unit tests.
      Change-Id: Ie00d69a42477b6a69b324a6bd134939684f7300b
    • John Koleszar's avatar
    • James Zern's avatar
      msvs/tests: fix data alignment for asm tests · 10f8b361
      James Zern authored
      Replace DECLARE_ALIGNED_ with vpx_memalign()
      DECLARE_ALIGNED (__declspec(align())) does not work as intended when
      used on class data members:
      Data in classes or structures is aligned within the class or structure
      at the minimum of its natural alignment and the current packing setting
      (from #pragma pack or the /Zp compiler option)
      Change-Id: I304aaa6c3716fbfae24675ecf192f4b40787e83e