1. 17 Apr, 2015 1 commit
  2. 24 Mar, 2015 2 commits
  3. 23 Mar, 2015 2 commits
    • hkuang's avatar
      Optimize the intra frame decode to skip some unnecessary copy. · 85107641
      hkuang authored
      This speeds up a normal YT style 1080P clip decode by ~1% on nexus 7.
      Change-Id: Ied7fa0d8bc941b2adb4db9382f549ee4d5654f3a
    • paulwilkins's avatar
      Enable group adaptive max q by default. · 691ec45b
      paulwilkins authored
      Set the GF group adaptive max Q compile flag to 1 by default.
      This change has a quite big visual impact in some clips and also
      contributes to tighter rate control.
      For short test clips that have consistent content the impact is
      quite small on metrics but for more varied long form clips there is
      a drop in overal psnr but a sharp rise in average psnr caused by
      greater expenditure on some easier sections and tighter rate clipping
      in hard sections.
      In chunck'ed encodes some of the effect will already be present due
      to the independent rate control in each chunk but this change takes
      the control down to a smaller scale.
      yt hd +10.67%, - 3.77%, -1.56%
      yt +9.654%, - 3.6%, - 1.82%
      std hd +0.25%, -0.85%, -0.42%
      derf +0.25%, - 1.1%. - 0.87%
      Change-Id: Ibbc39b800d99d053939f4c6712d715124082843e
  4. 21 Mar, 2015 1 commit
    • Yaowu Xu's avatar
      vp9_pred_mv(): misc fixes and optimizations · 9fd8abc5
      Yaowu Xu authored
      1. skip near if it is same as nearest
      2. correct rounding for converting mv to fullpel position
      3. update pred_mv_sad after new mv search.
      Overall .1%~.25% compression gains on rtc set for speed 5, 6, 7, 8.
      Change-Id: Ic300ca53f7da18073771f1bb993c58cde9deee89
  5. 20 Mar, 2015 5 commits
    • Alex Converse's avatar
      Don't apply active map on key frames. · 6d6ef8eb
      Alex Converse authored
      This allows applciations to be KF oblivious.
      Change-Id: Ic02712eae6ad8d6b3eaec26548299d24ca0d5cc0
    • James Zern's avatar
      vp[89]_cx_iface.c: remove obsolete ABI checks · fef91c90
      James Zern authored
      Change-Id: I49a7017e8adc18ff03d748cb328814a8a3e1bcf6
    • Alex Converse's avatar
      Set loop filter level to zero on inactive segment. · e032fc7b
      Alex Converse authored
      Change-Id: I6022a79351882a72a219aee13563bf21bcd70383
    • paulwilkins's avatar
      Revised rd adjustment for variance. · 7e234b92
      paulwilkins authored
      Revised adjustment for rd based on source complexity.
      Two cases:
      1) Bias against low variance intra predictors
      when the actual source variance is higher.
      2) When the source variance is very low to give a slight
      bias against predictors that might introduce false texture
      or features.
      The impact on metrics of this change across the test sets is
      small and mixed.
      derf -0.073%, -0.049%, -0.291%
      std hd -0.093%, -0.1%, -0.557%
      yt  +0.186%, +0.04%, - 0.074%
      ythd +0.625%, + 0.563%, +0.584%
      Medium to strong psycho-visual improvements in some
      problem clips.
      This feature and intra weight on GF group length now
      turned on by default.
      Change-Id: Idefc8b633a7b7bc56c42dbe19f6b2f872d73851e
    • paulwilkins's avatar
      Experimental rd bias based on source vs recon variance. · 9a1ce7be
      paulwilkins authored
      This experiment biases the rd decision based on the impact
      a mode decision has on the relative spatial complexity of the
      reconstruction vs the source.
      The aim is to better retain a semblance of texture even if it
      is slightly misaligned / wrong, rather than use a simple rd
      measure that tends to favor use of a flat predictor if a perfect
      match can't be found.
      This improves the appearance of texture and visual quality
      on specific test clips but is hidden under a flag and currently
      off by default pending visual quality testing on a wider Yt set.
      Change-Id: Idf6e754a8949bf39ed9d314c6f2daaa20c888aad
  6. 19 Mar, 2015 4 commits
    • Adrian Grange's avatar
      Restore first ref frame pointer to the correct value · 12d946df
      Adrian Grange authored
      The joint_motion_search function alternates prediction
      between two reference frames. In order to reuse existing
      code, a pointer to the appropriate reference frame is
      written into xd->plane[0].pre[0], that the motion
      estimation code assumes points to the reference frame.
      If this first reference frame was scaled then the
      pointer was incorrectly being reset to point to the
      unscaled reference frame rather than the scaled
      Change-Id: I76f73a8d8f4f15c1f3a5e7e08a35140cdb7886ab
    • Adrian Grange's avatar
      Move joint_motion_search & delete function prototype · 53c9ebe6
      Adrian Grange authored
      Change-Id: I7fb3a78ed0e0bc940d8b4a57c470302f8369782f
    • James Zern's avatar
      put spatial svc behind an ABI check · 18613408
      James Zern authored
      this removes the CONFIG_* checks from public headers, but means
      '--enable-experimental --enable-spatial-svc' builds will fail without a
      local change to the ABI in vpx_encoder.h. this should be all right for
      testing this experiment.
      Change-Id: Ief55e7b9d1e8332cfce990275e04c29b30af0c4a
    • hkuang's avatar
      Safely free all the frame buffers after all the workers finish the work. · b88dac89
      hkuang authored
      Issue: 978
      Change-Id: Ia7aa809095008f6819a44d7ecb0329def79b1117
  7. 18 Mar, 2015 9 commits
    • James Zern's avatar
      vp9_resize_plane: quiet some static analysis warnings · c4367b9b
      James Zern authored
      document resolution assumptions with a few asserts
      Change-Id: Ia4ab738fd3e0a1ba0ed30a57facd2658c2c1fd60
    • James Zern's avatar
      vp9_fdct8x8_quant_ssse3: quiet a static analysis warning · 388add96
      James Zern authored
      add an assert to validate 'in' array size
      Change-Id: Ie5a24275c066d9dd59714f6104510abbd4850dc5
    • James Zern's avatar
      vp9_fdct8x8_quant_sse2: quiet a static analysis warning · 198b039e
      James Zern authored
      add an assert to validate 'in' array size
      Change-Id: Ib72946a86f34e1ce8a69954e8e3e4fe1a0f18a91
    • James Zern's avatar
      vp9_mv_pred: quiet a static analysis warning · 42836929
      James Zern authored
      add an assert to validate pred_mv array size
      Change-Id: I532b882b71e2baff3ac76e07ed133ec5a11bd0fc
    • Marco's avatar
      Adjustments to aq-mode=3. · 71e6ed7b
      Marco authored
      Factor in segment#2 and skip blocks into the postencode estimated bits,
      and increase somewhat the aggressiveness of the refresh.
      PSNR/SSIM Metrics on RTC set go up by ~0.8/0.5%.
      Change-Id: I5d4e7cb00a3aefb25d18c88b6b24118b72dc5d51
    • Jingning Han's avatar
      Speed up non-rd mode decision search · 83cbe226
      Jingning Han authored
      This commit makes the encoder to explicitly calculate the SAD
      associated with the LAST_FRAME motion vector and compare it to
      that of the GOLDEN_FRAME given by integral projection motion
      estimation. It skips the expensive sub-pixel motion search over
      GOLDEN_FRAME when the LAST_FRAME can provide fairly good motion
      compensated prediction quality.
      For dark720p speed -6 single thread goes from
      33304 b/f, 40.070 dB, 18156 ms ->
      33319 b/f, 40.061 dB, 17611 ms
      Change-Id: I01bc94b9b598075567a392111046b97a9bc30efe
    • Adrian Grange's avatar
      Order header files alphabetically · 83288c7a
      Adrian Grange authored
      Change-Id: I3e275544bff478849c1b5f3dcd5de950ee330d14
    • Jingning Han's avatar
      Fix the C version of column vector projection · c932584f
      Jingning Han authored
      Make the C and SSE2 versions consistent.
      Change-Id: I03c405d22a36bd1a97480efb96dc5af230667424
    • Marco's avatar
      Update to variance partition. · e5210915
      Marco authored
      Use force_split to constrain the partition selection.
      This is used because in the top-down approach to variance partition,
      a block size may be selected even though one of its subblocks may have
      high variance.
      In this patch the selection of the 64x64 block size will only
      be allowed if the variance of all the 32x32 subblocks are also below the threshold.
      Stil testing, but some visual improvement for areas near slow moving boundary
      can be seen. Metrics for RTC set increase by about ~0.5%.
      Change-Id: Iab3e7b19bf70f534236f7a43fd873895a2bb261d
  8. 17 Mar, 2015 3 commits
  9. 16 Mar, 2015 8 commits
  10. 14 Mar, 2015 2 commits
  11. 13 Mar, 2015 3 commits
    • Yaowu Xu's avatar
      Provide information on codec controls · 268f1066
      Yaowu Xu authored
      The commit updates the comments in vp8cx.h to make it clear which
      codec support each of codec control functions.
      Change-Id: Ibf876e289d4325bbb61ce19311da60d384624c2f
    • Marco's avatar
      Fix crash with vp9 denoiser on. · e38066a7
      Marco authored
      Crash occured on very first key frame, because denoiser
      temporal function was beng entered.
      Updated denoiser unittest to set cpu_used from first frame,
      and verified fix fixes the crash.
      Change-Id: I3be1124b52846fbbe7248d2c3d6136e086c80bc1
    • Jingning Han's avatar
      Use sdx4df to do 1-step refinement · cce7020f
      Jingning Han authored
      Change-Id: Ie0c3ef3ae3aedf049b1a296de607730b79c12672