1. 18 Jul, 2014 1 commit
  2. 17 Jul, 2014 3 commits
    • Pengchong Jin's avatar
      Fixed a bug of setting wrong first pass mb stats pointer · e358ab5f
      Pengchong Jin authored
      The bug sets the wrong pointer to the first pass mb stats
      if the encoder does the re-coding in the second pass.
      
      Change-Id: I8a11f45dd7dceb38de814adec24cecccae370d00
      e358ab5f
    • Adrian Grange's avatar
      Modified frame buffer handling · f68aaa38
      Adrian Grange authored
      This patch is the first step toward simplifying the
      frame buffer handling.
      
      The final goal is to have a common frame buffer handling
      framework for both encoder and decoder that incorporates
      the existing ability to use externally allocated memory.
      
      Change-Id: I2c378a4f54a39908915f46c4260e17a080db7ff1
      f68aaa38
    • Jim Bankoski's avatar
      allow config options to limit max size of decode · 943e4327
      Jim Bankoski authored
      This is a practical concern to allow us to fail in a decoder instance
      if the size of a file is bigger than we can reasonably handle.
      
      Change-Id: I0446b5502b1f8a48408107648ff2a8d187dca393
      943e4327
  3. 16 Jul, 2014 3 commits
    • Yaowu Xu's avatar
      make default_interp_filter choice a speed feature · 51c60a89
      Yaowu Xu authored
      This commit changed the hard-coded DEFAULT_INTERP_FILTER to a speed
      feature with the same default value: SWITCHABLE.
      
      Change-Id: I7f54f40f1bd3f5277841d04b85db7a84e47313f1
      51c60a89
    • Scott LaVarnway's avatar
      Added vp9_sad64x64_neon(), vp9_sad32x32_neon() · 696fa52e
      Scott LaVarnway authored
      and vp9_sad16x16_neon()
      
      On a Nexus 7, vpxenc (in realtime mode, speed -6)
      reported a performance improvement of ~17%.
      
      Change-Id: I91e070cde2973451083d3f3d63b49b7886de9a85
      696fa52e
    • Paul Wilkins's avatar
      Changes to rd balance and multi-arf bug fix. · b691230d
      Paul Wilkins authored
      2 pass only change to calculation of rd mult based on Q.
      Make a small adjustment based on frame type and also
      replace adjustment based on iifactor with an one based
      on the ambient GF/ARF boost level.
      
      Also fix multi arf bug / issue.
      
      Overall these change give an slight improvement in ssim
      but hurt psnr a little.
      
      Change-Id: I5e1751e3ff5390a26f543d7855059e6fbcce105e
      b691230d
  4. 15 Jul, 2014 6 commits
  5. 14 Jul, 2014 1 commit
    • Minghai Shang's avatar
      [spatial svc]Implement alt reference frames · e899859c
      Minghai Shang authored
      All changes are for spatial svc only.
      1. Enable encoding hidden frames in each layer and use alt reference idex to reference the hidden frame in each layer
      2. Use golden reference idx for spatial reference
      3. For those layers that don't have hidden frames (caused by lack of frame buffers), reference a hidden frame in lower layers
      4. Add "auto-alt-refs" in svc options
      Change-Id: Idf27d1fd2fb5f3ffd9e86d2119235e3dad36c178
      e899859c
  6. 11 Jul, 2014 9 commits
  7. 10 Jul, 2014 5 commits
    • James Zern's avatar
      call vp[89]_clear_system_state after longjmp · 61c33385
      James Zern authored
      restore the environment post encode/decode failure
      
      Change-Id: I3c72e2260a616432eaf1f9545d4fb4d8e45cc7b0
      61c33385
    • James Zern's avatar
      update vp9_thread.c · 8701ed02
      James Zern authored
      pull the latest from libwebp.
      
      Original source:
       http://git.chromium.org/webm/libwebp.git
       100644 blob 264210ba2807e4da47eb5d18c04cf869d89b9784 src/utils/thread.c
      
      commit 46fd44c1042c9903b2f1ab87e9f200a13c7e702d
      Author: James Zern <jzern@google.com>
      Date:   Tue Jul 8 19:53:28 2014 -0700
      
          thread: remove harmless race on status_ in End()
      
          if a thread was still doing work when End() was called there'd be a race
          on worker->status_. in these cases, however, the specific value is
          meaningless as it would be >= OK and the thread would have been shut
          down properly, but we'll check 'impl_' instead to avoid any potential
          TSan/DRD reports.
      
          Change-Id: Ib93cbc226a099f07761f7bad765549dffb8054b1
      
      Change-Id: Ib0ef25737b3c6d017fa74822e21ed58508230b91
      8701ed02
    • hkuang's avatar
      Fix a bug in boundary checking. · 51e9788e
      hkuang authored
      Change-Id: Ifc741da9da6f61c8d3c1f675ec6b8a96570f877d
      51e9788e
    • Yunqing Wang's avatar
      Refactor vp9_diamond_search_sad function · 75cd5750
      Yunqing Wang authored
      Currently, vp9_diamond_search_sadx4() is only called when sse3 is
      enabled, which is improper since sse2 optimization of sdx4df
      functions are available. Changed to always use
      vp9_diamond_search_sadx4().
      
      Change-Id: I4b95d6b7a3c6c645783c373f0ba8d645ece24717
      75cd5750
    • James Zern's avatar
      vp9_loopfilter.c: cosmetics · 58609335
      James Zern authored
      - fix indent, spelling
      - drop some whitespace in some comments
      - add an assert in vp9_setup_mask, it shouldn't be called on decode
        error
      
      Change-Id: Ic312a815e977a6f9cb81ceb7b039eeada76c5aa0
      58609335
  8. 09 Jul, 2014 6 commits
    • Yunqing Wang's avatar
      Refactor refining_search_sad code · 30117a57
      Yunqing Wang authored
      There are sse2 optimization of sdx4df functions. Instead of calling
      vp9_refining_search_sadx4 only when sse3 is enabled, call it always.
      
      Change-Id: I24f93818f7d4209d1425039e0eb099ff9ff08fe9
      30117a57
    • Yaowu Xu's avatar
      Minor cleanup · 87cf002e
      Yaowu Xu authored
      Change-Id: I3a3ceeeed489f8b1ccd7199ff97f3fb991bbf5a4
      87cf002e
    • Yunqing Wang's avatar
      Remove repetitive code in mcomp.c · a581da21
      Yunqing Wang authored
      Deleted vp9_find_best_sub_pixel_comp_tree(), and combined it in
      vp9_find_best_sub_pixel_tree().
      
      Change-Id: Ifb25763c8b19822df5537cc1daa76ce88dc3b056
      a581da21
    • Yunqing Wang's avatar
      Adjust full-pixel search method in real-time mode · 9bd3be69
      Yunqing Wang authored
      Use FAST_HEX in speed 5 and 6, which covers more points than
      FAST_DIAMOND and improves motion search quality.
      
      At speed 6, RTC set borg tests showed slight quality gain (psnr
      gain: 0.143%, ssim gain: 0.226%). No noticeable encoding speed
      change.
      
      Change-Id: Ifa62875d9a52ee382ec494f271382bb77d8c67bf
      9bd3be69
    • Yaowu Xu's avatar
      Combined non-rd motion searchs into a single function · c788bceb
      Yaowu Xu authored
      This commit combined the full pel and sub pel motion search into a
      single function to avoid code duplication. The commit does not change
      encoder outputs.
      
      Change-Id: Ibe18342c4f64073bef20f9cf6c6ca0a20d01bf0d
      c788bceb
    • James Zern's avatar
      vp9_decoder_remove: destroy common after thread shutdown · 2e0588bc
      James Zern authored
      in a failure case the threads may still be running and share a reference
      to VP9_COMMON
      
      Change-Id: I867034b4b55f133663b8cbf6ca06e72acf952849
      2e0588bc
  9. 08 Jul, 2014 4 commits
    • Jingning Han's avatar
      Re-design quantization process for 32x32 transform block · 9ad1b9fc
      Jingning Han authored
      This commit enables a new quantization process for 32x32 2D-DCT
      transform coefficient blocks. It improves the compression
      performance of speed 5 by 1.4%. The overall compression gains of
      speed 5 due to the new quantization scheme is 4.7%. It also includes
      the SSSE3 implementation of the 32x32 quantization process.
      
      Change-Id: I0855b124fd6462418683f783f5bcb44255c9993b
      9ad1b9fc
    • Adrian Grange's avatar
      Fix decoder handling of intra-only frames · 7c43fb67
      Adrian Grange authored
      This patch fixes bug 633:
      https://code.google.com/p/webm/issues/detail?id=633
      
      The first decoded frame does not have to be a keyframe,
      it could be an inter-frame that is coded intra-only.
      
      This patch fixes the handling of intra-only frames.
      
      A test vector has also been added that encodes 3
      intra-only frames at the start of the clip. The
      test vector was generated using the code in the
      following patch:
      https://gerrit.chromium.org/gerrit/#/c/70680/
      
      Change-Id: Ib40b1dbf91aae2bc047e23c626eaef09d1860147
      7c43fb67
    • Tim Kopp's avatar
      Vp9 denoiser MC bugfix · 3c86228c
      Tim Kopp authored
      In the previous version, only certain buffers in the macroblockd were saved and
      the restored. In this version, all of the buffers are saved and restored. The
      code was then rolled into a loop for readability.
      
      Also contains a tiny fix for when the -DOUTPUT_YUV_DENOISED flag is used.
      
      Change-Id: Id925ef8b3fa122ae88acfa1d9a1e4df45df83518
      3c86228c
    • Guillaume Martres's avatar
      vp9_cx_iface.c: allow speed greater than 7 · 113dbf8d
      Guillaume Martres authored
      This makes it possible to use --rt --cpu-used=8.
      
      Change-Id: I8b5bc4449b6e05d24d25145e35b4793501268c59
      113dbf8d
  10. 07 Jul, 2014 2 commits
    • hkuang's avatar
      Move vp9_thread.* to common. · 337e8015
      hkuang authored
      Prepare for frame parallel decoding, the reference count buffers
      need to be protected by mutex. Move vp9_thread.* to common
      folder so that those buffers could use cross-platform mutex
      from vp9_thread.*.
      
      Change-Id: I541277cf15eefed6641555944f67f4a0bcdc8154
      337e8015
    • Jingning Han's avatar
      Tune SSSE3 implementation of fast path quantization · 00fc0e3f
      Jingning Han authored
      This commit further simplifies the SSSE3 implementation of the fast
      path quantization process.
      
      Change-Id: I5be3286ec0f1bd81d1cf5be3168fece6384fb9ca
      00fc0e3f