1. 09 Nov, 2009 2 commits
    • Dylan Yudaken's avatar
      Weighted P-frame prediction · ccac8546
      Dylan Yudaken authored
      Merge Dylan's Google Summer of Code 2009 tree.
      Detect fades and use weighted prediction to improve compression and quality.
      "Blind" mode provides a small overall quality increase by using a -1 offset without doing any analysis, as described in JVT-AB033.
      "Smart", the default mode, also performs fade detection and decides weights accordingly.
      MB-tree takes into account the effects of "smart" analysis in lookahead, even further improving quality in fades.
      If psy is on, mbtree is on, interlaced is off, and weightp is off, fade detection will still be performed.
      However, it will be used to adjust quality instead of create actual weights.
      This will improve quality in fades when encoding in Baseline profile.
      Doesn't add support for interlaced encoding with weightp yet.
      Only adds support for luma weights, not chroma weights.
      Internal code for chroma weights is in, but there's no analysis yet.
      Baseline profile requires that weightp be off.
      All weightp modes may cause minor breakage in non-compliant decoders that take shortcuts in deblocking reference frame checks.
      "Smart" may cause serious breakage in non-compliant decoders that take shortcuts in handling of duplicate reference frames.
      Thanks to Google for sponsoring our most successful Summer of Code yet!
    • Loren Merritt's avatar
      fix bottom-right pixel of lowres planes, which was uninitialized. · 3ddc66cc
      Loren Merritt authored
      weirdly, valgrind reported this only with --no-asm.
  2. 24 Aug, 2009 1 commit
  3. 09 Aug, 2009 1 commit
  4. 11 Jun, 2009 1 commit
  5. 31 Dec, 2008 1 commit
  6. 25 Dec, 2008 1 commit
  7. 22 Dec, 2008 1 commit
  8. 28 Sep, 2008 1 commit
    • Fiona Glaser's avatar
      Replace High 4:4:4 profile lossless with High 4:4:4 Predictive. · a9e86d24
      Fiona Glaser authored
      This improves lossless compression by about 4-25% depending on source.
      The benefit is generally higher for intra-only compression.
      Also add support for 8x8dct and i8x8 blocks in lossless mode; this improves compression very slightly.
      In some rare cases 8x8dct can hurt compression in lossless mode, but its usually helpful, albeit marginally.
      Note that 8x8dct is only available with CABAC as it is never useful with CAVLC.
      High 4:4:4 Predictive replaced the previous profile in a 2007 revision to the H.264 standard.
      The only known compliant decoder for this profile is the latest version of CoreAVC.
      As I write this, JM does not actually correctly decode this profile.
      Hopefully this lack of support will soon change with this commit, as x264 will be (to my knowledge) the first compliant encoder.
  9. 20 Sep, 2008 1 commit
  10. 19 Sep, 2008 1 commit
  11. 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.
  12. 27 Aug, 2008 1 commit
  13. 21 Aug, 2008 1 commit
  14. 04 Jul, 2008 1 commit
    • Fiona Glaser's avatar
      Update file headers throughout x264 · bdbd4fe7
      Fiona Glaser authored
      Update "Authors" lists based on actual authorship; highest is most important
      Update copyright notices and remove old CVS tags from file headers
      Add file headers to GTK and other sections missing them
      Update FSF address
      Other header-related cosmetics
  15. 02 Jul, 2008 1 commit
    • Loren Merritt's avatar
      lowres_init asm · 04dc2536
      Loren Merritt authored
      rounding is changed for asm convenience. this makes the c version slower, but there's no way around that if all the implementations are to have the same results.
  16. 03 Jun, 2008 1 commit
  17. 21 Mar, 2008 1 commit
  18. 17 Mar, 2008 1 commit
  19. 16 Mar, 2008 2 commits
  20. 02 Mar, 2008 1 commit
  21. 09 Jan, 2008 1 commit
  22. 19 Nov, 2007 1 commit
  23. 16 Nov, 2007 2 commits
  24. 15 Nov, 2007 1 commit
  25. 15 Sep, 2007 1 commit
  26. 17 Jul, 2007 1 commit
  27. 06 Jul, 2007 1 commit
  28. 14 Mar, 2007 1 commit
  29. 15 Dec, 2006 1 commit
    • Loren Merritt's avatar
      New threading method: · 7b4f6a1f
      Loren Merritt authored
      Encode multiple frames in prallel instead of dividing each frame into slices.
      Improves speed, and reduces the bitrate penalty of threading.
      Side effects:
      It is no longer possible to re-encode a frame, so threaded scenecut detection
      must run in the pre-me pass, which is faster but less precise. 
      It is now useful to use more threads than you have cpus. --threads=auto has
      been updated to use cpus*1.5.
      Minor changes to ratecontrol.
      New options: --pre-scenecut, --mvrange-thread, --non-deterministic
      git-svn-id: svn://svn.videolan.org/x264/trunk@607 df754926-b1dd-0310-bc7b-ec298dee348c
  30. 10 Oct, 2006 1 commit
  31. 06 Oct, 2006 2 commits
  32. 01 Oct, 2006 1 commit
  33. 12 Sep, 2006 1 commit
  34. 08 Jul, 2006 1 commit
  35. 17 Mar, 2006 1 commit
  36. 27 Feb, 2006 1 commit