1. 10 Jan, 2011 1 commit
  2. 20 Nov, 2010 1 commit
  3. 18 Nov, 2010 1 commit
  4. 10 Oct, 2010 1 commit
  5. 28 Sep, 2010 1 commit
  6. 19 Sep, 2010 1 commit
  7. 18 Sep, 2010 1 commit
    • Fiona Glaser's avatar
      Update source file headers · 213a99d0
      Fiona Glaser authored
      Update dates, improve file descriptions, make things more consistent.
      Also add information about commercial licensing.
      213a99d0
  8. 16 Sep, 2010 1 commit
  9. 26 Aug, 2010 1 commit
  10. 16 Aug, 2010 1 commit
    • Fiona Glaser's avatar
      Deblock-aware RD · c9f17d93
      Fiona Glaser authored
      Small quality gain (~0.5%) at lower bitrates, potentially larger with QPRD.
      May help more with psy, maybe not.
      Enabled at subme >= 9.  Small speed cost (a few %).
      c9f17d93
  11. 15 Jul, 2010 2 commits
    • Loren Merritt's avatar
      Convert x264 to use NV12 pixel format internally · 387828ed
      Loren Merritt authored
      ~1% faster overall on Conroe, mostly due to improved cache locality.
      Also allows improved SIMD on some chroma functions (e.g. deblock).
      This change also extends the API to allow direct NV12 input, which should be a bit faster than YV12.
      This isn't currently used in the x264cli, as swscale does not have fast NV12 conversion routines, but it might be useful for other applications.
      
      Note this patch disables the chroma SIMD code for PPC and ARM until new versions are written.
      387828ed
    • Fiona Glaser's avatar
      Eliminate edge cases for MV predictors · da978ebe
      Fiona Glaser authored
      Saves a few clocks in mv pred.
      da978ebe
  12. 04 Jul, 2010 1 commit
    • Oskar Arvidsson's avatar
      Support for 9 and 10-bit encoding · c91f43a4
      Oskar Arvidsson authored
      Output bit depth is specified on compilation time via --bit-depth.
      There is currently almost no assembly code available for high-bit-depth modes, so encoding will be very slow.
      Input is still 8-bit only; this will change in the future.
      
      Note that very few H.264 decoders support >8 bit depth currently.
      Also note that the quantizer scale differs for higher bit depth.  For example, for 10-bit, the quantizer (and crf) ranges from 0 to 63 instead of 0 to 51.
      c91f43a4
  13. 03 Jul, 2010 1 commit
  14. 14 Jun, 2010 1 commit
    • Anton Mitrofanov's avatar
      Fix regression in r1501. · 4fda9276
      Anton Mitrofanov authored
      Could cause slightly incorrect analysis in rare cases, but no serious encoding issues.
      Also shut up gcc warning about pels_v.
      4fda9276
  15. 09 Jun, 2010 2 commits
  16. 02 Jun, 2010 1 commit
  17. 31 May, 2010 1 commit
  18. 26 May, 2010 1 commit
  19. 06 May, 2010 2 commits
    • Fiona Glaser's avatar
      Don't force row QPs to integer values with VBV · 9ce27834
      Fiona Glaser authored
      VBV should no longer raise the bitrate of the video.  That is, at a given quality level or average bitrate, turning on VBV should only lower the bitrate.
      This isn't quite true if adaptive quant is off, but nobody should be doing that anyways.
      Also may result in slightly more accurate per-row VBV ratecontrol.
      9ce27834
    • Fiona Glaser's avatar
      Deduplicate asm constants, automate name prefixing · 311c4bb1
      Fiona Glaser authored
      Auto-prefix global constants with x264_ in cextern.
      Eliminate x264_ prefix from asm files; automate it in cglobal.
      Deduplicate asm constants wherever possible to save data cache (move them to a new const-a.asm).
      Remove x264_emms() entirely on non-x86 (don't even call an empty function).
      Add cextern_naked for a non-prefixed cextern (used in checkasm).
      311c4bb1
  20. 23 Apr, 2010 1 commit
  21. 10 Apr, 2010 1 commit
    • Alex Wright's avatar
      Early termination in 16x8/8x16 search · 788b8b7e
      Alex Wright authored
      Combine the actual cost of the first partition with the predicted cost of the second to avoid searching the second when possible.
      Reduces the number of times the second partition is searched by up to ~75% in non-RD mode, ~10% in RD mode.
      Negligible effect on compression.
      788b8b7e
  22. 05 Apr, 2010 3 commits
  23. 31 Mar, 2010 2 commits
  24. 27 Mar, 2010 8 commits
    • Fiona Glaser's avatar
      New "superfast" preset, much faster intra analysis · 0b720fee
      Fiona Glaser authored
      Especially at the fastest settings, intra analysis was taking up the majority of MB analysis time.
      This patch takes a ton more shortcuts at the fastest encoding settings, decreasing compression 0.5-5% but improving speed greatly.
      Also rearrange the fastest presets a bit: now we have ultrafast, superfast, veryfast, faster.
      superfast is the old veryfast (but much faster due to this patch).
      veryfast is between the old veryfast and faster.
      faster is the same as before except with MB-tree on.
      
      Encoding with subme >= 5 should be unaffected by this patch.
      0b720fee
    • Fiona Glaser's avatar
      4805079d
    • Fiona Glaser's avatar
      Much faster non-RD intra analysis · e77bbb6a
      Fiona Glaser authored
      Since every pred mode costs at least 1 bit, move that part into the initial SATD cost.
      This lets i4x4/i8x8 analysis terminate earlier.
      If the cost of the predicted mode is less than the cost of signalling any other mode, early-terminate the analysis.
      e77bbb6a
    • Fiona Glaser's avatar
      Split up analyse_init · 137e233f
      Fiona Glaser authored
      Save some time by avoiding some unnecessary inits and moving other parts to per-thread init.
      137e233f
    • Fiona Glaser's avatar
      Make a bunch of small functions ALWAYS_INLINE · 8b4cca0e
      Fiona Glaser authored
      Probably no real effect for now, but needed for the next patch.
      8b4cca0e
    • Fiona Glaser's avatar
      Much more accurate B-skip detection at 2 < subme < 7 · 47092e82
      Fiona Glaser authored
      Use the same method that x264 uses for P-skip detection.
      This significantly improves quality (1-6%), but at a significant speed cost as well (5-20%).
      It also may have a very positive visual effect in cases where the inaccurate skip detection resulted in slightly-off vectors in B-frames.
      This could cause slight blurring or non-smooth motion in low-complexity frames at high quantizers.
      Not all instances of this problem are solved: the only universal solution is non-locally-optimal mode decision, which x264 does not currently have.
      
      subme >= 7 or <= 2 are unaffected.
      47092e82
    • Fiona Glaser's avatar
      30eb4abc
    • Alex Wright's avatar
      Mixed-refs support for B-frames · 1f9393eb
      Alex Wright authored
      Small speed cost, usually a few percent at most. Generally has lowest cost in cases when it isn't very useful. Up to ~2% better compression overall on highly complex sources.
      
      Also fix a few minor bugs in B-frame analysis and various bits of cleanup.
      1f9393eb
  25. 26 Feb, 2010 1 commit
  26. 23 Feb, 2010 2 commits