1. 16 Apr, 2014 1 commit
    • Paul Wilkins's avatar
      Fix rate control bug. · 658daf36
      Paul Wilkins authored
      Fix rate control bug whereby the rate factor heuristics
      were being updated on arf overlays causing a rate surge
      for a few frames followed by a corrective drop.
      
      This fix eliminates many of the overshoot problems that
      we were seeing on hard clips (even without applying
      stricter vbr rate control) and also helps quality on
      almost all clips with some hard clips improving by >5%.
      
      Overall quality results measured at speed 2.
      Derf  +1.78% opsnr , +2.44% SSIM
      Stdhd +2.41% opsnr, +2.85% SSIM
      
      Change-Id: I2369df6295c2705963fa6307877f6acb304bcc39
      658daf36
  2. 11 Apr, 2014 4 commits
    • Dmitry Kovalev's avatar
      Adding vp9_rc_update_framerate() function. · 335a18ad
      Dmitry Kovalev authored
      Change-Id: Ie0c905b6f32a37e4360bbb44ceeae77c42ad1dc5
      335a18ad
    • Dmitry Kovalev's avatar
      vp9_rc_postencode_update() cleanup. · 93169f8b
      Dmitry Kovalev authored
      Change-Id: Idb1289aa0eadff8f75dcf995547ab3a1b9e27375
      93169f8b
    • Paul Wilkins's avatar
      Adjust active minQ calculation for normal frames. · 1d975543
      Paul Wilkins authored
      This increases the range of Q values available to
      normal inter frames to allow encoder a better chance
      to hit the target rate.
      
      Change-Id: I33cd96469a46577fdcea631e26d3355710909e6d
      1d975543
    • Paul Wilkins's avatar
      Change Qlimit for arf kf. · d83f6f06
      Paul Wilkins authored
      The limits applied under the flag
      "LIMIT_QRANGE_FOR_ALTREF_AND_KEY"
      behaved in an undesirable way if the gap between
      active_worst_quality and active_best_quality was
      changed.
      
      In this patch, the adjustment is made using the
      vp9_compute_qdelta_by_rate() function and fixed
      rate multiplier values. Hence it is not impacted by
      the relative value of active_best_quality.
      
      Change-Id: I93b3308e04ade1e4eb5af63edf64f91cd3700249
      d83f6f06
  3. 10 Apr, 2014 4 commits
  4. 09 Apr, 2014 1 commit
  5. 08 Apr, 2014 1 commit
  6. 07 Apr, 2014 6 commits
  7. 03 Apr, 2014 1 commit
  8. 02 Apr, 2014 6 commits
    • Deb Mukherjee's avatar
      Rate ctrl changes to track target bitrates closer · 97f4fb7b
      Deb Mukherjee authored
      Turns off the DISABLE_RC_LONG_TERM_MEM macro and makes other changes
      in the way the bits are updated, to make 2-pass rate control track
      target bitrates closer.
      
      Change-Id: I5f3be4b11c2908e6a9a9a1dd4fcf4e65531c44d8
      97f4fb7b
    • Jingning Han's avatar
      Make frame level quantization change a parameter · d8b8d87e
      Jingning Han authored
      Parameterize the frame level quantization index used in non-RD
      coding flow with cbr.
      
      Change-Id: I79cfbd9c32c0d0fc33ad720d2180432e910baf7a
      d8b8d87e
    • Jingning Han's avatar
      Adjust rate allocation in non-RD coding mode · 751d002f
      Jingning Han authored
      This commit reduces the frequency of frames using finer quantizer
      in non-RD coding flow, and slightly tune up the quantizer resolution
      when used. It provides 1.7% compression gains in speed -5 at no speed
      difference.
      
      Change-Id: I430249a51260a841a0402666e5ec1566e4f7d5a6
      751d002f
    • Paul Wilkins's avatar
      Add speed feature for recode tolerance. · 769cd78f
      Paul Wilkins authored
      The new tolerance is a little higher than before (especially
      for kf/gf/arf) so this change gives an encode speed up
      for some clips up for speeds 0-2.
      
      Change-Id: I63f7d6c9cc11c7f58742f41e250dcd3eab1741eb
      769cd78f
    • Dmitry Kovalev's avatar
      Adding local pointer variables referencing REATE_CONTROL struct. · 21b8fc4c
      Dmitry Kovalev authored
      Change-Id: I1d8c312a599db505a023e5cd0cc4ba2b8f696a2e
      21b8fc4c
    • Marco Paniconi's avatar
      Remove the q division by 3 for first frame. · 939f0e74
      Marco Paniconi authored
      This code/setting was actually not used (since speed features were not set on first frame,
      until a recent change) and should be removed.
      
      In CBR mode, the q value for the first frame can be controlled by setting
      the target size via the parameters rc_buf_initial_sz (and max_intra_size_pct).
      
      Change-Id: I65afc64972b36c449bd5a8c25800e65da5389066
      939f0e74
  9. 01 Apr, 2014 1 commit
    • Paul Wilkins's avatar
      Speed setting correction to max q estimate. · 992c41d2
      Paul Wilkins authored
      Use a crude correction factor to correct for
      lower compression efficiency at higher encode
      speeds when estimating the max Q for the
      clip.
      
      Change-Id: I5ae377647f4adf5e91d700a8791fb3b8f70efc73
      992c41d2
  10. 31 Mar, 2014 1 commit
    • Jingning Han's avatar
      Apply finer quantizer to partition search frames in non-RD flow · 99893f24
      Jingning Han authored
      This commit optimizes the bit allocation for the non-RD coding flow.
      It applies slightly better quantizer to the frames, where all blocks
      run a non-RD partition search. Such frames typically have better
      rate-distortion trade off, thus improving the reconstruction quality
      for next few frames reference at reasonably low increment in rate
      cost.
      
      The coding performance for rtc set at speed -5 with error-resilient
      tuned on and rate control set as cbr is improved by 19.58%. It improved
      the coding speed by about 10% for a portion of local test clips.
      
      Change-Id: I9d56696cd4359dc8136ca10aff10fff05aaa2686
      99893f24
  11. 28 Mar, 2014 1 commit
  12. 24 Mar, 2014 2 commits
  13. 18 Mar, 2014 1 commit
  14. 17 Mar, 2014 2 commits
  15. 04 Mar, 2014 1 commit
  16. 27 Feb, 2014 1 commit
  17. 26 Feb, 2014 1 commit
  18. 25 Feb, 2014 1 commit
    • Deb Mukherjee's avatar
      Adds variance based fixed size partitioning · 10bae825
      Deb Mukherjee authored
      Adds a method for determining a fixed size partition based on
      variance of a 64x64 SB. This method is added to rtc speed 6.
      Also fixes a bug in rtc_use_partition() and includes some
      refactoring related to partitioning search, and some cosmetics.
      
      Currently compared to speed 5, the coding efficiency of speed 6
      is -19% and that of speed 7 is -55%, in cbr mode.
      
      Change-Id: I057e04125a8b765906bb7d4bf7a36d1e575de7c6
      10bae825
  19. 18 Feb, 2014 1 commit
  20. 14 Feb, 2014 2 commits
  21. 13 Feb, 2014 1 commit
    • Marco Paniconi's avatar
      Fix target frame size setting, for 1pass cbr. · e590e087
      Marco Paniconi authored
      Only use layered average size if number_temporal_layers > 1.
      
      Also removed unneeded commented-out line, and change some parameter
      setting in vpx_temporal_scalable_patterns.c
      
      Change-Id: Ic86e43e7daf0313e8c5a4aba1497299158111955
      e590e087