1. 19 May, 2011 1 commit
  2. 06 May, 2011 1 commit
    • John Koleszar's avatar
      Don't override active_worst_quality in 2 pass · abc9958c
      John Koleszar authored
      Commit db5057c7 introduced a bug in that the active_worst_quality
      selected by the 2 pass rate controller was being overridden for key
      frames, causing a severe quality loss.
      
      Change-Id: I4865a6fbe3e94e9b4fb9271c7dd68b455d7b371d
      abc9958c
  3. 26 Apr, 2011 2 commits
    • John Koleszar's avatar
      Refactor calc_iframe_target_size · db5057c7
      John Koleszar authored
      Combine calc_iframe_target_size, previously only used for forced
      keyframes, with calc_auto_iframe_target_size, which handled most
      keyframes.
      
      Change-Id: I227051361cf46727caa5cd2b155752d2c9789364
      db5057c7
    • John Koleszar's avatar
      Move pick_frame_size() to ratectrl.c · 81d2206f
      John Koleszar authored
      This is a first step in cleaning up the redundancies between
      vp8_calc_{auto_,}iframe_target_size. The pick_frame_size() function is
      moved to ratectrl.c, and made to be the primary interface. This means
      that the various calc_*_target_size functions can be made private.
      
      Change-Id: I66a9a62a5f9c23c818015e03f92f3757bf3bb5c8
      81d2206f
  4. 25 Apr, 2011 3 commits
  5. 19 Apr, 2011 1 commit
    • John Koleszar's avatar
      Remove unused kf rate variables · ad6a8ca5
      John Koleszar authored
      Remove tot_key_frame_bits and prior_key_frame_size[] as they were
      tracked but never used. Remove intra_frame_target, as it was only
      used to initialize prior_key_frame_size.
      
      Refactor vp8_adjust_key_frame_context() some to remove unnecessary
      calculations.
      
      Change-Id: Icbc2c83d2b90e184be03e6f9679e678f3a4bce8f
      ad6a8ca5
  6. 13 Apr, 2011 1 commit
    • John Koleszar's avatar
      Change rc undershoot/overshoot semantics · c99f9d7a
      John Koleszar authored
      This patch changes the rc_undershoot_pct and rc_overshoot_pct controls
      to set the "aggressiveness" of rate adaptation, by limiting the
      amount of difference between the target buffer level and the actual
      buffer level which is applied to the target frame rate for this frame.
      
      This patch was initially provided by arosenberg at logitech.com as
      an attachment to issue #270. It was modified to separate these controls
      from the other unrelated modifications in that patch, as well as to
      use the pre-existing variables rather than introducing new ones.
      
      Change-Id: Id542e3f5667dd92d857d5eabf29878f2fd730a62
      c99f9d7a
  7. 01 Apr, 2011 1 commit
    • Yunqing Wang's avatar
      Use full-pixel MV in mvsadcost calculation · 3d681581
      Yunqing Wang authored
      MV sad cost error is only used in full-pixel motion search,
      which only need full-pixel resolution instead of quarter-pixel
      resolution. This change reduced mvsadcost table size, and
      removed unneccessary pamameter passing since this table is
      constant once it is generated.
      
      Change-Id: I9f931e55f6abc3c99011321f1dfb2f3562e6f6b0
      3d681581
  8. 18 Mar, 2011 1 commit
    • John Koleszar's avatar
      Increase static linkage, remove unused functions · 429dc676
      John Koleszar authored
      A large number of functions were defined with external linkage, even
      though they were only used from within one file. This patch changes
      their linkage to static and removes the vp8_ prefix from their names,
      which should make it more obvious to the reader that the function is
      contained within the current translation unit. Functions that were
      not referenced were removed.
      
      These symbols were identified by:
      
        $ nm -A libvpx.a | sort -k3 | uniq -c -f2 | grep ' [A-Z] ' \
          | sort | grep '^ *1 '
      
      Change-Id: I59609f58ab65312012c047036ae1e0634f795779
      429dc676
  9. 11 Mar, 2011 1 commit
    • Paul Wilkins's avatar
      1 Pass CQ and VBR bug fixes · 2ae91fbe
      Paul Wilkins authored
      Issue 291 highlighted  the fact that CQ mode was not working
      as expected in 1 pass mode,
      
      This commit fixes that specific problem but in so doing I also
      uncovered an overflow issue in the VBR code for 1 pass and
      some data values not being correctly initialized.
      
      For some clips (particularly short clips), the resulting
      improvement is dramatic.
      
      Change-Id: Ieefd6c6e4776eb8f1b0550dbfdfb72f86b33c960
      2ae91fbe
  10. 10 Feb, 2011 1 commit
    • John Koleszar's avatar
      Fix relative include paths · 02321de0
      John Koleszar authored
      Allow compiling without adding vp8/{common,encoder,decoder} to the
      include paths.
      
      Change-Id: Ifeb5dac351cdfadcd659736f5158b315a0030b6c
      02321de0
  11. 07 Jan, 2011 1 commit
    • Paul Wilkins's avatar
      CQ Mode · e0846c9c
      Paul Wilkins authored
      The merge includes hooks to for CQ mode and other code
      changes merged from the test branch.
      
      CQ mode attempts to maintain a more stable quantizer within a clip
      whilst also trying to adhere to a guidline maximum bitrate.
      
      The existing target data rate parameter is used to specify the
      guideline maximum bitrate.
      
      A new parameter allows the user to specify a target CQ level.
      
      For normal (non kf/gf/arf) frames, the quantizer will not drop BELOW the
      user specified value (0-63). However, in some cases the encoder may
      choose to impose a target CQ that is above that specified by the user,
      if it estimates that consistent use of the target value is not compatible
      with guideline maximum bitrate.
      
      Change-Id: I2221f9eecae8cc3c431d36caf83503941b25e4c1
      e0846c9c
  12. 06 Dec, 2010 1 commit
    • Patrik Westin's avatar
      Fix for manual Golden frame frequency · 8534071d
      Patrik Westin authored
      When auto_golden wasn't set it forced all frames to be a golden
      frame. Now the manual configured frequency is adhered to.
      
      Change-Id: I360acac9bc487db0d9c4d4da6ee41f70c227c539
      8534071d
  13. 01 Dec, 2010 1 commit
    • Fritz Koenig's avatar
      Set refresh_alt_ref_frame on keyframe encode. · 9c8ad79f
      Fritz Koenig authored
      On a keyframe alt ref and golden are refreshed.  The flag was
      not being set and so on the frame after a keyframe, motion
      search would occur on the alt ref frame.  This is not necessary
      because the alt ref frame identical to the last frame in this
      scenario.
      
      Handle corner case where a forward alt-ref frame is put
      directly after a keyframe.
      
      Change-Id: I9be4cf290d694f8cf2f9a31852014b5ccf1504d3
      9c8ad79f
  14. 22 Nov, 2010 1 commit
    • Paul Wilkins's avatar
      Recalibration of bits per MB tables · ad6150f7
      Paul Wilkins authored
      The baseline bits per MB prediction tables have been
      re calibrated based on the assumption that bits per mb
      is inversely proportional to the quantizer level.
      
      Change-Id: Ibd355c7acac4b8053dda1baf1032fe35f11da7f7
      ad6150f7
  15. 14 Oct, 2010 1 commit
  16. 09 Sep, 2010 1 commit
  17. 31 Aug, 2010 1 commit
    • Paul Wilkins's avatar
      Improved Force Key Frame Behaviour · c239a1b6
      Paul Wilkins authored
      These changes improve the behaviour of the code with
      forced key frames sent in by a calling application.
      
      The sizing of the frames is still suboptimal for two pass in
      particular but the behaviour is much better than it was.
      
      Change-Id: I35fae610c67688ccc69d11f385e87dfc884e65a1
      c239a1b6
  18. 11 Aug, 2010 1 commit
  19. 19 Jul, 2010 1 commit
    • Paul Wilkins's avatar
      Rate control fix for ARNR filtered frames. · bf18069c
      Paul Wilkins authored
      Previously we had assumed that it was necessary to give a full frame's
      bit allocation to the alt ref frame if it has been created through temporal
      filtering. This is not the case. The active max quantizer control
      insures that sufficient bits are allocated if needed and allocating a
      full frame's worth of bits creates an excessive overhead for the ARF.
      
      Change-Id: I83c95ed7bc7ce0e53ccae6ff32db5a97f145937a
      bf18069c
  20. 18 Jun, 2010 1 commit
    • John Koleszar's avatar
      cosmetics: trim trailing whitespace · 94c52e4d
      John Koleszar authored
      When the license headers were updated, they accidentally contained
      trailing whitespace, so unfortunately we have to touch all the files
      again.
      
      Change-Id: I236c05fade06589e417179c0444cb39b09e4200d
      94c52e4d
  21. 08 Jun, 2010 1 commit
  22. 04 Jun, 2010 1 commit
  23. 25 May, 2010 1 commit
  24. 20 May, 2010 1 commit
  25. 19 May, 2010 1 commit
  26. 18 May, 2010 1 commit