1. 21 Jan, 2016 2 commits
  2. 20 Jan, 2016 1 commit
  3. 05 Jan, 2016 1 commit
    • Marco's avatar
      vp9-skin detection: Refactoring. · a8b7c6aa
      Marco authored
      Add function to compute skin map for a given block, as its
      used in several places (cyclic refresh, noise estimation, and denoising).
      Change-Id: Ied622908df43b6927f7fafc6c019d1867f2a24eb
  4. 22 Dec, 2015 1 commit
    • Marco's avatar
      aq-mode=3: Don't reset segment if block is determined to be skin. · b121a3e7
      Marco authored
      For coding block sizes <=16X16, if the block is determined to be skin,
      then always allow for that block to be candidate for refresh. So if that
      block happens to be on the boost segment(s), segment won't get reset to 0
      and delta-q will be applied.
      PSNR/SSIM metrics neutral (little/no change) on RTC clips.
      Speed increase small/negligible (< 1%).
      Some visual improvement on faces in a few RTC clips.
      Change-Id: I6bf0fce6f39d820b491ce05d7c017ad168fce7d6
  5. 12 Nov, 2015 1 commit
  6. 02 Nov, 2015 1 commit
    • Marco's avatar
      Move noise level estimate outside denoiser. · c7da053d
      Marco authored
      Source noise level estimate is also useful for
      setting variance encoder parameters (variance thresholds,
      qp-delta, mode selection, etc), so allow it to be used also
      if denoising is not on.
      Change-Id: I4fe23d47607b4e17a35287057f489c29114beed1
  7. 27 Oct, 2015 1 commit
    • Marco's avatar
      Adjustments to vp9-denoising. · 8a2fc545
      Marco authored
      Adjust variance threshold, delta-qp, and intra penalty cost,
      based on estimated noise level in source.
      Replace denoising_on with a level value=L/M/H.
      Change-Id: I0c017dae75a5d897367d2c42dec26f2f37e447c1
  8. 16 Oct, 2015 1 commit
    • Marco's avatar
      Adjustment on limiting cyclic refresh on steady blocks. · b44c5cf6
      Marco authored
      Adjust the qp threshold and consec_zeromv threshold for
      limiting cyclic refresh. Also increase the refresh period
      when the limit amount is significant, and some code-cleanup.
      Small gain in PSNR/SSIM metrics: ~0.25/0.3 gain on RTC set, speed 7.
      Change only affects non-screen content.
      Change-Id: I1ced87a89a132684c071e722616e445b2d18236a
  9. 15 Oct, 2015 1 commit
  10. 07 Oct, 2015 1 commit
    • Marco's avatar
      Move setting of refresh threshold outside loop. · bc137ff6
      Marco authored
      Small code cleanup. consec_zeromv refresh threshold
      does not need to be computed for every super-block.
      No change in behavior.
      Change-Id: I8c4b1b28072f42b01d917fff6d1f62722f1e1554
  11. 25 Sep, 2015 1 commit
    • Marco's avatar
      Limit cyclic refresh on steady background blocks. · 3f7656cc
      Marco authored
      Use the existing QP condition on limiting cyclic refresh, and add
      addiitonal condition that block has been encoded with zero/small motion
      x frames in row (where x is at least several times the refresh period).
      Additional condition only affect non-screen content mode.
      This helps to improve visual stability for noisy input, where on steady
      background areas the application of delta_qp may lead to encoding the noise.
      Also added a change to use the true skip (after encoding) to update the
      last QP.
      Change-Id: I234a1128d017d284cf767fdb58ef6c59d809f679
  12. 23 Sep, 2015 1 commit
  13. 15 Sep, 2015 1 commit
    • Marco's avatar
      Add cyclic refresh parameters to svc-layer context. · eb53c69e
      Marco authored
      For 1 pass CBR spatial-SVC:
      Add cyclic refresh parameters to the svc-layer context.
      This allows cyclic refresh (aq-mode=3) to be applied to
      the whole super-frame (all spatial layers).
      This gives a performance improvement for spatial layer encoding.
      Addd the aq_mode mode on/off setting as command line option.
      Change-Id: Ib9c3b5ba3cb7851bfb8c37d4f911664bef38e165
  14. 14 Sep, 2015 1 commit
  15. 10 Sep, 2015 1 commit
  16. 08 Sep, 2015 1 commit
  17. 31 Aug, 2015 1 commit
  18. 27 Aug, 2015 1 commit
  19. 10 Aug, 2015 1 commit
  20. 07 Aug, 2015 1 commit
    • Marco's avatar
      Fix a setting in cyclic refresh. · dc36e5af
      Marco authored
      Use the correct period (in terms of cr->percent_refresh) for the condition
      of larger delta-qp following key frame.
      And account for larger interval for temporal layers.
      Change-Id: Ibb43f5200f9b1eeb8bbb8211327b08ecda3c3b8a
  21. 16 Jul, 2015 1 commit
  22. 25 Jun, 2015 1 commit
  23. 23 Jun, 2015 1 commit
    • Marco's avatar
      aq-mode=3: Reduce boost for segment#2 at low bitrates/low res. · 517a6620
      Marco authored
      Reduce boost for segment#2 for low bitrates and low-res.
      This change is to reduce the rate overshoot at low bitrates.
      No change in behavior, except at the very low bitrates.
      Change-Id: I0dbd9d3b6356da5804de94adf10fca6a7a8f8948
  24. 19 Jun, 2015 2 commits
    • Alex Converse's avatar
      Limit cyclic refresh revisitng blocks at the same quantizer. · 90c9ede8
      Alex Converse authored
      For screen content don't refresh a block at a quantizer higher than
      it was last coded at. PReviosuly at realtime speeds the encoder had a
      tendency to recode a block from GOLDEN with a higher Q than it was last
      coded at.
      Change-Id: Iacd561806c769dcce1a81b9827ffc70090f5ba18
    • Marco's avatar
      Add dynamic resize logic for 1 pass CBR. · d77f51ba
      Marco authored
      Decision to scale down/up is based on buffer state and average QP
      over previous time window. Limit the total amount of down-scaling
      to be at most one scale down for now.
      Reset certain quantities after resize (buffer level, cyclic refresh,
      rate correction factor).
      Feature is enable via the setting rc_resize_allowed = 1.
      Change-Id: I9b1a53024e1e1e953fb8a1e1f75d21d160280dc7
  25. 11 Jun, 2015 1 commit
  26. 09 Jun, 2015 1 commit
    • Marco's avatar
      Adjust some parameters for cyclic refresh for low bitrates. · 997ac14c
      Marco authored
      Reduce motion threshold and boost factor for second segment,
      for low bitrates, at low resolutions for now.
      This is to reduce the rate fluctuation/frame dropping that occurs
      at these low bitrates.
      Change-Id: Ia66c3be41831882fca8c1e4fe104f5ea8fbe7142
  27. 15 May, 2015 1 commit
  28. 29 Apr, 2015 2 commits
    • Yunqing Wang's avatar
      Improve golden frame refreshing in non-rd mode · d31698b0
      Yunqing Wang authored
      The default golden frame interval was doubled. After encoding a
      frame, the background motion was measured. If the motion was high,
      the current frame was set as the golden frame. Currently, the
      changes were applied only while aq-mode 3 was on.
      Borg tests(rtc set) showed a 0.226% PSNR gain and 0.312% SSIM gain.
      No speed changes.
      Change-Id: Id1e2793cc5be37e8a9bacec1380af6f36182f9b1
    • James Zern's avatar
      vpx_mem: remove vpx_memset · f58011ad
      James Zern authored
      vestigial. replace instances with memset() which they already were being
      defined to.
      Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201
  29. 18 Mar, 2015 1 commit
    • 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
  30. 13 Mar, 2015 1 commit
  31. 12 Mar, 2015 1 commit
  32. 10 Mar, 2015 1 commit
  33. 26 Feb, 2015 1 commit
  34. 20 Feb, 2015 1 commit
    • Marco's avatar
      Adjustments to cyclic refresh (aq-mode=3). · 0187f4b4
      Marco authored
      Target higher delta-qp for big blocks with zero motion,
      and for segment#1: avoid 64x64 partition size and force 8x8 tx size.
      Metrics on RTC set mostly positive: SSIM up by ~4%, PSRN by ~1.5%.
      Doesn't seem to be any change in speed.
      Change-Id: I1f68fa3c4f62dab3b90cc58041f05ebb048ae5ac
  35. 27 Jan, 2015 1 commit
    • Marco's avatar
      aq-mode=3: Update to allow for refresh on modes other than zero-mv. · 3f1af6e8
      Marco authored
      Add distortion threshold condition to refresh state of a coding block,
      and allow for qp adjustment also for some intra modes and non-zero motion modes.
      Also some code cleanup (remove unused variables/code).
      Change-Id: I735fa2b28bc64f60e0323976b82510577b074203
  36. 03 Dec, 2014 1 commit
  37. 02 Dec, 2014 1 commit