1. 19 Sep, 2008 1 commit
  2. 17 Sep, 2008 2 commits
  3. 16 Sep, 2008 1 commit
    • Fiona Glaser's avatar
      Cache motion vectors in lowres lookahead · c299b7d8
      Fiona Glaser authored
      This vastly speeds up b-adapt 2, especially at large bframes values.
      This changes output because now MV prediction in lookahead only uses L0/L1 MVs, not bidir.  This isn't a problem, since the bidir prediction wasn't really correct to begin with, so the change in output is neither positive nor negative.
      This also allowed the removal of some unnecessary memsets, which should also give a small speed boost.
      Finally, this allows the use of the lowres motion vectors for predictors in some future patch.
  4. 15 Sep, 2008 3 commits
    • Loren Merritt's avatar
      hadamard_ac for psy-rd · a8cb7662
      Loren Merritt authored
      c version is 1.7x faster than satd+sa8d+sad
      ssse3 version is 2.3x faster than satd+sa8d+sad
    • Fiona Glaser's avatar
      Psychovisually optimized rate-distortion optimization and trellis · ecc9bfab
      Fiona Glaser authored
      The latter, psy-trellis, is disabled by default and is reserved as experimental; your mileage may vary.
      Default subme is raised to 6 so that psy RD is on by default.
    • Fiona Glaser's avatar
      Add optional more optimal B-frame decision method · 95ed2720
      Fiona Glaser authored
      This method (--b-adapt 2) uses a Viterbi algorithm somewhat similar to that used in trellis quantization.
      Note that it is not fully optimized and is very slow with large --bframes values.
      It also takes into account weightb, which should improve fade detection.
      Additionally, changes were made to cache lowres intra results for each frame to avoid recalculating them.  This should improve performance in both B-frame decision methods.
      This can also be done for motion vectors, which will dramatically improve b-adapt 2 performance when it is complete.
      This patch also reads b_adapt and scenecut settings from the first pass so that the x264 header information in the output file will have correct information (since frametype decision is only done on the first pass).
  5. 14 Sep, 2008 1 commit
    • Fiona Glaser's avatar
      Move adaptive quantization to before ratecontrol, eliminate qcomp bias · 80458ffc
      Fiona Glaser authored
      This change improves VBV accuracy and improves bit distribution in CRF and 2pass.
      Instead of being applied after ratecontrol, AQ becomes part of the complexity measure that ratecontrol uses.
      This allows for modularity for changes to AQ; a new AQ algorithm can be introduced simply by introducing a new aq_mode and a corresponding if in adaptive_quant_frame.
      This also allows quantizer field smoothing, since quantizers are calculated beofrehand rather during encoding.
      Since there is no more reason for it, aq_mode 1 is removed.  The new mode 1 is in a sense a merger of the old modes 1 and 2.
      WARNING: This change redefines CRF when using AQ, so output bitrate for a given CRF may be significantly different from before this change!
  6. 06 Sep, 2008 1 commit
    • Fiona Glaser's avatar
      Revert part of r963 · 654e5498
      Fiona Glaser authored
      In some rare (but significant) cases, the optimized nal_encode algorithm gave incorrect results.
  7. 05 Sep, 2008 7 commits
  8. 01 Sep, 2008 1 commit
  9. 30 Aug, 2008 2 commits
  10. 27 Aug, 2008 1 commit
  11. 22 Aug, 2008 1 commit
    • Fiona Glaser's avatar
      Fix compilation in gcc 3.4.x (issue in r946) · 7086a203
      Fiona Glaser authored
      Due to a bug in gcc 3.4.x, in certain cases of inlining, the array_non_zero_int_mmx inline asssembly is miscompiled and causes a crash with --subme 7 --8x8dct.
      This minor hack fixes this issue.
  12. 21 Aug, 2008 5 commits
  13. 20 Aug, 2008 1 commit
  14. 19 Aug, 2008 2 commits
  15. 16 Aug, 2008 2 commits
  16. 15 Aug, 2008 1 commit
    • Fiona Glaser's avatar
      Faster deblocking · ddee314e
      Fiona Glaser authored
      Early termination for bS=0, alpha=0, beta=0
      Refactoring, various other optimizations
      About 30% faster deblocking overall.
  17. 10 Aug, 2008 2 commits
  18. 31 Jul, 2008 1 commit
  19. 30 Jul, 2008 3 commits
  20. 26 Jul, 2008 1 commit
  21. 24 Jul, 2008 1 commit