1. 17 Mar, 2014 1 commit
  2. 04 Mar, 2014 1 commit
  3. 27 Feb, 2014 1 commit
  4. 26 Feb, 2014 1 commit
  5. 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
  6. 18 Feb, 2014 1 commit
  7. 14 Feb, 2014 2 commits
  8. 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
  9. 12 Feb, 2014 2 commits
    • Jim Bankoski's avatar
      static analysis warning in vp9_ratectrl.c · eb5889f8
      Jim Bankoski authored
      Change-Id: I8aa3dd068d9a7225b3e8b24392a7b4a54b9435dd
      eb5889f8
    • Deb Mukherjee's avatar
      Removes active_worst_quality feedback · d23e3392
      Deb Mukherjee authored
      Removes certain cases of feedback of active_worst_quality,
      and removes it from the RATE_CONTROL structure. Now active
      worst quality is expected to be computed locally in the
      q picking function during the encode.
      Making temporal filter strength depend on avg_frame_qindex
      rather than on active_worst_quality actually improves
      performance esp. for yt.
      derf: +0.038%
      yt: +0.359%
      
      Change-Id: I1fe5a343034b55af9322289165321f00ac0827b1
      d23e3392
  10. 10 Feb, 2014 3 commits
  11. 07 Feb, 2014 1 commit
  12. 06 Feb, 2014 2 commits
    • Deb Mukherjee's avatar
      Parameter fixes for one-pass non-cbr mode · b2209c33
      Deb Mukherjee authored
      Fixes some of the parameters for 1-pass non-cbr mode.
      Also includes some cleanups, inlcuding refactoring of the
      recode_loop options.
      
      Results on derfraw300 improve by about 5-6%, so that the one-pass
      mode is now 13% below the 2-pass mode in speed 0.
      
      Change-Id: I844cc2638694c7574f3be00d41d60b23dc1016f0
      b2209c33
    • Marco Paniconi's avatar
      Layer based rate control for CBR mode. · 4864ab21
      Marco Paniconi authored
      This patch adds a buffer-based rate control for temporal layers,
      under CBR mode.
      
      Added vpx_temporal_scalable_patters.c encoder for testing temporal
      layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).
      
      Updated datarate unittest with tests for temporal layer rate-targeting.
      
      Change-Id: I8900a854288b9354d9c697cfeb0243a9fd6790b1
      4864ab21
  13. 05 Feb, 2014 1 commit
    • Deb Mukherjee's avatar
      One-pass rate control cleanups/fixes/refactoring · 40e63d4b
      Deb Mukherjee authored
      Inlcudes a number cleanups:
      1. Moves the one-pass pre-encode parameter setting functions
      to vp9_ratectrl.c
      2. Deprecates per_frame_bandwidth in RATE_CONTROL structure
      3. Removes target_bandwidth in cpi structure since it is not used.
      4. Various renaming of functions
      
      There is no bit-stream change in 2-pass, one-pass cbr and one-pass
      vbr modes.
      
      Change-Id: Ifd9916bf4d485b7d04c5f52044ffe6703254ccbd
      40e63d4b
  14. 04 Feb, 2014 1 commit
    • Deb Mukherjee's avatar
      One-pass rate control fixes and cleanups · 35ee7f5f
      Deb Mukherjee authored
      Fixes rate control partially in one-pass non-cbr case to achieve a
      bitrate close to the one desired. Previous version was way off at
      the high bitrate end.
      
      Also includes several one-pass rate control cleanups and refactoring.
      
      On derfraw300, one-pass encoding is now 19% off from two-pass speed
      0 encoding, down from 35%.
      
      Change-Id: I6f0dcdb7f8aa85a7e7cd3a3155d4f9d2a4d2f4f4
      35ee7f5f
  15. 03 Feb, 2014 1 commit
  16. 02 Feb, 2014 1 commit
    • Marco Paniconi's avatar
      Layer based rate control for CBR mode. · 6be2b750
      Marco Paniconi authored
      This patch adds a buffer-based rate control for temporal layers,
      under CBR mode.
      
      Added vpx_temporal_scalable_patters.c encoder for testing temporal
      layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).
      
      Updated datarate unittest with tests for temporal layer rate-targeting.
      
      Change-Id: I9cb6cce2494390ae6096ee17774af7fb9308bde7
      6be2b750
  17. 01 Feb, 2014 1 commit
  18. 29 Jan, 2014 1 commit
    • Deb Mukherjee's avatar
      Enables alt-ref frames in one pass mode · 50bf8fd4
      Deb Mukherjee authored
      Includes a few fixes and clean-ups that adds the ability
      to use alt-ref frames in one-pass mode.
      Whether alt-refs are actually used or not is controlled by a
      macro USE_ALTREF_FOR_ONE_PASS in vp9_firstpass.c.
      
      This first cut seems to improve derf by 15+% in 1-pass mode.
      But further experiments with parameters are underway.
      
      Change-Id: I78254421435478003367c788c7930d2dc4ee2816
      50bf8fd4
  19. 27 Jan, 2014 1 commit
  20. 24 Jan, 2014 1 commit
  21. 22 Jan, 2014 1 commit
  22. 18 Jan, 2014 1 commit
  23. 16 Jan, 2014 1 commit
    • Alex Converse's avatar
      Fix key frames for one pass. · 2b3891d9
      Alex Converse authored
      Set this_key_frame_forced flag and don't use kf_boost when not set.
      
      Change-Id: Ibe66a82fa9219e60db358ddeb43d6471816c8b50
      2b3891d9
  24. 14 Jan, 2014 2 commits
    • Deb Mukherjee's avatar
      Minor fix on an assert · 1699d6bd
      Deb Mukherjee authored
      Fixes assert that fails occasionally on small values of
      max-key frame intervals. Also, adds a small change on
      updating frames_to_key for frame drops.
      
      Change-Id: Icc2b33b25e3e4ced7e49f8db73e0a887ef9c99e0
      1699d6bd
    • Paul Wilkins's avatar
      Add max burst bitrate control. · 5c808ba1
      Paul Wilkins authored
      Applies an upper limit on burst bitrate for any
      frame. This is to insure that typical encodes for YT
      do not produce frames that are so large that they
      risk stalling HW implementations. Such frames
      could also cause playback problems in SW.
      
      For now the limit is set at 250 bits per MB for 1080P
      and larger (with the 1080P limit used for smaller frames).
      
      Setting maxQ, constant quality mode or targeting a
      very high bandwidth will have precedence over this limit.
      
      Change-Id: Ie6f776c38b06ac7cec043d034085f4b79ee46a38
      5c808ba1
  25. 11 Jan, 2014 1 commit
  26. 10 Jan, 2014 2 commits
  27. 09 Jan, 2014 1 commit
  28. 07 Jan, 2014 2 commits
  29. 06 Jan, 2014 1 commit
    • Deb Mukherjee's avatar
      Corerctly sets frame type in the 2 pass case · cf3d2c8d
      Deb Mukherjee authored
      This patch sets frame types correctly in the new
      vp9_get_second_pass_params() function called prior
      to encode_frame_to_data_rate() function, so that the
      latter function can just work with what is passed to
      it. This will allow multiple vp9_get_second_pass_params()
      to be created for various encode strategies without
      messing with the core encode function.
      
      There is no difference in derf and yt. stdhd/hd are pending.
      
      Change-Id: I70dfb97e9f497e9cee04052e0e8e0c2892eab0c3
      cf3d2c8d
  30. 19 Dec, 2013 1 commit
    • Deb Mukherjee's avatar
      Begin refactor of frame schedule in rate control · 4dbad63a
      Deb Mukherjee authored
      Various cleanups and streamlining of interfaces as precursor
      to further advancements in rate control.
      Pre-encode parameter setting for different use cases:
      One-pass, first of 2-pass, second of 2-pass, and Svc
      are separated out.
      
      There is no change in output with this change.
      
      Change-Id: Ied8ca7d84d610993776aa30ef263fe20452e0e3e
      4dbad63a
  31. 18 Dec, 2013 1 commit
  32. 17 Dec, 2013 1 commit
    • Deb Mukherjee's avatar
      Rate control changes on active_worst_quality · 1e59cbf2
      Deb Mukherjee authored
      Various cleanups and refactoring.
      Removes feedback of active worst qaulity and uses last_q
      instead to make the interface cleaner. Active worst quality
      is now decided only once for a frame being coded in the
      beginning based on last_q and other stats. Also, adds other
      cleaups on last_q to store also the last_q for altref frames,
      and reduces the altref interval a little.
      
      The output does change a little.
      derfraw300: +0.224% (global psnr)
      stdhdraw250: +0.442% (global psnr)
      
      Change-Id: Ie634cdc032697044c472dd0fe79c109b3e7f9767
      1e59cbf2