commit 76a5c3a19f97cd34b65aeff050de4042b054bc65
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Apr 29 12:14:01 2013 -0700

    Fix two bugs in slice-min-mbs and slices-max
    
    Slices-max broke slice-max-size when slice-max wasn't used.
    Slice-min-mbs broke in rare cases near the end of a threadslice.

commit 3b1f1f71459b54b976588b871edc7f459b4d0434
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Apr 4 18:00:23 2013 -0700

    x86: SSSE3 LUT-based faster coeff_level_run
    
    ~2x faster coeff_level_run.
    Faster CAVLC encoding: {1%,2%,7%} overall with {superfast,medium,slower}.
    Uses the same pshufb LUT abuse trick as in the previous ads_mvs patch.

commit c05bf544b659510b9008c1037fd8887e8917d30c
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Mar 25 14:03:37 2013 -0700

    x86-64: BMI2 cabac_residual functions

commit 437f808579754b5674fb6183331e8ca9bcf53647
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Mar 20 15:08:35 2013 -0700

    x86: SSSE3 ads_mvs
    
    ~55% faster ads in benchasm, ~15-30% in real encoding.
    ~4% faster "placebo" preset overall.

commit 2ad961f2d6fc681db6fc87f2c0ca68ff2a00e65e
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:53 2013 +0200

    x86: AVX2 pixel_ssd_nv12_core

commit 40406b804105964d6b5abea38833d69f6d617815
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:50 2013 +0200

    x86: AVX2 high bit-depth pixel_ssd

commit c2852be748c66f1ff25f38133d5efbd6059bed6c
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:46 2013 +0200

    x86: AVX2 high bit-depth pixel_sad_x3/pixel_sad_x4
    
    Also reduce the number of xmm registers used by sse2/ssse3 pixel_sad_x3.

commit fa9dcd02ea386e46314eb0c518b0b5763ef73c80
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:43 2013 +0200

    x86: AVX2 high bit-depth vsad

commit 567d03619b0af415362454eb20066e0167266a43
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:39 2013 +0200

    x86: AVX2 high bit-depth pixel_sad
    
    Also use loops instead of duplicating code; reduces code size by ~10kB with
    negligible effect on performance.

commit 6cc9f169844cc84a7da8cc4fbf08a3f5dea86c63
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:35 2013 +0200

    x86: AVX2 high_bit_depth pixel_avg2, get_ref, mc_copy_w16, mc_luma
    
    Also reduce the number of xmm registers used by mc_copy_* to avoid
    saving and restoring xmm6 and xmm7 on 64-bit Windows.

commit c3711285a6dd1343197ac3e53bb95acf99c6cb42
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:32 2013 +0200

    x86: AVX2 nal_escape
    
    Also rewrite the entire function to be faster and drop the AVX version which is no longer useful.

commit 255271fd7999b6b7ff7d65b7b8de1a2dc8919b1a
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:29 2013 +0200

    x86: AVX memzero_aligned

commit 43632cc8a9115c076204f46e31a5d5c3e58bf934
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:25 2013 +0200

    x86: AVX2 predict_16x16_dc

commit dcad117131f0e0b5032bf5ca8c27def7fcdce17f
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:22 2013 +0200

    x86: AVX2 predict_8x8c_p/predict_8x16c_p

commit f5bff68b16e3125dc95705d060c89935a298f0ff
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:18 2013 +0200

    x86: AVX2 predict_16x16_p
    
    Also fix the AVX implementation to correctly use the SSSE3 inline asm
    instead of SSE2.

commit 92eb201b65cb9338500135bda1e2ee4d6861727c
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:14 2013 +0200

    x86: AVX high bit-depth predict_16x16_v
    
    Also restructure some code to reduce code size of various functions,
    especially in high bit-depth.

commit 16f3261076c7159aeea902e68ca064c6d0a2cfd8
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:08 2013 +0200

    x86: AVX2 high bit-depth predict_4x4_h

commit a38b5fc6ec7348342d8ee4ff21abf3e82c5f7bbf
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:04 2013 +0200

    x86: AVX2 high bit-depth predict_16x16_h

commit 89f8263b141492a3b45274616fa0327289329c26
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:27:00 2013 +0200

    x86: AVX2 high bit-depth predict_8x8c_h/predict_8x16c_h

commit 78b8af872f49aeaa3727ac4e0c8d3b53f0716f51
Author: Henrik Gramner <henrik@gramner.com>
Date:   Tue Apr 16 23:26:47 2013 +0200

    x86util: Support ymm registers in HADD macros

commit d07b421cf19fc4d77f0bff9d4d6b11db27d81374
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 26 16:26:34 2013 -0800

    x86: more AVX2 framework, AVX2 functions, plus some existing asm tweaks
    
    AVX2 functions:
    mc_chroma
    intra_sad_x3_16x16
    last64
    ads
    hpel
    dct4
    idct4
    sub16x16_dct8
    quant_4x4x4
    quant_4x4
    quant_4x4_dc
    quant_8x8
    SAD_X3/X4
    SATD
    var
    var2
    SSD
    zigzag interleave
    weightp
    weightb
    intra_sad_8x8_x9
    decimate
    integral
    hadamard_ac
    sa8d_satd
    sa8d
    lowres_init
    denoise

commit e228f65488b02967bc450bbe3b92ac44eb0088d7
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Feb 25 21:16:45 2013 +0000

    x86inc: create xm# and ym#, analagous to m#
    
    For when we want to mix simd sizes within one function.

commit e916dfb774059bc2b63dfe88e32fa21f51abd2b7
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Apr 5 16:08:35 2013 -0700

    x86inc: fix AVX emulation of cmp(p|s)(s|d)

commit 5b01ce105051144c4dd91866e1642cc8d7926c89
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 5 17:15:00 2013 -0800

    x86-64: cabac_block_residual assembly
    
    RDO: ~20% faster than C
    Bitstream: ~50% faster than C
    1-2% faster overall, highest on preset superfast/fast/medium.

commit 3a5f6c0aeacfcb21e7853ab4879f23ec8ae5e042
Author: Steve Borho <steve@borho.org>
Date:   Thu Feb 21 12:48:40 2013 -0600

    OpenCL lookahead
    
    OpenCL support is compiled in by default, but must be enabled at runtime by an
    --opencl command line flag. Compiling OpenCL support requires perl. To avoid
    the perl requirement use: configure --disable-opencl.
    
    When enabled, the lookahead thread is mostly off-loaded to an OpenCL capable GPU
    device.  Lowres intra cost prediction, lowres motion search (including subpel)
    and bidir cost predictions are all done on the GPU.  MB-tree and final slice
    decisions are still done by the CPU.  Presets which do not use a threaded
    lookahead will not use OpenCL at all (superfast, ultrafast).
    
    Because of data dependencies, the GPU must use an iterative motion search which
    performs more total work than the CPU would do, so this is not work efficient
    or power efficient. But if there are spare GPU cycles to spare, it can often
    speed up the encode. Output quality when OpenCL lookahead is enabled is often
    very slightly worse in quality than the CPU quality (because of the same data
    dependencies).
    
    x264 must compile its OpenCL kernels for your device before running them, and in
    order to avoid doing this every run it caches the compiled kernel binary in a
    file named x264_lookahead.clbin (--opencl-clbin FNAME to override).  The cache
    file will be ignored if the device, driver, or OpenCL source are changed.
    
    x264 will use the first GPU device which supports the required cl_image
    features required by its kernels. Most modern discrete GPUs and all AMD
    integrated GPUs will work.  Intel integrated GPUs (up to IvyBridge) do not
    support those necessary features. Use --opencl-device N to specify a number of
    capable GPUs to skip during device detection.
    
    Switchable graphics environments (e.g. AMD Enduro) are currently not supported,
    as some have bugs in their OpenCL drivers that cause output to be silently
    incorrect.
    
    Developed by MulticoreWare with support from AMD and Telestream.

commit e436158903c6171ce4abe78f03f013fe04f193bd
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Mar 4 15:19:47 2013 -0800

    weightp: improve scale/offset search, chroma
    
    Rescale the scale factor if the offset clips. This makes weightp more effective
    in fades to/from white (and an other situation that requires big offsets).
    
    Search more than 1 scale factor and more than 1 offset, depending on --subme.
    
    Try to find the optimal chroma denominator instead of hardcoding it.
    
    Overall improvement: a few percent in fade-heavy clips, such as a sample from
    Avatar: TLA.

commit 389d06e8f93916b4fe5766ee4503380f2632ef79
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 19 13:48:44 2013 -0800

    Add slices-max feature
    
    The H.264 spec technically has limits on the number of slices per frame. x264
    normally ignores this, since most use-cases that require large numbers of
    slices prefer it to. However, certain decoders may break with extremely large
    numbers of slices, as can occur with some slice-max-size/mbs settings.
    
    When set, x264 will refuse to create any slices beyond the maximum number,
    even if slice-max-size/mbs requires otherwise.

commit f546e98eb8f9afd15fb7e8f95ec02fcf65155079
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Feb 14 17:22:02 2013 -0800

    Add slice-min-mbs feature
    
    Works in conjunction with slice-max-mbs and/or slice-max-size to avoid overly
    small slices.
    Useful with certain decoders that barf on extremely small slices.
    
    If slice-min-mbs would be violated as a result of slice-max-size, x264 will
    exceed slice-max-size and print a warning.

commit 1db46210d525856a8f9e59944913127287d956c5
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Mar 26 18:56:21 2013 +0400

    Disable mbtree asm with cpu-independent option
    
    Results vary between versions because of different rounding results.

commit fceb3b197f5fcaded3943718c162b662b52b208f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Mar 26 18:30:00 2013 +0400

    Show "avs: no" --disable-avs option instead of empty string

commit 68ee80a51f6f1de78877a9907e3efcbb1fe13ac6
Author: Tim Walker <tdskywalker@gmail.com>
Date:   Tue Mar 19 23:42:43 2013 +0100

    lavf input: don't use deprecated AVStream fields
    
    Fixes building against newer libavcodecs from the Libav project.

commit 5980580d5a4d32eebf32b2f274807dd4aa68836b
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Mar 26 19:54:36 2013 +0400

    Fix y4m input with C420paldv colorspace

commit 580cc69707f6996dad8544d6ef0d5a8bbc1b5864
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Mar 2 01:22:29 2013 -0800

    x86: correctly check stack alignment for Atom hadamard_ac
    
    Regression in r2265 (only affected compilers with broken stack alignment,
    like ICL on win32).

commit b3c15fcf677a4ceb59c8f4adc39dc93ecd06ff8a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Feb 25 21:23:55 2013 +0000

    x86inc: fix some corner cases of SWAP
    
    SWAP with >=3 named (rather than numbered) args
    PERMUTE followed by SWAP with 2 named args
    used to produce the wrong permutation

commit 89aecb440e2939be7fb72d8362eb12504711b94f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Feb 27 13:30:22 2013 -0800

    Fix array overreads that caused miscompilation in gcc 4.8

commit e355b0e12d6cb380c13cdce15b42093eb8eeef44
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Feb 28 13:32:37 2013 -0800

    Fix undefined behavior in x264_ratecontrol_mb

commit c832fe995bf3d41cae1d3d22e10cb2288e8a650a
Author: Stefan Groenroos <stefan.gronroos@gmail.com>
Date:   Fri Mar 1 22:35:34 2013 +0200

    ARM: Fix bug in x264_quant_4x4x4_neon
    
    Regression in r2273.

commit b3065e660df391168067f13216d99825260939d4
Author: Stefan Groenroos <stefan.gronroos@gmail.com>
Date:   Mon Feb 25 23:43:09 2013 +0200

    ARM: update NEON mc_chroma to work with NV12 and re-enable it
    
    Up to 10-15% faster overall.

commit e82cf2c8e3bc0d7623f3e8ed9a4684bc3dc40b91
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Feb 14 15:00:48 2013 -0800

    CABAC/CAVLC: use the new bit-iterating macro here too

commit 253e2c3f7eab79d74450de4f88a8bf451fd01be4
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 8 15:34:38 2013 -0800

    quant_4x4x4: quant one 8x8 block at a time
    
    This reduces overhead and lets us use less branchy code for zigzag, dequant,
    decimate, and so on.
    Reorganize and optimize a lot of macroblock_encode using this new function.
    ~1-2% faster overall.
    
    Includes NEON and x86 versions of the new function.
    Using larger merged functions like this will also make wider SIMD, like
    AVX2, more effective.

commit eaae05ea3f104dc9fa948327e10649ec693adf0e
Author: Stephen Hutchinson <qyot27@gmail.com>
Date:   Tue Feb 12 21:55:43 2013 -0500

    Add AvxSynth support to the AviSynth input module.
    
    Uses dlopen to load AvxSynth on Linux and OS X.
    
    Allows the use of --demuxer avs for AvxSynth, though the only source filter it
    can currently use is FFMS2.
    
    Add a local copy of avxsynth_c.h and its dependent headers in extras/ so that
    users don't need to actually have AvxSynth development headers installed to
    enable support for it (mirroring the AviSynth behavior).
    
    Based on a patch by 0x09 (tab@lavabit.com)

commit b2c70f6548a68b874006a176d48cd0ca4e03859a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 8 00:13:15 2013 -0800

    Eliminate some branchiness in ME/analysis
    
    Faster, fewer branch mispredictions.

commit 9d600d64194e0b2a77a8d9aa3f05b141cf473af0
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Feb 6 16:55:39 2013 -0800

    Fix some store forwarding stalls
    There's quite a few others, but most of them don't help to fix or there's no
    easy way to avoid them.

commit 9fe40b1e0db6cd93652e3a45dbbd8f24dbe0b70e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 5 01:23:23 2013 -0800

    x86: faster AVX satd/sa8d/sa8d_satd/hadamard_ac
    
    Use Conroe-style movddup in AVX transforms; both Sandy Bridge and Bulldozer
    do movddup in the load unit, so it's totally free this way.
    
    On Sandy Bridge:
    ~6% faster sa8d_satd
    ~5% faster hadamard_ac
    ~9% faster 32-bit satd
    ~2% faster sa8d

commit 4f24bb34453fdedefd161063e20516d148b80f8b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Feb 2 12:37:08 2013 -0800

    x86: detect Bobcat, improve Atom optimizations, reorganize flags
    
    The Bobcat has a 64-bit SIMD unit reminiscent of the Athlon 64; detect this
    and apply the appropriate flags.
    
    It also has an extremely slow palignr instruction; create a flag for this to
    avoid massive penalties on palignr-heavy functions.
    
    Improve Atom function selection and document exactly what the SLOW_ATOM flag
    covers.
    
    Add Atom-optimized SATD/SA8D/hadamard_ac functions: simply combine the ssse3
    optimizations with the sse2 algorithm to avoid pmaddubsw, which is slow on
    Atom along with other SIMD multiplies.
    
    Drop TBM detection; it'll probably never be useful for x264.
    
    Invert FastShuffle to SlowShuffle; it only ever applied to one CPU (Conroe).
    
    Detect CMOV, to fail more gracefully when run on a chip with MMX2 but no CMOV.

commit d556d5540ab90b2c89a5ba0cd6ce393f87c19faf
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sat Jan 19 01:47:09 2013 +0100

    x86: combined SA8D/SATD dsp function
    
    Speedup is most apparent for 8-bit (~30%), but gives some improvements
    for 10-bit too (~12%).
    64-bit only for now.

commit 5c2ca5dee339a215cb331c426d40fa548675f088
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Tue Jan 29 23:44:32 2013 +0100

    x86: port SSE2+ SATD functions to high bit depth
    
    Makes SATD 20-50% faster across all partition sizes but 4x4.

commit b09bc0cc936751f6ad1f20f5e11f523f6051ebc3
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Wed Feb 6 02:07:53 2013 +0100

    x86: faster high bit depth ssd
    
    About 15% faster on average.

commit 91049858f8a051e87efcbe97285657fa3ef9a639
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Jan 18 22:55:46 2013 -0800

    x86: optimize and clean up predictor checking
    Branchlessly handle elimination of candidates in MMX roundclip asm.
    Add a new asm function, similar to roundclip, except without the round part.
    Optimize and organize the C code, and make both subme>=3 and subme<3 consistent.
    Add lots of explanatory comments and try to make things a little more understandable.
    ~5-10% faster with subme>=3, ~15-20% faster with subme<3.

commit a216e5c92a1543e5d748928f7531cfd771739cbf
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jan 22 12:31:55 2013 -0800

    Fix two bugs in predictor checking
    pmv wasn't checked properly in some cases, as well as zero vector.
    Output-changing portion of the following patch.

commit 4d220bc18cb177b6812c381e7fb808f9ae3189e1
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jan 10 13:15:52 2013 -0800

    Improve lookahead-threads auto selection
    Smarter decision to improve fast-first-pass performance in 2-pass encodes.
    Dramatically improves CPU utilization on multi-core systems.
    
    Tested on a quad-core Ivy Bridge (12 threads, 1080p):
    Fast first pass:
    veryfast:     ~7% faster
    faster:      ~11% faster
    fast/medium: ~15% faster
    slow/slower: ~42% faster
    veryslow:    ~55% faster
    CRF/1-pass:
    veryfast:     ~9% faster
    (all others remained the same)

commit c63a518d43bb3822342513eb4af109551e86fbd2
Author: Henrik Gramner <henrik@gramner.com>
Date:   Sun Jan 27 23:01:59 2013 +0100

    x86: Use SSE instead of SSE2 for copying data
    
    Reduces code size because movaps/movups is one byte shorter than movdqa/movdqu.
    Also merge MMX and SSE versions of memcpy_aligned into a single macro.

commit 0ce5b431b94f3934a7229ab264c12f1106e4330d
Author: Henrik Gramner <henrik@gramner.com>
Date:   Sun Jan 13 18:27:08 2013 +0100

    64-bit cabac optimizations
    
    ~4% faster PIC
    
    WIN64:
    ~3% faster and 16 byte shorter cabac_encode_bypass
    ~8% faster cabac_encode_terminal
    Benchmarked on Ivy Bridge
    
    UNIX64:
    One instruction less in cabac_encode_bypass

commit 51a5976144d80d9dc178fcaba2da5224809ee6ba
Author: Mike Gorchak <mike.gorchak.qnx@gmail.com>
Date:   Sat Feb 2 23:35:00 2013 -0800

    configure: add QNX support

commit 486ff39f398401d126fbf0379287b1a7ca7fae6e
Author: Henrik Gramner <henrik@gramner.com>
Date:   Sun Jan 20 19:35:06 2013 +0100

    Windows: Enable DEP and ASLR

commit 8da42b78154304ef194747a375a7e1ff3021d0a9
Author: Henrik Gramner <henrik@gramner.com>
Date:   Thu Jan 17 19:17:24 2013 +0100

    x86inc: Set ELF hidden visibility for global constants

commit 989019209b2ccc828480f0e1f506747703134db3
Author: Diego Biurrun <diego@biurrun.de>
Date:   Thu Jan 17 11:18:31 2013 +0100

    x86inc: Add cvisible macro for C functions with public prefix
    
    This allows defining externally visible library symbols.
    
    Signed-off-by: Diego Biurrun <diego@biurrun.de>

commit 91b0f0e6415b9cc56b625eb77dd5b471a59d3230
Author: Diego Biurrun <diego@biurrun.de>
Date:   Thu Jan 17 11:30:37 2013 -0800

    x86inc: rename program_name to private_prefix
    Synced from libav.
    The new name is more descriptive and will allow defining a separate public
    prefix for externally visible library symbols.

commit a4e77598d2e1e55483bf0918f6ec2fda51ee9507
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jan 14 05:35:30 2013 -0800

    x264.h: improve x264_encoder_reconfig documentation

commit ce9efeafaad38bc6795d4469c952af2d5bb75a84
Author: Henrik Gramner <henrik@gramner.com>
Date:   Sat Feb 16 19:36:50 2013 +0100

    Cosmetics: stricter definition of parameterless functions

commit e403db4f9079811f5a1f9a1339e7c85b41800ca7
Author: Neil <neilpiken@gmail.com>
Date:   Mon Jan 28 10:47:38 2013 +0800

    Update "Install and compile x264" in doc/regression_test.txt

commit c13fbaf279d41e6bb8db09e95aec1b638ff026e8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jan 24 12:11:26 2013 +0400

    Fix possible non-determinism with mbtree + open-gop + sync-lookahead
    
    Code assumed keyframe analysis would only pull one frame off the list; this
    isn't true with open-gop.

commit 736d69b5875587b61c03aa45438e19ddba1f7035
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Feb 25 19:28:19 2013 +0400

    x86: don't use the red zone on win64

commit 637005ebef9f36b816a9777183660ea17f5b249d
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Feb 10 16:12:34 2013 -0800

    x86-64: fix trellis asm with interlacing
    
    Regression in r2145.
    Assembly assumed array was [2][64] when it was actually [2][63].
    Tiny (~0.1%) compression improvement.

commit ba5ce76f7506b5f3d083a9eda8c4705e192f15ff
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Wed Jan 30 09:48:14 2013 -0800

    x86-32: use simple nop codes for <= sse
    
    The "CentaurHauls family 6 model 9 stepping 8" family of CPUs (flags:
    fpu vme de pse tsc msr cx8 sep mtrr pge mov pat mmx fxsr sse up rng
    rng_en ace ace_en) SIGILLs on long nop codes.

commit bc13772e21d0e61dea6ba81d0d387604b5b360df
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Jan 8 21:30:57 2013 +0000

    Bump dates to 2013

commit 3508f4a1446c408dcc0febe1a349ad303ae6628c
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Dec 17 21:54:00 2012 +0100

    x86inc: Drop tzcnt workaround
    
    It is no longer needed now that we've bumped the version requirement of yasm to 1.2.0.

commit b924133cabd125286488e16cfa71488ad4105d63
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Nov 12 10:28:53 2012 -0800

    AVX2/FMA3 version of mbtree_propagate
    First AVX2 function for testing.
    Bump yasm version to 1.2.0 for AVX2 support.

commit d967c09cd93a230e03ec1e0f0f696975d15a01c0
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Tue Dec 11 16:05:34 2012 +0100

    x86inc: Use VEX-encoded instructions in AVX functions
    Automatically use VEX-encoding in AVX/AVX2/XOP/FMA3/FMA4 functions for all instructions that exists in a VEX-encoded version.
    This change makes it easier to extend existing code to use AVX2.
    Also add support for AVX emulation of a few instructions that were missing before.

commit f6c628650558803ed65cb15c1853113cc589ae4a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Dec 2 15:56:30 2012 +0000

    x86inc: activate REP_RET automatically
    Now RET checks whether it immediately follows a branch, so the programmer dosen't have to keep track of that condition.
    REP_RET is still needed manually when it's a branch target, but that's much rarer.
    The implementation involves lots of spurious labels, but that's ok because we strip them.

commit 755fece365c14135c2621585e761f5dfeedefc74
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Thu Dec 6 15:40:13 2012 -0800

    x86inc: support stack mem allocation and re-alignment in PROLOGUE
    Use this in 8-bit loopfilter functions so they can be used if
    there is no aligned stack (e.g. x86-32 MSVC or ICC 10.x).

commit c69e2d02c4a2ee171b6b8ca0a2e1032213e561bc
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Dec 17 22:15:02 2012 +0100

    Update config.guess and config.sub

commit 9c4ba4bde8965571159eae2d79f85cabbb47416c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Jan 8 13:29:49 2013 -0800

    Fix crash if the first frame is forced to a non-keyframe
    This is obviously bad user input, but x264 shouldn't crash if it happens.

commit 593e8cc0b374aa7b20d3d961c57feb9bab508979
Author: Bernhard Rosenkränzer <bernhard.rosenkranzer@linaro.org>
Date:   Sun Dec 30 12:18:00 2012 -0800

    Fix build on ARM with binutils >= 2.23.51.0.6
    GAS doesn't seem to like spaces in vld1 anymore, so remove those.

commit 55b5162d7ad9a70e2b6ae5ba3f743a35c2135aaf
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Nov 23 18:26:53 2012 +0400

    Fix pthread_join emulation on win32 and BeOS
    Doesn't actually affect x264, but it's more correct.

commit 0059dcf938451134d8f9c8f1ad522a2c6071e7cd
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Nov 27 07:50:51 2012 -0800

    Fix typo in r2222
    Slightly wrong numbers in level table.

commit 28ee1f47ed4366351477065a0f794f05402e69a7
Author: Sergio Basto <sergio@serjux.com>
Date:   Thu Nov 22 18:02:50 2012 -0800

    configure: fix gpac detection with -Wp,-D_FORTIFY_SOURCE=2

commit 67a69c06d7bd7907b5d1e058a26284c06baa93d1
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Thu Nov 22 18:01:16 2012 -0800

    Solaris: use sysconf to get processor count
    Solaris responds correctly to the same value as Cygwin, so let's use that.

commit 6e68ab73908f339cdd91c40943fef46fd1f832fa
Author: Anton Khirnov <anton@khirnov.net>
Date:   Tue Nov 13 21:01:24 2012 +0100

    lavf input: allocate AVFrame correctly
    Allocate AVFrames correctly with avcodec_alloc_frame().
    This caused crashes with newer libavcodecs that try to free frame extradata.

commit a632fe1a57baccdf1bcb340197fe48281cd3117f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Nov 11 03:44:02 2012 +0400

    Fix crash when using libx264.dll compiled with ICL for X86_64

commit 1cffe9f406cc54f4759fc9eeb85598fb8cae66c7
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Nov 9 02:31:10 2012 +0400

    Fix possible issues with out-of-spec QP values
    Fixes a possible regression in r2228.

commit 349b9bdefae84b006c4bdb7e07290b88a18bbbb2
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Sep 26 13:49:02 2012 -0700

    Attempt to optimize PPS pic_init_qp in 2-pass mode
    Small compression improvement; up to ~0.5% in extreme cases.
    Helps more with small slice sizes (tiny resolutions or slice-max-size).
    Note that this changes the 2-pass stats file format.

commit 8437d0db5de43cf9cd11e02444c80984935e25dc
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Sep 26 13:05:00 2012 -0700

    Improve slice header QP selection
    Use the first macroblock of each slice instead of the last of the previous.
    Lets us pick a reasonable initial QP for the first slice too.
    Slightly improved compression.

commit d2d8364ff48f789ef92135d24c6f185c4eccbeba
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Oct 11 13:27:48 2012 -0700

    Update level dpb size calculation to match newer H.264 spec
    Doesn't actually change encoding behavior, but makes it more correct.
    Warning messages should now be accurate at higher bit depths and non-4:2:0.
    Technically, since it redefines x264_level_t, this is an API version increment.

commit 28ddb0dd533154b58f9147932fb1dec4c74127c8
Author: Jan Ekström <jeebjp@gmail.com>
Date:   Sun Oct 7 21:12:05 2012 +0300

    Add support for the ffmpeg/vapoursynth high bit depth y4m extensions

commit 64cbe75cf3cae2bbc8fb34bcda5a9742d22f83f2
Author: Diego Biurrun <diego@biurrun.de>
Date:   Tue Nov 6 14:48:56 2012 +0100

    x86inc: Rename 3dnow2 to 3dnowext
    The name "3dnowext" is more common than "3dnow2". Doesn't affect x264.

commit f418867a8b76f31acf3a965eed34c5587294e948
Author: Diego Biurrun <diego@biurrun.de>
Date:   Wed Oct 31 12:23:54 2012 -0700

    x86inc: only define program_name if the macro is unset.
    This allows overriding the value from outside the file.
    This can be useful if x86inc.asm is used outside of x264.

commit f6a8615ab0c922ac2cb5c82c9824f6f4742b1725
Author: David Wolstencroft <d.wolstencroft@yahoo.com>
Date:   Mon Oct 29 09:07:39 2012 -0700

    Disable ARM NEON MRC CPU test for Apple devices
    The Apple A6 CPU doesn't support performance counters, so this test caused a crash.

commit 6889f2cee49314aa380d4803991d645659efc01f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Nov 6 12:03:20 2012 -0800

    Fix crash with no-scenecut + mbtree

commit 4dbfcd462ccdf065654d17c47e1d05d53f213bf1
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Oct 12 23:43:40 2012 +0400

    Fix reconfiguring to crf=0
    Lossless mode can't currently be enabled mid-stream.

commit 2ec8c64580efc10bbfc343d4bec2cf6bbb7d68c7
Author: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Date:   Mon Sep 17 11:09:20 2012 -0700

    Fix ALIGNED_ARRAY_EMU macros on ICL
    ICL's preprocessor doesn't handle it correctly.
    This fix is similar to libav's fix in 0db2d9.

commit 2f154ac1652000afe16140cb12c35d777f0c60c8
Author: Jason Martens <cacepi@gmail.com>
Date:   Thu Sep 13 11:20:40 2012 -0700

    Fix use of deprecated av_close_input_file call

commit 9fc00654018ff9f8a13dbe66785e31568a0c3229
Author: Brad Smith <brad@comstyle.com>
Date:   Wed Sep 26 14:13:27 2012 -0700

    Fix pkg-config for dynamic vs static linking

commit b22f22fdb1f6d61ccc7b0c867b530322ea681133
Author: Brad Smith <brad@comstyle.com>
Date:   Mon Sep 10 17:52:04 2012 -0700

    Set libm in the configure script if the OS has libm
    Prerequisite for another configure patch after this.
    Idea copied from libpthread.

commit 198a7ea13ccb727d4ea24b29f5da9b0292387309
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Aug 16 13:40:32 2012 -0700

    Enhance mb_info: add mb_info_update
    This feature lets the callee know which decoded macroblocks have changed.

commit f6e9002dd03329b69ea56391b3f4197efca7a690
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Aug 16 13:01:17 2012 -0700

    Fix mb_info_free with sliced threads
    x264 would free mb_info before it was completely done using it.

commit de725e98eb87198542aae5b8c5ebab4f6c06446e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Aug 7 12:43:26 2012 -0700

    Enhance nalu_process
    Add the input frame opaque pointer to the arguments.
    This makes it easier to use with multiple simultaneous x264 encodes.

commit 174cfac6344a9fad1577cd1f449b7d0e625d6e28
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Aug 6 14:55:35 2012 -0700

    Improve mb_info constant mb optimization
    Allow fast skipping even if the pskip MV isn't zero.

commit f57e7070d949b02e1a548382a549c34cf491e05e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jul 30 12:58:34 2012 -0700

    Export the average effective CRF of each frame
    Useful to judge the resulting quality of a frame when VBV is enabled.

commit d7fd6cc060b6ae3f3bcb9e09fc8bf532a8ed3a82
Author: Brad Smith <brad@comstyle.com>
Date:   Mon Aug 20 23:58:19 2012 -0700

    Remove special-casing for OpenBSD pthread handling
    Previously it was policy to use -pthread, but OpenBSD now recommends -lpthread.
    its been libpthread anyway and policy has changed to stop using -pthread.

commit 8f7644865010385efcb4cb5bd239b28edb4b49e2
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Thu Jul 26 18:01:49 2012 -0700

    x86inc: automatically insert vzeroupper for YMM functions
    Backported from libav.

commit 68dfb7b352c4d273e44668c1f6e4a9a283a37e84
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Tue Jul 24 08:47:45 2012 -0700

    Free user supplied data when deleting a frame
    This eliminates a memory leak when calling x264_encoder_close.

commit d9d2288cabcfd1a90f29f2f11c8cce5450a08ffa
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Jul 18 08:33:41 2012 -0700

    Revert r2204
    People don't seem to like this so I'm just going to get rid of it.

commit 5f615f7f93d830e55e6fe4f04d214b93d8cb4b53
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jul 10 14:10:44 2012 -0700

    Faster predictor checking with subme<3
    Fix a typo that made an early-skip less effective.
    Avoid a relatively unpredictable branch.
    Slightly changed output due to the typo-fix.
    ~50 cycles faster on Core i7.

commit 5af86bedd71c89fc48b50bbb7e8a8bec3d360d3a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jun 25 18:01:29 2012 -0700

    Try 8x8 transform analysis even when sub8x8 partitions are present
    Turn off the sub8x8 partitions, try it, and turn them back on if it didn't help.
    Small compression improvement with p4x4 on (~0.1-0.5%).
    Also update related comments.

commit 913485d26b19dddb6340f7115843d63cde8bb836
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Jun 8 18:19:59 2012 -0700

    Support changing resolutions between passes with macroblock-tree
    Implement a basic separable bilinear filter to rescale the quantizer offsets.
    Structure inspired by swscale, but floating-point instead of fixed-point.
    Not as optimized as it could be, but it's quite fast already.
    
    Example compression penalties on a 720p video game recording:
    First pass with 720p and second as 480p: ~-1.5% (vs. same res)
    First pass with 480p and second as 720p: ~-3% (vs. same res)

commit 8b535d9006d87e32c4ff939691b920da823ae85a
Author: Alexander Prikhodko <komisar666@gmail.com>
Date:   Tue Jun 12 20:21:35 2012 +0300

    Print elapsed time in encoding progress indicator

commit 11e32c534a213168d8f466fb64bee75e1534d7af
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Jun 2 21:27:50 2012 +0400

    Cap ratecontrol predictor parameters
    Limits VBV mispredictions after long periods of relatively constant video.

commit e21e9c972ed830ac7ad264912b41543adf7e720f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Jul 3 14:38:04 2012 -0700

    x86inc: import patches from libav
    Allow manual invocation of WIN64_SPILL_XMM even under INIT_MMX
    SSE version of mova is movaps rather than movdqa.
    YMM version of movnta.
    Add mp size for named arguments.
    Fix DEFINE_ARGS when used outside of a cglobal.
    Define a few more cpuflags.
    3-argument wrappers for a few more instructions.

commit 37be55213a39db40cf159ada319bd482a1b00680
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Jun 22 22:02:24 2012 +0400

    Fix crash with --fps 0
    Fix some integer overflows and check input parameters better.
    Also fix incorrect type specifiers for demuxer info printing.

commit 999b753ff0f4dc872077f4fa90d465e948cbe656
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue May 8 15:42:56 2012 -0700

    Threaded lookahead
    
    Split each lookahead frame analysis call into multiple threads.  Has a small
    impact on quality, but does not seem to be consistently any worse.
    
    This helps alleviate bottlenecks with many cores and frame threads. In many
    case, this massively increases performance on many-core systems.  For example,
    over 100% faster 1080p encoding with --preset veryfast on a 12-core i7 system.
    Realtime 1080p30 at --preset slow should now be feasible on real systems.
    
    For sliced-threads, this patch should be faster regardless of settings (~10%).
    
    By default, lookahead threads are 1/6 of regular threads.  This isn't exacting,
    but it seems to work well for all presets on real systems.  With sliced-threads,
    it's the same as the number of encoding threads.

commit ecfbf9d8025e39783bc4262dc1972ca742d8a993
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri May 4 17:18:12 2012 +0400

    Add support for RGB formats in bit-depth conversion filter

commit 1c97f3570fba02f768fbf649b9f7d48beb720048
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat May 12 13:57:49 2012 +0400

    Fix some bugs in mb_info code

commit 69a0443e7d8ab032a7f3c3468a42177d5e64daa2
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Mar 29 14:14:07 2012 -0700

    Add mb_info API for signalling constant macroblocks
    Some use-cases of x264 involve encoding video with large constant areas of the frame.
    Sometimes, the caller knows which areas these are, and can tell x264.
    This API lets the caller do this and adds internal tracking of modifications to macroblocks to avoid problems.
    This is really only suitable without B-frames.
    An example use-case would be using x264 for VNC.

commit df6252cfed7c23fbe883456f4e0607a7f8e91ad8
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sat Apr 7 00:40:09 2012 +0200

    Faster chroma weight cost calculation
    
    New assembly function with SSE2, SSSE3 and XOP implementations for calculating absolute sum of differences.

commit cce88ebc9e517b0fa8735b81ac30b4e6a79c8154
Author: Lucien <astrataro@gmail.com>
Date:   Sat Mar 31 13:42:49 2012 +0100

    Add Level 5.2 support

commit ee30c84e38b30896ffa6ddc417f3b4c281a86d1a
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Thu Apr 12 19:14:43 2012 +0200

    Eradicate all mention of Extended Profile
    x264 never supported it and never will because nobody uses it.

commit 8ca49cc5c40813d8b98544989eb684e167b06aa0
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Apr 3 21:46:52 2012 +0400

    Fix disabling of mbtree when using 2pass encoding and zones

commit 3691332c0b33a68f9d6f519edaa2b848ed34a38c
Author: Alexander Prikhodko <komisar666@gmail.com>
Date:   Sat Mar 31 12:06:21 2012 +0300

    configure: force select -mXX gcc option for i386/x86-64
    Makes multilib compilation more convenient.

commit e1ccbf9bb3abdd25d3f0c76682926ec49f3f8001
Author: Rafaël Carré <funman@videolan.org>
Date:   Sun Apr 15 21:20:14 2012 -0400

    Update config.guess and config.sub
    Adds support for a bunch of targets, including:
    aarch64 (armv8)
    arm-linux-androideabi

commit f87619768dba73c1effbcfb08875d096575e079e
Author: Alexander Prikhodko <komisar666@gmail.com>
Date:   Sat Mar 31 11:33:41 2012 +0300

    configure: correct use of RC variable and add --extra-rcflags

commit 35cf912671fddcb3e701bf667a75f77dd8b28264
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Mar 28 21:15:04 2012 -0400

    ICL/MSVS: Fix shared library generation and usage
    MSVS requires exported variables to be declared with the DATA keyword, and requires that imported variables be declared with dllimport.
    This does not fix x264 cli being unable to use a shared library built by ICL however.

commit 259a6e57ae25c71acc1669e0aefde7ffe7e235ec
Author: Kieran Kunhya <kierank@ob-encoder.com>
Date:   Tue Mar 27 17:38:56 2012 +0100

    Fix intra-refresh + hrd

commit e0351cdfeb45bf7f891eeb1dc475292154bb9d82
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Mar 25 17:34:24 2012 +0400

    Fix frame input colorspace check

commit 7392c8c31f791e9b4c10e4959f8715c8a8233d25
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Mar 22 13:56:50 2012 -0700

    Fix comment in deblock.c
    The code does, in fact, handle CAVLC+8x8dct correctly already.

commit 6979713216d792e44e3cbaeeba74b455e0a07c62
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Mar 13 14:37:26 2012 -0700

    Fix sliced-threads ratecontrol bug
    Was using qp instead of qscale; could cause NANs (not to mention less accurate results).

commit 5c85e0a2b7992fcaab09418e3fcefc613cffc743
Author: Anton Mitrofanov <Bugmaster@narod.ru>
Date:   Sun Mar 11 23:08:18 2012 -0700

    Fix clobbering of mutex/cvs
    Regression in r2183.
    Bizarrely seemed to work on many platforms, but crashed on win64 and may have been slower.
    Only affected sliced threads during encoding, but could cause crashes on x264 encoder close even without sliced threads.

commit c522ad1fed167d0e985e4f9dcdee042473cf74db
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 24 13:34:39 2012 -0800

    Sliced-threads: do hpel and deblock after returning
    Lowers encoding latency around 14% in sliced threads mode with preset superfast.
    Additionally, even if there is no waiting time between frames, this improves parallelism, because hpel+deblock are done during the (singlethreaded) lookahead.
    For ease of debugging, dump-yuv forces all of the threads to wait and finish instead of setting b_full_recon.

commit 6a27a481d4c3508ce778a61a139a4734bb8126f7
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 24 13:16:52 2012 -0800

    Add full-recon API option
    Fully reconstruct frames even without dump-yuv.

commit e856755d2a67f45249c24cb51aa38fc4fa192321
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Feb 22 13:33:36 2012 -0800

    x86inc: switch to amdnops
    Recent AMD CPUs' instruction decoders choke horribly on extremely long nops (i.e. with 4 prefixes).
    Won't affect much, since we don't use ALIGN much.

commit 5a242c5862baaa4bd5829bd1b43dc11cf5c86344
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 14 16:54:03 2012 -0800

    BMI1 decimate functions
    Intel was nice enough to make tzcnt equal to "rep bsf", which is backwards-compatible.
    This means we don't actually have to add new functions to make it work.

commit ac31c59a98c6c690894670b9c9af2612f799d85b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 14 15:07:10 2012 -0800

    Minor asm changes

commit 83561e55dde06f3247aa9b99fa62ead38d7a406e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Feb 9 14:23:52 2012 -0800

    Add row-reencoding support to VBV for improved accuracy
    Extremely accurate, possibly 100% so (I can't get it to fail even with difficult VBVs).
    Does not yet support rows split on slice boundaries (occurs often with slice-max-size/mbs).
    Still inaccurate with sliced threads, but better than before.

commit 5a69f8e105663497794d4bb4e58cf7baa5cd29cb
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Feb 9 12:38:44 2012 -0800

    Abstract bitstream backup/restore functions
    Required for row re-encoding.

commit 037d123cf62c4af2dc13742b8606882b6d0d3d9e
Author: Anton Mitrofanov <Bugmaster@narod.ru>
Date:   Thu Feb 9 15:27:53 2012 -0800

    Add an small per-MB cost penalty for lowres
    Helps avoid VBV predictors going nuts with very low-cost MBs.
    One particular case this fixes is zero-cost MBs: adaptive quantization decreases the QP a lot, but (before this patch), no cost penalty gets factored in for this, because anything times zero is zero.

commit de5a0adca1a7d08b1233b317ec092dbf19263d2f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Feb 13 18:31:51 2012 -0800

    Remove explicit run calculation from coeff_level_run
    Not necessary with the CAVLC lookup table for zero run codes.

commit 9f1ac3b36eb2666e9d2ec4b859f3b63f60827bf0
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Feb 13 13:20:06 2012 -0800

    Export PSNR/SSIM in x264 API

commit 7e85ec036df4290697239f5dc9f4a793313ceebc
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Wed Feb 8 13:10:31 2012 -0800

    x86inc: support yasm -f win64
    Not necessary for x264, as -m amd64 already does the right thing, but used by external users of x86inc.

commit 02c3d5ec58d6bcbc5e22715ae80d53d8556f3c8f
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Feb 1 23:52:48 2012 +0100

    Fix incorrect zero-extension assumptions in x86_64 asm
    Some x264 asm assumed that the high 32 bits of registers containing "int" values would be zero.
    This is almost always the case, and it seems to work with gcc, but it is *not* guaranteed by the ABI.
    As a result, it breaks with some other compilers, like Clang, that take advantage of this in optimizations.
    Accordingly, fix all x86 code by using intptr_t instead of int or using movsxd where neccessary.
    Also add checkasm hack to detect when assembly functions incorrectly assumes that 32-bit integers are zero-extended to 64-bit.

commit 01f7a333e6c6a6d91a7fe977b491a448ddf4c117
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Feb 23 09:11:23 2012 -0800

    Fix possible alignment crash when linking from MSVC
    x264_cavlc_init needs to be stack-aligned now.

commit b17c247178a24c218843639c3f46bcfde0edab0a
Author: Anton Mitrofanov <Bugmaster@narod.ru>
Date:   Tue Feb 21 12:58:22 2012 -0800

    Fix rare overflow in 10-bit intra_satd_x3_16x16 asm

commit 1446fe7c47cf660d764b4cbf53694bc3df9b04de
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Feb 11 22:56:43 2012 -0500

    ICL: fix out of tree building and resource file usage on Windows

commit d3efb00abbedd2bbb70156bd989beefe06468116
Author: Oka Motofumi <chikuzen.mo@gmail.com>
Date:   Mon Feb 6 06:07:34 2012 +0900

    Add error handling for out-of-tree build

commit ec41b19edc67ee4eca09c0e3b37e6290844c5e1f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Mar 6 17:34:02 2012 +0400

    Fix RGB colorspace input
    BGR/BGRA input was correct.

commit 39a4c6fecaaa0d6cde8d89d31ef6cd1d25ab802b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Feb 13 16:40:32 2012 -0800

    Fix interlaced + extremal slice-max-size
    Broke if the first macroblock in the slice exceeded the set slice-max-size.

commit 3f72c99a15a07511b758d9e94217223480865124
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sun Feb 5 20:43:09 2012 +0100

    Fix regression in r2141
    Broke register preservation in x264_cpu_cpuid and x264_cpu_xgetbv.
    Did not cause any problems.

commit da19765d723b06a1fa189478e9da61a1c18490f8
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jan 19 14:56:54 2012 -0800

    TBM, AVX2, FMA3, BMI1, and BMI2 CPU detection support
    TBM and BMI1 are supported by Trinity/Piledriver.
    The others (and BMI1) will probably appear in Intel's upcoming Haswell.
    Also update x86inc with AVX2 stuff.

commit efef20090a06a38f9d95755588d7830fb92a2a02
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Feb 3 06:27:18 2012 +0000

    x86inc: add TAIL_CALL macro to abstract a common asm idiom

commit a7e6e1793b4d2b49c9449d767320c71daa855cb6
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Jan 25 16:44:38 2012 -0800

    Minor asm optimizations/cleanup

commit 56ba096141d16ffcbabd805e2d27014f62f0d722
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jan 24 19:03:58 2012 -0800

    Clean up and optimize weightp, plus enable SSSE3 weight on SB/BDZ
    Also remove unused AVX cruft.

commit 961a278e0123eb662b46a6f136a48a43f6a2d427
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jan 23 18:57:58 2012 -0800

    XOP frame_init_lowres
    Covers both 8-bit and 16-bit, ~5-10% faster on Bulldozer.

commit c5809994990df6c63b4250546844dc77181fee0f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jan 17 15:25:10 2012 -0800

    XOP 8x8 zigzags
    Field: 35(mmx) ->16(xop) cycles
    Frame: 32(ssse3)->20(xop) cycles

commit 14dc11f7c52fa29576e0003c8c16857a78bf5fbf
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jan 23 15:09:38 2012 -0800

    AVX 32-bit hpel_filter_h
    Faster on Sandy Bridge.
    Also add details on unsuccessful optimizations in these functions.

commit 2fcd0446b5d91ae52e143682c30000a49441e4a1
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Jan 27 16:29:30 2012 -0800

    x86inc: add high halfword register support
    Might be useful in a few cases.

commit 5c4b8484ea9aaabfb70523ba1f9c4d8343ad3221
Author: Ronald S. Bultje <rsbultje@gmail.com>
Date:   Wed Jan 25 13:53:59 2012 +0800

    Change %ifdef directives to %if directives in *.asm files
    This allows combining multiple conditionals in a single statement.

commit 1b558de42dc08a303c2faf79fc9999b48a876370
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Jan 22 22:13:52 2012 +0400

    Use TV range algorithm for bit-depth conversions
    Such sources are more common, so better to be correct for the common case.
    This also produces less error for the case of full range than the previous algorithm produced for the case of TV range.

commit 83c371deba853a4ebb28739e868df86b3153fb3e
Author: Hii <hiiragikei@gmail.com>
Date:   Wed Jan 25 16:29:22 2012 +0800

    Bump dates to 2012

commit a2925c5a707e833c34fa0a64d497c02e6dcfe6e6
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sat Jan 28 21:38:27 2012 +0100

    Add Windows resource file
    Displays version info in Windows Explorer.

commit 98ade832d053f6bfca4d0dd2ab0cd1c88531721d
Author: Sergey Radionov <RSATom@gmail.com>
Date:   Mon Jan 16 13:22:44 2012 -0800

    Fix win32 pthread_cond_signal
    Isn't used by x264 currently, so didn't cause a problem.
    Fix backported from libav.

commit a3f44077dc238dea92c0894d352b5a8723b9201b
Author: Mans Rullgard <mans@mansr.com>
Date:   Wed Feb 1 15:55:25 2012 -0800

    ARM: align asm functions to 4 bytes.
    Some linkers apparently fail to correctly align ARM functions when mixing with Thumb code.

commit d3a39c92f5c130cad6d45e9daffa5a2beb145ebb
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Jan 22 13:00:23 2012 +0400

    Fix normalization of colorspace when input is packed YUV 4:2:2

commit 236763e39d8a756db0e8179745396ed88c1bfc2d
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Jan 21 12:54:40 2012 -0800

    Force keyint-min 1 with Blu-ray
    Fixes an issue with referencing across I-frames that's prohibited in Blu-ray for some godforsaken reason.

commit 8a1189abd1355c4cf6f786fbc2a4b8c22f398710
Author: Oka Motofumi <chikuzen.mo@gmail.com>
Date:   Sun Jan 29 20:34:41 2012 +0900

    Fix crash in --demuxer y4m with unsupported colorspace

commit 1ab0877a40417a2f4f26ff0356e8b02182d9d996
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Jan 16 14:02:53 2012 -0800

    Fix overread/possible crash with intra refresh + VBV

commit bcd41dbcaa4430b2118d9f6828c2b9635cf9d58d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Jan 18 15:47:07 2012 -0800

    Fix trellis 2 + subme >= 8
    Trellis didn't return a boolean value as it was supposed to.
    Regression in r2143-5.

commit 748fe16c1303b89d2a1d0378addd83fb4198f51a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jan 6 15:53:29 2012 +0000

    CABAC trellis opts part 4: x86_64 asm
    Another 20% faster.
    18k->12k codesize.
    
    This patch series may have a large impact on encoding speed.
    For example, 24% faster at --preset slower --crf 23 with 720p parkjoy.
    Overall speed increase is proportional to the cost of trellis (which is proportional to bitrate, and much more with --trellis 2).

commit cfdb36ece729209631f7213506685ae733d7f5d4
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jan 6 15:53:04 2012 +0000

    CABAC trellis opts part 3: make some arrays non-static

commit 65bd12ae875a768a06b67ec6297dec18323e0768
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Dec 22 17:56:06 2011 +0000

    CABAC trellis opts part 2: C optimizations
    
    Hoist the branch on coef value out of the loop over node contexts.
    Special cases for each possible coef value (0,1,n).
    Special case for dc-only blocks.
    Template the main loop for two common subsets of nodes, to avoid a bunch of branches about which nodes are live.
    Use the nonupdating version of cabac_size_decision in more cases, and omit those bins from the node struct.
    CABAC offsets are now compile-time constants.
    Change TRELLIS_SCORE_MAX from a specific constant to anything negative, which is cheaper to test.
    Remove dct_weight2_zigzag[], since trellis has to lookup zigzag[] anyway.
    
    60% faster on x86_64.
    25k->18k codesize.

commit e176619d010fc32c970c7ab7a769bbfbe2665f61
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Dec 22 17:55:06 2011 +0000

    CABAC trellis opts part 1: minor change in output
    Due to different tie-break order.

commit 4e87f36a0e1a78242f04db611e06f80b6b38d900
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sun Jan 8 04:14:10 2012 +0100

    x86inc improvements for 64-bit
    
    Add support for all x86-64 registers
    Prefer caller-saved register over callee-saved on WIN64
    Support up to 15 function arguments

commit 84a06e611aff1267a720bf9552b3bcf263bd83b5
Author: Ilia Valiakhmetov <zakne0ne@gmail.com>
Date:   Sun Jan 15 04:47:58 2012 -0600

    High bit depth SSE2/AVX add8x8_idct8 and add16x16_idct8
    From Google Code-In.

commit c605e3174410ba5c7d1d0a777082e2397734d637
Author: Edward Wang <edward.c.wang@compdigitec.com>
Date:   Wed Jan 4 15:35:54 2012 -0800

    MMX/SSE2/AVX predict_8x16_p, high bit depth fdct8
    From Google Code-In.

commit 6b06f6d3f7f800dca1a4ea154f54427d5b3cea2b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Dec 22 14:03:15 2011 -0800

    XOP 8-bit fDCT
    Use integer MAC for one of the SUMSUB passes.  About a dozen cycles faster for 16x16.

commit c4b54c83629bb92af6c4836a8859e9432dc7333a
Author: Cristian Militaru <cristipiticul@yahoo.com>
Date:   Wed Jan 4 12:38:08 2012 -0800

    High bit depth intra_sad_x3_4x4
    From Google Code-In.

commit c032fbaa3801fb4cf8dd1dd95a6479ca5bd262e2
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Dec 8 13:45:41 2011 -0800

    Use a large LUT for CAVLC zero-run bit codes
    Helps the most with trellis and RD, but also helps with bitstream writing.
    Seems at worst neutral even in the extreme case of a CPU with small L2 cache (e.g. ARM Cortex A8).

commit ebb1429e2d24f57aa4ea75284386a15f2eab553e
Author: Matt Habel <habelinc@gmail.com>
Date:   Fri Dec 16 23:16:09 2011 -0800

    High bit depth intra_sad_x3_8x8, intra_satd_x3_4x4/8x8c/16x16
    Also add an ACCUM macro to handle accumulator-induced add-or-swap more concisely.

commit 6d921c5bdefae1a733a3a4c29d88ea15fcece76e
Author: Shitiz Garg <mail@dragooon.net>
Date:   Sat Dec 3 15:34:57 2011 -0800

    MMX 10-bit predict_8x8c_h and predict_8x16c_h
    From Google Code-In.

commit 47cdaa9c3d8197d4deb711d9bcc4af869ef8a426
Author: Aaron Schmitz <me@aaronschmitz.com>
Date:   Wed Nov 30 00:15:45 2011 -0600

    Some MBAFF x86 assembly functions.
    deblock_chroma_420_mbaff, plus 422/422_intra_mbaff implemented using existing functions.
    From Google Code-In.

commit 027b05e0a22421e477847506a205a49b151ae5bf
Author: George Stephanos <gaf.stephanos@gmail.com>
Date:   Thu Dec 1 16:53:45 2011 -0800

    More ARM NEON assembly functions
    predict_8x8_v, predict_4x4_dc_top, predict_8x8_ddl, predict_8x8_ddr, predict_8x8_vl, predict_8x8_vr, predict_8x8_hd, predict_8x8_hu.
    From Google Code-In.

commit 658a3585b74f77fd8f78588f3f39e0abefb104c4
Author: Ilia <zakne0ne@gmail.com>
Date:   Mon Nov 28 05:20:09 2011 -0800

    More 4:2:2 asm functions
    High bit depth version of deblock_h_chroma_422.
    Regular and high bit depth versions of deblock_h_chroma_intra_422.
    High bit depth pixel_vsad.
    SSE2 high bit depth and MMX 8-bit predict_8x8_vl.
    Our first GCI patch this year!

commit 978abe065737089913feccffece483bc69a9e5b0
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Thu Dec 8 16:14:35 2011 +0100

    SSE2 and SSSE3 versions of sub8x16_dct_dc
    Also slightly faster sub8x8_dct_dc

commit 61a78a1b417595c4b5d7ef6831692904a243a9fc
Author: Steven Walters <kemuri9@gmail.com>
Date:   Mon Dec 5 08:46:34 2011 -0500

    Resize filter updates
    Use AVPixFmtDescriptors to pick the most compatible x264 csp for any pixel format.
    Fix deprecated use of av_set_int.
    Now requires libavutil >= 51.19.0

commit bc6c98cf4f76c779c8c07f43aa97ac29b1150bc0
Author: Oka Motofumi <chikuzen.mo@gmail.com>
Date:   Thu Jan 5 14:23:50 2012 -0800

    Add out-of-tree build support

commit f33c8cb0f8fff7a83100b3e9d15baba53c6f6a35
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Dec 16 18:17:00 2011 +0400

    Limit SSIM to 100db
    Avoids floating point error for infinite SSIM (lossless).

commit c0d698859c36be611d465f968762f042853be817
Author: Reynaldo H. Verdejo Pinochet <reynaldo@collabora.com>
Date:   Wed Jan 4 13:16:12 2012 -0300

    Fix wrong conditional inclusion of inttypes.h
    inttypes.h is required by encoder/ratecontrol.c for SCNxxx macros, and HAVE_STDINT_H does not imply having inttypes.h.
    stdint.h is a subset of inttypes.h, but this isn't enough for x264.
    This change fixes building x264 with Android's toolchain.

commit b081d179e741ceffee2217f6fda06779693dce56
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Dec 21 11:08:56 2011 +0400

    Fix crash with sliced threads and input height <= 112

commit 64da5f9df46ac33a5a6b56ca1510d2082e6fbb62
Author: Phillip Blucas <pblucas@gmail.com>
Date:   Mon Dec 19 17:43:41 2011 -0600

    Fix loading custom 8x8 chroma quant matrices in 4:4:4

commit 4c08e42504af81cdbe5789a309e868ca8eda2c1f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Dec 16 01:48:07 2011 +0400

    Fix PCM cost overflow

commit 489a9b2d04c4828877930d2a9104ce93dde8cb85
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Dec 9 01:54:22 2011 +0400

    Fix overflow in 8-bit x86 vsad asm function

commit c291a9d09263708e9d9f02e28f8442fdbe46bb06
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Dec 7 19:14:52 2011 +0400

    Fix crash in --fullhelp when compiled against recent ffmpeg
    Don't assume all pixel formats have a description.

commit 0c7dab9c2a106ce3ee5d6ad7282afb49e1cc3954
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Dec 6 14:39:21 2011 -0800

    Fix regression in r2118
    Broke trellis with i16x16 macroblocks.

commit 0637cd67cb245fce5ba190fa4b9c341319ea2b37
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Nov 30 13:02:12 2011 -0800

    Modify MBAFF chroma deblock functions to handle U/V at the same time
    Allows for more convenient asm implementations.

commit 67f1fdc4d9c030568eac8cf9ab9d0bb249f520db
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Nov 10 16:16:13 2011 -0800

    CABAC trellis optimizations: use SIMD quant
    Significant speed increase, minor change in output due to rounding.

commit e047b3c475cd42b6647397a244e239ebfca53bf6
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Nov 6 09:48:30 2011 -0800

    YUV range detection and support for x264CLI
    Two new options: --input-range and --range.
    --input-range forces the range of the input in case of misdetection; auto by default.
    -- range sets the range of the output; x264cli will convert if necessary, TV by default.
    --fullrange is now removed as a CLI option (but the libx264 API is unchanged).

commit 00df989cc06208050230756525633438d76b5a6a
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Fri Nov 4 20:09:13 2011 +0000

    Pass through user data

commit 04a0aeefd2f5b152c5dbca4a1c6569bd27c9f721
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Oct 27 14:05:56 2011 -0700

    Remove unpredictable branch in CABAC dqp

commit 4185ee883b04d9cee57a64fdebd153830b7b27ba
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Oct 23 23:15:11 2011 +0000

    x86inc: AVX symmetry optimization
    3-arg AVX ops with a memory arg can only have it in src2,
    whereas SSE emulation of 3-arg prefers to have it in src1 (i.e. the move).
    So, if the op is symmetric and the wrong one is memory, swap them.
    Eliminates redundant moves in some cases when using 3-operand without AVX with memory arguments.
    Also fix movss and movsd in some cases, and flag shufps correctly as float.

commit cc129adcaaf5604f3d4fea9ebcb289403192a741
Author: Anton Mitrofanov <Bugmaster@narod.ru>
Date:   Tue Nov 29 13:45:13 2011 -0800

    checkasm: shut up gcc warnings, fix some naming of functions in results

commit f0ccc98bb747b8ee0fe9329f4205cf382788bb89
Author: Mans Rullgard <mans@mansr.com>
Date:   Mon Nov 28 16:29:12 2011 -0800

    checkasm: fix build on ARM
    Because of how ALIGNED_ARRAY_16 is defined on ARM, array initialisers cannot be used here.  Use memset() instead.

commit d8d8e756b1fee72b4771761d6aa4cfb31edc0b67
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Nov 12 01:31:49 2011 +0400

    Improve makefile rules
    Remove the need for "make clean" after most reconfigures.

commit e6d33a931c08918e78dcae97e4d80d0c3411bf2c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Nov 12 00:47:48 2011 +0400

    Mark some local functions as static, cosmetics

commit e0c11dc6e283569606aaa97767401c6a13c2529d
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Nov 11 23:19:02 2011 +0400

    Fix crash if timecode file opening fails

commit a14db080c3fdba4cadc38152a292bb1fa216d50e
Author: Fabian Greffrath <fabian+debian@greffrath.com>
Date:   Fri Nov 11 13:25:43 2011 -0800

    Configure: force PIC for shared build on PARISC and MIPS

commit 6a0bd421bf5fd006012ddcd1be2072a8736b2d27
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Oct 22 19:41:07 2011 +0400

    Improve yasm version check
    Previous check allowed certain earlier versions that weren't fully compatible.

commit 07efeb45db224b7757880d4d63bb549fb454f6db
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Oct 18 14:30:26 2011 -0700

    Add fenc prefetching to adaptive quant
    Many fewer cache misses, faster adaptive quant.

commit 81a99842b76834c11a46438f354d7f2a9e89752a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Oct 18 14:14:03 2011 -0700

    Split prefetch_fenc between colorspaces
    Add 4:2:2 version.

commit 9f872e137c16e8ee0a46d8ca00ac5d670c219d5f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Oct 11 17:04:32 2011 -0700

    Some more 4:2:2 x86 asm
    coeff_last8, coeff_level_run8, var2_8x16, predict_8x16c_dc, satd_4x16, intra_mbcmp_8x16c_x3, deblock_h_chroma_422

commit f52aa86c184d69b4e97b0f63f5f27166b19aa280
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Oct 11 18:12:43 2011 +0000

    Remove obsolete versions of intra_mbcmp_x3
    intra_mbcmp_x3 is unnecessary if x9 exists (SSSE3 and onwards).

commit 2f0384dcd68bb85f98fb566b70b863b40082c83e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Oct 10 05:42:36 2011 +0000

    SSSE3/SSE4/AVX 9-way fully merged i8x8 analysis (sa8d_x9)
    x86_64 only for now, due to register requirements (like sa8d_x3).
    
    i8x8 analysis cycles (per partition):
     penryn sandybridge bulldozer
    616->600  482->374  418->356  preset=faster
    892->632  725->387  598->373  preset=medium
    948->650  789->409  673->383  preset=slower

commit 46d1f3ab24e8aead7ccb3f89a382e7c92721ba96
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Sep 30 19:09:19 2011 -0700

    SSSE3/SSE4/AVX 9-way fully merged i8x8 analysis (sad_x9)
    ~3 times faster than current analysis, plus (like intra_sad_x9_4x4) analyzes all modes without shortcuts.

commit 077d4532c9d9c7914e31ef9250096cc379042bcb
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Oct 5 13:29:21 2011 -0700

    Merge i4x4 prediction with intra_mbcmp_x9_4x4
    Avoids a redundant prediction after analysis.

commit 55a9d38348a1d0bee687293e194b018b21a6ad96
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Oct 5 13:17:31 2011 -0700

    Inline i4x4/i8x8 encode into intra analysis
    Larger code size, but faster.

commit afd9bc24823b0f9f0727c0332a0db24db66876d2
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Sep 21 17:12:10 2011 -0700

    Initial XOP and FMA4 support on AMD Bulldozer
    ~10% faster Hadamard functions (SATD/SA8D/hadamard_ac) plus other improvements.

commit 8cf50493e5b80d9e33aaf0c9d55551d6411e1be4
Author: Mans Rullgard <mans@mansr.com>
Date:   Tue Sep 27 21:14:14 2011 +0400

    ARM: update NEON chroma deblock functions to NV12 pixel format

commit f7e640a33fe66838ecece1da267b566342f3be24
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Mon Oct 17 12:45:15 2011 -0700

    Add /usr/lib/{64/}values-xpg6.o to $LDFLAGS on Solaris
    This is required for POSIX.1-2001 compliance.

commit a0ce295b33a1ba87f732e661e22dba1a307e3405
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Mon Oct 17 12:44:03 2011 -0700

    Fix linker test for -Bsymbolic
    The Solaris linker only accepts -Bsymbolic for objects compiled in dynamic mode (i.e. shared objects), so pass -shared to gcc.
    Additionally, for x86_32 unresolved textrels cause a linker error so mark the .text section as 'impure'.

commit 9aa0f65f72514cfa8c478fbffdafd937c70b5f5d
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Mon Oct 17 12:43:28 2011 -0700

    Add $SOFLAGS to exported SOFLAGS make variable

commit d32d091d519c5ff710b2fb7b2f255fd510e4a6d8
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sat Sep 24 15:56:08 2011 +0200

    Allow setting a chroma format at compile time
    Gives a slight speed increase and significant binary size reduction when only one chroma format is needed.

commit 6eac7c35a5da6c176cedc2644c53ff9d019f7fb0
Author: Harfe Leier <astrataro@gmail.com>
Date:   Fri Sep 30 12:49:33 2011 -0700

    Improve profile help
    List high422/high444 profiles, and don't show non-high-bit-depth profiles in high bit depth builds.

commit 896fff46dd9a0fba9bb5285d536d03e0d5f86da2
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Thu Oct 20 03:09:51 2011 +0900

    Fix infinite loop parsing TDecimate Mode 3 timecode v1 files

commit 2697313a6f223f0b270ba9533c6b47967fa7d246
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Oct 10 17:44:31 2011 -0700

    Fix some integer overflows/signedness errors found by IOC
    The only real bug here is in slicetype.c, which may or may not affect real encodes.

commit d2594831dd858d6ed8efcfd4160ea5ac7f1357c7
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Oct 12 09:16:32 2011 -0700

    Fix pixel_var2 with 4:2:2 encoding
    Might have caused artifacts or suboptimal chroma compression.

commit 1fe87df5857266f0099a473962e7f32a89d9b701
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Oct 9 19:14:16 2011 +0400

    Fix chroma intra analysis in 4:4:4 lossless mode

commit c4644d878dc82f8812482f660f651948d53d4b43
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Oct 9 01:13:29 2011 +0400

    Fix use of uninitialized MVs in sub8x8 RDO

commit f8825a4a6f827bb28fffb75a7cc1a6c386088828
Author: Fabian Greffrath <fabian+debian@greffrath.com>
Date:   Fri Oct 7 19:04:17 2011 -0700

    Fix detection of Alpha CPU arch on alphaev67

commit 8a62835b0b669e79c75b6522b1f7632fe16105d9
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Sep 14 14:53:04 2011 -0700

    Optimize x86 asm for Intel macro-op fusion
    That is, place all loop counter tests right before their conditional jumps.

commit f7cd45b9bbc1f7f5bfd2df6421e79895655552ab
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Sep 12 11:51:23 2011 -0700

    CAVLC: clean up and restructure
    Somewhat faster CAVLC and RD bit-counting.

commit 4a89c200a2c50f17bcf657f3254f6f05b2c0df41
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Sep 8 17:27:02 2011 -0700

    CABAC: clean up and restructure
    Somewhat faster CABAC and RD bit-counting.

commit 62fc472989765a6bea4485c8988d7b246e7ceeb5
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Sep 4 11:31:29 2011 +0200

    Some initial 4:2:2 x86 asm

commit bb9216dc319a39eb6f2a5508a98e36d6492ffa7e
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Fri Aug 26 15:57:04 2011 +0200

    4:2:2 encoding support

commit b7fa2ff50ef74eb8a27e675f8e418754965115e2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Aug 15 18:18:55 2011 +0000

    SSSE3/SSE4 9-way fully merged i4x4 analysis (sad/satd_x9)
    
    i4x4 analysis cycles (per partition):
    penryn   sandybridge
    184-> 75  157-> 54  preset=superfast (sad)
    281->165  225->124  preset=faster    (satd with early termination)
    332->165  263->124  preset=medium
    379->165  297->124  preset=slower    (satd without early termination)
    
    This is the first code in x264 that intentionally produces different behavior
    on different cpus: satd_x9 is implemented only on ssse3+ and checks all intra
    directions, whereas the old code (on fast presets) may early terminate after
    checking only some of them. There is no systematic difference on slow presets,
    though they still occasionally disagree about tiebreaks.
    
    For ease of debugging, add an option "--cpu-independent" to disable satd_x9
    and any analogous future code.

commit b1bb23c7570bded53b698800e48c755240d4aa35
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Aug 15 17:43:42 2011 +0000

    Faster intra_mbcmp_x3 for versions without dedicated asm
    Select asm subroutines more intelligently in the wrapper functions.

commit 265cfae4441ffe76cf6885e5a2448b945deb9b0c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Aug 13 19:01:22 2011 +0000

    Optimize x86 intra_predict_4x4 and 8x8
    
    High bit depth Penryn, Sandybridge cycles:
    4x4_ddl: 11->10,  9-> 8
    4x4_ddr: 15->13, 12->11
    4x4_hd:        , 15->12
    4x4_hu:        , 14->13
    4x4_vr:  15->14, 14->12
    8x8_ddl: 32->19, 19->14
    8x8_ddr: 42->19, 21->14
    8x8_hd:        , 15->13
    8x8_hu:  21->17, 16->12
    8x8_vr:  33->19,
    
    8-bit Penryn, Sandybridge cycles:
    4x4_ddr: 24->15,
    4x4_hd:  24->16,
    4x4_hu:  23->15,
    4x4_vr:  23->16,
    4x4_vl:  10-> 9,
    8x8_ddl: 23->15,
    8x8_hd:        , 17->14
    8x8_hu:        , 15->14
    8x8_vr:  20->16, 17->13

commit fe5729ddfc8e574f27d8678b992d4e356bab84c9
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Aug 13 06:44:28 2011 +0000

    Use realistic alignment for intra pred benchmarks in checkasm

commit 926a03a9c1f48d0fbd54b0e802d740774c100a78
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Wed Sep 21 01:15:38 2011 +0900

    Fix frame packing SEI with --frame-packing 0
    According to the spec, when frame_packing_arrangement_type is equal to 0, quincunx_sampling_flag shall be equal to 1.

commit 03a542a6ca08ba3f96d9e1bf0e36fa21dc9e7762
Author: Oka Motofumi <chikuzen.mo@gmail.com>
Date:   Mon Sep 5 11:50:37 2011 +0900

    Fix install/uninstall shared libs if SYS is WINDOWS/CYGWIN

commit 2641b9e20f5effc4e22ca600df00c79e5f60b446
Author: Reinhard Tartler <siretart@tauware.de>
Date:   Wed Aug 10 00:16:46 2011 -0700

    Add Hurd support to configure

commit dabc19ec94f56660fac10aae60da2b711e84368f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Aug 13 00:39:35 2011 +0000

    Optimize x86 intra_satd_x3_*
    ~7% faster.

commit 419f1bf97acffc3c9a943d53cc67a7b282b02cce
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Aug 12 19:13:07 2011 +0000

    Optimize x86 intra_sa8d_x3_8x8
    ~40% faster.
    Also some other minor asm cosmetics.

commit b581755785751a4c05db0dcb020d5daff278cfe0
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Aug 12 02:15:46 2011 +0000

    Scale interlaced refs/mvs for mvr predictors
    Slightly improves compression and fixes a Valgrind error.

commit 0c2ddc1748f582333b9afcf097b9eb0cd99c8dff
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Aug 11 15:03:12 2011 +0000

    Optimize predict_8x8_filter and incidentally remove a valgrind false-positive

commit afeb24049e5dc3c88dc9aceb18be4ec3897476f7
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Aug 15 12:22:18 2011 +0400

    Don't override flat SSE2 dequant functions with non-flat AVX ones
    Slightly faster.

commit d89a7d5dd4496e38da657879574b4eb3fbde5071
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Aug 8 13:40:53 2011 +0000

    Shut up some valgrind false-positives

commit 6881f2475a98dca0de8b33e18223d9341f90fb12
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Aug 16 13:02:24 2011 -0700

    Avoid some unnecessary allocations with B-frames/CABAC off

commit ddf82cdd4ab3f8172723201e9da22602e27e1204
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Aug 22 17:07:03 2011 -0700

    Fix typo in p8x8 RD analysis
    Passed wrong idx to trellis.

commit 14de3782abaa278a133887b8980ff7b716bfd159
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Aug 21 02:44:45 2011 +0400

    Fix invalid memory accesses in x86 lowres_init when width <= 16

commit 83326434ca9a60b831cd4c7f15cf7bbc764b3200
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Aug 15 12:03:09 2011 +0400

    Fix intermediate conversion for YUVJ* pixfmts with 4:4:4 encoding

commit 86c5510ea34314274431ff107d67eefc3c3753f8
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sun Aug 14 13:39:29 2011 +0200

    Fix pic_out returned by x264_encoder_encode with 4:4:4

commit b232a9dcc5dacf80ad9498ce95e1192c324dcc8b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Aug 11 22:12:26 2011 +0000

    Fix zeroing of mvr predictors in bskip blocks

commit fd3fb348f9bc1ae2ebac62315da8807554ff3a52
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Aug 11 01:33:13 2011 +0000

    Fix: chroma planes for weightp analysis were not initted if U early-terminates and V doesn't.

commit ada894da37b88f9f92b8747d91245fe88944a8fb
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Aug 10 20:25:07 2011 +0200

    Expand borders before chroma weightp analysis
    Prevents mc from using uninitialized source pixels.

commit b21640e2fb7808f4b8e3184156be19ee58dccc53
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Aug 10 19:29:14 2011 +0200

    Another 4:4:4 chroma weightp bug fix

commit 317d883819667eac3b2268cfb313ff177ffa7131
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Aug 10 00:17:26 2011 -0700

    Fix typo in help

commit 0ba8a9c6973897ec35e1a5d241a71f4f5a4f81aa
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Aug 6 10:45:47 2011 -0700

    Improve support for varying resolution between passes
    Should give much better quality, but still doesn't support MB-tree yet.
    Also check for the same interlaced options between passes.
    Various minor ratecontrol cosmetics.

commit fd681ea8e719ab9a26a20220e5eece6651f93ebd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Aug 7 22:57:27 2011 +0000

    asm cosmetics: base-4 constants for shuffles

commit a718aad0045b2930d871fd7b6bf33fc0192d526f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:58:50 2011 +0000

    Enable some existing asm functions that were missing function pointers
    pixel_ads1_avx, predict_8x8_hd_avxx
    High bit depth mc_copy_w8_sse2, denoise_dct_avx, prefetch_fenc/ref, and several pixel*sse4.

commit 444dae123cc0f41508a0172e29e83327aaed47e6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:57:06 2011 +0000

    Remove some unused, broken, and/or useless functions
    Unused frame_sort.
    Unused x86_64 dequant_4x4dc_mmx2, predict_8x8_vr_mmx2.
    Unused and broken high_depth integral_init*h_sse4, optimize_chroma_*, dequant_flat_*, sub8x8_dct_dc_*, zigzag_sub_*.
    Useless high_depth dequant_sse4, dequant_dc_sse4.

commit 43f62a2f07a0f5d2667e6fa89f5de87b2e57ddd2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:56:27 2011 +0000

    asm cosmetics: merge all the variants of ABS macros

commit 4b429c69797ebb88c89fd3dfe7555f0db787d6dd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:53:29 2011 +0000

    asm cosmetics part 2
    These changes were split out of the cpuflags commit because they change the output executable.

commit c0cda6aa0bf775f453e9cea319203975c2875773
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:46:41 2011 +0000

    asm cosmetics: INIT_MMX/XMM/YMM now support a cpuflags argument
    
    Reduces the number of macro args that need to be passed around.
    Allows multiple implementations of a given macro (e.g. PALIGNR) to check
    cpuflags at the location where the macro is defined, instead of having
    to select implementations by %define at toplevel.
    Remove INIT_AVX, as it's replaced by "INIT_XMM avx".
    
    This commit does not change the stripped executable.

commit 12f12a268d47b12d9e26f57919c5022e2f234f9d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:43:34 2011 +0000

    Import x86inc.asm patches from libav

commit b78735138b32e667d5710dbd63aa93ea6498487f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:42:12 2011 +0000

    Cosmetics: s/mmxext/mmx2/

commit 59cb2eb53913ac463f7aef99332d3558a95ff040
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sun Aug 7 11:58:36 2011 +0200

    Fix two bugs in 4:4:4 chroma weightp analysis
    Caused slightly worse compression.

commit fafa6a2fca75967ff90f98a8acc59d3ffdd8bb7f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 3 14:40:01 2011 +0000

    Fix "--asm avx"
    Previously required "--asm sse2fast,fastshuffle,sse4.2,avx".

commit 47f2263e0fea2f70d22b1cbef699e283d6063764
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Aug 5 15:59:20 2011 +0400

    Re-add support for glibc <2.6, which doesn't have CPU_COUNT

commit 9949438453f2f11d1f4cb5d39cfc884c28c98042
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Tue Aug 2 08:59:15 2011 +0900

    Avoid using deprecated libavformat functions
    Replace av_find_stream_info with avformat_find_stream_info.
    Now requires libavformat 53.3.0 or newer.

commit 392e762151d1657abc8ae5d345c144c3ef280819
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Jul 27 02:23:12 2011 +0200

    Use assembly versions of some deblocking functions in MBAFF

commit 1c7dbec5f17ee091bae445584a4f05783e4aae9e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jul 28 00:26:27 2011 +0400

    Move X264_VERSION / X264_POINTVER from config.h to x264_config.h
    This makes them available to external programs as part of the public API.

commit 178455cd4df5f5a36f39c49c8f7b03965b269a91
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Fri Jul 29 20:15:52 2011 +0200

    Fix padding bug in x264_expand_border_mbpair

commit e927cc334c74a3265e912bafaadb7009e44c27f8
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Fri Jul 29 23:39:26 2011 +0900

    Timecode parsing: Add missing initialization
    Fix crash when failed to parse timecode file before malloc pts.
    Fix detection of user timebase considered to be exceeding H.264 maximum.

commit 75eb1cde5b489a030e172ccc0b6724939c095865
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jul 28 13:37:24 2011 +0400

    Fix crash with high bitdepth 4:2:0 input

commit 45b6e459debd4644b0863511fd0c8f55549bc9d7
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Jul 26 21:57:39 2011 -0400

    x86 asm cosmetics
    Use FDEC_STRIDEB where appropriate.

commit c28471e2500a6071aab8f9c3adac104f201e5f2a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jul 26 07:40:23 2011 -0700

    Fix a bug in lossless sub-8x8 RD
    Caused crashes in rare cases with lossless encoding.  Regression in 4:4:4.

commit f8ebd4ab2679c6eedd47bb7f138533259020984b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jul 18 23:10:30 2011 -0700

    Improved p8x4/4x8 search decision
    Use the same thresholding as for p16x8/8x16.
    Does p8x4/4x8 search more often, for a small compression improvement.

commit 9977b595fb7591e3616fa98677baf6e84e0f7029
Author: Dan Larkin <danielhlarkin@gmail.com>
Date:   Wed Jul 13 12:45:23 2011 -0500

    Add --subme 11, which disables all early terminations in analysis
    Necessary for a future trellis mode decision/motion estimation patch.
    Also add the slowest presets to the regression test.

commit 207ca3e95b38d734400e12f57faa16b778f0706c
Author: Dan Larkin <danielhlarkin@gmail.com>
Date:   Wed Jul 13 11:33:48 2011 -0500

    Some trivial changes to RD thresholds
    The output-changing portion of the next patch.

commit 882badfe748f8190c6716472b8c8841b227093c1
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Jul 20 22:54:43 2011 +0400

    Allow setting a wider range of chroma QP offsets
    This allows use of the full range of chroma QP offsets, even in combination with the automatic psy-based adjustments.

commit 6fa146ca5898b8496f26b7b201abdef43558c29f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Jul 15 13:24:38 2011 -0700

    Optimize macroblock_deblock_strength, add more early terminations

commit ded542eee26d4bd7af2e2eafe4f2d8c1eeb1bfae
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jul 14 18:23:44 2011 -0700

    Function-pointerify MBAFF deblocking functions

commit 68be4f2b049b2ee8611cafbedfb84a282ff1b974
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jul 14 14:04:11 2011 -0700

    Clean up MBAFF deblocking code

commit d4e7faa2036fd570a366fd06912c733cb7c7e495
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jul 12 17:27:18 2011 -0700

    Optimize frame_deblock_row

commit 2bd11d1ac5220c21fd45994d7f3099810d5809df
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Jul 20 22:30:59 2011 +0200

    Shrink two arrays

commit c3445f63085a50bf34471470a324ba8f455625f6
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Jul 18 15:20:05 2011 +0400

    Add support for the new (4:4:4) colorspaces to x264_picture_alloc

commit 75c60800837888e0656431d5dbcd9111ffed0819
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Jul 20 18:06:41 2011 +0400

    Various cosmetics

commit 419df032c64dd46ddf782b1c131cb73b82761a50
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Tue Jul 12 23:41:42 2011 +0900

    Improve configure help

commit 88f6bbd378c96851dfcd454e8b753bbb0de3bf10
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Tue Jul 12 14:46:29 2011 +0900

    Use $optarg for some configure options

commit 44c881766e9fcba80035e8a127bbee851cdb8584
Author: Rafaël Carré <rafael.carre@gmail.com>
Date:   Thu Jul 14 18:51:43 2011 -0700

    Linux x264_cpu_num_processors(): use glibc macros
    The cpu_set_t structure is considered opaque.
    Also handle sched_getaffinity() error case if "cpusetsize is smaller than the size of the affinity mask used by the kernel."

commit 7fcf1cffae45b0dd614a9b8a1b17f4d8f44a823e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jul 14 17:02:43 2011 +0400

    Fix spurious "stream properties changed" with --seek option on some inputs

commit 3765dfdd27bd206a800a61c38c0a6639d762db3b
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Jul 15 15:06:37 2011 +0400

    Fix use of deprecated libavcodec functions
    Replace avcodec_open with avcodec_open2. Now requires libavcodec 53.6.0 or newer.

commit f23a615354397e3f5256a831b75e149186d4ac91
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Wed Jul 13 20:25:40 2011 +0100

    Fix nalu_process callback with HRD

commit 4bc22b042f90df62452b3056f8cd6d7066572e4f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Jul 13 15:55:38 2011 +0400

    Fix incorrect chroma swap for some input pixfmts
    
    Problem occurred if pixfmt of lavf/ffms input was PIX_FMT_RGB24 or PIX_FMT_YUV444P.

commit 9cc407d84182dc0266937d85747ccae20ff8ebb2
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Jun 28 21:39:09 2011 +0400

    Fix resize filter crash with YUVJ* input pixfmt

commit ffc41542d73811dffbe5814a23edda65db0e6aea
Author: xvidfan <xvidfan@freenet.de>
Date:   Wed Jun 22 18:46:14 2011 -0700

    RGB encoding support
    Much less efficient than YUV444, but easy to support using the YUV444 framework.

commit c07df2f77dacfec444785bf60229f804dc43c10b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Jun 22 03:32:53 2011 -0700

    4:4:4 encoding support

commit 2809cb6ce63817a58c5639642fe05bc50747e126
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jun 20 16:20:21 2011 -0700

    Properly weight slice header lambda in chroma weightp analysis

commit e976f640d5d0ac4775a0cb706888e79649c54a6c
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Sun Jul 3 17:32:00 2011 -0400

    Better x86 high bit depth predict_8x8c_p
    Avoid the need to check for corner cases by reordering arithmetic.
    Also make a minor optimization to high bit depth predict_16x16_p.

commit eaf95892fd60c8c4b104354c5e18ea5dfd23343e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jun 23 11:54:42 2011 -0700

    Eliminate extra layer of indirection for sps/pps references
    Also remove poc type 1 support (it didn't work anyways) to reduce sps size.

commit 6fce39a268b46f370e607531a923f7b42562f332
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Jul 9 19:21:00 2011 -0700

    Fix SSIM calculation with sliced threads

commit 2e5620d9a366b34a0df1c7b914eef22eb54446b5
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Jul 9 23:57:44 2011 +0400

    Avoid possible NaNs in B-frame output stats

commit c9ba582d61db3e2b0a8587a46a7cb78f5371f9c7
Author: Rémi Denis-Courmont <remi@remlab.net>
Date:   Thu Jun 30 14:07:43 2011 -0700

    ARM: do not override the toolchain default for FPU ABI

commit 3c78047c1136d0d205a5d26c733d2fed3f021652
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Jun 23 20:29:01 2011 -0400

    Fix link errors with libswscale/libavutil as shared libraries

commit 073f081762b78501e57c6bc2667c004858739edf
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Jun 18 14:12:34 2011 -0400

    Fix deprecation in libavformat usage
    Replace av_open_input_file with avformat_open_input. Now requires libavformat 53.2.0 or newer.

commit 4c552d873ada1be3cf2d77965427fab599d051a0
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jun 9 01:34:14 2011 +0400

    Fix various issues with VBV+threads
    Eliminate the race condition with interframe row predictors and threads.
    Recalculate frame_size_estimated at the end of a frame, for improved update_vbv_plan.
    Some cosmetics.

commit c7268059edc6837ce6bff560cca5e842c114127e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Jun 6 13:54:44 2011 +0400

    Fix MBAFF row VBV ratecontrol
    Reverts most of r1984 and implements a much simpler solution.

commit 5bae8ae5dccc48e9f5d6c2596eb7ff3ae1f9c978
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon May 23 17:01:02 2011 -0700

    Make ratecontrol_mb less slow

commit 48830bb6e0fa1e182ef120b9c836e8f69a05389e
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Jun 2 21:23:04 2011 -0400

    Resize filter updates
    Fix use of deprecated sws_getContext.
    Fix uses of sws_format_name.
    Fix stream change warning not occurring on the first resolution change.
    Drop cpu detection, as it is now performed internally by swscale.
    Update swscale version requirements.

commit 1392798b74f12c9fa7a649f87eabb9cfa237d97a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue May 17 14:50:51 2011 -0700

    AVX mbtree_propagate
    Up to ~20-30% faster than SSE2 on Sandy Bridge.

commit 74b19b09264e6d69e409d85c17c0971c29eabdfc
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jun 14 10:26:56 2011 -0700

    Use -vsync 0 with ffmpeg regression test

commit 0facc4be457b68b7b4ef52badfce8b46b2914cfd
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sat May 21 19:04:46 2011 +0200

    Inline emms instructions on x86 if possible

commit 48d2185065571e983885fab858ad996a37b08be3
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jun 14 09:35:03 2011 -0700

    Make left_index_table const
    Should allow for some missed compiler optimizations in macroblock_cache_load.

commit cb97de722d214f2fe8a0a3dda583d5107cc0fb51
Author: Hii <hiiragikei@gmail.com>
Date:   Tue May 24 08:31:17 2011 +0800

    Make --profile main/baseline force off CQMfile

commit e2d73a2396bf3b0ff6c1c6909c5f52a9a4c6017e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Jun 1 02:11:56 2011 +0400

    Fix VBV bug caused by zero i_row_satd value for first and last row

commit 774555b37ab6f3c2df7b1e2ac576c54e04a7381e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue May 31 00:13:22 2011 +0400

    Fix crash with VBV + forced QP

commit 8ca923ed018d1c46d737a62395fc75d63da5c0d0
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon May 30 02:36:31 2011 +0400

    Fix VBV bug with MinCR limit

commit 4e5eaf0a9f1b1079acee99fb4038b84a8b41ad95
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri May 20 10:43:28 2011 -0700

    Fix bitstream reallocation with slice-max-size + MBAFF

commit c1e60b9032196d204db8dce77051360e403a1d2f
Author: Nikoli <nikoli@lavabit.com>
Date:   Fri Apr 29 14:19:22 2011 +0400

    Improve build system capabilities
    Make static lib and CLI optional.
    Support linking CLI to system libx264.
    Don't strip by default, to match GNU packaging guidelines.

commit 330e258ed53553530290409671fe5a3a26ee7f6a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Apr 26 05:12:26 2011 -0700

    Slightly speed up x86 CABAC asm
    Also make some various cleanups.

commit 160557abe60d0671fbee282b51bd38fe764917c3
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed May 4 23:26:19 2011 -0700

    Faster pixel_memset
    ~4x faster.
    Also inline plane_expand_border for improved constant propagation.

commit 9202f134f4afdce9c142907b99c8501bb6c70b42
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu May 5 00:42:43 2011 -0700

    Add checkasm tests for memcpy_aligned, memzero_aligned
    Also make memcpy_aligned support sizes smaller than 64.

commit 949846678208f15e31d9de8446dbfe05df664a69
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun May 8 18:46:52 2011 -0700

    MBAFF: Add regularization to VSAD metric
    Bias towards the MBAFF decisions made in neighboring mb pairs.
    ~2% better compression on a random 1080i HDTV source.

commit 1fa5e450b6be27b523446dc445341f81c64412c1
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun May 8 18:46:39 2011 -0700

    MBAFF: Improve handling of bottom row mod32 padding
    Force skip on any MBs entirely outside the frame
    If an mb pair in the bottom row is chosen to be progressive, re-pad the bottom rows progressively.

commit 3c23f739750596db5a4f7f3e18dded09f222b08f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun May 8 19:17:36 2011 -0700

    MBAFF: Add frame/field MB stats

commit a97285ee20d7d7557f7cb744a9f371dc2eae40e8
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Wed Apr 27 12:49:25 2011 +0100

    MBAFF: Template direct spatial

commit d4ef7d34211698305ca02055c38b7c7d7aa2b3ea
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Mon Apr 25 21:22:59 2011 +0100

    MBAFF: Template cache_load and cache_load_neighbours

commit 1a4bffb40ca57afb11d2e75212fae8a45d8f5f1a
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Mon Apr 25 09:06:24 2011 +0100

    MBAFF: Make interlaced support a compile time option

commit 8bea09db52374315c11a9e20e55aa8dc866910f6
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Sun Apr 17 10:05:51 2011 +0100

    MBAFF: Don't call zigzag_init for every mb

commit 20d9cb8c7b79b29857fe7d92c931efbd65f09df1
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Fri Mar 25 13:36:21 2011 +0000

    MBAFF: Modify ratecontrol to update every two rows

commit 87b054dc73ecf613df462786d442e923da878715
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Wed Mar 23 21:55:03 2011 +0000

    MBAFF: Add support for slice-max-size
    
    Also add slice-max-size to the regression tests.

commit 3f31da3614c625180e7e291d7cbfb5bcee9db1ac
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Wed Mar 23 21:54:21 2011 +0000

    MBAFF: Add support for slice-max-mbs

commit 0da9676e0fd760111555bf8efb6744e368f372fb
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Thu Mar 17 17:39:18 2011 +0000

    MBAFF: Adaptive quantization
    
    Compute energy for interlaced and progressive choices and pick the least.

commit 115225d9d9df8e59e22b0874a20b44bb528c7bdd
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Mon Mar 14 02:54:30 2011 +0000

    MBAFF: Enable adaptive MBAFF with VSAD decision

commit 6ec00221dd253e70c698d57a6207a8363262561e
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Sat Apr 23 10:44:04 2011 +0100

    MBAFF: Create a VSAD DSP function
    
    x86 assembly by Jason Garrett-Glaser. This gives roughly 30x speed
    increase over the C version.

commit 896014c61e7614571b761a859653e323ee6cf546
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 15 01:17:01 2011 +0000

    MBAFF: Direct spatial

commit d26878b2b423c580c6fb1426128fff5e71b87cc3
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 15 01:16:20 2011 +0000

    MBAFF: Direct temporal

commit f1715be2a88fc4624f2620e14fa65a975e2c1a09
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 15 01:15:06 2011 +0000

    MBAFF: Calculate bipred POCs
    
    Need to calculate two tables for the cases where the current macroblock is
    progressive or interlaced as refs are calculated differently for each.

commit 7da52fa0dc8c93fa39bcd391c76d5a6b67684c6b
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 15 01:39:49 2011 +0000

    MBAFF: Use both left macroblocks for ref_idx calculation

commit 8c281d972fd440a8759dc8569139958ba28d560d
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Sun Apr 3 15:23:35 2011 +0100

    MBAFF: First edge deblocking

commit 0a6f865b4fbce75f9cf996413cd07ac542053370
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Mon Mar 21 11:03:23 2011 +0000

    MBAFF: Implement left edge deblocking functions

commit dce1b213394724cd86ed3e6983cc00ab79cd95e7
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Sat Apr 2 18:27:13 2011 +0100

    MBAFF: Add extra data to the deblock strength structure

commit ed158a9c7675fa6ef6b6b1b368a23f18219b1b51
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Wed Mar 16 21:27:07 2011 +0000

    MBAFF: Deblocking support

commit abc1930c85c6448ccc05adc4b3c30c8edbc44390
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Mon Mar 21 11:02:27 2011 +0000

    MBAFF: Move common code from deblock functions

commit 4fd4559540d959295b86a8e67efc194722a1747b
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Wed Mar 16 21:18:59 2011 +0000

    MBAFF: Add mbaff deblock strength calculation
    
    Move call to deblock_strength to x264_macroblock_deblock_strength to
    keep deblock strength calculation in one place.

commit e1a96db2ba4537221677930db084eff74167047b
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Thu Apr 21 01:47:53 2011 +0100

    MBAFF: Update x264_cabac_mvd_sum_mmxext to work with larger MVDs.
    
    Author: Loren Merritt <pengvado@akuvian.org>

commit 1f07f3253003ec1ff7ce7059eac7f689c3ec6f49
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 29 15:47:04 2011 +0100

    MBAFF: Clamp MVDs to 66 instead of 33

commit e2d4d910221c0bfc816f7f19e9cc8b1309b191f8
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 29 15:46:34 2011 +0100

    MBAFF: CABAC encoding of skips

commit cf58ce08a9121967048a4d5fee68183c7f8f6d32
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Sun Feb 20 15:31:55 2011 +0000

    MBAFF: Track what interlace decision the decoder is using

commit 7b7632b1595eb25e2ad1d93a3e79f2b9ef3c3abb
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Sun Feb 6 22:58:39 2011 +0000

    MBAFF: Fix mvy bounds
    
    Fix MV clipping

commit 3e6c7de727a5118695cb2fb6d07d77f2e76f39cb
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Wed Mar 16 21:34:51 2011 +0000

    MBAFF: Copy deblocked pixels to other plane

commit 31ae5ddaa4342679a14f3339b37b4fd484d32913
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 29 20:26:33 2011 +0100

    MBAFF: Disallow skip where predicted interlace flag would be wrong

commit 44f28de5b12376a01ad5f8e0b90a1688f7dee05f
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Mar 29 20:25:23 2011 +0100

    MBAFF: Inter support

commit fbd06b23a726246d1831bbc6d387883e89cd1b5f
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Fri Jan 14 21:18:14 2011 +0000

    MBAFF: Neighbour calculation
    
    Back up intra borders correctly and make neighbour calculation several times longer.

commit 353802b3bed24be9f0a00a46f8a4c857be783ca2
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Jan 11 20:21:26 2011 +0000

    MBAFF: Store references to the two left macroblocks

commit 2614f1ee9d76f6d58848a6566d237cfa91b5ee9a
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Jan 11 20:16:18 2011 +0000

    MBAFF: Store left references in a table

commit e8f59709185ac5e5f3f3d37e64509dc1e61bf415
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Jan 11 20:09:00 2011 +0000

    MBAFF: Disable adaptive MBAFF when subme 0 is used

commit 7af78892ec523ae3f0bc5de86dd123f39516ceaa
Author: Simon Horlick <simonhorlick@gmail.com>
Date:   Tue Jan 11 20:05:54 2011 +0000

    MBAFF: Save interlace decision for all macroblocks

commit 06f5fa5efadd89585577ba78405825002135e1b0
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu May 12 10:21:16 2011 +0800

    Fix bug in NAL buffer resizing
    Also properly terminate if NAL buffer resizing fails.

commit c132d7b5b76a526e1ba519db6be894b19fd2647f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu May 5 16:27:49 2011 +0400

    Fix zone bitrate multiplier and QP forcing in 2-pass mode
    Previously zone changes could affect frames outside of the given frame range (around 20 neighboring frames).

commit 8cb10c1529318a47836ae0ca9007752fdcd70654
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu May 5 03:24:38 2011 -0700

    Use float constants in qp rounding
    Slight performance improvement and fixes slight difference in output between gcc 3.4 and 4.5.

commit 9a40ee6a6d7354ed5f453908fc29d813d1886481
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed May 4 11:49:06 2011 +0400

    Fix bugs with ratecontrol reconfiguration
    Initialization of some parameters was missed or wasn't synchronized with other threads

commit 5ac5779349dfa811039086f3df580808c739fecc
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed May 4 11:45:58 2011 +0400

    More validation of input parameters
    This fixes a crash with --me umh and insane values of --me-range.

commit a1ac97222c36595f04f0aa1928334e0b3a8d0efe
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun May 1 17:28:56 2011 +0400

    Fix bug in --b-adapt 2 with --rc-lookahead >248
    Problem caused by buffer overflow in strcpy.

commit d18995ef0b61d018cf380397eb5d6d44b47ad7c0
Author: Oka Motofumi <chikuzen.mo@gmail.com>
Date:   Thu Apr 28 13:13:49 2011 +0900

    Check for invalid pixfmts in lavf demuxer

commit b56cb86feed3d0981e422c47ff8ec75a9b66445b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue May 10 01:58:21 2011 -0700

    Fix regression in r1944
    Broke sliced-threads + slice-max-size/slice-max-mbs.

commit b5a8ad7e0047ec65cb01d64b1151e358a7b84314
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Apr 24 18:36:26 2011 -0700

    Precalculate CABAC initialization contexts
    Slightly faster encoding with lots of slices.

commit 896a1fc5fcc8e9855504db6ae32ba0113638c4ad
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Apr 23 21:22:13 2011 -0700

    Avoid redundant log2f calls in mv cost initialization
    Saves around 100 million clock cycles on x264 init.

commit 4b083501fa96c04280f5437e839dbb97da19a0c9
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Apr 21 14:19:05 2011 -0700

    CABAC residual: cleanup and optimizations
    Also kill all Hungarian notation while we're at it.
    Trim an instruction off cabac_encode_bypass.

commit bd00852715011d1552a918921960263650a34040
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Apr 20 02:54:49 2011 +0400

    Validate input parameters more carefully
    Get rid of redundant warnings upon encoder_reconfig calls.
    Also avoid encoder_reconfig turning off psy_rd/trellis.

commit 6e33b51a6571dfc814053096c82538ad278f1868
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Apr 22 01:13:28 2011 +0400

    Fix VFR MB-tree to work as intended
    Should improve quality with FPSs much larger or smaller than 25.

commit e41a777626c95c97e14451c221688447187fa48b
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Sun Apr 24 15:33:45 2011 +0900

    Support more recent GPAC versions

commit 02df6964a05f4fe4395f528b8e365a561e793e9f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Apr 23 15:19:40 2011 +0400

    Fix decoder desync with positive --chroma-qp-offset and zones

commit f5db2e4a90d536b6665e7a5913ad4648fc918077
Author: Anton Khirnov <anton@khirnov.net>
Date:   Wed Apr 20 10:53:44 2011 +0200

    Use AVMEDIA_TYPE_VIDEO instead of deprecated CODEC_TYPE_VIDEO
    
    Fixes build with lavf/lavc 53.

commit b250180d710b11c8f457a915ce4f66813ae55a25
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Apr 15 16:33:27 2011 -0700

    Force pic-struct for Blu-ray compat + fake-interlaced

commit f87bc0421e873dd83769e768ee62431f01118999
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Apr 14 12:14:52 2011 -0700

    Fix open-gop with no-psy

commit aa21558b139c1bbd9067444a9d802d2407dc95bc
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Apr 14 11:09:45 2011 -0700

    Fix build with disabled asm

commit 7a9e08d301212fc37516562269d5fbbc040cf84c
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Apr 6 02:16:42 2011 -0700

    Improve Blu-ray compliance
    Use dec_ref_pic_marking SEIs to repeat B-ref referencing information.
    Don't allow B-frames to reference frames outside their minigop.

commit f9e7f531048df7219a44203031c8f79bae6170d0
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Apr 6 17:15:50 2011 -0700

    Consolidate Blu-ray hacks into --bluray-compat
    This option is now required for Blu-ray compatibility.
    --open-gop bluray is now gone (using bluray-compat and open-gop implies a Blu-ray compatible open-gop).
    This option doesn't automatically enforce every aspect of Blu-ray compatibility (e.g. resolution, framerate, level, etc).

commit f422ec93254ed3f9883acac0bb3f67e3b4ea960c
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Mar 29 05:33:44 2011 -0700

    Add SSE support to rectangle.h for 16-byte stores
    Uses GCC vector intrinsics; may be suboptimal on particularly old GCC versions.

commit bdf23fe70c7c0c1f96cf98a669b2f75c6eb8cc4f
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Apr 12 19:22:56 2011 -0400

    Do not force Intel Compiler to target pre-mmx architecture for x86
    Caused a speed penalty against gcc equivalents.

commit 0ef8a32f739a743b009d35eb4d4f208308cb07b8
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Apr 12 01:16:48 2011 -0700

    Warn users when using --(psnr|ssim) without --tune (psnr|ssim)
    This is a counter to the proliferation of incredibly stupid psnr/ssim "benchmarks" of x264 in which the benchmarker conveniently "forgot" --tune psnr/ssim, crippling x264 in the test.

commit e577efbf274f78ef9149414b65c80634484b42ad
Author: Dylan Yudaken <dyudaken@gmail.com>
Date:   Thu Apr 7 16:06:19 2011 -0700

    Remove redundant mbcmp calls in weightp analysis

commit 529bbefe6cb2dfcde967bff97528d70e14cea5c7
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Apr 6 22:48:57 2011 +0400

    Use integer math for filler size calculation

commit 89d92e5b1a6eb727e31f203cb580ffa8edc69331
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Apr 5 14:06:54 2011 +0400

    Disable progress for FFMS input with --no-progress

commit 86d1963f69b192037373d69aea5ede7fd6c352db
Author: Michael Stuurman <michael.stuurman@gmail.com>
Date:   Thu Mar 31 13:45:22 2011 -0700

    Fix bug in intra-refresh ratecontrol
    Row SATDs were slightly incorrect.

commit 62dfb25fe3599ff2b28fcc3c59f0e290d061b1ab
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Apr 10 04:39:51 2011 -0700

    Cosmetics: fix some signedness issues found by -Wsign-compare

commit e9e74e9e55ba645801e021665c1df1e72098e71e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Apr 3 16:31:52 2011 -0700

    Minor fixes
    Fix a comment typo.
    Align an array properly.
    Make x264_scan8 unsigned: saves a bunch of movsxd instructions on x86_64.

commit 4be6702c320f2cf8fb40a135630aa22e91dc56de
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Mar 25 00:08:40 2011 +0300

    Improve C99 support checks in configure
    Fixes configuration with Intel compiler in some cases.

commit 08d04a4d30b452faed3b763528611737d994b30b
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Mar 18 18:24:33 2011 -0700

    Eliminate the possibility of CAVLC level code overflow
    Instead, if it happens, just re-encode the MB at higher QPs until it fits.

commit 10d56be05a86c035d870b3a846e30ce3b6e52555
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sat Mar 12 23:21:09 2011 -0800

    x86 SIMD versions of optimize_chroma_dc
    SSE2/SSSE3/SSE4/AVX implementations.
    About 3x faster.

commit 13afdfab6ba06491366579e104131115bf1f1ce7
Author: Manuel Rommel <maaanuuu@gmx.net>
Date:   Sun Dec 26 18:52:49 2010 +0100

    Add Altivec version of mc_weight

commit 35b6462f017f2dbb8cb5f546f5dadd8fff6ecfee
Author: Manuel Rommel <maaanuuu@gmx.net>
Date:   Sun Dec 26 21:41:33 2010 +0100

    Add Altivec versions of mbcmp_x functions
    These aren't merged versions, they just call the existing asm code.
    A merged implementation would of course be faster.

commit 372ba94b66c25c49a8d9c924413cbb09d4fa4805
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Mar 2 21:31:27 2011 -0500

    Recognize cygwin as itself when not targeting mingw
    Also fix broken thread detection on cygwin.

commit 9b7b3c7e238e3cac383dd7d2863b7c3c0f718422
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Mar 2 20:39:25 2011 -0500

    Patch Intel's CPU dispatcher
    Reduces Intel Compiler's bias against non-Intel CPUs.
    
    Big thanks to Agner for the original information on how to do this.

commit b41d1821a0fa6fe6b3e9f06b30194e172c6ac474
Author: Steven Walters <kemuri9@gmail.com>
Date:   Mon Feb 28 19:07:40 2011 -0500

    Intel Compiler support
    
    Big thanks to David Rudie, the original author of this patch.

commit c7e352ca08a68b891480b6cb449dd3f9bfb45218
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Tue Mar 8 09:41:46 2011 +0000

    Cosmetics: make struct definition braces consistent

commit d5ba9edc78f7538d0d212c0712e4197521474160
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Mar 23 20:59:41 2011 -0700

    Fix restoring of console title on Windows with ffms indexing

commit 17ab74b25067e01bf35e3fcb7239c1cf0b8c476b
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Mar 10 00:31:26 2011 +0300

    Fix possible buffer overflow in mp4 muxer

commit ee0245f465ea7725b48ef0b0e90e8ede1a403d21
Author: Nick Lewycky <nlewycky@google.com>
Date:   Mon Mar 7 18:10:36 2011 -0800

    Remove inline asm syntax not supported by LLVM's assembler
    Doesn't affect compiled output outside of LLVM.

commit 5fd3dce0c72a40722df6a9bddf599980846f6fe8
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 18 17:50:42 2011 -0800

    Fix 10L in r1912
    SSSE3 code got used in MMX/SSE2 and vice versa (in hpel).

commit 36385abbb24fdaa6f30a54c4390893b524a6a165
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Sat Jan 15 13:44:45 2011 -0500

    Add AVX functions where 3+ arg commands are useful

commit 49fd2893c850d2f1d2f72f993490e6795d31f59f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Feb 7 03:15:03 2011 -0800

    Frame-packing 3D: don't place scenecuts on right views
    Caused problems for some players.

commit d00e31aa3285cc5f2f7e1355d31ff4a5014b37e0
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 11 00:54:51 2011 -0800

    Improve slice-max-size handling of escape bytes
    More accurate but a bit slower.  Helps deal with a few obnoxious corner cases where the current algorithm failed.

commit 129d8ca14edb615834418cd36627b59524f8aee1
Author: Nathan Caldwell <saintdev@gmail.com>
Date:   Thu Feb 10 21:25:00 2011 -0700

    Use bs_write1 wherever possible in header writing

commit 02b0f74dbd5a2f9001598a8c07c9ff0f8b13b5e8
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Feb 8 14:48:18 2011 -0800

    Remove obsolete mvcost init code

commit 429af213842178f77ab33bbfc9f6b9cac56c7e7a
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Feb 13 12:19:13 2011 -0800

    Fix memory leak on encoder close if not all frames are flushed

commit 0926279b0aa5f4e53f32b0f82db855ab3a586664
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Feb 12 05:19:55 2011 -0800

    Fix signedness bug in CPU detection
    Luckily didn't affect anything due to C signedness rules.

commit 4835f7c8d5e0c164c6f9a67917efe5dd63f5bdb9
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 11 13:47:27 2011 -0800

    Fix dumb bug caused by stray semicolon
    Caused noise reduction to run incorrectly in part of RD, but probably had no effect.

commit 1f69cb33c1dc6992fbe4092d7aa906534acdcac8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Feb 10 05:05:53 2011 -0800

    Fix malloc of zero size
    Caused x264 to fail with some settings on systems that return a NULL pointer for malloc(0), like Solaris.

commit 9a705ef42de8e3699f938510776650122cb0b07b
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Feb 9 23:01:07 2011 +0300

    Fix crash in mp4 muxer after failure of x264_encoder_open

commit c8bf13ca46877cb91bd278fcb70ed0fc0737e5d7
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Feb 9 11:36:02 2011 -0800

    Fix shadowed variable warning in ffms.c

commit e5926dc9969f98aa2123d726f583d078729d0b19
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Feb 9 11:29:23 2011 -0800

    Fix some Intel compiler warnings

commit 60ef1f8627a26de853980755e35b908cbd5b227d
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Feb 6 23:12:09 2011 -0800

    Fix 10L in r1886
    Aspect ratio can't be set before SPS is initted.

commit e6738f2074ac6a2d93e98b05c081d9d98562c48a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 4 20:49:45 2011 -0800

    Improve update interval of x264cli progress information
    Now updates every 0.25s instead of every N frames.

commit e6f00af6ec59d63fac489594121d6cb3a0e98569
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Feb 5 01:16:49 2011 -0800

    Windows: restore previous console title after encoding
    MSDN docs claim that SetConsoleTitle's effect is reverted when the process terminates, but this doesn't always work properly.
    Accordingly, manually revert the console title at the end of encoding.

commit 16868ec528909a80766a9a737e6ce3649521d9c3
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sat Feb 5 15:02:34 2011 -0800

    Allow WEIGHTP_FAKE in interlaced mode
    It seems to work fine as-is even though real weightp doesn't support interlacing yet.

commit eb16899df534e43ebc7a18eca4cc2f0a6cc8566d
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Wed Feb 2 11:01:13 2011 +0000

    Output pic struct information in libx264 API

commit 0494e8e6cbcd0ed3d5c0886bc3cab28169932563
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Jan 30 00:00:09 2011 -0500

    Enable FastShuffle on Penryn and Nehalem CPUs without SSE4

commit 53b229c5c0c508f34875ca4053225c1862fc4205
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Thu Feb 3 10:54:44 2011 +0900

    Minor cosmetics in configure

commit 56818369f0cfaca46348839a4789d2b623bac7eb
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Jan 28 18:44:24 2011 -0800

    Various --help cosmetics

commit 08141fe1100d2cf87c5b6f474c02ddfcab4a22ac
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Jan 30 02:27:32 2011 -0800

    x86inc.asm: error on duplicate functions
    Compile error if there's two functions of the same name, instead of silently renaming one of them.

commit dce07ee72fa8833d3b70125983d447ce2b63ed1d
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Mon Jan 31 13:56:23 2011 -0800

    Bump yasm version requirement to handle AVX

commit 1dae62542ec10ded4e79a955df49917f26ae9ab3
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Feb 4 20:48:37 2011 -0800

    Fix rare corruption with subme=10
    Also fix dumb bug in VBV emergency AQ scaling.
    
    Regression in r1881.

commit aaa7525cc47aa58ae8f03097f2dbbbebaf326f45
Author: Mans Rullgard <mans@mansr.com>
Date:   Thu Feb 3 13:32:06 2011 -0800

    Fix overflow in ARM NEON i16x16 planar pred
    Patch backported from ffmpeg.

commit ad58211837d4dfce51ac2824d0353703017d1812
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Feb 2 22:51:45 2011 +0300

    Fix incorrect frame duration for VFR input for some frames

commit 7231bdcd2cfdb5d625141ae81ebbdd964b146135
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Feb 1 00:43:03 2011 +0300

    Fix possible division by zero in mkv and flv muxers on close
    This could crash if anything failed before output.set_param (for example, incorrect params refused by x264_encoder_open).
    Bug introduced in r1873.

commit 6dd825ddb87c004606b6645ae1ebee34a70ea19e
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Jan 28 15:19:06 2011 -0800

    Fix reconfiguration of parameters that modify the SPS
    For now, this is only aspect ratio.

commit 1e45ed5537ac3854bcb2a0ed016ce23a9a68aa1a
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Fri Jan 28 14:03:08 2011 -0800

    Fix possible crash on Phenom with lookahead thread disabled
    Misalign mask needs to be set for the main thread on entry, too.

commit 7313bb53ff8545eda68eca219b1bee77ea4a25a6
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Jan 29 12:43:34 2011 -0800

    Hotfix for some bugs in VBV emergency

commit 9e0b9b731e3487f39c659beebb6f300ea85860ed
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jan 27 13:59:20 2011 -0800

    Fix warnings in cpu.c

commit f6d0c95b964d52780891c39f6ec93022b6ec1cb0
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jan 27 05:33:25 2011 -0800

    Check for OS AVX support in addition to CPUID
    Even if not using ymm registers, AVX operations will cause SIGILLs on unsupported OSs.
    On Windows, AVX is only available on Windows 7 SP1 or later.

commit cd53fa47afadb563eefb72c137fb30bd06d26c85
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jan 18 00:52:03 2011 -0800

    VBV emergency mode
    Allow ratecontrol to select "quantizers" above the maximum.
    These "quantizers" progressively decimate the source to avoid VBV underflow.
    x264 is now VBV compliant even with input as evil as /dev/random.

commit f74136eaf9ab150a147684ac3189fbafd82f044f
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Wed Jan 12 09:54:33 2011 -0800

    Initial AVX support
    Automatically handle 3-operand instructions and abstraction between SSE and AVX.
    Implement one function with this (denoise_dct) as an initial test.
    x264 can't make much use of the 256-bit support of AVX (as it's float-only), but 3-operand could give some small benefits.

commit 065f6965a224efd59201d681dcdcf51f35429808
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 11 11:04:52 2011 -0800

    Double the base framerate for frame-sequential 3D files
    A 60fps frame-sequential 3D file is really only 30 FPS, just alternating between eyes.
    Accordingly, ratecontrol should treat it as if it was really 30 FPS.
    This will increase the bitrate at the same CRF level for such videos when --frame-packing 5 is used.

commit bb4182d8ea123666819d9547a7b5234d4da34a1b
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Thu Jan 20 23:12:01 2011 +0900

    Add --input-fmt option to lavf input
    Conforms to ffmpeg's `-f` option.
    Use this when lavf fails to guess the input format.

commit f04f004db516077b119dde8b9feef08c29451239
Author: Tony Young <rofflwaffls@gmail.com>
Date:   Fri Jan 21 13:06:28 2011 -0800

    Two improvements to regression test script
    Use SHA-1 hashes for temporary file names to avoid exceeding OS filename length limits.
    Correctly return to the original branch after testing if you were on a branch.

commit 1a321d783413038999b8e9445c64fb82ddcfeb6d
Author: Vittorio Giovara <vitto.giova@yahoo.it>
Date:   Fri Jan 14 10:02:33 2011 -0800

    Add some missing values to the non-extended SAR table

commit 78b4fc4b81ef78bc03687716a32b0b811b64a27f
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Fri Jan 14 02:10:12 2011 -0500

    Bump dates to 2011

commit 62b661a4a1f569f79f07dc81634a9371a8887c28
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Tue Jan 18 12:31:26 2011 -0800

    More correctly write frame-packing SEI flags
    
    Bug reported by Nero.

commit 172018c4969ce5ed0188ad41c1fba5727570fe9c
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Thu Jan 20 14:45:57 2011 -0800

    Don't die in x264_encoder_close if an error occurred in x264_encoder_encode
    Also clean up properly in x264.c (mostly useful for finding bugs in cleanup).

commit 515d9fb1fbe25fc85998a201796e01ef4b2648fa
Author: Jason Garrett-Glaser <jason@x264.com>
Date:   Sun Jan 23 21:03:14 2011 -0800

    Fix reconfiguration of b_tff
    Attempting to change field order during encoding could cause slight corruption.
    
    Also fix delta_poc_bottom to be correctly set if interlaced mode is used without B-frames.

commit b8e1d1b753c594b1b3fa3d7ecbf1e393200ae7b3
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Jan 23 15:19:11 2011 -0500

    Fix x264 CPU detection with >=64 CPUs on Windows
    x264 won't actually use more than one processor group's worth of CPUs, however.
    This isn't a problem, as a single x264 instance can't effectively use a full 64 cores anyways.

commit 4c92c105e995884f3780a5e886fd1e11f2ec3b92
Author: Holger Lubitz <holger@lubitz.org>
Date:   Fri Jan 21 19:13:57 2011 +0100

    Remove high bit depth mmx quant
    It was using pmuludq which is sse2, and the function isn't really possible without pmuludq.

commit ef2a0805eb7640323cf90facc9477152738fc1e5
Author: Holger Lubitz <holger@lubitz.org>
Date:   Sat Jan 22 16:49:23 2011 +0100

    Fix cacheline check in avg2 w20 cache32
    Didn't result in incorrect output, only slightly decreased speed on a few obsolete systems.

commit b4865a6fe6795d3e882214d4c1ff5f3a5dafbab2
Author: Holger Lubitz <holger@lubitz.org>
Date:   Fri Jan 21 17:17:29 2011 +0100

    Fix illegal instruction in high bit depth ssd_nv12_mmxext
    Unfortunately paddq isn't available in mmxext, only in sse2 and up.
    Also fixes to actually allow widths up to 16416/32832 without overflow.

commit 22bfd310abced4df0b11c9620b152e5cfe746d43
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Dec 23 19:33:01 2010 -0500

    VFR/framerate-aware ratecontrol, part 2
    MB-tree and qcomp complexity estimation now consider the duration of a frame in their calculations.
    This is very important for visual optimizations, as frames that last longer are inherently more important quality-wise.
    Improves VFR-aware PSNR as much as 1-2db on extreme test cases, ~0.5db on more ordinary VFR clips (e.g. deduped anime episodes).
    
    WARNING: This change redefines x264's internal quality measurement.
    x264 will now scale its quality based on the framerate of the video due to the aforementioned frame duration logic.
    That is, --crf X will give lower quality per frame for a 60fps video than for a 30fps one.
    This will make --crf closer to constant perceptual quality than previously.
    The "center" for this change is 25fps: that is, videos lower than 25fps will go up in quality at the same CRF and videos above will go down.
    This choice is completely arbitrary.
    
    Note that to take full advantage of this, x264 must encode your video at the correct framerate, with the correct timestamps.

commit 950de546c70874e174cc54f098551d05475caee9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Dec 31 22:54:16 2010 -0500

    Improve reference ordering in interleaved 3D video
     Provides a decent compression improvement when encoding interleaved 3D content (--frame-packing 5).
     Helps more without B-frames and at lower bitrates.
     Note that x264 will not do this optimization unless --frame-packing 5 is used to tell x264 that the source is interleaved 3D.
    
    Tests consistently show that interleaved frame packing is by far the best way to compress 3D content.
    It gives a ~35-50% compression benefit over separate streams or top/bottom or left/right coding.
    
    Also finally add support for L1 reference reordering (in B-frames).
    Also add support for reordered ref0 in L0 and L1 lists; could be useful in the future for other things.

commit 29fc527ee7253d2d64307bc006d95bf038beee79
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 21 20:58:10 2010 -0500

    Cosmetics: fref0/1 -> fref[2] and i_ref0/1 -> i_ref[2]
    A much-needed refactoring, plus makes the next patch easier.

commit f9bbe483539bb0905a1497d581ba480b7a53dc0e
Author: Alex Wright <alexw0885@gmail.com>
Date:   Sat Dec 25 19:31:00 2010 +1000

    Check an extra offset during weightp analysis
    Up to 0.1 - 0.6 dB gain on some fade-ins with --weightp 1, less with --weightp 2.

commit 8c160dbec1e655268adda9072659b9c687aacfaf
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Jan 4 15:27:38 2011 -0500

    SSE2 high bit depth SSIM functions
    
    Patch from Google Code-In.

commit aab8418b3a5c6e03d309c52b4fb030558956e9c3
Author: George Stephanos <gaf.stephanos@gmail.com>
Date:   Sun Jan 2 11:26:10 2011 -0500

    SSE2 high bit depth intra_predict_(8x8c|16x16)_p
    
    Patch from Google Code-In.

commit bd5487219adef1e857257829bcd0403ae816fb9d
Author: Joe Cortes <escozzia@gmail.com>
Date:   Fri Dec 24 21:33:57 2010 -0600

    MMX high bit depth coeff_last4
    
    Patch from Google Code-In.

commit 658b6ae1b5f43b488efd0ab4f6c60b93a1366333
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Thu Dec 23 12:15:03 2010 -0500

    SSE2 high bit depth zigzag_interleave_cavlc
    
    Patch from Google Code-In.

commit 2b8f9731b7cb01f0c93df27e7fcc4f1e9fa75c0b
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Wed Dec 22 17:53:08 2010 -0500

    MMX/SSE2/SSSE3 high bit depth frame_init_lowres functions
    
    Patch from Google Code-In.

commit 1da49a210d92027c31ee3129929baeb6053a2a7c
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Thu Dec 23 23:19:39 2010 -0500

    MMX high bit depth 4x4 intra predict functions
    DDR and HD directions, as well as making HU faster.
    Also enable some SSE2 versions of high bit depth functions that were added but not properly enabled.
    
    Patch from Google Code-In.

commit 9247e580789c7c02884824023b3516695483d3dc
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Wed Dec 22 16:51:22 2010 -0500

    SSE2 high bit depth 8x8 intra predict functions
    DDL, DDR, VR, HU, and HD directions, as well as the 8x8 filter.
    Also make 8-bit MMX VR faster, by backporting the optimizations from the high bit depth version.
    
    Patch from Google Code-In.

commit cf0c82a3ef09706af1d1cc6afb5665d13c968d1b
Author: George Stephanos <gaf.stephanos@gmail.com>
Date:   Wed Dec 22 15:44:03 2010 -0500

    MMX/SSE2 high bit depth 8x8c intra predict functions
    
    Patch from Google Code-In.

commit 8d96f7d34c736f3924842871930b602bc83c6264
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Sun Dec 19 16:31:59 2010 -0500

    MMX version of high bit depth plane_copy
    And various cosmetics.
    
    Patch from Google Code-In

commit 8cf764ecef221d085bb6669dbb4301e1904a0bc3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 18 12:40:13 2010 -0800

    Faster x86 predict_8x8c_dc, MMX/SSE2 high bit depth versions

commit e570fc2e6305cc5b5dd0422c9bdd1babe37f3d1b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 18 05:40:49 2010 -0800

    SSSE3 high bit depth sad_aligned functions

commit a715df2ea0c51be771f0888adf444be5841281d6
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Thu Dec 16 04:41:17 2010 -0800

    MMX/SSE2 high bit depth interleave functions
    
    Patch from Google Code-In.

commit 5e11ab64a14a805bfaff4d925a70bb225f050fd0
Author: Joey Geralnik <jgeralnik@gmail.com>
Date:   Wed Dec 15 09:14:56 2010 +0200

    MMX/SSE2 high bit depth avg functions
    
    Patch from Google Code-In.

commit 985a8ec8b643508a0889d16d3e091082b914ea52
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Dec 14 22:47:51 2010 -0500

    MMX/SSE2 high bit depth deinterleave functions
    
    Patch from Google Code-In

commit b519e0fba6959fc9725e8c2f83f5926eca8621f8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jan 5 23:29:36 2011 -0500

    Shut up some incorrect gcc uninitialized variable warnings

commit 103e79653b40000f8cdb481d9732f98f188be966
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Dec 25 00:55:14 2010 +0300

    Write --crop-rect and --frame-packing options to x264 SEI

commit 96e54b2c647d6655cb7217a83d002b12cf2b4cb3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Dec 15 13:00:14 2010 -0800

    Add missing space to parameter SEI

commit 0f6a8f77e3783124c8cccd53b7c8c674ccc5c095
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Tue Dec 28 00:54:28 2010 +0000

    Fix typo in documentation

commit 131aa222f6c39dc9eecf145abb75c5b9a929579f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Dec 18 08:29:18 2010 -0800

    Fix redundant linebreaks in statsfile with weightp

commit f05aff28a13a398900324c5b243e5fba71486ce5
Author: Ramiro Polla <ramiro.polla@gmail.com>
Date:   Wed Dec 15 14:35:02 2010 -0200

    Use cross_prefix for strings in endian test and as test

commit ee59e69dd9abaf612811e336368e63aab02a99d8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Jan 2 14:36:53 2011 -0500

    Fix checkasm test for quant in high bit depth
    Eliminate some spurious failures.

commit 4a7b7e10c77c30d735a331cf71f10312eaa7c493
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Dec 30 20:35:10 2010 -0500

    Fix broken YV12 handling in the resize filter

commit c500639eb0b8f65f95c371d8769cc1b297e78502
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jan 5 22:21:18 2011 -0500

    Fix bug with negative lookahead mb costs in high bit depth

commit a7ed3c5c568e0a0d6b77890aeacf3d65b8bb2277
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Jan 4 14:33:05 2011 -0500

    Fix overflow in SSIM calculation in 10-bit

commit cb15f76189a21d6234086a0cbda7357fd5cfa524
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Dec 24 14:52:57 2010 -0500

    Fix some possible overflows in VFR ratecontrol with extreme timebases

commit 21a6034d692c281b5be13a7913dc948468747537
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Jan 9 16:01:04 2011 -0500

    Fix memory leak in lavf demuxer.
    Leak only occurred with input files that have more than one video stream.

commit a4406c19e75eda4ee5754827cc9381276be403ab
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Dec 24 17:28:42 2010 -0500

    Fix satd predictors with high bit depth
    Resulted in odd CRF-mode results with --no-mbtree, as well as suboptimal VBV handling.

commit 147e8eb6f9b0a9d50b993c80da4f82eb5c06d50e
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Fri Jan 7 23:05:50 2011 -0500

    Fix compile error with high bit depth and disable-asm

commit b59be2b931c30b17cf29186ddcce11d493d140d1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 18 08:22:34 2010 -0800

    Really fix gcc win32 misalignment crash
    gcc's -fno-zero-initialized-in-bss only works if an explicit initializer (e.g. = {0}) is used.

commit a51816a5dc33ad7fbd0301c8dd2d61c161213107
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Dec 11 20:30:29 2010 -0500

    Support for native Windows threads
    
    Patch originally by Pegasys Inc.

commit b5e236636a26cf40568ccc44fefcc6aef6d0f0ea
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Mon Dec 13 17:15:12 2010 -0500

    MMX/SSE2 high bit depth weight_cache/offset(sub|add) functions
    
    Patch from Google Code-In.

commit 70271f48d601c264963191db61bb207fe426a094
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Wed Dec 8 17:56:22 2010 -0500

    SSE2 high bit depth dequant functions
    
    Patch from Google Code-In.

commit 38ff5d317f9e71aa9e0051dc966ddf2db26dde25
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Dec 7 22:48:15 2010 -0500

    SSE2 high bit depth zigzag functions
    
    Patch from Google Code-In.

commit 6d9310e0825f756fd53acaa77ea1aca3c7e927fc
Author: Daniel Alexandru Morie <andu.qq@gmail.com>
Date:   Tue Dec 7 06:11:02 2010 -0800

    MMX/SSE2 versions of high bit depth store_interleave
    
    Patch from Google Code-In.

commit 3ee357af82f01b8fd6a3ecf052ef98f632f375a2
Author: Vittorio Giovara <vitto.giova@yahoo.it>
Date:   Fri Dec 10 20:43:00 2010 -0800

    Add frame-packing SEI support for signalling 3D video

commit 78e3bc95f6c8daef4222e6f231b88dfa7edbccb6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 11 03:48:59 2010 -0800

    Allow 8x8dct+cavlc+lossless with subme>=6

commit 8ca6222d0d1541f3585a20af178f9105df729f3c
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Thu Dec 9 12:00:24 2010 +0900

    Add interlaced/no-interlaced case to regression test script

commit 39a5799f9af0b117181f5f6866f292733876a173
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Thu Dec 9 11:59:49 2010 +0900

    Save more memory with weightp in >8-bit

commit 84d7a9557a6d4a638084bd046ba3e7187b0620b2
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Thu Dec 9 11:57:38 2010 +0900

    .gitignore more untracked file types

commit fd8ff3330de3cc2cbabb0bba785fe7a92eb0a305
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Dec 7 17:49:21 2010 +0300

    Work around gcc/ld alignment bug on win32
    Fixes problems due to misalignment of static zero arrays (win32 ld can't align .bss properly).

commit 5fbb9d62a4ce93b5d36ee337f33990703f46862c
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Dec 7 15:19:46 2010 -0500

    Fix high bit depth intra pred functions
    And re-enable them accordingly.
    
    Patch from Google Code-In.

commit 22af357718b03756263342a34d32157de8ee769d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 11 13:37:09 2010 -0800

    Fix weightp analysis with high bit depth

commit e8ca7beb5c1432fb1c6f87318cb6704fc2a7e2de
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Thu Dec 9 12:19:57 2010 +0100

    Fix build error in high depth
    Caused by multiple definitions of x264_add8x8_idct_sse2.

commit fdcf2aea4798546d4463916ee538e39b862b84ff
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 7 03:15:46 2010 -0800

    Hotfix for high bit depth
    Temporary fix for some unaligned access crashes.

commit a2e043dc0193b06a375c147221f10d1f6d8d6240
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Dec 7 13:44:55 2010 +0300

    Delete x264_config.h on distclean

commit 0a39e00c7b115fb6d1464bc859d5d1b256692562
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Thu Nov 25 19:44:56 2010 -0500

    Tons of high bit depth intra predict asm
    
    Patch from Google Code-In.

commit 3f2f3f90175e1da7cc83c70ba22ff823bc657092
Author: David Czech <davidczech510@gmail.com>
Date:   Sat Nov 27 17:34:32 2010 -0800

    SSE2 high bit depth 8x8/16x16 idct/idct_dc
    
    Patch from Google Code-In.

commit 64b764832e6a5ba830676b0e81f5e4fdafd85a52
Author: Ramiro Polla <ramiro.polla@gmail.com>
Date:   Tue Nov 30 02:17:23 2010 -0200

    Create and install x264_config.h
    This header can be used to determine the bit-depth and license of libx264.

commit 62a2dc0a53b0eaa29daa5fc7e1586e729cb5b533
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Oct 13 21:53:50 2010 -0400

    Detect Avisynth initialization failures
    Detect if there is a critical Avisynth initialization failure and print the associated error.
    This, however, requires a feature present in the latest version of Avisynth alpha (2.6).
    Previous versions are unaffected.

commit 2b0451ff661dcf2982d81e79ee44d1f5f213bd0a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 25 22:12:07 2010 -0800

    Automatically restrict QPs to avoid quantization (under|over)flow
    --cqm jvt and similar should now work "out of the box" instead of requiring futzing with --qpmin.

commit 2a59dfad21643a6635cd7a7ec4d4d00b0ce3d817
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Dec 4 23:29:08 2010 +0300

    Don't try to get timecodes if reading frame failed
    This fixes "input timecode file missing data for frame" warning with piped input where we don't know total number of frames.

commit e0f5dbeb7aad6e29ff1fca7be9ea8d6568a0eeb2
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Thu Nov 25 23:05:21 2010 +0100

    Fix possible overflow in sub4x4_dct in 10-bit builds

commit c2cc8c3108b615e2d6ded6387e37c2a6bad5130e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 6 14:19:09 2010 -0800

    Fix bug in intra-refresh + threads
    Intra refresh bar quality increase wasn't correctly applied.

commit b2a6aa433e9b9e1303869fcdb9b9c92b30795f85
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 6 12:00:13 2010 -0800

    Fix file handle leak in libx264 on error

commit 71cf5fd3fb62752b84de39fd14284da9900afca5
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Oct 10 18:17:35 2010 -0400

    Fix incompatible csp format issue
    Problem occurred with unknown pixel formats and non mod2 resolutions in the resize filter.

commit f6482d8c07754c8703a090a5bd8d1683179b65e2
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Nov 27 15:54:39 2010 -0800

    Really fix fittobox resize rounding code

commit fba116fc1245b940ef4e95da5527ea5bea8ed031
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Sun Dec 5 09:31:01 2010 +0900

    Fix regression in rev1549
    Skip auto timebase denominator generation when generated timebase denominator exceeds UINT32_MAX.
    Also fix double free.

commit 96c4835b29b83f9a3eb1cb6b56bc161658b59ecb
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Nov 28 01:05:02 2010 +0300

    Fix --tcfile-in if timecode v2 file starts from nonzero pts

commit 3534560566940cdd143ae7b6e054980d09a359d7
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Fri Dec 3 22:30:51 2010 -0800

    SPARC/Solaris build fixes

commit e89c4cfc9f37d0b7684507974b333545b5bcc37a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 25 16:47:29 2010 -0800

    Fix typo in r1797

commit 04b59661469bfef7356e5e8ff443252fcf5fe264
Author: Tony Young <rofflwaffls@gmail.com>
Date:   Wed Nov 24 16:58:38 2010 -0800

    Add Python regression test script
    
    Patch from Google Code-In.

commit e440dc0f7909c67cdca148fc8a9ea413521e0e5b
Author: Alex Wright <alexw0885@gmail.com>
Date:   Wed Nov 24 02:19:51 2010 -0800

    Make --weightp 1 a better speed tradeoff
    Since fade analysis is now so fast, weightp 1 now does fade analysis but no reference duplication.
    This is the opposite of what it used to do (reference duplication but no fade analysis).
    This also gives weightp's better fade quality to faster presets (up to superfast).

commit 61d72032d9d5e78c99d75e30a36f2e63f3268222
Author: Daniel Kang <daniel.d.kang@gmail.com>
Date:   Tue Nov 23 20:29:37 2010 -0500

    SSE versions of some high-bit-depth DCT functions
    Our first Google Code-In patch!

commit 6a8ed0f05063ba783bcfe3a30fc0ef6711937b5c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Nov 23 23:06:51 2010 +0300

    Clean up weightp analysis function

commit 7226b4e7073340c000e94221924b4e45f27a900c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 19 16:58:38 2010 -0800

    Add API function to return max number of delayed frames

commit 9cae442bd589b063c5ce9d6b224d17ff5f6337c0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 25 13:01:33 2010 -0800

    Copy field order flag in encoder_reconfig

commit 1bcb63ebb21a56523a4d6e83d2ce5f92ab950f57
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Wed Nov 24 23:09:54 2010 +0900

    Cosmetics in configure

commit 372f39811c78b940e10477dfde37d78aa488d07b
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Mon Nov 22 11:01:57 2010 +0900

    Add some more info to `x264 --version`

commit 04256645537d17b66f2a46bd8605859e91e0cf8a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 20 23:30:42 2010 -0800

    Change qpmin default to 0
    There's probably no real reason to keep it at 10 anymore, and lowering it allows AQ to pick lower quantizers in really flat areas.
    Might help on gradients at high quality levels.
    The previous value of 10 was arbitrary anyways.

commit 2f8ad9797d5118168d128f38544607494dfc0f73
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 25 13:01:16 2010 -0800

    Fix ticks_per_frame check for VFR input

commit 21877a04337d044dfcd93cca957967662dbdd6d6
Author: Steven Walters <kemuri9@gmail.com>
Date:   Mon Nov 22 10:31:05 2010 +0900

    Fix configure so that boolean configuration options are 1/0
    
    There are many cases of 1/undef, not 1/0.

commit b38fd04c376bac31544782fabe03471567a8badf
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Sun Nov 21 01:59:33 2010 -0500

    Only build SPARC VIS asm if high bit-depth is disabled

commit ee75acd55e1a89eb9a8c2f7d14c923b57e08ceb3
Author: Sean McGovern <gseanmcg@gmail.com>
Date:   Sun Oct 10 19:34:18 2010 -0400

    Fix build on SPARC Solaris 10

commit 8eaf8a66d5d8a5c55155feee293150f9fb0eba0e
Author: James Darnley <james.darnley@gmail.com>
Date:   Sun Nov 21 10:50:48 2010 +0100

    Fix resize filter rounding code

commit af1a7413afbea7b6a2159b644144b2dcac3482a3
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Nov 22 17:17:36 2010 +0300

    Fix regression in chroma weightp
    Missing cache calls could cause artifacts, encoder/decoder desync.

commit c764e29dad01f4c1441b614171a92453019a5e4c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 19 15:40:23 2010 -0800

    Fix some crashes with high bit depth
    Not all arrays were sufficiently aligned.

commit 9488de4f74637360301e3cb1e6c7f25a41a93a37
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Nov 14 03:34:26 2010 -0800

    Chroma weighted prediction
    Like luma weighted prediction, dramatically improves compression in fades.
    Up to 4-8db chroma PSNR gain in extreme cases (short, perfect fade-outs).
    On actual videos, helps up to ~1% overall.
    One example video with a decent number of fades (ef OP): 0.8% bitrate reduction overall, 7% bitrate reduction just counting chroma.
    Fixes a lot of artifacts in fades at lower bitrates.
    
    Original patch by Dylan Yudaken <dyudaken@gmail.com>.

commit 2eadb9436344cfccdcf9340545d813f4086c0ca4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 18 08:51:27 2010 -0800

    Support custom cropping rectangles
    Supposedly useful for 3D television applications.

commit fc9006156b620a181814bf0d73a961bc38650c93
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sun Nov 14 16:46:01 2010 +0100

    Convert X264_HIGH_BIT_DEPTH to HIGH_BIT_DEPTH
    Less verbose.

commit 80174bfdd30da508576d318323af57b2cd821c5b
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sat Oct 30 20:16:33 2010 +0200

    x86 asm for high-bit-depth pixel metrics
    Overall speed change from these 6 asm patches: ~4.4x.
    But there's still tons more asm to do -- patches welcome!
    
    Breakdown from this patch:
    ~13x faster SAD than C.
    ~11.5x faster SATD than C (only MMX done).
    ~18.5x faster SA8D than C.
    ~19.2x faster hadamard_ac than C.
    ~8.3x faster SSD than C.
    ~12.4x faster VAR than C.
    ~3-4.2x faster intra SAD than C.
    ~7.9x faster intra SATD than C.

commit 3b818190c22f7ba6d3b2f228954b1368f58f75dc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 30 19:13:05 2010 -0700

    x86 asm for some high-bit-depth coefficient functions
    ~7.9x faster denoise than C.
    ~2.3x faster coeff_level_run than C.
    ~6.6x faster coeff_last than C.
    ~4.3x faster decimate_score than C.
    
    Also improve checkasm's decimate_score test.

commit faed8d5a8ca66d0904a43b545376832bc4a038c9
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sun Nov 14 03:33:30 2010 +0100

    x86 asm for high-bit-depth motion compensation
    ~8x faster qpel MC than C.
    ~10x faster hpel than C.

commit 38861b90aa958e16743920271f5a4f509d12c6ff
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Thu Nov 4 02:13:43 2010 +0100

    x86 asm for high-bit-depth quant
    ~3.1-4.2x faster than C.

commit 82a3dc116318d5594ac3474112cfe3472ca1b31e
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sat Oct 30 16:55:48 2010 +0200

    x86 asm for high-bit-depth DCT
    Only MMX and DCT done so far; iDCT still needs asm as well.
    ~4.4x faster than C.

commit 2584843007df862ecf99e1d357f7ef617c582184
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sat Oct 30 11:42:52 2010 +0200

    x86 asm for high-bit-depth deblocking
    ~3.3x faster than C.

commit c593bcf901e0bb681fdc41023ecd0aebbaafb98e
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Sat Nov 13 14:42:54 2010 +0100

    Use a 16-bit buffer in hpel_filter regardless of bit depth
    This only works up to and including 10-bit (but we don't support anything higher yet).

commit a9d7826a63f44379ef37e2a5147105c400370cd5
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Tue Nov 16 21:23:12 2010 +0100

    Use enums instead of magic numbers in x264_mb_partition_pixel_table

commit e19e5f05c314e243c4f2c7f60ab6bfc86a78bba1
Author: Karl Blomster <kalle@agigen.se>
Date:   Sun Nov 14 03:41:03 2010 -0800

    Improve configure script logging
    Now prints the test program that failed in addition to error messages.

commit fb3ef61ccbfe748761cdaaec6ccf8b3d03fa241e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Nov 17 07:27:09 2010 -0800

    Fix constrained intra pred mode selection

commit 2824c3a064d88f8b1a4af726249c0b51a449c0b2
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Nov 17 02:46:30 2010 +0300

    Various high-bit-depth ratecontrol fixes

commit 8c16b4d3311126bc37ae0ea7071c683e280f388c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Nov 14 02:54:02 2010 -0800

    Fix a crash in --dump-yuv for odd resolutions

commit c9dad9e1508a4d430b9bab72c8875892cf7fef3c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Nov 11 01:40:52 2010 +0300

    Improve flash detection algorithm change in r1765
    Now only disables scenecuts only near real end of video, not just prior to forced keyframes.

commit c3c8efa0f4d7fc46b9ee110450bfc1e8d1c5b1b3
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Nov 10 07:21:41 2010 -0500

    Update ffms2 support for its latest API break.

commit 2f656aa26bdacfd039d1c11e59d24752da12f201
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 11 18:19:22 2010 -0800

    Modify the x264 header accordingly if --disable-gpl is used

commit 8442a656f4606c3a12cfa3778266d4ce92c25fb6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 11 22:25:31 2010 -0800

    Save a bit of memory with weightp + high bit depth

commit 39787c80bdd5992935c480a8eedcfb6d50625334
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 13 04:38:44 2010 -0800

    Fix bugs in qpfile parsing with omitted QPs

commit 7f0f88b6b5111dae252382d91220af345fb91073
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Fri Nov 12 21:53:28 2010 +0000

    Fix HRD with intra-refresh
    x264 was incorrectly calculating cpb_removal_delay with respect to the first keyframe.
    It should have been calculating cpb_removal_delay with respect to the last keyframe.

commit f9f00353bd3959470c326880b82e99e3ee7de195
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Nov 10 07:34:40 2010 -0800

    Fix bug in r1753
    Overflow compensation fix broke CRF with --no-mbtree.

commit 601c0e38ef957ecca3792521beb335113ba49e3b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 6 17:47:27 2010 -0700

    Improve flash detection's behavior near the end of the video
    Flash detection catches situations like AAAABBCCDDDD, where A,B,C,D are frames in different scenes.
    x264 would place a keyframe on the first "D".
    However, if the video ended on the last "C", x264 would place a keyframe on the first "C", even though C classifies as a flash.
    This change fixes this issue.

commit d0406d4e3dc2b0953390857ac6efa0b5a9d5ba8f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 31 15:51:48 2010 -0700

    Improve quantizer handling
    The default value for i_qpplus1 in x264_picture_t is now X264_QP_AUTO.  This is currently 0, but may change in the future.
    qpfiles no longer use -1 to indicate "auto"; QP is just omitted.  The old method should still work though.
    
    CRF values now make sense in high bit depth mode.
    --qp should be used for lossless mode, not --crf.
    --crf 0 will still work as expected in 8-bit mode, but won't be lossless with higher bit depths.
    Add bit depth to statsfiles.
    
    These changes are required to make the QP interface sensible in combination with high bit depth.

commit 666aef844d1817227a8a442a55c57046a615ede4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 3 23:17:08 2010 -0700

    VFR-aware PSNR/SSIM measurement
    First step to VFR-aware MB-tree and bit allocation.

commit e38c7fd2809dd0c9649cc5ebdd77aadefa5a7af5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 1 15:08:03 2010 -0700

    Disable weightp offset=-1 dupes with high bit depth
    They're a hack to compensate for crappy rounding, and thus not worth doing at high bit depth, which fixes most of the rounding issues.

commit d70087b9bd9773ed44d4fc41c56304c7e3853f6e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Nov 7 17:27:38 2010 -0800

    Make the ffmpeg -vpre error message more descriptive

commit fe0808bbf2042c59d688a7f2a8c80d73f3ce7f86
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Oct 30 14:39:50 2010 -0700

    Add numeric names for the presets (0==ultrafast ... 9==placebo)
    This mapping will of course change if new presets are added in between, but will always be ordered from fastest to slowest.

commit 490bf93a42da12490e29d7f95f3244ff581883d3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Oct 13 06:07:14 2010 -0700

    Update benchmarks in doc/threads.txt

commit 75b018171f37dd82d5c63243c2580ec181513e41
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Oct 28 13:29:42 2010 -0700

    Make the #if'd out naive ESA actually match the real implementation

commit 6541afc22aa8f1bac57299561eb59237802930ec
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 1 19:19:23 2010 -0700

    Move mv/ref prefetch code to the correct location
    Prefetching of top blocks should be done under if(top), not if(left).

commit 17f54d05a46e0840f775be4635e6d32f6a4c9f78
Author: Reinhard Tartler <siretart@tauware.de>
Date:   Tue Nov 9 23:57:12 2010 -0800

    Link x264cli explicitly against lavf
    Fixes some problems with crappy linkers.

commit 66407441fe12116e3061437ecdcda1ca91cbccff
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 8 22:14:58 2010 -0800

    Fix CBR ratecontrol bug with extremely high qscales
    Caused CBR ratecontrol to take a very long time to recover from extreme situations (e.g. /dev/urandom).

commit 8d7c2d0d19c792c4de1310e2d1bf0cdf28095267
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 8 21:03:01 2010 -0800

    Disable overflow compensation in CRF mode
    Wasn't designed with CRF in mind, and acts really weird with CRF+VBV.

commit 5dfbfc357406e641c80d9de74c85fce4ece6b5ba
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 8 19:56:29 2010 -0800

    Fix stupid bug in B-frame VBV size prediction

commit d6a1303986d20dda483186adf8bc68ee148a8dcc
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Fri Oct 29 13:13:25 2010 +0200

    Fix regression in checkasm in r1666
    Buffer is uint16_t* regardless of whether x264 was compiled with high bit depth or not.

commit c85ec3ecf21af92e85594f69d3a855c721b4d080
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Fri Oct 29 13:11:09 2010 +0200

    Fix overflows in satd, sa8d and hadamard_ac with high bit depth

commit a6cab1a706dfcd90dc5fe95518a54122cf524394
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Fri Oct 29 12:34:42 2010 +0200

    Fix potential problem with overflows in ssd_nv12
    The risk of overflows increases exponentially with the bit depth.
    The 8-bit asm versions may still overflow with image widths >= 11008 (or 6604 if interlaced).

commit 527d1965fd70117187433f61ab8efc650b4d11a5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 30 14:36:01 2010 -0700

    Fix syntax for some parameterless functions
    Technically, such functions should be declared with (void), not ().

commit 49e2d55b5834318a4e370dde8829b2e991752bc7
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Oct 30 16:51:01 2010 -0400

    Fix fps reporting on mingw64
    _ftime on mingw64 uses __timeb32 which is broken.
    Use ftime instead.

commit 7f5771a13aec5a8a724e0d0c9d761f5a82e74af0
Author: Manuel Rommel <maaanuuu@gmx.net>
Date:   Sun Oct 31 19:19:10 2010 +0100

    Fix compilation on PPC with some recent GCCs

commit 1fda37ab88917dd9c8746c0fb56dfee3e2c74f03
Author: Manuel Rommel <maaanuuu@gmx.net>
Date:   Mon Oct 11 13:50:09 2010 -0700

    Fix Altivec SATD with small strides
    Fixes chroma ME and some of lookahead on PPC.

commit 4785e8e8dc3d48abf3048e1bf639d2936e642eba
Author: Holger Lubitz <holger@lubitz.org>
Date:   Sun Oct 3 19:07:00 2010 +0200

    Address remaining cacheline split issues in avg2
    Slightly improved performance on core 2.
    Also fix profiling misattribution of w8/16/20 mmxext cacheline loops.

commit 0a5cc5ecd2e9cb21ada03b9af51fc5e727e4de5f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 29 18:56:27 2010 -0600

    Trim a few bytes off some x86 intra pred functions

commit 80d0bd4b57163389289714e681bdc53ceaaf0f7a
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Fri Oct 1 00:37:39 2010 +0900

    Move DTS compression from libx264 to x264cli
    DTS compression is an ugly stupid hack and starting to encroach on unrelated areas like VBV.
    Some people want it in the mp4 muxer for devices and/or splitters that don't support Edit Boxes.
    We just say "throw these broken devices out the window".
    DTS compression will remain as a muxer option, --dts-compress, at the user's own risk.
    This option is disabled by default.

commit 7a9d518f7ccf9917967345f50f626408600d7892
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 30 22:24:51 2010 -0700

    Use a larger pic_init_qp with high bit depth
    Modify pic_init_qs for consistency.

commit e16c5f26d006acf2ff540de33e8dd59fa83ab95d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 2 23:56:52 2010 -0700

    Update some of the information in doc/

commit 3a18f20923b3be39a33a2ba601668421e245c899
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 28 17:48:00 2010 -0700

    Update header in depth.c

commit 60748aeb17bb91bbfd2fd9fb028adc5255c5eeff
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 2 23:12:41 2010 -0700

    Remove some old unused stuff in the build tree
    Regression test (hasn't been updated since svn).
    Doxy (was never used).

commit 368f1744202a7cf9c04b1c7f0a674e06b31ff670
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Sep 29 00:19:06 2010 -0700

    Various cosmetics
    Exorcise some CamelCase.

commit db224e344cac5277af80f75a67c67e7d29deffdd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 10 04:39:36 2010 -0700

    Add missing mod4 stack check to sse2_misalign mc_chroma
    Required for ICC compilation.

commit c68140da78f372fb5071f80145f453014811918c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Oct 8 18:08:23 2010 +0400

    Fix 2pass ratecontrol with --nal-hrd cbr

commit 78c645033d8ff34f83a3b22ac60f0474fbb573d6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 4 13:33:23 2010 -0700

    Fix minor bug in intra pred with intra refresh
    i8x8 blocks didn't properly avoid predicting from top-right when necessary.
    This could cause intra refresh to not completely refresh the frame.

commit be2a065964211d9d537289f49e78e890f1b17da8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Sep 29 22:06:27 2010 +0400

    Fix filter parsing with --extra-cflags="-DNDEBUG"

commit 4cba08aaea9813f1bcb6654a8abb141732bb0510
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 29 00:15:14 2010 -0700

    Make sigint handler variable volatile
    Didn't actually cause any problems, but is necessary because it can be modified by another thread (the signal call).

commit b20059aa39ede0b3e3415c261110acd558d12425
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 26 21:04:30 2010 -0700

    Add High 10 Intra profile support (AVC-Intra)
    x264 should now be able to encode compliant AVC-Intra 50.
    With a 10-bit-compiled version of x264, a sample commandline for 1080i25 might be:
    --interlaced --keyint 1 --vbv-bufsize 2000 --bitrate 50000 --vbv-maxrate 50000 --nal-hrd cbr
    
    Also print "Constrained Baseline" for baseline profile, since that's all x264 (and everything else in the world) supports.
    Also reorganize parameter validation a bit to reduce some spurious warnings.

commit 284b3149b88f08c6ca324de05a92882c37fb1a44
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Mon Sep 27 16:02:20 2010 +0200

    Finish support for high-depth video throughout x264
    Add support for high depth input in libx264.
    Add support for 16-bit colorspaces in the filtering system.
    Add support for input bit depths in the interval [9,16] with the raw demuxer.
    Add a depth filter to dither input to x264.

commit b6ae390d816176c0ac48ae1180231298558501c5
Author: Alex Wright <alexw0885@gmail.com>
Date:   Sun Sep 19 05:08:22 2010 -0700

    Chroma mode decision/subpel for B-frames
    Improves compression ~0.4-1%. Helps more on videos with lots of chroma detail.
    Enabled at subme 9 (preset slower) and higher.

commit e87b7ec3842342174c8224bc4fe5e627521619ae
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 27 05:39:02 2010 -0700

    Various cosmetics

commit 643e57f52c26c97cc7827bb1115017e6f0516ab8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 21 17:11:00 2010 -0700

    Make slice-max-size more aggressive in considering escape bytes
    The x264 assumption of randomly distributed escape bytes fails in the case of CABAC + an enormous number of identical macroblocks.
    This patch attempts to compensate for this.
    It is probably safe to assume in calling applications that x264 practically never violates the slice size limitation.

commit 4e3bf80ebe3c74770f0b1f5766133622b0cc66c2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 27 05:39:13 2010 -0700

    Add missing emms for dump-yuv

commit 3d0d9cda1d39239e9f388fe1fce29c9212d0273c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Sep 25 15:55:32 2010 -0700

    Fix CFR ratecontrol with timebase != 1/fps
    Fixes VBV + DTS compression, among other things.

commit 5f104e9957cc4b69f7197fecf93648a0e2ae0e59
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Sep 20 13:10:13 2010 +0400

    Fix DTS/bitrate calculation if the first PTS wasn't zero
    Fix bitrate calculation with DTS compression.

commit b02df7b3b3b8616078851aab65d77ca435e2ff93
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Sep 19 19:11:06 2010 +0400

    Fix regression in r1716

commit e757d68b1a7f75de97cc472206cae52b770eeefb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 19 00:25:27 2010 -0700

    Cosmetics in me.c and frame.c

commit 01e9f8cebbae58f4c2d6ea037546186cc8cdcd53
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Mon Sep 13 15:09:06 2010 +0100

    Add support for arbitrary user SEIs
    This allows calling applications to insert SEIs that x264 doesn't know about while maintaining HRD/VBV accuracy.

commit 9e443f2498aa7a20b6ba891f2fad40072f9948c2
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Sep 15 20:42:08 2010 -0400

    Add full chroma input flag to swscale
    Improves quality of colorspace conversions involving RGB(A).

commit fa56d4e4720e39dbfad881cd81937f39efd83b7f
Author: James Darnley <james.darnley@gmail.com>
Date:   Fri Sep 17 04:06:59 2010 -0700

    Add --disable-gpl option to configure
    Used for commercially-licensed versions of x264.
    Doesn't currently change anything, but may be used to disable GPL-only CLI tools, such as video filters, in the future.
    Also print the x264 license and libavformat license in version info.

commit 0596dff4fa50739bcc48a402487e4664bf3216e0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 17 04:03:27 2010 -0700

    Update source file headers
    Update dates, improve file descriptions, make things more consistent.
    Also add information about commercial licensing.

commit ae403c4684b68a112f2fa62d13dcfd0e8716c139
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 15 12:06:47 2010 -0700

    Fix intra refresh to not exceed max recovery_frame_cnt
    The spec constrains recovery_frame_cnt to [0, MaxFrameNum-1].
    So make MaxFrameNum bigger in the case of intra refresh.

commit 0974adfbb024af0afe511a803af73cdc283686d7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 16 03:36:17 2010 -0700

    Make intra refresh finish one frame faster
    In some cases, the last frame of intra refresh was redundant.
    Saves a few bits.

commit 9b8774495f3b3a65a4b4aa2bf6d9831b565365f4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 14 12:20:00 2010 -0700

    Fix intra refresh to not predict from invalid pixels
    The blocks on the right side of the intra refresh column should not predict from top-right.

commit 416461a5667436c39330cd79740ecef1f27b5bfe
Author: Steven Walters <kemuri9@gmail.com>
Date:   Mon Sep 13 18:47:33 2010 -0400

    Add configure check for mingw64 prefixing
    This compensates for the inconsistent prefixing seen in different versions of the compiler.

commit 3e7f374e1663add4138c3c5c73f4cb73fd2ebd94
Author: Manuel Rommel <maaanuuu@gmx.net>
Date:   Sat Sep 4 19:31:53 2010 -0700

    Update some Altivec function prototypes
    Silences a lot of warnings.

commit c27666276eb4d63b0c9ee2b9a375feabc27c8f4e
Author: Takashi Hirata <silverfilain@gmail.com>
Date:   Mon Aug 30 18:13:49 2010 +0900

    Add support for level 1b
    This level is a stupid hack in the H.264 spec, so it's a stupid hack in x264 too.
    Since level is an integer, calling applications need to set level_idc=9 to use it.
    String-based option handling will accept "1b" just fine though, so CLI users don't have to worry.

commit 518dbbc89c29691482d31666ba46add429a9cb9e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 2 15:29:29 2010 -0700

    Use smaller values for idr_pic_id
    Saves a few bits and fixes problems on certain fantastically terrible decoders,
    such as the Apple iPad.

commit a67e619bcdabecb03e7d44d86615157e3a3d00f2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 30 12:32:31 2010 -0700

    Use POC type 2 for streams with no B-frames
    Saves a few bits per slice header.

commit 6e8530793eb849f6ec17847acd39b69504f8fd49
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Aug 29 22:18:07 2010 -0700

    Faster cabac_encode_ue_bypass
    Use CLZ + a lut instead of a loop.

commit e344d6e6dc6d6612497f8d9987557153932ac8c9
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Sep 1 00:53:42 2010 +0200

    Faster nal_escape asm

commit 44ff90e6fc4a895cf6ed65ca39da5b3083daa3dd
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Aug 31 08:45:22 2010 -0700

    Allow --demuxer forcing with known extensions

commit 7bb60b1503acebcee8fae9c6d7ab6e3f55095150
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Sep 3 13:33:44 2010 -0700

    Minor fixes/cosmeticcs in commandling parsing

commit d55fc72d55685312939497734a3516142da62e98
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Sep 3 08:39:48 2010 -0700

    Fix overflow in stats printing

commit 5978cbc53dec1e7023b2ba9c9f9ce6ed24ffc68b
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Aug 29 16:35:32 2010 +0400

    Fix bug in 2pass if the first P-frames are all skip
    last_qscale_for was read before being initialized in this case, resulting
    in the value from the previous iteration being used instead.

commit 5b8f40714b10df5a5bf24ebb6be530a8458e2fdf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 26 09:12:01 2010 -0400

    Don't do deblock-aware RD if deblocking is off

commit cd21d0551318972a58a7e497e0321e373f0d1237
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 21 00:15:53 2010 -0700

    CAVLC "trellis"
    ~3-10% improved compression with CAVLC.
    --trellis is now a valid option with CAVLC.
    Perhaps more importantly, this means psy-trellis now works with CAVLC.
    
    This isn't a real trellis; it's actually just a simplified QNS.
    But it takes enough shortcuts that it's still roughly as fast as a trellis; just not quite optimal.
    Thus the name is a bit of a misnomer, but we're reusing the option name because it does the same thing.
    A real trellis would be better, but CAVLC is much harder to trellis than CABAC.
    I'm not aware of any published polynomial-time solutions that are significantly close to optimal.

commit 636d85b07cab192f796485969bc5e7a5538b8372
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 21 16:51:39 2010 -0500

    Add global #define for maximum reference count
    This should make it easier to play around with reference frame counts that exceed the spec maximum.

commit c74f9c99a9af959c137f33a20d17bd55b3deb11d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 16 17:47:11 2010 -0700

    Simplify addressing logic for interlaced-related arrays
    In progressive mode, just make [0] and [1] point to the same place.

commit 08b1e36390cdc7758102af31dc4f7f4e05ec0055
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 23 18:59:35 2010 -0400

    Add missing emms to x264_nal_encode
    Only matters for applications using the low-latency callback feature.

commit 31e458faf03c8c673c1d7e8c9f6dd40c193d211f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 17 14:38:41 2010 -0700

    Fix 2 bugs with slice-max-size
    Macroblock re-encoding didn't restore mv/tex bit counters (slightly inaccurate 2-pass).
    Bitstream buffer check didn't work correctly (insanely large frames could break encoding).

commit c41b8f0e890a05257406c8081ea429308d4e315c
Author: Manuel Rommel <maaanuuu@gmx.net>
Date:   Thu Aug 12 12:54:00 2010 -0700

    NV12 version of Altivec chroma MC

commit 26c17a1b633107b12493ccecaa77392a5324c52b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 10 16:55:05 2010 -0700

    Deblock-aware RD
    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 %).

commit d0c41733a5b9f221011866c2a9ca46a6112241bf
Author: Brad Smith <brad@comstyle.com>
Date:   Sun Aug 8 18:13:32 2010 -0400

    Correct X header path usage in configure
    Don't unconditionally set the header path for OpenBSD but do so if the
    --enable-visualize flag is specified.

commit 003a7f2864190774f9ccf78168ff58a442fae627
Author: golgol7777 <golgol7777@gmail.com>
Date:   Sat Aug 7 23:01:46 2010 -0700

    Fix lavf input with delayed frames

commit dd363d774d4aef19dc1cd9247b17d2454f913ea1
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sat Aug 7 22:29:12 2010 -0700

    Slightly improve the filtering section of x264 --help

commit 12002b946831a5b4c542b5699eb9b0d15a51784b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 7 22:32:06 2010 -0700

    Fix debug message typo with DTS compression

commit a414ccb295c5a05f11d700513f0326dbb823d5e6
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Tue Aug 3 22:10:15 2010 +0900

    Try to guess input length for lavf input
    Allows printing of progress indicator when using lavf input.

commit 13230db01dc3f8554c3aa2dd3b82faa703a0f37b
Author: Yasuhiro Ikeda <wipple625@gmail.com>
Date:   Tue Aug 3 22:07:36 2010 +0900

    Workaround bug in fps/timestamp handling with lavf input
    reordered_opaque in lavf doesn't work correctly in the identity case (no reordering).
    Fixes incorrect output for some file types (e.g. raw in mov).

commit 7e1e9bc2acca2194bd71ddd02edd884821d19b15
Author: Mike Matsnev <mike@haali.su>
Date:   Sun Aug 1 12:08:20 2010 -0700

    Fix aspect ratio writing in the MKV muxer
    The braindead Matroska spec dictates aspect ratio to be measured in pixels instead of, well, an actual aspect ratio.

commit 7fc564fd23cde539c37d13c8fede91c7cd2b32f0
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jul 29 20:23:55 2010 +0400

    Add libavcore check in configure

commit 0b36c6d54bc371c043c2fd861b6178ef416cd2fb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jul 26 15:38:13 2010 -0700

    Improve quantizer distribution with sliced-threads+VBV
    Should help avoid cases of very uneven quantizer choice between slices.

commit a4cd3171e70f814f27ac53933a2897d34aaa8011
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 28 11:42:06 2010 -0700

    Remove dead code in slicetype.c

commit 3e153343197ce41f116be600f6d7dd389c05f124
Author: golgol7777 <golgol7777@gmail.com>
Date:   Wed Jul 28 00:54:38 2010 +0900

    Fix incorrect duration/framerate/bitrate in flv header

commit d939ccf006b9b74078303f73e6c7fb83158d46fb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 28 14:23:53 2010 -0700

    invalidate_reference fixes
    invalidate_reference didn't actually invalidate the immediate previous frame, only frames that came before that.
    Make sure that reordering is forced when invalidate_reference is used, so that the reference list is correct decoder-side.

commit d2cfa9681c293066e96a3f1c5fd83f023839677b
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Jul 25 19:45:27 2010 -0400

    Filtering system-related fixes
    Fix configure to check for outdated libavutil in resize filter support.
    Do not print an explicit error message in ffms when requesting a frame beyond the number of frames in the source.
    Mention in --*help that filtering options can be specified as name=value.
    Fix the shadowing warning in the resize filter on posix systems.

commit 62997d61611309c9e5ffe124a0b49ca55263fbaf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 21 17:40:14 2010 -0700

    Improve reference_invalid support
    Reference invalidation can now be used to invalidate multiple frames at a time, rather than being limited to one per encoder_encode call.

commit 757f5c15b9c742e3076b44b073fae222522c7a5e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jul 22 06:40:12 2010 +0000

    Eradicate all mention of SI/SP-frames

commit 84a051f3f1598c4c48de4c84f8750a73d32edeeb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 21 11:25:11 2010 -0700

    Fix stack alignment with MB-tree
    Broke 2-pass with MB-tree when calling from compilers with broken stack alignment (e.g. MSVC).

commit 1a6fd476c477a7870d15d0c7f005ae34813d2f9d
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Jul 17 17:43:37 2010 -0400

    Avisynth 2.6 colorspace support
    Use a customized avisynth_c.h to detect the new planar colorspaces.

commit 87c0f8fa66c1d7fb7f25e1991341fd7fe78b1bcd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jul 15 23:49:03 2010 -0700

    Prevent some cases of cache aliasing.
    Avoid cases where image strides were a large power of 2.
    Core 2: +3% speed at widths 898..960, +6% at widths 1922..1984, most other resolutions unaffected.
    Nehalem and AMD: similar amount of speedup, but fewer resolutions affected.

commit cd8929fb3365b6b5e5d6168d97a52c751feda266
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 15 19:35:52 2010 -0700

    Fix stack alignment for adaptive quant
    Broke calls from compilers with broken stack alignment (e.g. MSVC).

commit 19df41a9476ddd3f8ef633df1116e13021078ec7
Author: David Conrad <lessen42@gmail.com>
Date:   Thu Jul 15 18:58:28 2010 -0400

    Fix compilation with shared ffmpeg libs
    lavf input uses libavutil functions, so it must request flags for libavutil from pkg-config.

commit 6c486d23da46722377ec150ead899dd481551b28
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 15 13:20:50 2010 -0700

    Fix another PCM bug
    CABAC assumes that NNZ is 0 or 1, not the number of actual nonzero coefficients.
    Didn't actually break the output; only had a tiny effect on RD.

commit 2484aa0b360647dbe0b63f9876566f670d7dcc49
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Thu Jul 15 14:01:36 2010 +0200

    Fix regression in r1666
    Broke encoding of PCM macroblocks.

commit d846e88db1c5d663e6936a4599d0a0562e2fd7c6
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Thu Jul 15 08:04:47 2010 +0200

    Fix build with bit_depth > 8
    Definition of x264_cli_plane_copy was inconsistent with declaration.

commit c9b2fcb4f4c1767fa9d0ea6b0a2e5709e61f3f7b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jul 8 12:24:16 2010 -0700

    Convert x264 to use NV12 pixel format internally
    ~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.

commit d797a1bc3f4410e45670b79381bfdce677646d48
Author: Steven Walters <kemuri9@gmail.com>
Date:   Mon Jul 5 17:37:47 2010 -0400

    Add video filtering system to x264cli
    Similar to mplayer's -vf system.
    Supports some basic operations like resizing and cropping.  Will support more in the future.
    See the help for more details.

commit 04e40ff9f61672bec01230ce6d70bc487f12bc2c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 6 13:39:44 2010 -0700

    Eliminate edge cases for MV predictors
    Saves a few clocks in mv pred.

commit 27e4a3a732c8284225dd55a2c2c43bb08368f3fa
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 8 12:45:25 2010 -0700

    Improve scenecut detection a bit
    Put a minimum value on the scenecut threshold; makes x264 more likely to catch successive scenecuts (but might increase the odds of false detection).
    This also fixes scenecut detection with keyint=infinite.
    Also print keyint=infinite in the x264 SEI and statsfile correctly.

commit c953140b3b622b33e892c1a3d327d35b74762293
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 14 18:47:14 2010 -0700

    Fix 8x8dct+slices+no sliced threads+cavlc+deblock
    Deblocking was done slightly incorrectly.
    Regression in r1612.

commit d6228aea4f0adf29be8526b8ce1d9d1237d23975
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 8 16:20:48 2010 -0700

    Fix off-by-one error in slice VBV predictor updates

commit ce136d6721d38fbdf57683304dabbb1ba973effe
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon Jul 5 17:44:15 2010 +0400

    Fix disabling of progress with --log-level

commit d058f37d9af8fc425fa0626695a190eb3aa032af
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Fri Jul 2 04:06:08 2010 +0200

    Support for 9 and 10-bit encoding
    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.

commit 293b47bc2c52abe5143913ef3d126e6170edaf5c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 30 13:55:46 2010 -0700

    Support infinite keyint (--keyint infinite).
    This just means x264 won't insert non-scenecut keyframes.
    Useful for streaming when using interactive error recovery or some other mechanism that makes keyframes unnecessary.
    
    Also change POC logic to limit POC/framenum LSB size (to save bits per slice).
    Also fix a bug in the CPB underflow detection code (didn't affect the bitstream, just resulted in the failure to print certain warning messages).

commit f378994ab3c816aaab2b795143e31919fdee1f2d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 30 13:06:22 2010 -0700

    Don't check i16x16 planar mode unless previous modes were useful
    Saves ~160 clocks per MB at subme=1, ~270 per MB at subme>1 (measured on Core i7).
    Negligle effect on compression.
    
    Also make a few more arrays static.

commit ce052b8bae0bed131716d3ed655b974a1a2ebcb5
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Jun 26 16:28:49 2010 -0400

    Centralize logging within x264cli
    x264cli messages will now respect the log level they pertain to.
    Slightly reduces binary size.

commit 22bf1672adafa4e938a13952b8f71cd7548d31f1
Author: Lamont Alston <wewk584@gmail.com>
Date:   Tue Jun 29 10:11:42 2010 -0700

    Make open-GOP Blu-ray compatible
    Blu-ray is even more braindamaged than we thought.
    Accordingly, open-gop options are now "normal" and "bluray", as opposed to display and coded.
    Normal should be used in all cases besides Blu-ray authoring.

commit 4f74306c2f266bfc671ad99e9027b816dd423ece
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jun 28 15:02:33 2010 -0700

    Callback feature for low-latency per-slice output
    Add a callback to allow the calling application to send slices immediately after being encoded.
    Also add some extra information to the x264_nal_t structure to help inform such a calling application how the NAL units should be ordered.
    
    Full documentation is in x264.h.

commit aa1a8435000228c4d9e74da0f9fd3d16e85a3e80
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Jun 26 20:55:59 2010 -0700

    Simplify pixel_ads

commit 57b2e56d247c009b390592c2cdea7fc7a4100124
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 23 17:29:34 2010 -0700

    Interactive encoder control: error resilience
    In low-latency streaming with few clients, it is often feasible to modify encoder behavior in some fashion based on feedback from clients.
    One possible application of this is error resilience: if a packet is lost, mark the associated frame (and any referenced from it) as lost.
    This allows quick recovery from errors with minimal expense bit-wise.
    
    The new i_dpb_size parameter allows a calling application to tell x264 to use a larger DPB size than required by the number of reference frames.
    This lets x264 and the client keep a large buffer of old references to fall back to in case of lost frames.
    If no recovery is possible even with the available buffer, x264 will force a keyframe.
    
    This initial version does not support B-frames or intra refresh.
    Recommended usage is to set keyint to a very large value, so that keyframes do not occur except as necessary for extreme error recovery.
    
    Full documentation is in x264.h.
    
    Move DTS/PTS calculation to before encoding each frame instead of after.
    Improve documentation of x264_encoder_intra_refresh.

commit 7865fcb4093c39ec13def8a1cd14a7e67ddd8066
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jun 17 14:50:07 2010 -0700

    Lookaheadless MB-tree support
    Uses past motion information instead of future data from the lookahead.
    Not as accurate, but better than nothing in zero-latency compression when a lookahead isn't available.
    Currently resets on keyframes, so only available if intra-refresh is set, to avoid pops on non-scenecut keyframes.
    Not on by default with any preset/tune combination; must be enabled explicitly if --tune zerolatency is used.
    
    Also slightly modify encoding presets: disable rc-lookahead in the fastest presets.
    Enable MB-tree in "veryfast", albeit with a very short lookahead.

commit 40c8c4926a78a705c263e042a780d63ca24687f4
Author: Lamont Alston <wewk584@gmail.com>
Date:   Wed Jun 16 10:05:17 2010 -0700

    Open-GOP support
    Allows B-frames immediately prior to keyframes (in display order).
    This helps reduce keyframe popping and improve compression with short keyframe intervals.
    Due to a staggering display of braindamage in the Blu-ray spec, two open-GOP modes are available.
    The two modes calculate keyframe interval differently: one based on coded distance and one based on display distance.
    The latter is superior compression-wise, but for no comprehensible reason, Blu-ray requires the former if open-GOP is used.

commit ccb8391f68b1657d9d4155ad4f12e2b98660b0c0
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Jun 9 18:14:52 2010 -0400

    Use threadpools to avoid unnecessary thread creation
    Tiny performance improvement with fast settings and lots of threads.
    May help more on some OSs with slow thread creation, like OS X.
    Unify inconsistent synchronized abbreviations to sync.

commit f7ca49910a4663fd743734f288ea88079e09deeb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jun 19 01:41:07 2010 -0700

    Improve 2-pass bitrate prediction
    Adapt based on distance to the end in bits, not in frames.
    Helps in videos with absurdly simple end sections, e.g. black frames.

commit ef0c268a2b1a42ff234ef27a535c16b825452ae0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 18 13:58:11 2010 -0700

    SSE4 and SSSE3 versions of some intra_sad functions
    Primarily Nehalem-optimized.

commit 88b90d9ca0582ff340a6d821d104f25917baa693
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jun 19 03:27:33 2010 -0700

    Improve HRD accuracy
    In a staggering display of brain damage, the spec requires all HRD math to be done in infinite precision despite the output being of quite limited precision.
    Accordingly, convert buffer management to work in units of timescale.
    These accumulating rounding errors probably didn't cause any real problems, but might in theory cause issues in very picky muxers on extremely long-running streams.

commit 4c27afb595ac8e8a621ffc2bf8120f0d43c80384
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 22 14:20:46 2010 -0700

    Use -fno-tree-vectorize to avoid miscompilation
    Some versions of gcc have been reported to attempt (and fail) to vectorize a loop in plane_expand_border.
    This results in a segfault, so to limit the possible effects of gcc's utter incompetence, we're turning off vectorization entirely.
    It's not like it ever did anything useful to begin with.

commit 69e9d85c292cb9daa96664657352bf6c65af5825
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Jun 19 01:44:56 2010 +0400

    Fix SIGPIPEs caused by is_regular_file checks
    Check to see if input file is a pipe without opening it.

commit 4fa7d539c1a09a0779194c7971495e966ff7de1e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 15 05:15:42 2010 -0700

    Fix compilation on ARM w/ Apple ABI

commit 20cbe1046c7828bb213b10268aa711abfdafe257
Author: Holger Lubitz <holger@lubitz.org>
Date:   Wed Jun 9 13:59:06 2010 +0200

    Faster mbtree_propagate asm
    Replace fp division by multiply with the reciprocal.
    Only ~12% faster on penryn, but over 80% faster on amd k8.
    Also make checkasm slightly more tolerant to rounding error.

commit 4d8d93019558999a95c515b6726bba02faf74d3a
Author: Diogo Franco <diogomfranco@gmail.com>
Date:   Sun Jun 13 21:57:32 2010 -0300

    Convert the OPT_ defines in x264.c to an enum

commit be94782b89292c6a5a274a9e874723e10497ba1c
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Jun 13 23:14:15 2010 +0400

    Don't allow baseline profile streams with fake-interlaced
    Indicate use of --fake-interlaced in encoding options SEI.

commit 71502eaf1ac591074da1f16135cc4af4087a9f3f
Author: Havoc Pennington <hp@pobox.com>
Date:   Thu Jun 10 16:28:52 2010 -0400

    Allocate space for null terminator in param_apply_tune

commit 0c7bcebdfb8baca78e4fd9dc76f5f43e096c6030
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Jun 10 21:33:46 2010 +0400

    Fix regression in r1501.
    Could cause slightly incorrect analysis in rare cases, but no serious encoding issues.
    Also shut up gcc warning about pels_v.

commit 8c69931e5045b4d019ce24bbcba4f05715aa2d0e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Jun 9 22:53:08 2010 +0400

    Fix crash with --subme 0 + --weightp > 0. Regression in r1535

commit 0cd5d69beac1ed95a077e75c7a4cb3f837e74855
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Tue Jun 8 16:29:16 2010 +0200

    Replace some divisions with shifts

commit 02f1bba36db707e342218efcc0585d4a6b37c60e
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Jun 8 02:43:37 2010 +0400

    Warn about shadowed variable declarations
    Also get rid of a few instances of variable shadowing.

commit 3df2c903ecc2fa9a121afea620cebd967a4c29b8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jun 7 14:26:05 2010 -0700

    Template load_pic_pointers based on interlaced
    Significantly speeds up cache_load in the non-interlaced case.
    Also various other minor optimizations in cache_load and cache_save.

commit 0c947690373f6347f6f9df2e712b01ba756622ec
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jun 7 14:15:33 2010 -0700

    Remove double-dereferences for MB width/height data
    Store it in x264_t instead of going through the SPS.

commit 609f7ab0af169d2515ad66a1c77cb558eb5f1b49
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat May 22 20:54:35 2010 -0400

    Exempt Win x86_64 from memalign hack
    The API mandates all mallocs are 16 byte aligned.
    Remove unused int that stores sizeof malloc in memalign hack.

commit 2e541dd2abc24bbae7c73cf35954ce11f89ea03d
Author: Steven Walters <kemuri9@gmail.com>
Date:   Fri Jun 4 13:44:55 2010 -0700

    Preprocessing cosmetics
    Unify input/output defines to HAVE_* format.
    Define values as 1 to simplify conditionals.

commit 50015055b0857b2c2404b5299b0bc031b39e2724
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jun 3 21:31:10 2010 -0700

    Take more shortcuts in i4x4/i8x8 analysis
    Based on the scores of the H and V modes, rule out modes which are unlikely.
    Small compression loss (0.1-0.5%) and large speed gain (10-30% faster intra analysis).
    Not enabled in slower encoding modes.
    
    Also make C versions of the merged SATD functions in order to eliminate branches based on their availability.

commit 2d2abd8286f3744d79349a162e506f6502c52c56
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 2 15:47:26 2010 -0700

    Display SSIM measurement in db as well

commit c41f0c09eae14014f00a38d5b2f859b99fdd77a4
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Jun 8 01:03:03 2010 +0400

    Make version.sh indicate "M" for local commits too

commit 3c92ef90e145d627b4048b5c6ea92995b2eafbf3
Author: Alex Jurkiewicz <alex@bluebottle.net.au>
Date:   Sun Jun 6 15:21:12 2010 +0800

    Add error message for invalid [de]muxer selection

commit 0d0dc6a720f5a41add8989cfa29090cf48d6028f
Author: Nathan Caldwell <saintdev@gmail.com>
Date:   Sun Jun 6 14:19:41 2010 -0600

    Deduplicate the ALIGN macro, move it to common.h

commit 2fafcb50c2266a58fe25030c10c5840cab8fbc8f
Author: David Conrad <lessen42@gmail.com>
Date:   Thu Jun 3 19:02:24 2010 -0400

    Fix a use of ALIGNED_ARRAY_16 on ARM

commit 5079abd2ffdbd69d8bc4f474ce50f14fd83a340c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 8 15:41:17 2010 -0700

    Add missing emms after nal_encode
    Caused random, bizarre failures with some calling applications.

commit b474d0e5790da0c1aa6107ef571d7572f2e94221
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 8 15:38:32 2010 -0700

    Fix crash in fake-interlaced at some resolutions

commit 2e81ce15c161f94053707852c027c123c6812cdf
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Wed Jun 2 22:27:57 2010 +0900

    Fix no-mbtree + aq-mode=0
    
    Regression in r1618.

commit b794258670e914c34c8b644d3fdd7d5250029817
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 2 01:07:44 2010 -0700

    Add API function to fix x264_picture_t initialization
    Calling applications that do not use x264_picture_alloc need to use x264_picture_init to initialize x264_picture_t structures.
    Previously, if the calling application didn't zero x264_picture_t, Bad Things could happen.

commit d0d8751af40485b0ec08a579672e804a33d76714
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Wed Jun 2 17:02:31 2010 +0900

    Fix Avisynth input
    Regression in r1624.  A more permanent solution to the problem will be committed later.

commit fbe0255810b2293091032fe9d30e40594bc08643
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Wed Jun 2 02:08:45 2010 +0200

    Convert to a unified "dctcoeff" type for DCT data
    Necessary for future high bit-depth support.

commit d3ff95cc2ade25935fbc346177c0bee2b8f61514
Author: Oskar Arvidsson <oskar@irock.se>
Date:   Wed Jun 2 01:35:38 2010 +0200

    Convert to a unified "pixel" type for pixel data
    Necessary for future high bit-depth support.
    Various macros and extra types have been introduced to make operations on variable-size pixels more convenient.

commit a6c6afa85053443dc459e096e8e681dc21d43ade
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 28 14:27:22 2010 -0700

    Add API tool to apply arbitrary quantizer offsets
    The calling application can now pass a "map" of quantizer offsets to apply to each frame.
    An optional callback to free the map can also be included.
    This allows all kinds of flexible region-of-interest coding and similar.

commit 6dc1217f510ece46166376dcca1d6b19d088a3b5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 27 14:27:32 2010 -0700

    x86 assembly code for NAL escaping
    Up to ~10x faster than C depending on CPU.
    Helps the most at very high bitrates (e.g. lossless).
    Also make the C code faster and simpler.

commit bdc68d651db64045aecb28f27e0e05e027ab48eb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 28 14:30:07 2010 -0700

    Re-enable i8x8 merged SATD
    Accidentally got disabled when intra_sad_x3 was added.

commit 0c7cf0bfb1d30ee8e7f1b355fef5aa9e2db929d2
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sun May 30 22:45:14 2010 +0200

    Some deblocking-related optimizations

commit 77b568b22d42baa344dad050aef420de3b22e126
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Thu May 27 22:18:38 2010 +0200

    Optimize out some x264_scan8 reads

commit 794713a35eadcd999d5aab4a50274ca43f29be93
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 27 10:42:15 2010 -0700

    Add fast skip in lookahead motion search
    Helps speed very significantly on motionless blocks.

commit 5832bdfaed3bcce1b2823b6594386e0357d8ff31
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed May 26 12:55:35 2010 -0700

    Merge some of adaptive quant and weightp
    Eliminate redundant work; both of them were calculating variance of the frame.

commit a7f870990af39a11f3bb883b9335baad91909ccb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 27 12:31:41 2010 -0700

    Fix omission in libx264 tuning documentation

commit 8098997dcba2602b22b43fdf26621d08d3f81333
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun May 30 09:42:53 2010 -0700

    Fix ultrafast to actually turn off weightb

commit d51fde592507649e22757a23f0ea0252ec35b5b6
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Mon May 31 22:36:50 2010 +0400

    Fix crash with MP4-muxing if zero frames were encoded

commit 2bcbac357b714f468e0138f022e584ffdb42f6d2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon May 31 11:14:22 2010 -0700

    Fix cavlc+deblock+8x8dct (regression in r1612)
    Add cavlc+8x8dct munging to new deblock system.
    May have caused minor visual artifacts.

commit 81e75e91cad61079ce9579d133316b1faf78f357
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed May 26 12:40:31 2010 -0700

    Fix 10L in r1612
    Stats need to be calculated before deblock strength, not after.
    Broke ref stats in x264cli (no affect on actual output).

commit 97c7ecc5aae7739ad91e1d6d3cdd3d26aafefb06
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue May 25 12:42:44 2010 -0700

    Overhaul deblocking again
    Move deblock strength calculation to immediately after encoding to take advantage of the data that's already in cache.
    Keep the deblocking itself as per-row.

commit 036db859ac0d44c4c491ef86d890745a62d1b1e0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue May 25 16:13:59 2010 -0700

    Detect Atom CPU, enable appropriate asm functions
    I'm not going to actually optimize for this pile of garbage unless someone pays me.
    But it can't hurt to at least enable the correct functions based on benchmarks.
    
    Also save some cache on Intel CPUs that don't need the decimate LUT due to having fast bsr/bsf.

commit 7c2fd41075685b6f67471c71b323b08fc3c13764
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon May 24 11:13:22 2010 -0700

    Slightly faster mbtree asm

commit cca28cdeb64df106d9aa49eb75ae1c7b933d6c49
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 21 15:39:38 2010 -0700

    Faster deblock strength asm on conroe/penryn

commit 2dd5ce29d1e5304310d8577543613b230878cdc5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 21 14:32:13 2010 -0700

    Avoid an extra var2 in chroma encoding if possible
    Also remove a redundant if.

commit 23e92b58c0e4d15123fcb17929b531f1cf6f8dd6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 21 13:07:12 2010 -0700

    Avoid a redundant qpel check in lookahead with subme <= 1.

commit d202981d5c884d7b177320bd74fec3af1d68e5a8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue May 25 19:11:42 2010 +0400

    Fix ABR rate control calculations
    Incorrect frame numbers were used, resulting in slightly inaccurate ratecontrol.

commit e627569c623d2cd0423c94e9499dec4844039139
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue May 25 18:45:16 2010 +0400

    Fix calculation of total bitrate printed after stop by CTRL+C

commit bed132348f4044c3b8291e8addeedc223ff1483e
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Sat May 22 14:32:53 2010 +0100

    Fix typo in fake-interlaced documentation

commit cf5769dc3f2dcf699fc8bf850d375508495297ef
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue May 25 17:49:07 2010 -0700

    Fix CABAC+PCM, regression in r1592
    Changes to queue in CABAC didn't get propagated to PCM code.

commit 69588a7dda1dbd89b955fa6a2d8f4b3a8af73628
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Fri May 21 15:30:26 2010 +0200

    Fix performance regression in r1582
    Set the correct compiler flags.

commit b9ec3ea27812288485329ac7771143021cd4917b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue May 18 16:48:00 2010 -0700

    Rewrite deblock strength calculation, add asm
    Rewrite is significantly slower, but is necessary to make asm possible.
    Similar concept to ffmpeg's deblock strength asm.
    Roughly one order of magnitude faster than C.
    Overall, with the asm, saves ~100-300 clocks in deblocking per MB.

commit 9b47cb08b5ecf9a38ba82f299304c95c178f4690
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri May 21 10:33:45 2010 +0400

    Fix different output with differing sync-lookahead
    Also reduce memory consumption.

commit dd4972a2cb50b567542391e288d17ebba7536911
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue May 18 22:26:59 2010 +0400

    Mark Win32 executable as large address aware

commit 1b48874d06c5927808554a3c869e6fd01db238bc
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Thu May 20 17:45:16 2010 +0100

    Add "Fake interlaced" option
    This encodes all frames progressively yet flags the stream as interlaced.
    This makes it possible to encode valid 25p and 30p Blu-Ray streams.
    Also put the pulldown help section in a more appropriate place.

commit 8ff16c56ee5aba39ab0c278df2a2e94282eb29f3
Author: Alex Jurkiewicz <alex@bluebottle.net.au>
Date:   Thu May 20 15:01:37 2010 +0800

    Modify version.sh to output to stdout.
    Update configure to match.

commit 629a56a54bccde2e43fe831796bec885a164acf3
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed May 19 23:09:58 2010 +0200

    Set correct filesystem permissions for various files

commit c7876580bf822e63f1f77689218bfbbea4f9b9fc
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed May 19 21:07:03 2010 +0400

    Fix regression in r1566
    Intra stats need to be kept track of for fast intra decision.

commit ff0fede90cdac017457a77d026476a36d04cacd4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue May 18 11:53:32 2010 -0700

    Fix rc-lookahead in encoding options SEI in 2-pass with VBV

commit 86c8fec9a8fe39b2a6381fe25bb69ec10e3a6859
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon May 17 14:08:37 2010 -0700

    Reduce memory usage in 2-pass with b-adapt 2

commit 95aacc4fb0ed4477a8c8b7cbf3f8c89229b03dc7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 15 14:48:58 2010 -0700

    Overhaul CABAC: faster, less cache usage
    Horribly munge up the CABAC tables to allow deduplication of some data.
    Saves 256 bytes of L1d cache in non-RD, 512 bytes in RD.
    Add asm versions of bypass and terminal; save L1i cache by re-using putbyte code.
    Further optimize encode_decision.
    All 3 primary CABAC functions fit in under 256 bytes of code total on x86_64.

commit 03ff36e3b48729516a1f94bc0475bff13525d1a2
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Thu May 13 19:13:35 2010 +0100

    Fix typo in pulldown

commit e07cd36aba1b6743ba64607acbb66e02177b5616
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed May 12 22:05:34 2010 +0400

    Fix bitrate calculation in progress status
    Was slightly incorrect due to using pts, which is out of order.

commit 444794d8c805b1951d985a1b5d1d1a2e5b8342a3
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed May 12 01:57:38 2010 +0400

    Fix crash with sliced-threads on Phenom

commit cb0614356f42f7032cec8c09b439570dbc464e01
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon May 10 22:59:12 2010 -0700

    Fix condition for printing rc=cbr in options SEI
    Also fix crf-max formatting.

commit 4b4f8eb89bfc033a1bc52684636c7f4f8c314345
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon May 10 23:27:36 2010 +0200

    Shrink even more constant arrays

commit 15686c04643ea9b4c5a6d2c22a280437426d1c36
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 8 12:07:13 2010 -0700

    Add API function to trigger intra refresh
    Useful for interactive applications where the encoder knows that packet loss has occurred on the client.
    Full documentation is in x264.h.

commit 29b379cc3499541e72007131909d45a8c472f2b5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 8 11:58:22 2010 -0700

    Fix intra refresh behavior with I-frames
    Intra refresh still allows I-frames (for scenecuts/etc).
    Now I-frames count as a full refresh, as opposed to instantly triggering a refresh.

commit 09b5a943c62212447a0151dfd5324f8e36715272
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu May 6 10:03:31 2010 -0700

    More cosmetics

commit 7608d73d489e9ed4e57ae80f01d7da67323e029d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 6 00:53:20 2010 -0700

    Fix unresolved symbol in r1573
    gnu ld didn't complain, but some other linkers did.

commit 90b6dd00745f278ce56870ec32ce973bfc1c5f5d
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed May 5 19:54:04 2010 -0400

    Remove unnecessary --enable options
    Change --enable-visualize to actually check for X11 support.

commit 174aedc50c1455045c3a1d846e0df6399918dbd8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon May 3 21:27:16 2010 -0700

    Don't force row QPs to integer values with VBV
    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.

commit 8508412c878b4823906cd5c67b46698ce9bc297d
Author: James Darnley <james.darnley@gmail.com>
Date:   Sun May 2 16:30:50 2010 -0700

    Add field-order detection to y4m demuxer

commit 44f83cc129480d67c76b1b0e11c97870957ff2c2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun May 2 11:45:15 2010 -0700

    Fix sliced-threads + interlaced
    Broken in r1546.

commit 3cf182b2d0b5fd38538a3b6e5102b925a5747687
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun May 2 11:41:36 2010 -0700

    Improve temporal MV prediction
    Predict based on the results of p16x16 search, not final MVs.
    This lets us get predictions even if mode decision chose intra.
    Also improves cache coherency.

commit c82273d6d74271e0f743c5729e7438ff37e2df5e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 1 19:34:14 2010 -0700

    More accurate MV prediction on edges in lookahead

commit ccc03ec16125e0586231afbb06936bd0bf8c926d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 1 19:32:01 2010 -0700

    Error out on invalid input stride
    Might catch some crashes due to buggy calling applications.

commit 21c030d96f5f71b49e4f2cd748e13da1dcad429d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 1 00:18:01 2010 -0700

    Remove unnecessary debugging assert
    Shouldn't have been in r1568 to begin with.

commit 181fc45d360ff8d586259f461fe5a21c4c37aefb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 30 13:45:50 2010 -0700

    Shrink some more constant arrays

commit 41be22fc887a5904223350a885c9f2c0981a1c8d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 30 11:36:19 2010 -0700

    Deduplicate asm constants, automate name prefixing
    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).

commit 9ec07af8692c9e10f048f0b41897e66ac3a062cb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 30 09:57:55 2010 -0700

    Shrink a few x86 asm functions
    Add a few more instructions to cut down on the use of the 4-byte addressing mode.

commit 9d66767e2569e30339363a2d69c74213d84e7dbc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 29 19:53:59 2010 -0700

    Make options SEI use weight* instead of wpred*
    More intuitive and maps more reasonably to the CLI options.
    Breaks statsfile backwards-compatibility.

commit d9db8b3ed9615f4262d58e0d9ed1e1bb83f6673e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Apr 29 17:35:25 2010 +0000

    r1548 broke subme < 3 + p8x8/b8x8
    Caused significantly worse compression.  Preset-wise, only affected veryfast.
    Fixed by not modifying mvc in-place.

commit bff0df76deeed96e76e3c965223065d30258e7d5
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Tue Apr 27 01:44:33 2010 +0200

    More write-combining

commit 41b877e0ab14a77a211e0cd087bf9c3726b2c2f6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Apr 26 15:10:11 2010 -0700

    Reduce lookahead memory usage, cache misses
    Merge lowres_types with lowres_costs.

commit bf49210db8acd958a3cb266d6ecb679d16901a1d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 25 14:54:29 2010 -0700

    Fix build on x86 with asm on but SSE off

commit dffb848b6b36dd9fd811dae9f2e1f6e9b99065f1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Apr 24 13:55:51 2010 -0700

    Don't calculate ref/partition stats if not necessary

commit 167d68a65ea8d777f03c632b8c135b6b10a854b6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Apr 24 13:07:18 2010 -0700

    Split out MV prediction into mvpred.c
    Make common/macroblock.c a bit less gigantic.

commit a927654cf5b4d3f25364b7fcebbce0bc4b178dec
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Apr 24 16:22:14 2010 +0000

    Fix mv predictor clipping on non-x86 (regression in r1548)

commit fbcc1ecd6de4b12dc0ee39bfa426ef150b89b047
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Apr 24 00:26:13 2010 +0400

    Move getopt.c to x264cli sources from libx264
    Only affects builds on systems without getopt.c.

commit 8fae650c3e1766456a086f69b379c4377765ba3a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 22 12:53:07 2010 -0700

    Move deblocking code to a separate file
    Should clean up frame.c a bit.

commit f648d24a88be21970562bac84bd4e5ea569cb8ef
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Apr 20 19:48:02 2010 -0400

    fix ffms demuxer to support input timebase values > 2^31

commit 4ce8f1232358004cd16f3f83c3dd81e87707ff56
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Apr 20 16:53:06 2010 -0700

    Fix 10l in cache_load changes
    Broke constrained intra pred, probably not anything else.

commit f6114408330c1f1c5bb897ab74258f9972cc9bf9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Apr 20 16:50:13 2010 -0700

    Faster fullpel predictor checking
    Also shave a few instructions off dia/hex motion estimation loops.

commit f48356d47ae3ecc65a72486604e3ce36dd2d3518
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 20 09:40:49 2010 +0000

    Fix checkasm's generation of deblock inputs (regression in r1517)

commit e37a4907a51c16ebe16cbdffcd87a5d8fc3c342c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 20 09:17:18 2010 +0000

    Fix printing of bitrate when timestamps aren't available
    Doesn't affect x264cli, but was broken in some other apps in CFR mode.

commit 5b1798ebf29c4a277fe99b61bbfb6cc816db263a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Apr 20 00:46:29 2010 -0700

    Don't check mv0 twice
    One less SAD in motion estimation.
    Also rename bmv -> pmv; more accurate naming.

commit c76069fec1b7711c754fea593abaf470901e54c3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Apr 19 11:02:27 2010 -0700

    Remove reordering restrictions from weightp
    Apparently the spec does allow two consecutive copies of the same frame in the reference list.
    This involves an incredibly ugly hack to wrap around the frame number.
    Very slight compression improvement.

commit d6d63a0d1fb1ac1526da4bcdcc0a24e42e03a39c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Apr 19 23:34:03 2010 -0700

    Print intra chroma pred modes in stats

commit 4013f8d89aa3722b2e8d457eab7c65e33e50aca1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 18 22:54:48 2010 -0700

    Add mv0 special case in pskip chroma MC
    Significantly faster pskip MC.

commit 156bf75dfb99913bdc8db73a858130e63c6bf5c4
Author: Francois Cartegnie <fcvlcdev@free.fr>
Date:   Sun Apr 18 13:04:59 2010 -0700

    Fix build scripts to work with non-GNU tools

commit a34ad7c1282a26d5a35f502b75f7dc24322ba01c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 16 20:04:13 2010 -0700

    Faster deblock reference frame checks
    Use a lookup table to simplify logic

commit 5dab1efd428735f10a9670637dddffe763286dc4
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Fri Apr 16 22:39:45 2010 +0200

    Faster chroma CBP handling

commit 28fd5fb80fe1ab5c2bf51453a84fee4a18935ef9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 16 11:36:43 2010 -0700

    Fix issues with extremely large timebases
    With timebase denominators >= 2^30 , x264 would silently overflow and cause odd issues.
    Now x264 will explicitly fail with timebase denominators >= 2^31 and work with timebase denominators 2^31 > x >= 2^30.

commit aaf2194fcd9efacbb835af5fe3390ad48d19cc8c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 16 12:06:07 2010 -0700

    MMX code for predictor rounding/clipping
    Faster predictor checking at subme < 3.

commit bc9103c33fc9b9e502c82153fc0fe70ef1fa2ff5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 16 03:06:46 2010 -0700

    Fix four minor bugs found by Clang

commit 46fd4ae1388f6a53544b0bd4f97ce9940451f54d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 15 16:32:31 2010 -0700

    Move deblocking/hpel into sliced threads
    Instead of doing both as a separate pass, do them during the main encode.
    This requires disabling deblocking between slices (disable_deblock_idc == 2).
    Overall performance gain is about 11% on --preset superfast with sliced threads.
    Doesn't reduce the amount of actual computation done: only better parallelizes it.

commit a7ec5e2352c516f8c14bdd79ea9d1522d3ddae16
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 14 14:43:25 2010 -0700

    Prefetch MB data in cache_load
    Dramatically reduces L1 cache misses.
    ~10% faster cache_load.

commit 017ade0a01066af3061a8c381e4e0a80df7e3933
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 23 19:09:37 2010 +0000

    Fix a ton of pessimization caused by aliasing in cache_save and cache_load

commit 674926f10f65c28f9a32045be2fd89ee7bc5d8ec
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 23 19:09:18 2010 +0000

    Add CP128/M128 macros using SSE

commit 5b86182d1240b441f28462abf3d40b7371de5ba3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 11 13:36:50 2010 -0700

    Fix various early terminations with slices
    Neighbouring type values (type_top, etc) are now loaded even if the MB isn't available for prediction.
    Significant overall performance increase (as high as 5-10%+) with lots of slices (e.g. with slice-max-size).

commit dabc4b1e60f00c90f0ab27e76f3657d95b19feb8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Apr 13 21:25:42 2010 +0400

    Enable --fast-pskip on fast firstpass

commit 2efd119bbe485c70f637efc8ba089eca61808711
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Apr 13 08:44:37 2010 -0400

    Make interlaced detection in avisynth only apply to field-based input
    Fixes improper flagging of progressive sources.

commit 0f9244199fa24ea50b79f3e0873da4641a7cec46
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Apr 13 19:55:12 2010 +0400

    Set psy=0 in lossless mode
    Doesn't actually affect output, just what's written in the SEI.

commit bd72d46f71e102597645a5fac2858663f85373ce
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Apr 11 04:20:04 2010 +0000

    Fix a use of sad_x4 that had non-mod64 stride
    Minimal speed improvement, but fixes a violation of internal api.

commit 15f5e7ef2d0bd8196b0345dc8fb568c225b22b12
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Apr 10 13:15:30 2010 -0700

    Make keyint_min auto by default
    Gives more reasonable default settings when using short GOPs.

commit c7c8693f838f09760e76261a7b3a55bbae2b375b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Apr 10 00:49:19 2010 -0700

    Faster mv predictor checking at subme < 3
    Simplify the predicted MV cost check.

commit f21ff8a3e7e1292c542e84842d2738adc72fcd59
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Apr 10 00:35:50 2010 -0700

    Special case in qpel refine for subme=1
    ~15-20% faster qpel refine with subme=1.
    Some minor cleanups in refine_supel.

commit 7c9870ba0eab79852e3243ad28aa6163c37b6498
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Sat Apr 10 02:21:01 2010 +0200

    Cosmetics: VLC tables

commit 825e3a9c1d185328f426340d118cb7359d1aca4b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 9 18:13:22 2010 -0700

    Add faster mv0 special case for macroblock-tree
    Improves performance on low-motion video.

commit 4f8c44c17425470202759cafc49ae4496745598d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 9 01:49:55 2010 -0700

    Add miscompilation check for x264_clz
    Running a Phenom-optimized build of x264 (e.g. -march=amdfam10) on a non-Phenom CPU didn't SIGILL; instead it would silently produce incorrect output.
    Now, instead, it will error out loudly.

commit 13908862fd79e85172ab2f4793fade268edb6d3d
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Apr 7 12:17:20 2010 +0300

    Fixing floating-point exception in level-checking
    Doesn't cause any issues for x264cli, but might impact some calling apps that care (e.g. Delphi apps).

commit f1320f8e9c68f10da09c2e31758b5ce4c79db9e1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 8 18:44:16 2010 -0700

    Save a few bits in multislice encoding
    Set the initial QP for each slice to the last QP of the previous slice.

commit bc42c5af36ec0005a7effb12cab07bb49729cb98
Author: Alex Wright <alexw0885@gmail.com>
Date:   Thu Apr 8 01:25:55 2010 +1000

    Early termination in 16x8/8x16 search
    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.

commit 040fddd0ff78380ee465b00203654846b969b8f5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 7 07:45:00 2010 -0700

    Make MV prediction work across slice boundaries
    Should improve motion search with lots of small slices, e.g. with slice-max-size.
    Still restricted by sliced threads (won't cross the boundary between two threadslices).
    The output-changing part of the previous patch.

commit 469fae24c53a1e52246b89ca9d412b63f8831abd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 7 07:43:46 2010 -0700

    Cleanup and simplification of macroblock_load
    Doesn't do anything now, but will be useful for many future changes.
    Splitting out neighbour calculation will make MBAFF implementation easier.
    Calculation of neighbour_frame value (actual neighbouring MBs, ignoring slices) will be useful for some future patches.

commit fb449c746ed5b2a8b006fa5b8d5b658a95816280
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 7 03:10:03 2010 -0700

    Add missing #include to display-x11.c

commit 819d121f6cf92b7b5f33e85181b0dcdb0ffbb84a
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Apr 6 22:08:21 2010 -0400

    Add TFF/BFF detection to all demuxers
    Fix interlaced Avisynth input, automatically weave field-based input.

commit 058d67e3eb800d9814403876a0181874e2f900dc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Apr 6 13:53:22 2010 -0700

    Correctly mark output frames as BREF
    Simplify pic_out code.

commit 25ca5b0cdd583a28e130525836e25e5e40095cf1
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Sat Apr 3 14:59:59 2010 -0700

    Fix HRD compliance
    As usual, the spec is so insanely obfuscated that it's impossible to get things right the first time.

commit f8671ce1f3b3addb49aca275215d6ffd313f08c2
Author: Alex Wright <alexw0885@gmail.com>
Date:   Sat Apr 3 14:50:26 2010 -0700

    Better b16x8/8x16 early termination in B-frames
    A bit slower but up to 1-2% better compression.

commit a1e4e583fc9740666c442c1ae2ee06e335f937d0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 2 12:23:52 2010 -0700

    Fix 10L in B-skip improvement patch

commit 9d08bf433190ac11e2707ac456382f3996773909
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 2 03:09:48 2010 -0700

    Fix printing of SEI header with VBV + ABR
    SEI header shouldn't say CBR unless bitrate == maxrate.

commit 385716eeb39ed9279c7f003837bb3228a77b2edf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 1 22:33:42 2010 -0700

    Simplify slicetype_frame_cost
    Avoid redundant calculations when VBV is on (due to the intra-only call).
    Move most of the logic into per-MB code.

commit 769adffece015d5082492fb87a4bc3cdd5cbd249
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 1 15:51:59 2010 -0700

    Faster CABAC state copying for small partitions
    Save ~25 clocks per i4x4, i8x8, and sub8x8 RD call.

commit 4abe704f9c23e342ed485d2f92f5d7ce7e32b4ff
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 31 01:44:07 2010 -0700

    Massive cosmetic and syntax cleanup
    Convert all applicable loops to use C99 loop index syntax.
    Clean up most inconsistent syntax in ratecontrol.c, visualize, ppc, etc.
    Replace log(x)/log(2) constructs with log2, and similar with log10.
    Fix all -Wshadow violations.
    Fix visualize support.

commit 2f432c81bb0192d7ebed1fd2f7afd8a431582553
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 30 23:30:09 2010 -0700

    Fix array overread in b8x16 search

commit 385f6e2642f9351a8da855f5fb75f611f59f28b1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 29 19:03:13 2010 -0700

    Faster direct check with subpartitions off
    Also simplify the whole function a bit.

commit d8d8e7ea3043adc292ce97851eaec057d002dc59
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 29 02:14:25 2010 -0700

    Print crf-max with appropriate precision in SEI

commit ffd1cd15984b60ab4e74c32ac71ffe4b576a30da
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Mon Mar 29 00:05:30 2010 -0700

    Fix 10l in timecode seeking

commit ae834029cad9401b30cd529cf8c84db41aac776d
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Mon Mar 29 13:51:02 2010 +0900

    Fix 10L: Remove needless error check
    This error check was for cfr input + --timebase, but that doesn't happen, and brings about a bug with vfr input.

commit f9ff0031cbccf582faf3e9224f678926d70750b2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 28 20:40:42 2010 -0700

    Don't use 2 L1 refs with pyramid + ref=1
    Slightly faster encoding with ref=1.

commit 33d382a2fa75b8f7929302b40826e2892355cef4
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Fri Mar 26 17:57:23 2010 -0700

    Update copyright year in SEI header

commit 5b1fdfabb8e473aaa8ddc6389f3882ed9e4073ac
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Mar 26 15:33:20 2010 -0700

    New "superfast" preset, much faster intra analysis
    
    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.

commit a76ac874ae45698c7e3354200e48ac181baed499
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Mar 25 14:46:24 2010 -0700

    Avoid redundant MV prediction in duplicate refs

commit a1edfa63597da268c850ddf769ae2fde63e132f8
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Wed Mar 24 23:27:30 2010 +0100

    Cosmetics in mvd handling
    Use a 2D array instead of doing manual pointer arithmetic.

commit 9904be8b50942d7038dcdd5ee20ea93154823b55
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 24 07:25:01 2010 -0700

    Fix make uninstall on systems with executable suffixes

commit 5543435e17c5b9bdbaeb979b76fdd5a2de727e93
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 23 14:00:58 2010 -0700

    Add tune for still image compression
    There has been some demand for this from companies looking to use x264 for still image compression (it can outperform JPEG or JPEG-2000 by a factor of 2 or more).
    Still image compression is a bit different; because temporal stability isn't an issue, we can get away with far more powerful psy settings.

commit 93b1d5a5d3f90e85f071160449b4e517a48f65b9
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Mar 22 02:59:50 2010 +0100

    Pad non-mod16 resolutions using the correct field
    
    Improves compression of interlaced videos with non-mod16 heights.

commit a882f7a6ada6018006c264ab5f16bc0ed55dcf10
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 21 09:10:00 2010 -0700

    Document slow/fast firstpass in --fullhelp

commit ce6bd494529a393acfc9ab26e798f94040cce1e0
Author: Holger Lubitz <holger@lubitz.org>
Date:   Sat Mar 20 20:41:21 2010 +0100

    Fix some misattributions in profiling
    Cycles spent in load_hadamard and the avg2 w16 ssse3 cacheline split code were misattributed.

commit 2678a7a3ed881eca724cf99fae3369f329b21eab
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Mar 20 17:07:12 2010 -0700

    Much faster non-RD intra analysis
    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.

commit 6314e08698b55e7d04d7a51521046ff3d1d7e791
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 17 15:53:43 2010 -0700

    Fix stack alignment in sliced threads
    Could cause crashes when called from non-GCC-compiled applications.

commit 8a919f81065cccb65ff7c989fffec9258362900b
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Tue Mar 16 01:46:00 2010 +0100

    Cosmetics: use sizeof() where appropriate

commit ae92e7f589f5832078cf6ecfa510d41b1f6b3301
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 15 00:01:57 2010 -0700

    Split up analyse_init
    Save some time by avoiding some unnecessary inits and moving other parts to per-thread init.

commit 5d767b111b505edd63dfcff51bd9de839df09f7b
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Mar 15 01:19:45 2010 +0100

    Reduce stack usage of b-adapt 2's trellis
    Also remove some redundant code.

commit 081b90d9b39eb273f16dd4fe75020048e91cbfcb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 14 00:25:02 2010 -0800

    Various motion estimation optimizations
    Faster method of checking MV range.
    Predict MVs and cache MVs/MVDs for bidir qpel-RD.
    A whole bunch of other minor optimizations.
    Slightly better performance and compression.

commit e73a769dec58d69860998706b4f99808e18a376d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 14 00:19:59 2010 -0800

    Overhaul macroblock_cache_rect
    Unify the rectangle functions into a single one similar to ffmpeg's fill_rectangle.
    Remove all cases of variable-size cache_rect calls; create a function-pointer-based system for handling such cases.
    Should greatly decrease code size required for such calls.

commit 4f42c3c55ff802c5b212b75317e332ce00cc4a90
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 14 16:48:22 2010 -0700

    Make a bunch of small functions ALWAYS_INLINE
    Probably no real effect for now, but needed for the next patch.

commit 6b585097ec92eb40e5785d8beee8b236781d5d86
Author: Loic Minier <loic.minier@ubuntu.com>
Date:   Wed Mar 10 05:26:46 2010 -0800

    Two compatibility fixes
    Add IA64 support in configure.

commit 49eb50c11ca281146cebea36c7a39d12fa589d51
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Fri Mar 5 03:19:47 2010 +0100

    Faster x264_macroblock_encode_pskip
    GCC is apparently unable to optimize out the calculation of a variable when it isn't used.

commit 513e9b95e81054606d505a7da7734b20ad628ba9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 7 04:10:30 2010 -0800

    Much more accurate B-skip detection at 2 < subme < 7
    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.

commit ec39f7b4566e768c7bad3023c00f9d130efae5bc
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sun Mar 7 02:57:04 2010 -0500

    Reformat profile restrictions in --fullhelp.
    
    Put "no interlaced", "no lossless" on their own line to avoid them
    running into the default options list.

commit 632af6683de604141c636d659a2d229b61ba5ecb
Author: James Darnley <james.darnley@gmail.com>
Date:   Sat Mar 6 18:28:07 2010 -0800

    Fix typo in configure

commit ea93d786162b7cd77a3254cf48dba356be74cf76
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Mar 6 10:29:57 2010 -0800

    Add support for spaces to iPhone GAS preprocessor script

commit d84a1a95f4db132a374d550c98fa85e00075e7a8
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Sat Mar 6 19:25:30 2010 +0900

    Fix slightly wrong mp4 duration.

commit d0c898a7a737c9a87cefc14b21bc6cfd44cc6b16
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Sat Mar 6 19:24:32 2010 +0900

    Fix link errors with newest gpac cvs
    gpac decided to randomly break API and require us to use their own custom malloc and free.

commit db2bae305ef658d053c7c174703c4631a2534b1a
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Fri Mar 5 20:43:02 2010 +0000

    Save a few bits in slice headers
    Don't override the maximum ref index in the slice header if it's the same as the default.
    Also update the naming of the relevant variables in the PPS.

commit e19bef27581dcba813a20d37005ccdf4c285be69
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Mar 4 09:59:09 2010 -0800

    Shrink some arrays in x264_t
    Also remove an unnecessary assignment from cache_load.

commit f36b1e49b3c4cd992080c13ff346f4846f8541b8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 3 11:22:29 2010 -0800

    Use x264_log in more places instead of fprintf

commit 6951964c87029b4786ccbd558dfa4d3c5be353ae
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Mar 3 10:14:20 2010 -0800

    Fix two nondeterminisms
    Move noise reduction data into thread-specific data.
    Use correct reference list for L1 temporal predictors.

commit 81eee062a4ce9aae1eceb3befcae855c25e5ec52
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Mar 19 14:44:10 2010 -0700

    "CRF-max" support with VBV
    This is a rather curious feature that may have more use than is initially obvious.
    In CRF mode with VBV enabled, CRF-max allows the user to specify a quality level which the encoder will never go below, even due to the effects of VBV.
    This is not the same as qpmax, which is not aware of issues like scene complexity.
    Setting this WILL cause VBV underflows in any situation where the encoder would have needed to exceed the relevant CRF to avoid underflow.
    
    Why might one want to do this even if it would cause VBV underflows?
    In the case of streaming, particularly ultra-low-latency streaming, it may be preferable to drop frames than to display frames that are of too low a quality.
    Thus, in extremely complex scenes, rather than display completely awful video, the streaming server could simply drop to a lower framerate.
    Scenecuts, which normally look terrible under situations like single-frame VBV, could be handled by just displaying them a bit later and dropping frames to compensate.
    In other words, it's better to see the scenecut 150ms delayed than for it to look like a blocky mess for 150ms.
    
    On the caller-side, this would be handled by detecting the output size of x264's frames and dropping future frames to compensate if necessary.
    
    This can also be used in normal encoding simply to ensure that VBV does not hurt quality too much (at the cost of potentially causing underflows).
    This can help quite a lot when using single-frame VBV and sliced threads, where VBV can often be somewhat unstable.

commit c6de86497cdd7b7f3cce7d8a95d723c7d0c9f505
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Tue Mar 2 00:57:10 2010 -0800

    Blu-ray support: NAL-HRD, VFR ratecontrol, filler, pulldown
    x264 can now generate Blu-ray-compliant streams for authoring Blu-ray Discs!
    Compliance tested using Sony BD-ROM Verifier 1.21.
    Thanks to The Criterion Collection for sponsoring compliance testing!
    
    An example command, using constant quality mode, for 1080p24 content:
    x264 --crf 16 --preset veryslow --tune film --weightp 0 --bframes 3 --nal-hrd vbr --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 24 --b-pyramid strict --slices 4 --aud --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 <input> -o <output>
    
    This command is much more complicated than usual due to the very complicated restrictions the Blu-ray spec has.
    Most options after "tune" are required by the spec.
    --weightp 0 is not, but there are known bugged Blu-ray player chipsets (Mediatek, notably) that will decode video with --weightp 1 or 2 incorrectly.
    Furthermore, note the Blu-ray spec has very strict limitations on allowed resolution/fps combinations.
    Examples include 1080p @ 24000/1001fps (NTSC FILM) and 720p @ 60000/1001fps.
    
    Detailed features introduced in this patch:
    
    Full NAL-HRD compliance, with both VBR (no filler) and CBR (filler) modes.
    Can be enabled with --nal-hrd vbr/cbr.
    libx264 now returns HRD timing information to the caller in the form of an x264_hrd_t.
    x264cli doesn't currently use it, but this information is critical for compliant TS muxing.
    
    Full VFR ratecontrol support: VBV, 1-pass ABR, and 2-pass modes.
    This means that, even without knowing the average framerate, x264 can achieve a correct bitrate in target bitrate modes.
    Note that this changes the statsfile format; first pass encodes make before this patch will have to be re-run.
    
    Pulldown support: libx264 allows the calling application to specify a pulldown mode for each frame.
    This is similar to the way that RFFs (Repeat Field Flags) work in MPEG-2.
    Note that libx264 does not modify timestamps: it assumes the calling application has set timestamps correctly for pulldown!
    x264cli contains an example implementation of caller-side pulldown code.
    
    Pic_struct support: necessary for pulldown and allows interlaced signalling.
    Also signal TFF vs BFF with delta_poc_bottom: should significantly improve interlaced compression.
    --tff and --bff should be preferred to the old --interlaced in order to tell x264 what field order to use.
    
    Huge thanks to Alex Giladi and Lamont Alston for their work on code that eventually became part of this patch.

commit a5f56908a0b153870c4f09cbf683fe85da3e44b4
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Sun Feb 28 21:42:19 2010 -0800

    Timecode input/output
    --tcfile-in allows a user to specify a timecode v1 or v2 file to override input timestamps.
    Useful for dealing with VFR input, especially when FFMS/LAVF support isn't available.
    --tcfile-out writes a timecode v2 file containing the timecodes of the output file.
    New --timebase option allows a user to change the stream timebase.
    Intended primarily for forcing timebase with timecode files if necessary.
    When using --seek, note that x264 will seek in the timecode file as well.

commit ece1dd2e8e35a49883e26c7071d2ca3cec9c008f
Author: Alex Wright <alexw0885@gmail.com>
Date:   Sun Feb 28 01:29:15 2010 -0800

    Mixed-refs support for B-frames
    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.

commit e5b108a3de97650ad4bbeb4f3ff13cff916d6052
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Mar 1 22:01:04 2010 +0100

    Faster rounding of chroma DC coefficients

commit 8ec5a5ee10face5a1e64bf15364d1fdf2cf29ae5
Author: Holger Lubitz <holger@lubitz.org>
Date:   Wed Mar 24 00:54:39 2010 +0100

    Faster cabac_encode_decision_asm
    Minimizes instruction count, which also means smaller code.
    Various other slight changes to allow more instruction level parallelism.

commit c572d28af6ba7addc0f1855ee5282435d8d37861
Author: Holger Lubitz <holger@lubitz.org>
Date:   Tue Mar 23 23:13:54 2010 +0100

    Faster hpel_filter
    On ssse3, use pmaddubsw for h filter too (similar to v filter).
    Change 32-bit v and c filters to write the result non-temporal.
    Add commented-out defines to disable non-temporal operation.
    Hardly any black magic here, but still a measurable win especially for ssse3.

commit 279c9d9dd90f18f229719ba09c4fab33f87b3f16
Author: David Conrad <lessen42@gmail.com>
Date:   Sun Feb 28 20:34:09 2010 -0500

    Ignore XYSCSS in y4m if the newer standard C tag is present
    
    Apparently y4mscaler will generate 4:2:0 files with XYSCSS set to 444

commit c8900a261508830e74187f379e7666cfc94f638b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 2 10:51:15 2010 -0800

    Fix regression in r1450
    I_PCM blocks would cause x264 to crash or generate bad output. Simplify PCM handling.

commit 7d533c57ee25a73c79b10ef7fb36324727e38582
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Feb 27 14:26:02 2010 -0800

    Fix crash with intra-refresh + aq-mode 0

commit 11446152ba7c79774d65f8556f2282ad838942d7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Feb 26 05:04:48 2010 -0800

    Fix regression in r1453
    r1453 broke psy-trellis with --trellis 2

commit 7eac2495b2d32d6328bf68abbc4bb67006a0737a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Feb 25 02:07:48 2010 -0800

    Fix regression in r1449
    Incorrectly placed thread MV check could result in rare thread MV internal errors, esp. with --non-deterministic.
    These weren't fatal errors (x264 could recover and continue with slight compression loss).

commit 3ae44d9e19afccf3feb9ef3c33ae0538893f78e9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 24 20:51:43 2010 -0800

    Cut size of MVD arrays by a factor of 2 again
    Only store the MVDs of the edges of each MB.
    
    Thanks to Michael Niedermayer for the idea.

commit 6a443d3cdf338408b1b39e7f336306d2a34703f6
Author: David Conrad <lessen42@gmail.com>
Date:   Wed Feb 24 19:39:57 2010 -0500

    Disable Altivec and VIS optimizations when --disable-asm is specified

commit 4091b29c0dcaa2ceaedbdf5be9c283beb70fe327
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Feb 23 23:50:23 2010 -0800

    Fix a buffer overread on odd input resolutions

commit 479a9e8e4e39409b24b0517a1c155a767af63454
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 24 03:49:32 2010 -0800

    Fix one bug, one corner case in VBV
    qp_novbv wasn't set correctly for B-frames.
    Disable ABR code for frames with zero complexity.
    Disable ABR code for CBR mode; it is completely unnecessary and can have negative consequences.

commit 4132e0bce60469bc7709d25d14b62b26c8fc112e
Author: David Conrad <lessen42@gmail.com>
Date:   Wed Feb 24 00:29:21 2010 -0500

    Port Mans Rullgard's NEON intra prediction functions from ffmpeg

commit e29c75837c72a0ed387441ffa6bab339dbe3de9f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 23 13:52:15 2010 -0800

    Remove unused function
    Two other minor fixes.

commit f2428d26ecf182bcda1292191902861a66001574
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 23 10:00:41 2010 -0800

    Use short startcode in more possible situations
    Previous patch didn't cover all possible uses according to B.1.2.

commit 7fcffde1f5bdae55def6c36ef7d9743485adb72c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 23 09:50:12 2010 -0800

    Fix fastfirstpass
    Apparently the libx264 preset changes made "fastfirstpass" into "fastsecondpass" inadvertantly.

commit ad64d48f17335e820d7a0a563a88436f38ccb813
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Feb 23 09:10:26 2010 -0800

    Fix various silly errors in the previous patches

commit 9e35bd0f915e92c4a48f9ace2af561ae9a27f6e8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 23 02:18:07 2010 -0800

    Actually error out if preset/tune/profile is invalid
    Got lost somewhere in the move to libx264-based presets.

commit 377814e109210a10b8c34bf358b40c59d3ca2757
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 22 17:33:17 2010 -0800

    Faster probe_skip, 2x2 DC transform handling
    Move the 2x2 DC DCT into the dct_dc asm function to avoid some store-to-load forwarding penalties and extra register loads.
    Use dct_dc as part of the early termination in probe_skip.
    x86 asm partially by Holger Lubitz.
    ARM NEON asm by David Conrad.

commit 6823cbc5359981ff2d7a9c538b9e8f861b9cf36c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Feb 21 17:30:52 2010 -0800

    Use short startcodes whenever possible
    Saves one byte per frame for every slice beyond the first.
    Only applies to Annex-B output mode.

commit 74f2fd65af6840aced812e295e1a551ba295459f
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sun Feb 21 13:21:11 2010 -0800

    New algorithm for AQ mode 2
    Combines the auto-ness of AQ2 with a new var^0.25 instead of log(var) formula.
    Works better with MB-tree than the old AQ mode 2 and should give higher SSIM.

commit a6c91c9f2af09d666755eef0ac2cc18228ce7a7c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Feb 21 13:20:19 2010 -0800

    Abide by the MinCR level limit
    Some Blu-ray analyzers were complaining about this.

commit 1d94f305999864aaa1da79050da2f900f69b4365
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Feb 21 03:56:06 2010 -0800

    Make b-pyramid normal the default
    Now that b-pyramid works with MB-tree and is spec compliant, there's no real reason not to make it default.
    Improves compression 0-5% depending on the video.
    Also allow 0/1/2 to be used as aliases for none/strict/normal (for conciseness).

commit 1007cb7478a5e21facb7c23dc49770e2f02b9620
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Feb 21 01:56:12 2010 -0800

    Move presets, tunings, and profiles into libx264
    Now any application calling libx264 can use them.
    Full documentation and guidelines for usage are included in x264.h.

commit 7a7fbeab0f1f3b8187d1d8ce56def91f1582d5d7
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Feb 19 10:45:22 2010 -0800

    Faster, more accurate psy-RD caching
    Keep more variants of cached Hadamard scores and only calculate them when necessary.
    Results in more calculation, but simpler lookups.
    Slightly more accurate due to internal rounding in SATD and SA8D functions.

commit 40284dfe7485e52769eca0614063b92315e9a5f5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Feb 18 17:01:38 2010 -0800

    Much faster and more efficient MVD handling
    Store MV deltas as clipped absolute values.
    This means CABAC no longer has to calculate absolute values in MV context selection.
    This also lets us cut the memory spent on MVDs by a factor of 2, speeding up cache_mvd and reducing memory usage by 32*threads*(num macroblocks) bytes.
    On a Core i7 encoding 1080p, this is about 3 megabytes saved.

commit 10e9e95cb90f01fcbdb182c2ae05dac336b6eed3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Feb 18 10:37:57 2010 -0800

    Add temporal predictor support to interlaced encoding
    0.5-1% better compression in interlaced mode

commit 8b67d5eb50a8b63c3c8732d5f053073dbb195e51
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 17 22:41:16 2010 -0800

    Keep track of macroblock partitions
    Allows vastly simpler motion compensation and direct MV calculation.

commit 4574b58c7d66d793bd28e3ce506165ca1c9e7680
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 16 10:13:33 2010 -0800

    Much faster and simpler direct spatial calculation

commit 1a6d32b4a42f490ec817aa2ddb543dda8d9a8c9e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Feb 21 14:21:26 2010 -0800

    SimpleBlock requires Matroska Doctype v2

commit 966fd12a2a9beb3bba294dc4a91a45bbafc4799f
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Tue Feb 16 11:05:21 2010 -0800

    Add GPAC version check

commit 482646af573829582403317f0cde0a46a4b48ab2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 23 01:44:44 2010 -0800

    Fix stupid regression in interlaced in r1430
    With ref > 8 or b-pyramid, an array over-read could cause slightly incorrect B-frames.

commit f0da96145cb068ade0f0232d0682137c9065929f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 22 13:04:47 2010 -0800

    Fix overread of scratch buffer
    Could cause crashes on non-mod16 frames.

commit 28e6eb67ffaa002469f60c40e2b5d58b2a758f9c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 22 11:21:51 2010 -0800

    Fix integer overflow in chroma SSD check
    Could cause bad skips at very high quantizers on extreme inputs.

commit 4784723450ae1dd28ede1ff04a93f1849d6444e5
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Feb 16 09:41:55 2010 -0800

    Fix I and B-frame QPs with threads
    Rounding errors resulted in slightly wrong QPs with threads enabled.

commit 781d300ab73671bb2176ef2c3e6c0f2df425cee9
Author: David Conrad <lessen42@gmail.com>
Date:   Mon Feb 15 01:02:46 2010 -0800

    Fix compilation on ARM

commit b8485e875ed3cb836ac41b11676940e2c6ff6caa
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jan 28 18:09:07 2010 +0000

    Remove unnecessary PIC support macros
    yasm has a directive to enable PIC globally

commit d2277586a7bce99caa448b3d461f6f42e8a20e6d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Feb 13 11:19:38 2010 -0800

    Don't even try direct temporal when it would give junk MVs
    In PbBbP pyramid structure, the last "b" cannot use temporal because L0Ref0(L1Ref0) != L0Ref0.
    Don't even bother analyzing it, just use spatial.
    Should improve speed and direct auto effectiveness in CRF and 1-pass modes when b-pyramid is used.
    Also makes --direct temporal useful with --b-pyramid, since it will fall back to spatial for frames where temporal is broken.

commit 520ba2becf677d5ed8c1d7141eb25c65d08a3b3e
Author: David Conrad <lessen42@gmail.com>
Date:   Sun Oct 4 07:24:42 2009 -0400

    iPhone compilation support
    Also add --sysroot to configure options
    
    To build for iPhone 3gs / iPod touch 3g:
    CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc ./configure --host=arm-apple-darwin --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk
    
    For older devices, add
    --extra-cflags='-arch armv6 -mcpu=arm1176jzf-s' --extra-ldflags='-arch armv6' --disable-asm

commit 2b5a0c693faa4b807d02b923f596a2aff6778760
Author: David Conrad <lessen42@gmail.com>
Date:   Fri Jan 8 22:40:09 2010 -0500

    ARM NEON versions of weightp functions

commit 40dce15a622a82e6cce0e7233aa75831162635b1
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Feb 13 01:25:56 2010 -0800

    Use #ifdef instead of #if in checkasm

commit aa2626c567083432f56368bee9c9d43d7c8e1fef
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Feb 13 00:52:31 2010 -0800

    Make the ABR buffer consider the distance to the end of the video
    Should improve bitrate accuracy in 2-pass mode.
    May also slightly improve quality by allowing more variation earlier-on in a file.
    
    Also fix abr_buffer with 1-pass: it does something very different than what it does for 2-pass.
    Thus, the earlier change that increased it based on threads caused 1-pass ABR to be somewhat less accurate.

commit dcef20c00f1248beb7a6a55448976be6cbd3ee5b
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sat Feb 13 02:22:04 2010 -0500

    Mark cli_input/output_t variables as const when possible

commit dffb2036daed615908ab666d7f6130abed6d0160
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sat Feb 13 02:00:57 2010 -0500

    mkv: Write the x264 version into the file header
    
    This only updates the "writing application"; matroska_ebml.c is the
    "muxing application", but the version string for that is still hardcoded.

commit f3de1741f1e38c6b0d4262e6290a20b3e35f6692
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sat Feb 13 01:41:41 2010 -0500

    mkv: Write SimpleBlock instead of Block for frame headers
    
    mkvtoolnix writes these by default since 2009/04/13.
    Slightly simplifies muxer and allows 'mkvinfo -s' to show B-frames
    as 'B' (but not B-ref frames).

commit 9eb5b912e317b4d3d106a55080b7aafd3d0f4af7
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Mon Nov 10 00:55:20 2008 -0500

    Allow | as a separator between psy-rd and psy-trellis values.
    [,:/] are all taken when setting psy-trellis in a zone in an mencoder option.
    
    Also fix a comment typo and remove a useless line of code.

commit 41db4e8355e2390c430071c6f5ed9a2c8851e0a6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Feb 12 21:15:12 2010 -0800

    Backport various speed tweak ideas from ffmpeg
    Add mv0 early termination to spatial direct calculation
    Up to twice as fast direct mv calculation on near-motionless video.
    
    Branchless CAVLC level code adjustment based on trailing ones.
    A few clocks faster.
    
    Check tc value before clipping in C version of deblock functions.
    Much faster, but nobody uses those anyways.
    
    Thanks to Michael Niedermayer for the ideas.

commit 58fd85453ec62d829663887b960ff7f2fbbc22d1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Feb 12 03:33:54 2010 -0800

    Implement direct temporal + interlaced
    This was much easier than I expected.
    It will also be basically useless until TFF/BFF support gets in, since it requires delta_poc_bottom to be set correctly to work well.

commit b3225125169210ee8982be05f3b90e3de0bdd95c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 10 13:44:28 2010 -0800

    Allow longer keyints with intra refresh
    If a long keyint is specified (longer than macroblock width-1), the refresh will simply not occur all the time.
    In other words, a refresh will take place, and then x264 will wait until keyint is over to start another refresh.

commit 9f242312eb692831d716ed5772b5b832aac54866
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 10 12:12:29 2010 -0800

    Overhaul sliced-threads VBV
    Make predictors thread-local and allow each thread to poll the others to get their predicted sizes.
    Many, many other tweaks to improve quality with small VBV and sliced threads.
    Note this may somewhat increase the risk of a VBV underflow in such extreme situations (single-frame VBV).
    This is tolerable, as most relevant use-cases are better off with a few rare underflows (even if they have to drop a slice) than consistent low quality.

commit 8463781af4fa0f304865adb78a0e86c8a6536e0c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 9 15:08:31 2010 -0800

    Print psy-(rd|trellis) with more precision in userdata SEI

commit 8ab4907f5a550ac17356609522b3426650ba3029
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 15 00:55:16 2010 -0800

    More formatting fixes in x264 help

commit 16a1fddbd43ec2352a6cb44c7890c38c6535b726
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Feb 8 15:53:52 2010 -0800

    Faster 2x2 chroma DC dequant

commit ca954495e0f6cee187886a4213ca49bfd2b30be7
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Mon Feb 8 01:48:38 2010 -0800

    Write PASP atom in mp4 muxing
    Adds container-level aspect ratio support for mp4.

commit bb0990813c7fb047a322c5d463cde5ae8e22c756
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 3 20:27:57 2010 -0800

    Fix 2-pass ratecontrol continuation in case of missing statsfile
    Didn't work properly if MB-tree was enabled.

commit 346165169775c5884a9e964afc253561bb11e2ca
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 3 20:01:16 2010 -0800

    Smarter QPRD
    Catch some cases in which RD checks can be avoided; reduces QPRD RD calls by 10-20%.

commit da9b9d33425f0492235129ae8937fa7edd64e0a6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 3 18:36:44 2010 -0800

    Fix subpel iteration counts with B-frame analysis and subme 6/8
    Since subme 6 means "like subme 5, except RD on P-frames", B-frame analysis
    shouldn't use the RD subpel counts at subme 6.  Similarly with subme 8.
    Slightly faster (and very marginally worse) compression at subme 6 and 8.

commit 698bbac16e95a4a161a22b3a88e0aa6f9ed6333f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 3 18:19:29 2010 -0800

    Simplify decimate checks in macroblock_encode
    Also fix a misleading comment.

commit 1ec82b87c875c5fa6e66e9cbedb4ec04ac6c058c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Feb 2 03:15:18 2010 -0800

    Improve bidir search, fix some artifacts in fades
    Modify analysis to allow bidir to use different motion vectors than L0/L1.
    Always try the <0,0,0,0> motion vector for bidir.
    Eliminates almost all errant motion vectors in fades.
    Slightly improves PSNR as well (~0.015db).

commit 08d4a999b0300e50196afb3ee0e310834028b537
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 1 13:04:47 2010 -0800

    Slightly faster predictor_difference_mmxext

commit f555cf3758f46f3c4f7a2f05094b16f8f3c25a27
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jan 29 02:40:41 2010 -0800

    Add ability to adjust ratecontrol parameters on the fly
    encoder_reconfig and x264_picture_t->param can now be used to change ratecontrol parameters.
    This is extraordinarily useful in certain streaming situations where the encoder needs to adapt the bitrate to network circumstances.
    
    What can be changed:
    1) CRF can be adjusted if in CRF mode.
    2) VBV maxrate and bufsize can be adjusted if in VBV mode.
    3) Bitrate can be adjusted if in CBR mode.
    However, x264 cannot switch between modes and cannot change bitrate in ABR mode.
    
    Also fix a bug where x264_picture_t->param reconfig method would not always be frame-exact.
    
    Commit sponsored by SayMama video calling.

commit fcf70c2f9853d74ac077a7af016e28eef05e2f5a
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Sat Jan 30 13:53:01 2010 -0800

    Fix regression in r1406
    Bitrate was printed incorrectly for some input framerates.

commit 3f3343abfba8a2377a66b6a7f7a8c564ade86bc6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Jan 30 12:01:51 2010 -0800

    Fix log2f detection, include order, some gcc warnings
    r1413 caused crashes on any system with malloc.h.
    Also switch to std=c99 or std=gnu99 if supported by the compiler.
    Fix visualize support.

commit 63b74d874328e630ecb7eaa37cf780c45b992f0e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jan 29 11:01:44 2010 -0800

    Fix abstraction violations in x264.c
    No calling application--not even x264cli--should ever look inside x264_t.

commit 2d2c8616c03586575529bb19cacfd8b6b01c3508
Author: Diogo Franco <diogomfranco@gmail.com>
Date:   Thu Jan 28 17:28:03 2010 -0800

    Move -D CFLAGS to config.h

commit 3838c301e1ee1718e6f1e037d21bb21525b3eab6
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Jan 28 17:26:40 2010 -0800

    Fix stat with large file support

commit 6bd24a94c06ca81baa0156ff418be247e658a28f
Author: Diogo Franco <diogomfranco@gmail.com>
Date:   Wed Jan 27 20:29:50 2010 -0800

    Implement ffms2 version check
    Depends on ffms2 version 2.13.1 (r272).
    Tries pkg-config's built-in version checking first.
    Uses only the preprocessor to avoid cross-compilation issues.

commit 38cfabe33e17940870099fcf5d60daae080a3880
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jan 27 19:41:27 2010 -0800

    Fix implicit CBR message to only print when in ABR mode
    Also make it print outside of debug mode.

commit d355878be5616dc871058cb931b281b1d5cfbfbc
Author: Diogo Franco <diogomfranco@gmail.com>
Date:   Wed Jan 27 13:11:08 2010 -0800

    Add configure check for log2 support
    Some incredibly braindamaged operating systems, such as FreeBSD, blatantly ignore the C specification and omit certain functions that are required by ISO C.
    log2f is one of these functions that periodically goes missing in such operating systems.

commit 616900186aa2bf2e04205a010daaa2776bc0944a
Author: Diogo Franco <diogomfranco@gmail.com>
Date:   Wed Jan 27 10:12:42 2010 -0800

    Add config.log support
    Now, if configure fails, you'll be able to see why.

commit f20aace8d4fe7e35df9258e4c5fe773d08550f34
Author: Diogo Franco <diogomfranco@gmail.com>
Date:   Wed Jan 27 09:26:35 2010 -0800

    Fix cross-compiling with lavf, add support for ffms2.pc
    Also update configure script to work with newest ffms.

commit d81c26db6909e2e3d9b85b21a2618287dce29575
Author: Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Date:   Tue Jan 26 16:01:54 2010 -0800

    Improve DTS generation, move DTS compression into libx264
    This change fixes some cases in which PTS could be less than DTS.
    
    Additionally, a new parameter, b_dts_compress, enables DTS compression.
    DTS compression eliminates negative DTS (i.e. initial delay) due to B-frames.
    The algorithm changes timebase in order to avoid duplicating DTS.
    Currently, in x264cli, only the FLV muxer uses it.  The MP4 muxer doesn't need it, as it uses an EditBox instead.

commit 3659b8124a809c39d61a28bdf1b235e81c02b06d
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Jan 26 11:41:18 2010 -0800

    Various threading-related cosmetics
    Simplify a lot of code and remove some unnecessary variables.

commit 0f985245093047980c1b6148562222265b230dff
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jan 25 11:23:55 2010 -0800

    Hardcode the bs_t in cavlc.c; passing it around is a waste
    
    Saves ~1.5kb of code size, very slight speed boost.

commit 00f933f05df722e4b133d2c57f1f45dba285430c
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Jan 23 18:05:25 2010 -0800

    Fix lavf input with pipes and image sequences
    x264 should now be able to encode from an image sequence using an image2-style formatted string (e.g. file%02d.jpg).

commit 1a1b356a2996629d2c5ad2b568df8df9bff32954
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jan 21 23:07:11 2010 -0800

    Fix bitstream alignment with multiple slices
    Broke multi-slice encoding on CPUs without unaligned access.
    New system simply forces a bitstream realignment at the start of each writing function and flushes when it reaches the end.

commit 90a249aa40deec9234f9ea7554deb8a418183094
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jan 21 10:00:07 2010 -0800

    Merge nnz_backup with scratch buffer
    Slightly less memory usage.

commit 20fa784d2d9e0d5e524d4e3834699e9ff9b57511
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Jan 20 09:00:54 2010 -0800

    Use cross-prefix properly with pkg-config for cross-compiling

commit 952aa77c8c7980614cbaa4800e865f4f6a701043
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jan 18 20:29:33 2010 -0800

    Various performance optimizations
    Simplify and compact storage of direct motion vectors, faster --direct auto.
    Shrink various arrays to save a bit of cache.
    Simplify and reorganize B macroblock type writing in CABAC.
    Add some missing ALIGNED macros.

commit bef4e3e601970c9bfd0c94d6621f100cf015e1f8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jan 18 15:50:06 2010 -0800

    Fix crash on new AMD M300 and similar CPUs
    Apparently these CPUs have SSE4a, but not misaligned SSE.

commit 6cb6086269d789a184cb6262fedb8205d821a44f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jan 17 19:11:05 2010 -0500

    Fix intra refresh with subme < 6
    Also improve the quality of intra masking.

commit cc65eaba97bb46923dec665e5a91855ac1d97dbf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jan 16 20:11:29 2010 -0500

    Add support for multiple --tune options
    Tunes apply in the order they are listed in the case of conflicts.
    Psy tunings, i.e. film/animation/grain/psnr/ssim, cannot be combined.
    Also clarify --profile, which forces the limits of a profile, not the profile itself.

commit e4acb95b119743cc933ff3c8f0410aa7ffe20ed2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jan 16 02:50:15 2010 -0500

    Various bugfixes and tweaks in analysis
    Fix the oldest-ever bug in x264: b16x8 analysis used the wrong width for predict_mv.
    Fix cache_ref calls for slightly better MV prediction in bsub16x16 analysis.
    Make B-partition analysis consider reference frame costs.
    Various other minor changes.
    Overall very slightly improved mode decision and motion search in B-frames.

commit 6662db34e524a6ff1f935cce779473d3882d046c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jan 14 14:52:12 2010 -0500

    More --me tesa optimizations

commit 7ff686756e042f625fae904d9e059cd489406ed8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jan 14 10:39:10 2010 -0500

    Fix typo in configure

commit 1d3ab22126c1369a75fc8d5b933159c4a53f35c9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jan 14 00:07:30 2010 -0500

    Make --fps force CFR mode

commit 3d0f1108f982867dde5079bbbf90553487de2ed0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jan 13 20:21:31 2010 -0500

    Eliminate intentional array overflow in quant matrix handling
    While it probably never caused problems, it was incredibly ugly and evil.

commit 918ca1e55351446478d4dcee5936c5843bf79925
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jan 13 20:16:13 2010 -0500

    Faster --me tesa

commit d26e79d982ec6d0aea40e6d0b21ee799994007ca
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Jan 13 15:44:00 2010 -0500

    Fix static pthreads + dynamically linked x264 on win32
    Add the necessary static pthread initialization code to a new DLLmain function.

commit eda7bf0d97786c04a8563606fd43eab4494490d6
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Jan 12 22:55:10 2010 -0500

    Add getopt_long to the included getopt.c
    Fixes option handling on OSs that have a nonworking/missing getopt (e.g. Solaris).

commit ecca2f572b584f8f0e006a0f82048e30ada75b9c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 12 20:14:35 2010 -0500

    Faster psy-trellis init
    Remove some unncessary zigzags.

commit f6d92e5180bc87747475946efdb888cde254b94f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 12 19:19:07 2010 -0500

    Simplfy intra mode availability handling
    Slightly faster, 1.5kb smaller binary size, less code.

commit d260e6bf125e2a3b8541bf589c5d41094601fd21
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jan 10 15:14:02 2010 -0500

    Fix free callback, add x264_encoder_parameters function
    x264 would try to use the passed param struct after freeing if the param_free callback was set.
    Probably didn't cause any issues, as probably no programs used the callback in this location yet.
    
    A new x264_encoder_parameters function is now available in the API.
    This function lets the calling application grab the current state of the encoder's parameters.
    Use this in x264cli to ensure that the param struct used for set_param is updated with whatever changes x264_encoder_open has made to it.
    
    Patch partially by Anton Mitrofanov <BugMaster@narod.ru>.

commit 846694224797ade9fe3dc8861d68b56a95af6148
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Jan 9 01:52:33 2010 -0500

    Fix x264 compilation on Apple GCC
    Apple's GCC stupidly ignores the ARM ABI and doesn't give any stack alignment beyond 4.

commit a48a48aea05315bb8944e7e8f92fa2a6e30006a4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jan 2 03:27:46 2010 -0500

    Faster weightp motion search
    For blind-weight dupes, copy the motion vector from the main search and qpel-refine instead of doing a full search.
    Fix the p8x8 early termination, which had unexpected results when combined with blind weighting.
    Overall, marginally reduces compression but should potentially improve speed by over 5%.

commit e9f998b97db6e498faa62a60c6fddf3cabfea214
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Dec 31 13:45:27 2009 -0500

    More correct padding constants for lowres planes
    Since lowres analysis isn't interlace-aware, we don't need to double the vertical padding for interlaced video.

commit 1b68cbd27b24759f64c72effdae42f184a20546e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Dec 31 02:57:45 2009 -0500

    Fix some invalid reads caught by valgrind
    Temporal predictor calculation was misled by invalid reference counts for I-frames.

commit 52a4fbe142926435571fbf2fb3d535e8873627d3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 22 18:59:29 2009 -0500

    Periodic intra refresh
    Uses SEI recovery points, a moving vertical "bar" of intra blocks, and motion vector restrictions to eliminate keyframes.
    Attempt to hide the visual appearance of the intra bar when --no-psy isn't set.
    Enabled with --intra-refresh.
    The refresh interval is controlled using keyint, but won't exceed the number of macroblock columns in the frame.
    Greatly benefits low-latency streaming by making it possible to achieve constant framesize without intra-only encoding.
    Combined with slice-max size for one slice per packet, tests suggest effective resiliance against packet loss as high as 25%.
    x264 is now the best free software low-latency video encoder in the world.
    
    Accordingly, change the API to add b_keyframe to the parameters present in output pictures.
    Calling applications should check this to see if a frame is seekable, not the frame type.
    
    Also make x264's motion estimation strictly abide by horizontal MV range limits in order for PIR to work.
    Also fix a major bug in sliced-threads VBV handling.
    Also change "auto" threads for sliced threads to "cores" instead of "1.5*cores" after performance testing.
    Also simplify ratecontrol's checking of first pass options.
    Also some minor tweaks to row-based VBV that should improve VBV accuracy on small frames.

commit 8b9dcd8d50be201f1bedc9b19331432969f37d98
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Mon Dec 28 10:42:17 2009 -0500

    LAVF/FFMS input support, native VFR timestamp handling
    libx264 now takes three new API parameters.
    b_vfr_input tells x264 whether or not the input is VFR, and is 1 by default.
    i_timebase_num and i_timebase_den pass the timebase to x264.
    
    x264_picture_t now returns the DTS of each frame: the calling app need not calculate it anymore.
    
    Add libavformat and FFMS2 input support: requires libav* and ffms2 libraries respectively.
    FFMS2 is _STRONGLY_ preferred over libavformat: we encourage all distributions to compile with FFMS2 support if at all possible.
    FFMS2 can be found at http://code.google.com/p/ffmpegsource/.
    --index, a new x264cli option, allows the user to store (or load) an FFMS2 index file for future use, to avoid re-indexing in the future.
    
    Overhaul the muxers to pass through timestamps instead of assuming CFR.
    Also overhaul muxers to correctly use b_annexb and b_repeat_headers to simplify the code.
    Remove VFW input support, since it's now pretty much redundant with native AVS support and LAVF support.
    Finally, overhaul a large part of the x264cli internals.
    
    --force-cfr, a new x264cli option, allows the user to force the old method of timestamp handling.  May be useful in case of a source with broken timestamps.
    Avisynth, YUV, and Y4M input are all still CFR.  LAVF or FFMS2 must be used for VFR support.
    
    Do note that this patch does *not* add VFR ratecontrol yet.
    Support for telecined input is also somewhat dubious at the moment.
    
    Large parts of this patch by Mike Gurlitz <mike.gurlitz@gmail.com>, Steven Walters <kemuri9@gmail.com>, and Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>.

commit 27355a2ba90516b0c280e026eb9c35fbf5f27a57
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 15 16:59:00 2009 -0800

    More help typo fixes

commit b9823cafed9e0cbc887e5fbc27b78a892cb43de1
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jan 14 03:07:30 2010 +0000

    Fix x264_clz on inputs > 1<<31
    (though x264 never generates such inputs)

commit 3feaec244c11ad4496ac4f6a630200a89db2d308
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Dec 13 03:16:04 2009 -0800

    Don't do sum/ssd analysis if weightp == 1
    Typo fixes in comments and help.

commit c9cafc75352f036bdcb90f2a26e7233920567b13
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Dec 11 17:22:18 2009 -0800

    Fix two bugs in 2-pass ratecontrol
    last_qscale_for wasn't set during the 2pass init code.
    abr_buffer was way too small in the case of multiple threads, so accordingly increase its buffer size based on the number of threads.
    May significantly increase quality with many threads in 2-pass mode, especially in cases with extremely large I-frames, such as anime.

commit 85eb4007f2ed36477b7fdc04ed2d63fbb2b7a0fb
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Dec 10 19:48:51 2009 -0800

    Avisynth-MT and 2.6 compatibility fixes
    Explain to the user why YV12 conversion is forced with Avisynth 2.6.
    Fix encoding with Avisynth-MT scripts by inserting the necessary Distributor() call; speeds such scripts back up to expected levels.

commit 4322f630325dd8baf48fef45c19789a9d1614c16
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Dec 9 16:03:19 2009 -0800

    Fix zone parsing on mingw
    Due to MinGW evidently being in the hands of a pack of phenomenal idiots, MinGW does not have strtok_r, a basic string function.
    As such, remove the dependency on strtok_r in zone parsing.
    Previously, using zones for anything other than ratecontrol failed.

commit 28c1d446bc0df176b99a150ca02d91ff7945410c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Dec 9 15:03:44 2009 -0800

    More lookahead optimizations
    Under subme 1, don't do any qpel search at all and round temporal MVs accordingly.
    Drop internal subme with subme 1 to do fullpel predictor checks only.
    Other minor optimizations.

commit 385df7f0103d57198d09a1f76c7289cd0a902ae8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Dec 9 05:56:35 2009 -0800

    Various minor missing changes from previous commits
    Boolify sliced threads too
    Remove unused constants from dct-a.asm
    Fix a few typos/minor errors in preset documentation

commit 65b3d0fd9f8167a6d0772a29e8fcf1a66ee7f8af
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Dec 10 16:52:39 2009 -0800

    Fix regression in direct=auto/temporal in r1364
    Bug caused rare race condition in frame reference handling.
    This resulted in invalid bitstreams in some B-frames and, very rarely, crashes.

commit ec8e58637b97edaea00f022e11d15ee8a81466ab
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 8 17:46:55 2009 -0800

    Add fast pskip to x264 SEI info header

commit 11cfc44b338d914b5ec2337db37ba4d532295e43
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Dec 8 11:36:25 2009 -0800

    Minor seeking fix with Avisynth input
    Seeking past the end of the input with --seek would result in the same frame being repeated over and over.

commit de5beaec2078967d08da8ae2483c9f982b0ab07e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 8 03:08:17 2009 -0800

    Add support for MB-tree + B-pyramid
    Modify B-adapt 2 to consider pyramid in its calculations.
    Generally results in many more B-frames being used when pyramid is on.
    Modify MB-tree statsfile reading to handle the reordering necessary.
    Make differing keyint or pyramid between passes into a fatal error.

commit ca1112b373bd6c16a57350913a4a6cc4611b2d16
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 7 18:34:05 2009 -0800

    Use aliasing-avoidance macros in array_non_zero

commit 77fc51070b3c916b3b16888e8ead0f3cb3e09eaa
Author: Cleo Saulnier <cleosaulnier@yahoo.com>
Date:   Mon Dec 7 12:40:14 2009 -0800

    MMX version of 8x8 interlaced zigzag
    Just as fast as SSSE3 on Nehalem (and faster on Conroe/Penryn), so remove the SSSE3 version.

commit e8b73a9a4db4dd703528a1eee247b84ac335e395
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 7 00:49:41 2009 -0800

    Bring back slice-based threading support
    Enabled with --sliced-threads
    Unlike normal threading, adds no encoding latency.
    Less efficient than normal threading, both performance and compression-wise.
    Useful for low-latency encoding environments where performance is still important, such as HD videoconferencing.
    Add --tune zerolatency, which eliminates all x264 encoder-side latency (no delayed frames at all).
    Some tweaks to VBV ratecontrol and lookahead (in addition to those required by sliced threading).
    Commit sponsored by a media streaming company that wishes to remain anonymous.

commit a8f670b66ac89d75ef09ff87c940cfe3b328ad2d
Author: Alex Jurkiewicz <alex@bluebottle.net.au>
Date:   Mon Dec 7 18:17:29 2009 -0800

    Add more detailed help for presets/tunes/profiles
    Shows what options they represent.

commit e5faf712fccefd1f29319b1547714f3d894e4dba
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 5 03:19:44 2009 -0800

    qpel RD no longer needs mbcmp_unaligned

commit 733b660f44fa4e8982cb83447f1d2cd7e31b4386
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Dec 9 00:37:09 2009 +0000

    ensure that all boolean options are {0,1} so they print consistently in the options SEI

commit 528c100957ae929ae466ec54309cbb1e6193f66e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 5 02:27:30 2009 -0800

    Actually do r1356
    Somehow commit r1356 got lost in the ether.  I'm not sure how, but now it's fixed.

commit 495177138cdaf8360156f4d3cb45a14f1abf3266
Author: Steven Walters <kemuri9@gmail.com>
Date:   Fri Dec 4 12:17:56 2009 -0800

    Remove some unused code from x264.c

commit 77d0631c35b7e6928759eda0b3d7d229b18f27c9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Dec 3 15:36:52 2009 -0800

    SSSE3 version of zigzag_8x8_field
    Slightly faster interlaced encoding with 8x8dct.
    Helps most on Nehalem, somewhat disappointing on Conroe/Penryn.

commit 225d1dcd4973cfb8e2be39dc40da26f869814a62
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Dec 2 19:55:45 2009 -0800

    Fix crash in interlaced with >8 refs
    Crash introduced in weightp.

commit 4bf27ffa3e5b40d49e201e4e39c4f3b57a84c737
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 1 16:15:15 2009 -0800

    Significantly faster qpel-RD
    Cache the results of MC, like in bidir-RD.
    Slightly changes output due to the necessary reordering of satd/RD calls.
    5-10% faster qpel-RD.

commit 83bda2ea78c9aa145a8d6fc7cb122ca4439c822d
Author: David Conrad <lessen42@gmail.com>
Date:   Tue Dec 1 12:23:09 2009 -0800

    Add x264 prefix to functions with ffmpeg equivalents
    Not important now, but will be when we add libav* input support.

commit 636f98f1b06cc51da8399e79ce08bab8c56b82b7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 30 01:41:24 2009 -0800

    10L in r1353
    Broke mp4 output.

commit 380a201e8e8ba5a13022aeeeaf4b7501e1c79279
Author: Steven Walters <kemuri9@gmail.com>
Date:   Thu Nov 26 22:37:18 2009 -0800

    Enhanced Avisynth input support
    Requires avisynth_c.h from the Avisynth API headers.
    Reports errors properly from Avisynth script input.
    Automatically construct input scripts for almost any input file.
    Tries ffmpegsource2, DSS2, directshowsource, and many other sourcing methods, based on the input file extension.
    Automatically converts to YV12.

commit d487de421807a0d384b29a0d9dc6c90f180f0e7b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 25 10:40:08 2009 -0800

    Much faster weightp
    Move sum/ssd calculation out of lookahead and do it only once per frame.
    Also various minor optimizations, cosmetics, and cleanups.

commit f3cdc6a4878450850eb07ed0122b9836122bdbe0
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Wed Nov 25 01:26:02 2009 -0800

    Fix bugs in fps/timestamp handling in FLV muxer

commit 626affea98f4db9208cbf0e3db78f23804defd0c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Nov 24 22:37:02 2009 -0800

    Fix bug in weightp analysis
    Weights weren't reset upon early terminations, so old (wrong) weights could stick around.
    Small compression improvement.

commit a1705b68f5e88e083411d1d1d8fc77cb09304753
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Nov 24 20:24:14 2009 -0800

    Minor deblocking optimization, update comments

commit 1c2c5688b64fcd62f307b9e00fde228324a0162d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Nov 24 16:21:07 2009 -0800

    Fix weightb with delta_poc_bottom
    Has no effect yet, but will be required once we add TFF/BFF signalling support in interlaced mode.
    Gives 0.5-0.7% better compression with proper TFF/BFF signalling.

commit 5ddd61bbfecb6e782b096ddebef127ab73bee006
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 20 23:27:51 2009 -0800

    Give more meaningful error if 1st/2nd pass resolution differ

commit 0b0f4a3470c58061d09ee26037314c2f8a4d049b
Author: Steven Walters <kemuri9@gmail.com>
Date:   Fri Nov 20 12:04:13 2009 -0800

    Fix extremely rare deadlock with sync-lookahead
    Patch partially by Anton Mitrofanov.

commit ed0467756f5a842249d86fb9622006f3939c72a2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 20 08:04:28 2009 -0800

    Only print weightp stats if there were P-frames

commit 4a31a47d88ca01b63d8a06be2592beaedc78b8f3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 18 13:47:04 2009 -0800

    Faster lookahead with subme=1
    If it hasn't been clear already, don't use subme=1 as a "fast first pass" option.
    Use subme=2 instead; 1 and below now enable a fast (lower quality) lookahead mode.

commit c0215c8a83aa9b543dd6930185d589d0ed835816
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 16 15:23:58 2009 -0800

    Faster weightp analysis
    Modify pixel_var slightly to return the necessary information and use it for weight analysis instead of sad/ssd.
    Various minor cosmetics.

commit e8501efbd235b1b5321adda8926e7a859beafd3c
Author: Dylan Yudaken <dyudaken@gmail.com>
Date:   Sun Nov 15 16:14:50 2009 -0800

    Fix two issues in weightp
    If analysis decided on an offset of -128, x264 would create non-compliant streams.
    Fix some cases with nearly all intra blocks where analysis could pick very weird weights.
    Also add some asserts to check compliancy.

commit 4f0a545fa7528b4820141ac6d0b8bbe2e643d905
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sat Nov 14 22:16:18 2009 -0800

    Allow compilation with non-Apple GCC on OS X

commit 1d54b2c7f9110cb7c7af1059cf595db17ed96273
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Sat Nov 14 22:13:28 2009 -0800

    Use __attribute__((may_alias)) for type-punning
    GCC thinks pointer casts to unions aren't valid with strict aliasing.
    See http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/Optimize-Options.html#Type_002dpunning.
    Also use M32() in y4m.c.
    Enable -Wstrict-aliasing again since all such warnings are fixed.

commit 82b80ef96b0ae74187f6f6a482bddb3f859df4f5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 14 19:58:46 2009 -0800

    100l in deadlock fix

commit 6f5f8c02aa3d64e45d17e97d24a6593e8a13c2b2
Author: Kieran Kunhya <kieran@kunhya.com>
Date:   Sat Nov 14 19:01:09 2009 -0800

    FLV muxing support

commit e76a4adb1c8ee27748847656450c815f60d2fe6d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 14 18:40:22 2009 -0800

    Fix rare deadlock introduced in weightp

commit 2a35a019c5e5710fddcee36976921347ef5ae7a7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 12 12:40:40 2009 -0800

    Actually add -Wno-strict-aliasing to configure

commit 0e706cc9f3814f817b6bdef25e35ad1060d369b1
Author: Dylan Yudaken <dyudaken@gmail.com>
Date:   Thu Nov 12 07:03:46 2009 -0800

    Various weightp fixes
    Make weightp results match in threaded vs non-threaded mode.
    Fix two-pass with slow-firstpass.

commit cbd43d1e31fae533de121c7c0dfcc13ebf41aa24
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 12 05:25:32 2009 -0800

    Fix all aliasing violations
    New type-punning macros perform write/read-combining without aliasing violations per the second-to-last part of 6.5.7 in the C99 specification.
    GCC 4.4, however, doesn't seem to have read this part of the spec and still warns about the violations.
    Regardless, it seems to fix all known aliasing miscompilations, so perhaps the GCC warning generator is just broken.
    As such, add -Wno-strict-aliasing to CFLAGS.

commit b28d98bbc3174e6f38caea49a7c545204e3930d3
Author: David Conrad <lessen42@gmail.com>
Date:   Wed Nov 11 20:53:49 2009 -0800

    Fix 10l in weightp on ARM

commit 70f8869f1936558b33ee2ec58dbd85004aa6298b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 9 21:22:41 2009 -0800

    Fix one (of possibly many) miscompilations in weightp
    Use NOINLINE and some emms calls to fix emms reordering issues.
    This issue occurred with some GCC versions if threads > 1 and the phase of the moon was right.
    Also a cosmetic in x264.c.

commit c3e72f64021e535658f61e86dc3a21325e88ae11
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 9 09:18:03 2009 -0800

    Fix pixel_ssd on win64
    Didn't preserve XMM registers, may or may not have caused problems.

commit af612d79aaaddfaac486d602ce3303836c45bbc6
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Nov 8 22:18:35 2009 -0800

    Fix weightp logfile parsing on MinGW

commit 03639d08bb4a1b93d2c4529a3bfec517dd905879
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Nov 9 05:27:29 2009 +0000

    cosmetics

commit 2bedf8945f921774714dacf5f0668e01c1810b46
Author: David Conrad <lessen42@gmail.com>
Date:   Sun Nov 8 20:12:54 2009 -0800

    Fix weightp on ARM + PPC
    No ARM or PPC assembly yet though.

commit 87de2346225721e8ca68a1b59bc87133fc598a42
Author: Dylan Yudaken <dyudaken@gmail.com>
Date:   Sun Nov 8 17:59:08 2009 -0800

    Weighted P-frame prediction
    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!

commit 3daa02e9c79ec46fd980bcfcd317df45539c91f6
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sun Nov 8 11:53:48 2009 -0800

    Fix assert failure in the case of forced i-frames
    Note that this applies to non-IDR i-frames, not IDR-frames.
    This fix is also required for future open-gop.

commit 02fe6a5fe20b71d712c14525b14f95f1e7927a91
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Nov 7 17:07:28 2009 -0800

    Fix issues relating to input/output files being pipes/FIFOs

commit 3d1a1287721a3a8bfd85d0557e4fe8edbd138adc
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Nov 7 09:25:18 2009 -0800

    Various ARM-related fixes
    Fix comment for mc_copy_neon.
    Fix memzero_aligned_neon prototype.
    Update NEON (i)dct_dc prototypes.
    Duplicate x86 behavior for global+hidden functions.

commit 820380f981da35ae4f8fc124cb8b5ee1c4cbad4b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 4 00:03:14 2009 -0800

    Fix miscompilation with gcc 4.3 on ARM
    Aliasing violation in spatial prediction caused nasty artifacts.
    Shut up two other GCC warnings while we're at it.

commit bea99fbf88cc0da3f85f6ae6cccaf483c5d1fc1b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Nov 3 23:15:35 2009 -0800

    Fix extremely rare infinite loop in 2-pass VBV
    Implicit conversion from double->float lost enough precision to cause the loop termination condition to never trigger.
    Bug report by Tal Aloni.

commit 028b3ffa9071042468f2cc51580fa6ef65d6ff95
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Oct 31 19:51:14 2009 -0700

    Fix large file support, broken in r1302

commit 96bad1a71c656f4f05632d685d4b91bd54d5ce58
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Oct 30 18:58:03 2009 -0700

    Dramatically reduce size of pixel_ssd_* asm functions
    ~10k of code size eliminated.

commit 678a703fd9528d2b508b542ce5e289b4f0bae3b7
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Nov 7 06:09:47 2009 +0000

    fix bottom-right pixel of lowres planes, which was uninitialized.
    weirdly, valgrind reported this only with --no-asm.

commit fe83a906ee1bb5170b112de717818e278ff59ddb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Oct 29 12:28:37 2009 -0700

    Further reduce code size in bime
    ~7-8 kilobytes saved, ~0.6% faster subme 9.

commit 5c7133b0607b220a02e37cf72612c97484384cd8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Oct 28 12:57:11 2009 -0700

    Fix case in which MB-tree didn't propagate all data correctly
    Should improve quality in all cases.
    Also some minor cosmetic improvements.

commit 7016c83611ade1f0d54d62eec3a03fccdb43700d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 27 16:01:46 2009 -0700

    Take into account chroma MV offset during interlaced motion search
    Small improvement in interlaced compression.

commit d4b7db5c840661a5853369300e704b20c7c3ff53
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 27 15:08:37 2009 -0700

    Slightly faster ssse3 width4 chroma MC
    Cacheline-aware in the same fashion as width8, but not conditional.

commit 40a4708b9d869d7b13cb1f1afc65590d2fc90f9b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 27 14:01:46 2009 -0700

    Eliminate some rare cases where MB-tree gave incorrect results in B-frames
    Also get rid of some unnecessary memcpies.

commit 35146ef7d37a04e1f43ddb425f0e43311e24c5fc
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Tue Oct 27 12:28:07 2009 -0700

    Fix cases in which b-adapt 1 could result in AUTO-type frames.
    This didn't actually cause any issues, but it removes the need for the fixing-up code that prevented said issues.

commit 1f9c733dc27ae279943a3ddd7eaf8a50cbf4dc2d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 26 12:53:07 2009 -0700

    Motion compensation optimizations
    Turning off inlining saves a whole boatload of code size for near-zero speed cost.
    Simplify offset calculation.
    Various other optimizations.

commit e361348b54d636d2bffd622c96d2255c0640c220
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 25 19:41:10 2009 -0700

    Minor CAVLC optimizations

commit ec46ace7eab97cbde6fd50ae18de5c6e063fe1de
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Oct 25 19:34:12 2009 +0000

    cosmetics

commit 6a4277ea792be0c51ccd195df61d92a12b60f02a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 25 09:14:27 2009 -0700

    ISC-license x86inc.asm
    As the assembly abstraction layer is very useful in non-x264 projects, it is now ISC (simplified BSD) so that others, even in commercial projects, can use it as well.

commit c9d2c06872347b519f44262bb4ed85198c9ca1b1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Oct 23 16:20:39 2009 -0700

    Various minor CABAC optimizations

commit ece74ca07cd4f7729bdf6ba5b8be06c30da3a1af
Author: Lamont Alston <wewk584@gmail.com>
Date:   Fri Oct 23 11:01:13 2009 -0700

    Fix bug in b-pyramid strict
    Bug caused invalid streams in some situations.

commit b1ad8d06bcff3f14ddfc6e550d4d50f2d4847a96
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Oct 23 02:34:49 2009 -0700

    Remove non-mod16 warning
    Compression only "suffers" by an extremely marginal amount and too many people misinterpret the warning.

commit b89ca0413c5a7114111ba0c76bcd7e52eb0ede93
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Oct 22 22:38:32 2009 -0700

    Fix two warnings + some minor optimizations

commit ec3b5bfa4f1e5e53ab962db4341b9f78b9e50c86
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 19 22:38:01 2009 -0700

    Fix a typo in b-pyramid help
    And an errant space in common/macroblock.c

commit 3679792d621cc95222d0aef3097c6d16e72852b8
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Oct 19 12:57:47 2009 -0700

    A bit more write-combining in macroblock_cache_load

commit 6169a3f6c01ca95ac5f17d65c76af6830954789d
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Oct 24 00:23:50 2009 +0000

    split muxers.c into one file per format
    simplify internal muxer API

commit bcba15dbbc0d6be28129b85d541a0bc5050bab40
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 19 02:43:48 2009 -0700

    Update fprofile with the latest change to b-pyramid

commit 909bdedba6077a90a361641232ba1840094f19fe
Author: Steven Walters <kemuri9@gmail.com>
Date:   Sat Oct 17 12:54:41 2009 -0700

    Fix assertion fail and incorrect costs with pyramid+VBV
    Deal properly with QPfile'd B-refs.  x264 should handle multiple B-refs per minigop now, though only via forced frametypes.

commit 2eb0458ed6302e082ffe206d325d03d6c75d6d47
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 17 03:04:56 2009 -0700

    Improve CRF initial QP selection, fix get_qscale bug
    If qcomp=1 (as in mb-tree), we don't need ABR_INIT_QP.
    get_qscale could give slightly weird results with still images

commit 513abc7b0584b5ea6dcea4ebd731824ef74ef1a1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Oct 14 11:32:27 2009 -0700

    Print more accurate error message if dump_yuv fails

commit cdf623f285073c084631263fd95a753bf25be3bd
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Oct 13 09:56:04 2009 -0700

    Reduce memory usage of b-adapt 2 trellis
    Also fix a minor bug where the algorithm ignored the last frame in the trellis.

commit e2659dbdc0aed2d2cd4f6538faddf370e7740ada
Author: Lamont Alston <wewk584@gmail.com>
Date:   Mon Oct 12 23:32:16 2009 -0700

    Make B-pyramid spec-compliant
    The rules of the specification with regard to picture buffering for pyramid coding are widely ignored.
    x264's b-pyramid implementation, despite being practically identical to that proposed by the original paper, was technically not compliant.
    Now it is.
    Two modes are now available:
    1) strict b-pyramid, while worse for compression, follows the rule mandated by Blu-ray (no P-frames can reference B-frames)
    2) normal b-pyramid, which is like the old mode except fully compliant.
    This patch also adds MMCO support (necessary for compliant pyramid in some cases).
    MB-tree still doesn't support b-pyramid (but will soon).

commit b826fd5475a5e883f85e26cbf9d2c0acf5efcbd6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 12 23:28:26 2009 -0700

    Add missing free for nal_buffer
    Fixes a memory leak.

commit 813fe72062362a9ee7733fa160e14f5c27ae5fef
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Oct 18 21:47:18 2009 +0000

    sync yasm macros to ffmpeg

commit 7ae3ed992b70d1f8e806b6eece0b8fc88f8c3fab
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Oct 17 14:54:49 2009 +0000

    eliminate some divisions

commit e381f6d0093504a545fe4d90e3a6f178c6877cc7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 12 18:40:28 2009 -0700

    Fix glitches with slow-firstpass + weightb + multiref + 2pass
    Bug in r1277

commit 9045fbed2d696e04d402fc8b545d761ec6c41d34
Author: Henrik Gramner <hengar-6@student.ltu.se>
Date:   Mon Oct 12 15:44:13 2009 -0700

    Simplify some code in b-adapt 2's trellis

commit b47aca5ed2797b8b46a0bd83d58ffdb60dffc1ef
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 12 15:38:51 2009 -0700

    Fix a very rare integer overflow in slicetype analysis
    Caused an assert failure when it occurred.
    Bug is as old as adaptive B-frames.

commit 2ceb2cc6e6753328d959e42823b2e6059ed007a7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 12 13:14:19 2009 -0700

    Reduce the aggressiveness of 2-pass VBV
    Now that B-frames are properly covered, we don't have to be as aggressive.
    This eliminates some issues with skyrocketing QPs in B-frames in 2-pass VBV.

commit a65d36142b765516dd80a6bed5bff7444b24f4aa
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Oct 12 11:29:23 2009 -0700

    Fix regression: disable flash detection without B-frames

commit 287641a7c54d525e0eb74925431541ffb5f9471d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Oct 10 04:43:00 2009 +0000

    change all dct arrays to 1d.
    the C standard doesn't allow you to iterate 1-dimensionally over 2d arrays, and nothing other than the dsp functions themselves cares about the 2dness of dct.
    this fixes a miscompilation in x264_mb_optimize_chroma_dc.

commit bcc9a4b2e520263b0ba85b61dd7dde78b35160e8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 11 20:17:50 2009 -0700

    Add row-based VBV for B-frames
    While B-frames still aren't explicitly covered by ratecontrol, this should resolve issues of VBV underflows due to larger-than-expected B-frames.

commit 7182ae8d08acef6153cad9b9c27efb4fa985a657
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 10 17:35:03 2009 -0700

    Improve VBV, fix bug in 2-pass VBV introduced in MB-tree
    Bug caused AQ'd row/frame costs to not be calculated (and thus caused underflows).
    Also make VBV more aggressive with more threads in 2-pass mode.
    Finally, --ratetol now affects VBV aggressiveness (higher is less aggressive).

commit 60c630c01dd4cb125a2bcc08da88873ce3a41dbc
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Oct 8 14:55:26 2009 -0700

    Optimize exp2fix8
    Slightly faster and more accurate rounding.

commit e8b83b788ffe9af4b48b049450c387069fda1266
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Oct 8 04:27:11 2009 -0700

    Avoid scenecuts in flashes and similar situations
    "Flashes" are defined as any scene which lasts a very short period before a previous scene returns.
    A common example of this is of course a camera flash.
    Accordingly, look ahead during scenecut analysis and rule out the possibility of certain frames being scenecuts.
    Also handles cases of tons of short scenes in sequence and avoids making those scenecuts as well.
    Can only catch flashes of 1 frame in length with b-adapt 1.
    With b-adapt 2, can catch flashes of length --bframes.
    Speed cost should be negligible.

commit fc4926a2d9a4e355ea6a24c962731f5f8c6bd83a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 6 22:15:10 2009 -0700

    Fix bug where x264 generated non-compliant bitstreams with insane SAR values

commit 39f6499e3abcf473bdcbade38aba9a7490470e6a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Sep 30 22:39:13 2009 +0000

    rm msvc project files and related ifdefs

commit 5cda2cf81a75bfd70a5529d3b6fb01b0a7897a5e
Author: Holger Lubitz <holger@lubitz.org>
Date:   Tue Oct 6 15:17:34 2009 -0700

    SSE4 version of 4x4 idct
    27->24 clocks on Nehalem.
    This is really just an excuse to use "movsd" in a real function.
    Add some comments to subsum-related macros in x86util.

commit d971ace393dc49b09b930aa22e8b0c70f8a6f386
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 4 19:15:28 2009 -0700

    Constrained intra prediction support
    Enable with --constrained-intra.  Significantly reduces compression, but required for the base layer of SVC encodes and maybe some other use-cases.
    
    Commit sponsored by a media streaming company that wishes to remain anonymous.

commit a88f2d78533af5ff38c01054cf336bdd7f2cf27c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Oct 4 00:48:27 2009 -0700

    Slightly improve non-RD p8x8 mode decision
    Subpartition costs are effectively zero in CABAC if sub-8x8 search is off.

commit c318d8fa1e83b8807b66d45b225c905f480703ce
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 3 00:59:02 2009 -0700

    Reorder reference frames optimally on second pass
    About +0.1-0.2% compression at normal bitrates, up to +1% at very low bitrates.
    Only works if the first pass uses the same number of refs as the second (i.e. not with fast first pass).
    Thus, only worthwhile at insanely slow speeds: as such, enable slow-firstpass by default with preset placebo.
    Note that this changes the stats file format!

commit 4f3ad6a28e1ac017103a77d135a48aaad114d262
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 30 12:13:16 2009 -0700

    Fix typo in ratecontrol_summary

commit 8be3935a8cef95fe94e0b054f3b6cb904a1f363a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 29 23:32:07 2009 -0700

    Clip log2_max_frame_num
    It's still much higher than it needs to be, but that will be fixed with the upcoming MMCO patch.
    Also make sure we don't write too large a frame_num or poc in slice header.

commit 83ca0f2cec3909b38d55e664bcd3f5c4b1546de8
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Sep 26 12:44:53 2009 -0700

    Fix some issues with 3-pass statsfile handling
    The value of i_frame during encoder_close was incorrect.

commit a4334d41ea61b70fcff308ba988193309bb5608a
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Sep 26 12:42:46 2009 -0700

    Fix ctrl-C termation message with few frames encoded

commit db518eae22e57b37c806625685faba2f2a857f88
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 25 16:23:52 2009 -0700

    Add support for single-frame VBV, improve compliance
    This allows both constant-framesize and capped-framesize encoding.
    Literal constant framesize isn't actually supported yet due to the lack of
    filler support.
    Example with 30fps video: --vbv-bufsize 200 --vbv-maxrate 6000 will ensure that
    no frame is ever larger than 200 kilobits.
    
    One example use-case of this is for zero-delay streaming where bandwidth costs
    need to be minimized.  If every frame is smaller than 200 kilobits and the
    client has a 6 megabit connection, every single frame can be instantly sent
    to the client and handled without any decoder-side buffer.
    
    Fix a mistake in VBV calculation--this may have caused the VBV to be slightly
    non-compliant in some situations without x264 realizing it.
    Add primitive prediction handling for rows with quantizers lower than their
    reference.  This slightly improves VBV in CBR mode.
    Various other minor improvements to VBV, mostly to make single-frame VBV work.
    
    Commit sponsored by a media streaming company that wishes to remain anonymous.

commit 496d79dfcb90066f0254e07d593471f2c885a153
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 24 08:40:45 2009 -0700

    Fix 10l in API change
    frame_num was set to 1, not 0, for the first frame.  This broke spec compliance.
    Didn't actually seem to cause any problems though except for breaking decoding on Quicktime.

commit 2b4e823809617d605bc058acba681c37e14e0ed0
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Sep 23 15:04:02 2009 -0700

    Allow user-set FPS for inputs other than YUV

commit e8b9dfe479a6a945d9cd91b4aae8a3cba06b9db9
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Sep 23 12:31:53 2009 -0700

    Improve threaded frame handling
    Avoid unnecessary cond_wait

commit d5429261cc2a2205d225b0f0c0802d3b565eb7bd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 22 17:30:19 2009 -0700

    Attempt to detect miscompilation due to bug in gcc 4.2
    I don't know if this bug still affects latest x264, but it can't hurt to try to detect it.
    Accordingly refuse to open the encoder if detected.
    Apparently VLC (on Windows) has been distributed for some time with a completely
    broken x264 due to the use of a completely broken compiler (gcc 4.2).  In
    particular, the MV costs seem to be calculated incorrectly on win32 when linking
    from an application compiled without -ffast-math to an application with
    -ffast-math.
    I am not entirely certain why this occurs, but the result is, unsurprisingly,
    encoding quality that makes MPEG-2 look good, due to the motion search being
    completely broken.

commit c62060d242879d8271c22a486b286b91147d2ebf
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Sep 22 12:14:23 2009 -0700

    Really fix encoder_close crash this time
    Not-entirely-fixed in r1253.

commit d166e7f3f8f68a768cf60cb4512f9efe8623b5cb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 20 21:58:08 2009 -0700

    Check for 16x16 partitions masquerading as smaller ones
    Saves a few bits when using qpel-RD.

commit c49e14f21c7fd9f7b5d1a82f29cb3b6a1c8ecb70
Author: David Conrad <lessen42@gmail.com>
Date:   Sun Sep 20 01:16:51 2009 -0700

    Update config.guess/sub; add Snow Leopard support

commit d52d2db898fa4e7790964cd656a1da3a0c005881
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 19 09:50:59 2009 -0700

    Fix integer overflow in 2-pass VBV
    Bug caused slight undersizing in 2-pass mode in some cases.

commit ca95d6198f5c21ff6904a842b52b893d0fee6aab
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 18 14:28:31 2009 -0700

    Fix bug with various bizarre commandline combinations and mbtree
    Second pass would have mbtree on even though the first pass didn't (and thus encoding would immediately fail).

commit 91f3e81cf9e030f860abdfe0e0c0a37c5e2a4ac2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 17 13:02:02 2009 -0700

    Add intra prediction modes to output stats
    Also eliminate some NANs in stat output with intra-only encoding.
    Marginal speedup: disable stat calculation if log level is below X264_LOG_INFO.
    Various minor cosmetics.

commit c91a3c98a72492a5e167cb6c98c1807fde76c528
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 16 21:34:48 2009 -0700

    Overhaul syntax in muxers.c/matroska.c
    The inconsistent syntax in these files has finally come to an end.

commit 031e25d8cc909af2d138f9fedc8252961f34a6ac
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 16 20:00:00 2009 -0700

    Major API change: encapsulate NALs within libx264
    libx264 now returns NAL units instead of raw data.  x264_nal_encode is no longer a public function.
    See x264.h for full documentation of changes.
    New parameter: b_annexb, on by default.  If disabled, startcodes are replaced by sizes as in mp4.
    x264's VBV now works on a NAL level, taking into account escape codes.
    VBV will also take into account the bit cost of SPS/PPS, but only if b_repeat_headers is set.
    Add an overhead tracking system to VBV to better predict the constant overhead of frames (headers, NALU overhead, etc).

commit dd026f296748ef370f1651fdbddec6d9238c6cc0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 14 12:30:38 2009 -0700

    Add missing fclose for mbtree input statsfile on second pass
    Bug report by VFRmaniac

commit 8cbb85d7682f78af892ea2f5b0362cc1ef583c02
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 14 11:07:23 2009 -0700

    Improve progress indicator behavior
    Progress indicator will now indicate based on output frame, not input frame.

commit b5770ea28a83141252be66870cfabc0ceae626b7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 14 03:21:14 2009 -0700

    Update yasm configure check
    lzcnt apparently requires yasm 0.6.2.

commit 935488e22376c33fbdc38909d9a119ac092e8878
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 13 01:02:37 2009 -0700

    Make MV costs global instead of static
    Fixes some extremely rare threading race conditions and makes the code cleaner.
    Downside: slightly higher memory usage when calling multiple encoders from the same application.

commit 4f6a00704c3e36648a32404aa729a4beff438b38
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 11 17:30:14 2009 -0700

    Don't print scenecut message multiple times in verbose mode
    Occurred mostly with b-adapt 2.

commit 411ee507328890fb1fde96b37b6eef854d27101a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 10 02:55:21 2009 -0700

    Optimize rounding of luma and chroma DC coefficients
    Reduce bitrate mostly-losslessly at low quantizers.
    In some rare cases, bitrate reduction may be as high as 10%.
    Luma rounding optimization (helps much less than chroma) requires trellis.

commit 08c83969dd45a6e550aaa3be11c69bb74d7a478c
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Sep 9 12:19:40 2009 -0700

    Fix crash if encoder_close is called before delayed frames are flushed
    Also no longer flush frames when ctrl-Cing x264, so x264 will close faster.

commit b9b7c12eed6eb69b9df7ccd1289df5ce9c130a81
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 6 14:55:48 2009 -0700

    Improve x264 help
    Now has three help options: --help, --longhelp, and --fullhelp.
    --help only shows the most basic options; most users should not need more than these.
    Add usage examples.
    Fix typo in a comment.

commit e553a4cc858649b951e9dee456c717f5f5dcd3e9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 5 19:22:21 2009 -0700

    Factor out a redundant RD call in qpel-RD
    Fixes a problem that was supposed to be, but didn't, get fully fixed in r1238.

commit 643cef5ea8a089a986e1fe17238ce28b1931ea22
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 5 18:56:18 2009 -0700

    Fix RD early-skip
    Small quality improvement and speedup, was broken by r1214.

commit 83a033e15d14fcf954c4cdfa3c7c6cd64808c1f9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 5 18:55:46 2009 -0700

    Faster CAVLC mb header writing for B macroblocks

commit e390cbf993d180b1db413746272e232ac3068dad
Author: David Conrad <lessen42@gmail.com>
Date:   Wed Sep 2 16:14:59 2009 -0700

    Compile fixes for pre-ARMv6T2 and/or PIC

commit b3efbe51032a0e953140f86423b533b2b6f7101c
Author: Steven Walters <kemuri9@gmail.com>
Date:   Wed Sep 2 12:33:50 2009 -0700

    Change priority handling on some OSs
    Instead of setting the lookahead thread to max priority, lower all the other threads' priorities instead.
    This is particularly useful when the "max priority" is "realtime", as in Windows, which can cause some problems.

commit 5b3c89c592e412fc02fd8001ee361ea50c249153
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Sep 1 18:46:51 2009 -0700

    Threaded lookahead
    Move lookahead into a separate thread, set to higher priority than the other threads, for optimal performance.
    Reduces the amount that lookahead bottlenecks encoding, greatly increasing performance with lookahead-intensive settings (e.g. b-adapt 2) on many-core CPUs.
    Buffer size can be controlled with --sync-lookahead, which defaults to auto (threads+bframes buffer size).
    Note that this buffer is separate from the rc-lookahead value.
    Note also that this does not split lookahead itself into multiple threads yet; this may be added in the future.
    Additionally, split frames into "fdec" and "fenc" frame types and keep the two separate.
    This split greatly reduces memory usage, which helps compensate for the larger lookahead size.
    Extremely special thanks to Michael Kazmier and Alex Giladi of Avail Media, the original authors of this patch.

commit 326113b4f57de6c5a2599c047ab5c7762b1a4b13
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 1 11:36:54 2009 -0700

    Force a link error in case of incompatible API
    This is because the number of bug reports due to miscompiled ffmpeg builds is reaching critical mass.
    The name of x264_encoder_open is now #defined based on the current X264_BUILD.
    Note that this changes the calling convention required for dlopen, but not for ordinary calls to x264_encoder_open.

commit 775a12cdec150e00813d6df5dbec17c5da385549
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 31 22:44:45 2009 -0700

    Get rid of "CBR" descriptor from qcomp
    Though technically accurate in some vague way, I have never actually seen this
    option used correctly, rather it has been used by hundreds of people who can't
    read the documentation and believe that qcomp=0 is what should be used for CBR
    encoding.

commit 2cd00546cdae867265fbbb58304087f776160102
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Aug 30 20:49:07 2009 +0000

    Faster me=tesa
    But it still spends all too much time in me_search_ref rather than asm.

commit 4d553edf178bf0ae01547731a48e1fb08c5cc1f4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 31 06:36:41 2009 -0700

    Multi-slice encoding support
    Slicing support is available through three methods (which can be mixed):
    --slices sets a number of slices per frame and ensures rectangular slices (required for Blu-ray).  Overridden by either of the following options:
    --slice-max-mbs sets a maximum number of macroblocks per slice.
    --slice-max-size sets a maximum slice size, in bytes (includes NAL overhead).
    Implement macroblock re-encoding support to allow highly accurate slice size limitation.  Might be useful for other things in the future, too.

commit bfcb4f6c1d49505146be77cf57dcb72f0534907d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 29 17:09:55 2009 -0700

    Fix a valgrind warning in b-adapt 2

commit 35627b63c31bcd143413c10dce1ead8015448f7b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Aug 29 10:31:08 2009 +0000

    fix asm symbols for oprofile (regression in r1221)

commit 3db6c9da402858abfcbe4aaf676a1b1f89e7f093
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Aug 28 15:07:12 2009 -0700

    Fix bug in intra analysis in B-frames
    i8x8/i4x4 never got analysed when fast_intra was toggled and RD was off; up to a 2-3% quality improvement in non-RD mode.
    With this bug dating back to r369, this is probably the second-oldest bug ever fixed in x264.

commit d551106235ce955697531df85aeebb996309ea81
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Aug 28 14:56:44 2009 -0700

    Fix bug in b16x16 qpel RD
    Incorrect cost was used to initialize the search.

commit 1b2a1c699a0d5b93d13d9bb5b118b02d261ba193
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 27 15:21:22 2009 -0700

    Check minimum chroma QP in addition to luma QP during CQM init
    Correctly error out if the implied minimum chroma QP is too low.
    Add missing emms to checkasm macroblock_tree_propagate test.

commit e6c973ac5b46fc0d9843d1774b647c97c852c963
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 27 14:16:45 2009 -0700

    Faster mbtree propagate and x264_log2, less memory usage
    Avoid an int->float conversion with a small table.
    Change lowres_inter_types to a bitfield; cut its size by 75%.
    Somewhat lower memory usage with lots of bframes.
    Make log2/exp2 tables global to avoid duplication.

commit 448b1387254bbf186b83db0fd393477ea1d01a55
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Aug 26 20:30:47 2009 -0700

    Fix keyint=1 + VBV + rc-lookahead

commit 0d8efaac52baab0bac67ed0daac07f80110883a4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Aug 26 20:16:10 2009 -0700

    Faster x264_exp2fix8
    22->13 cycles on Core 2 with mfpmath=sse

commit ee95ca7970140e8b99af233b03828feb250f0af0
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Aug 27 06:05:57 2009 +0000

    compile x86 with fpmath=sse by default

commit c8edc12043086b8f52a3b6b2176b70e0d48ff271
Author: David Conrad <lessen42@gmail.com>
Date:   Mon Aug 24 17:17:41 2009 -0700

    ARM configure: enable NEON-related options by default
    When compiling for ARM, x264 will compile by default for Cortex A8 unless specified otherwise.
    To compile for pre-ARMv6, --disable-asm is required.

commit 533b473f71f2ccd1f73e3d25cd57fca06ef553b5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 24 03:28:11 2009 -0700

    2-pass VBV fixes
    Properly run slicetype frame cost with 2pass + MB-tree.
    Slash the VBV rate tolerance in 2-pass mode; increasing it made sense for the highly reactive 1-pass VBV algorithm, but not for 2-pass.
    2-pass's planned frame sizes are guaranteed to be reasonable, since they are based on a real first pass, while 1-pass's, based on lookahead SATD, cannot always be trusted.

commit 9754af3c04d2de7b2404132a2c533c9071b6257b
Author: David Conrad <lessen42@gmail.com>
Date:   Mon Aug 24 01:38:42 2009 -0700

    GSOC merge part 8: ARM NEON intra prediction assembly functions (partial)
    4x4 dc/h/ddr/ddl, 8x8 dc/h, 8x8c h/v, 16x16 dc/h/v

commit a81c398c8e7f9fea2c7848f866007bc6fbb74304
Author: David Conrad <lessen42@gmail.com>
Date:   Mon Aug 24 01:10:30 2009 -0700

    GSOC merge part 7: ARM NEON deblock assembly functions (partial)
    Originally written for ffmpeg by Mans Rullgard; ported by David.
    Luma and chroma inter deblocking; no intra yet.

commit dcd9ac9bae832a98d79bf5fc579c9f6c7bfd81a1
Author: David Conrad <lessen42@gmail.com>
Date:   Mon Aug 24 00:58:42 2009 -0700

    GSOC merge part 6: ARM NEON quant assembly functions (partial)
    (de)quant 4x4, (de)quant 8x8, (de)quant DC, coeff_last

commit e695eda3765caa2b4b9825aeffecdb13e107b3b4
Author: David Conrad <lessen42@gmail.com>
Date:   Sun Aug 23 02:03:48 2009 -0700

    GSOC merge part 5: ARM NEON dct assembly functions
    (i)dct4x4dc, (i)dct4x4, (i)dct8x8, (i)dct_dc, zigzag_scan_frame_4x4

commit 2ac8b8deca4475200d279cf711060e7dfef7a252
Author: David Conrad <lessen42@gmail.com>
Date:   Sun Aug 23 01:35:10 2009 -0700

    GSOC merge part 4: ARM NEON mc assembly functions
    prefetch, memcpy_aligned, memzero_aligned, avg, mc_luma, get_ref, mc_chroma, hpel_filter, frame_init_lowres

commit 8a84fd9d367b7660a34ba575eec17636b2b6a85a
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Aug 22 23:55:29 2009 -0700

    GSOC merge part 3: ARM NEON pixel assembly functions
    SAD, SADX3/X4, SSD, SATD, SA8D, Hadamard_AC, VAR, VAR2, SSIM

commit 00d9fb7d0643748a0f1de33ca15eb300172c07f7
Author: David Conrad <lessen42@gmail.com>
Date:   Sat Aug 22 23:40:33 2009 -0700

    GSOC merge part 2: ARM stack alignment
    Neither GCC nor ARMCC support 16 byte stack alignment despite the fact that NEON loads require it.
    These macros only work for arrays, but fortunately that covers almost all instances of stack alignment in x264.

commit 3b4ee7359abdeea0337ec76206518a9d8f8f2140
Author: David Conrad <lessen42@gmail.com>
Date:   Thu Aug 20 20:44:09 2009 -0700

    Fix unaligned accesses in bitstream writer
    Fixes x264 on CPUs with no unaligned access support (e.g. SPARC).
    Improves performance marginally on CPUs with penalties for unaligned stores (e.g. some x86).

commit d0ee6f8864c1066fb14672faeb738ff511abc261
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 20 13:08:25 2009 -0700

    Fix bug in calculation of I-frame costs with AQ.

commit f6bf719c67c109635eb001ff2b48c24d97ff5f0d
Author: David Conrad <lessen42@gmail.com>
Date:   Wed Aug 19 17:03:02 2009 -0700

    GSOC merge part 1: Framework for ARM assembly optimizations
    x264 will detect which ARM core it's building for and only build NEON asm if the target is ARMv6 or above, then enable NEON at runtime.

commit 333100756c0c27c5a71119a3f80abc80d439332a
Author: David Conrad <lessen42@gmail.com>
Date:   Wed Aug 19 16:18:36 2009 -0700

    Fix a bug in checkasm and two OSX fixes
    MC chroma checkasm test could crash in some situations
    Remove -lmx, as it's not needed and the iPhone doesn't have it.
    Remove unused sqrtf emulation; it breaks if math.h is included.

commit 441c36cbc814ac13cc565ce5e6566bcbf5f6d6e2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Aug 19 01:49:47 2009 -0700

    Improve QPRD
    Always check the last macroblock's QP, even if the normal search doesn't reach it.
    Raise the failure threshold when moving towards the last macroblock's QP.
    0.2-1% improved compression.

commit d345ab05391e2b32c0d567aaa9945f63ce892016
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 18 21:53:28 2009 -0700

    Fix MB-tree with keyint<3
    Also slightly improve VBV keyint handling.

commit 5e9ae4cb8de4a95a567c6dbfdbaaf8138e695589
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 18 19:25:45 2009 -0700

    Fix bug in VBV lookahead + no MB-tree
    I-frames need to have VBV lookahead run on them as well.

commit d6846d3d17ac7289eb3d82f54d19459d3a1a5b21
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 18 18:37:26 2009 -0700

    Add support for frame-accurate parameter changes
    Parameter structs can now be passed with individual frames.
    The previous method would only change the parameter of what was currently being encoded, which due to delay might be very far from an intended exact frame.
    Also add support for changing aspect ratio.  Only works in a stream with repeating headers and requires the caller to force an IDR to ensure instant effect.

commit 9892984392cd550e65e3f2cd6fd08d6afb083472
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 18 15:46:26 2009 -0700

    Fix x264_encoder_reconfig with multithreading
    New behavior: reconfigging the encoder will result in changes being applied
    to each of the encoding threads as they finish encoding the current frame.

commit c07d292d7b5298327d835d0c458083de29c23204
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Aug 16 03:29:49 2009 -0700

    Fix two bugs in QPRD
    QPRD could in some cases force blocks to skip when they shouldn't be ~(+0.01db)
    Force QPRD to abide by qpmin/qpmax restrictions.

commit 1b6086ceb0c346c959a68478b9c36284fbdd5872
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 15 19:02:31 2009 -0700

    Lookahead VBV
    Use the large-scale lookahead capability introduced in MB-tree for ratecontrol purposes.
    (Does not require MB-tree, however.)
    Greatly improved quality and compliance in 1-pass VBV mode, especially in CBR; +2db OPSNR or more in some cases.
    Fix some other bugs in VBV, which should improve non-lookahead mode as well.
    Change the tolerance algorithm in row VBV to allow for more significant mispredictions when buffer is nearly full.
    Note that due to the fixing of an extremely long-standing bug (>1 year), bitrates may change by nontrivial amounts in CRF without MB-tree.

commit 1febc6bd5dc4f625049273f4d86472ed770e3882
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Aug 14 07:20:07 2009 -0700

    Fix bug in b-adapt 1
    B-adapt 1 didn't use more than MAX(1,bframes-1) B-frames when MB-tree was off.

commit 8236cc979e1b4d8aae1aecbaae28c3017e375a6f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 13 17:13:33 2009 -0700

    Fix a potential failure in VBV
    If VBV does underflow, ratecontrol could be permanently broken for the rest of the clip.
    Revert part of the previous VBV changes to fix this.

commit 42d6b17b439fc90793d19788e7b314e2517c1fc2
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Thu Aug 13 21:40:21 2009 +0000

    new API function x264_encoder_delayed_frames.
    fix x264cli on streams whose total length is less than the encoder latency.

commit 62df17ec0523474c8f03e28fb982de1722497288
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 13 14:12:26 2009 -0700

    Add no-mbtree to fprofile (and fix pyramid in fprofile)

commit 7f8aa6fa1819a62196c1953d85fa6e3d504e39b7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Aug 9 16:06:52 2009 -0700

    Don't print a warning about direct=auto in 2pass when B-frames are off

commit 8eb6720e89f441056948818558113f29b3a282c6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Aug 13 05:02:59 2009 +0000

    fix lowres padding, which failed to extrapolate the right side for some resolutions.
    fix a buffer overread in x264_mbtree_propagate_cost_sse2. no effect on actual behavior, only theoretical correctness.
    fix x264_slicetype_frame_cost_recalculate on I-frames, which previously used all 0 mb costs.
    shut up a valgrind warning in predict_8x8_filter_mmx.

commit 9a54c483f5f12aa5614ba0a4a4cfaee19377047e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Aug 9 04:00:36 2009 +0000

    simd part of x264_macroblock_tree_propagate.
    1.6x faster on conroe.

commit 886d1e9878a6f2424bd005a9cb16843ca8e8d1df
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Aug 8 14:53:27 2009 +0000

    MB-tree fixes:
    AQ was applied inconsistently, with some AQed costs compared to other non-AQed costs. Strangely enough, fixing this increases SSIM on some sources but decreases it on others. More investigation needed.
    Account for weighted bipred.
    Reduce memory, increase precision, simplify, and early terminate.

commit 3b047a2a7d55d613c6ae49da22c7f30d02a048dc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 8 17:51:01 2009 -0700

    Add missing free()s for new data allocated for MB-tree
    Eliminates a memory leak.

commit 6f4054f79d3ff1034d634aabb9f9d9c8eb261bad
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 8 12:53:06 2009 -0700

    Fix keyframe insertion with MB-tree and no B-frames

commit 21a38355ccd46d1dd928341f8b9f6dd69afd9cff
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 8 11:26:36 2009 -0700

    Fix MP4 output (bug in malloc checking patch)

commit 7139b088129707b0daf3fd3bae9647f649deb1ba
Author: Steven Walters <kemuri9@gmail.com>
Date:   Fri Aug 7 16:18:01 2009 -0700

    Gracefully terminate in the case of a malloc failure
    Fuzz tests show that all mallocs appear to be checked correctly now.

commit 71506ae7a307545b530663ecab00b06fc424ca48
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Fri Aug 7 10:44:13 2009 -0700

    Fix a potential infinite loop in QPfile parsing on Windows
    ftell doesn't seem to work properly on Windows in text mode.

commit cb0b71fb981a3c6020d628dc7a41855b81df8d54
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Aug 7 10:31:16 2009 -0700

    Fix delay calculation with multiple threads
    Delay frames for threading don't actually count as part of lookahead.

commit a1ed468f67476fbbe49e1fbfe1a567be0c052d44
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 6 23:09:46 2009 -0700

    Add "veryslow" preset
    Apparently some people are actually *using* placebo, so I've added this preset to bridge the gap.

commit bb66c482242a0747823661b212114c1a2f015fe3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 4 17:46:33 2009 -0700

    Macroblock-tree ratecontrol
    On by default; can be turned off with --no-mbtree.
    Uses a large lookahead to track temporal propagation of data and weight quality accordingly.
    Requires a very large separate statsfile (2 bytes per macroblock) in multi-pass mode.
    Doesn't work with b-pyramid yet.
    Note that MB-tree inherently measures quality different from the standard qcomp method, so bitrates produced by CRF may change somewhat.
    This makes the "medium" preset a bit slower.  Accordingly, make "fast" slower as well, and introduce a new preset "faster" between "fast" and "veryfast".
    All presets "fast" and above will have MB-tree on.
    Add a new option, --rc-lookahead, to control the distance MB tree looks ahead to perform propagation analysis.
    Default is 40; larger values will be slower and require more memory but give more accurate results.
    This value will be used in the future to control ratecontrol lookahead (VBV).
    Add a new option, --no-psy, to disable all psy optimizations that don't improve PSNR or SSIM.
    This disables psy-RD/trellis, but also other more subtle internal psy optimizations that can't be controlled directly via external parameters.
    Quality improvement from MB-tree is about 2-70% depending on content.
    Strength of MB-tree adjustments can be tweaked using qcompress; higher values mean lower MB-tree strength.
    Note that MB-tree may perform slightly suboptimally on fades; this will be fixed by weighted prediction, which is coming soon.

commit f21e71a04ba65aff9b5a4bfa8a73fd86c463f4ee
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 3 20:52:30 2009 -0700

    Various 1-pass VBV tweaks
    Make predictors have an offset in addition to a multiplier.
    This primarily fixes issues in sources with lots of extremely static scenes, such as anime and CGI.
    We tried linear regressions, but they were very unreliable as predictors.
    Also allow VBV to be slightly more aggressive in raising QPs to avoid not having enough bits left in some situations.
    Up to 1db improvement on some clips.

commit 5d75a9bd5b942392c4ab64156a266eed64c0793f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 28 20:41:27 2009 -0700

    Fix another 10L in QPRD
    An entry in subpel_iterations was missing.
    I have no idea how QPRD was working at all without this change.

commit 97ed27054005a85e7c49209c20fd0b280917ac02
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 28 01:16:23 2009 -0700

    Update help and cleanup in ratecontrol.c
    Deal with some out-of-date information.

commit 0538c56a95cdc41a42a206079276a57d5d76b5a5
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Jul 28 07:16:31 2009 +0000

    15% faster refine_bidir_satd, 10% faster refine_bidir_rd (or less with trellis=2)
    re-roll a loop (saves 44KB code size, which is the cause of most of this speed gain)
    don't re-mc mvs that haven't changed

commit 306c3ee4b1c3cae804185597305725d2484f21b9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jul 27 21:03:00 2009 -0700

    Faster bidir_rd plus some bugfixes
    Cache chroma MC during refine_bidir_rd and use both the luma and chroma caches to skip MC in macroblock_encode.
    Fix incorrect call to rd_cost_part; refine_bidir_rd output was incorrect for i8>0.
    Remove some redundant clips.
    ~12% faster refine_bidir_rd.

commit d6eed014d0af8f87045d6d5daf3376c486efdea7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jul 27 04:45:03 2009 -0700

    Add "fastdecode" tune option
    It does what it says it does.

commit 43773d27a6dd74c62b6d29d0ae0a80397469bfbf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jul 26 12:20:09 2009 -0700

    Fix two bugs in QPRD
    fprofile settings now actually fprofile QPRD.
    Don't use i_mbrd before initializing it.

commit 9d0b5e95bbf3f9077806927264add762952f77ad
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jul 26 03:03:12 2009 -0700

    Fix 10l in QPRD
    Trellis used wrong lambda with trellis=1

commit 4074956df13e058421fb5ba89b872be143742ffd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jul 25 22:31:06 2009 -0700

    Fix a nondeterminism with threads and subme>7
    Also add a few more checks to eliminate the need for spel_border.

commit 7733721e410acb96fdf740ca95d2a394b2a2b713
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 23 12:20:39 2009 -0700

    Add QPRD support as subme=10
    Refactor trellis lambda selection to be done in analyse_init instead of in trellis.
    This will allow for more easy adaption of lambda later on; for now it allows constant lambda across variable QPs.
    QPRD is only available with adaptive quantization enabled and generally improves SSIM and visual quality.
    Additionally, weight the SSD values from RD based on the relative QP offset for chroma; helps visually at high QPs where chroma has a lower QP than luma.
    This fixes some visual artifacts created by QPRD at high QPs.
    Note that this generally hurts PSNR and SSIM, and so is only on when psy-RD is on.

commit f5e6980b3eb34ed610f5fc36a4378a0ed4277753
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 21 19:56:21 2009 -0700

    SSSE3 cachesplit workaround for avg2_w16
    Palignr-based solution for the most commonly used qpel function.
    1-1.5% faster overall on Core 2 chips.

commit 29569051505a78db9dbbc8fda53ab11e7e08b994
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Jul 22 20:20:52 2009 +0000

    shut up valgrind warnings in trellis

commit 88b35c2d3bd86b42059e27db365752da9f2cd032
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Sat Jul 18 16:30:18 2009 -0700

    New AQ algorithm option
    "Auto-variance" uses log(var)^2 instead of log(var) and attempts to adapt strength per-frame.
    Generates significantly better SSIM; on by default with --tune ssim.
    Whether it generates visually better quality is still up for debate.
    Available as --aq-mode 2.

commit f21daff3dc11cf5881f1727c3c9d505f0810d20b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 15 12:43:35 2009 -0700

    Cacheline-split SSSE3 chroma MC
    ~70% faster chroma MC on 32-bit Conroe
    Also slightly faster SSSE3 intra_sad_8x8c

commit 6c13403195d42b2c0ee707e9f2a6e9f9cd81afd6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jul 12 12:07:01 2009 -0700

    Improve documentation of qp/crf options

commit 49bf7673b2f52b2cd8e9c10d8d6e9cbbb5422cf7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 9 19:02:57 2009 -0700

    Merge array_non_zero into zigzag_sub
    Faster lossless, cleaner code.
    SSSE3 version of zigzag_sub_4x4_field, faster lossless interlaced coding.

commit b63f5919e3f5367a0df3dbf218d5a94d2fdba5fb
Author: James Darnley <james.darnley@gmail.com>
Date:   Thu Jul 9 11:25:55 2009 -0700

    Fix bug in reference frame autoadjustment
    For some types of input file, x264 did the adjustment before width/height were known.

commit 96e2229e96d65420d491596affa9aaa068d718d6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 7 11:13:39 2009 -0700

    Fix fprofile settings to match changes in defaults
    Also add b-adapt 2 to fprofile.

commit 3f6713d5c794d4fbfd3131985e33a822a40cb870
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jul 3 02:33:44 2009 -0700

    Slightly faster dequant_flat assembly
    Eliminate some redundant shifts.

commit af2a4ecd7bcefc97c8aa83913c9a2980206f9cd0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 1 21:14:57 2009 -0700

    Totally new preset system for x264.c (not libx264), new defaults
    Other new features include "tune" and "profile" settings; see --help for more details.
    Unlike most other settings, "preset" and "tune" act before all other options.
    However, "profile" acts afterwards, overriding all other options.
    Our defaults have also changed: new defaults are --subme 7 --bframes 3 --8x8dct --no-psnr --no-ssim --threads auto --ref 3 --mixed-refs --trellis 1 --weightb --crf 23 --progress.
    Users will hopefully find these changes to greatly improve usability.

commit 72534d466a6bd99b9cbf32c74e667bea608c6dee
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 1 16:33:12 2009 -0700

    Update Gabriel's email address in AUTHORS

commit f4dac817e45b967572f5c4e4af4644dc7d263512
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 30 15:20:32 2009 -0700

    Early termination for chroma encoding
    Faster chroma encoding by terminating early if heuristics indicate that the block will be DC-only.
    This works because the vast majority of inter chroma blocks have no coefficients at all, and those that do are almost always DC-only.
    Add two new helper DSP functions for this: dct_dc_8x8 and var2_8x8.  mmx/sse2/ssse3 versions of each.
    Early termination is disabled at very low QPs due to it not being useful there.
    Performance increase is ~1-2% without trellis, up to 5-6% with trellis=2.
    Increase is greater with lower bitrates.

commit 7fd6a9099f18ec028d6c73890258280e6f8a6c02
Author: David Conrad <lessen42@gmail.com>
Date:   Fri Jun 26 13:09:44 2009 -0700

    Fix bug in checkasm
    frame_init_lowres_core check didn't check the C plane.
    However, all x86 and PPC assembly was correct regardless of the unit test being incorrect.

commit f6d31669a2547110b9c1323aa51437296f2f3506
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 24 14:39:15 2009 -0700

    Add subpartition cost for sub-8x8 blocks
    Improves sub-p8x8 mode decision.

commit b484fe1bff3cb68b3325a9b77d802789cf77e600
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 24 13:24:18 2009 -0700

    Yet more CABAC and CAVLC optimizations
    Also clean up a lot of pointless code duplication in CAVLC MV coding.

commit 2c7cb4c3f111b49d3d961366ed338f38a0555716
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 19 18:49:55 2009 -0700

    Various CABAC optimizations and cleanups
    Faster CABAC CBF context calculation for inter blocks.
    Add x264_constant_p(), will probably be useful in the future as well.
    Simpler subpartition functions.
    Clean up and optimize mvd_cpn a bit more.
    Various other minor optimizations.

commit 364d7dff8dd96f71465bed10594b9f1e78fe6139
Author: David Wolstencroft <wolstencroft@alum.rpi.edu>
Date:   Sat Jun 20 21:42:55 2009 +0200

    AltiVec version of frame_init_lowres_core. 22.4x faster than C on PPC7450 and 25x on PPC970MP.

commit ab85c9b0ae08a237472bfd14558353d5ecb92b3d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 19 16:03:18 2009 -0700

    MMX CABAC mvd sum calculation
    Faster CABAC mvd coding.

commit 803c9d94641e57544932114f61f523e19bba6b4d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 19 16:02:39 2009 -0700

    Faster MV prediction
    Smaller code size, plus I get to use goto.

commit 6199685d989facfd6105c30b50e30615e784fba3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 10 10:37:01 2009 -0700

    Fix potential crash in checkasm
    ssim_end4_sse2 requires aligned sums

commit b555e3f90b2060542d44bcb1a254d5a7bfc5d23a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 10 10:11:00 2009 -0700

    SSSE3, faster SSE2/MMX integral_init4v
    The real reason I wrote this was an excuse to use shufpd.

commit 6841c5e2407e60de92c46bc6c649cd2fc4a13d75
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Thu Jun 11 08:29:27 2009 +0000

    configure check for uclinux

commit a9526973579d7d48bb2730b64a547ad10b7ef6ef
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jun 11 08:27:46 2009 +0000

    fix a crash on frame width <= 48 pixels

commit 3f56e271ac3d8a0e054b8b18e63886a6070ef05e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed May 27 20:47:18 2009 +0000

    configure check for cc, rather than reporting lack of compiler as an asm error.
    configure check for -mno-cygwin, since it's removed from gcc4.

commit f7bfcfaa36ac3f04447f668f94db73801ca86e4d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun May 24 05:01:26 2009 +0000

    a better way to keep track of mv candidates.
    2-4% faster dia, hex, and umh.

commit 8572d517a52cb46692d2fcc0723fdbd01d1878b6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun May 24 05:01:19 2009 +0000

    reorder some motion estimation patterns.
    this change is useless on its own, but segregates the bitstream-changing part out of my next optimization.

commit 79377d7309844d4e197ddf043fa9f115015fe286
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon May 25 19:16:05 2009 -0400

    Fix VBV warning broken in r915
    x264 will now correctly warn about maxrate specified without bufsize even when a level is not set.

commit 3da3f957c096ad7885312b58d7ab12a7fab10111
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon May 25 07:03:10 2009 +0000

    configure check for ssse3-capable binutils

commit a2c01c124e4ee4b9d71a4b2a20ed572d439aea7b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun May 24 16:58:08 2009 -0400

    Fix 10L in r1155
    Broke --me esa/tesa due to forgetting to add handling for x264_cost_mv_fpel.

commit 37241b84054d5d012994c4567270c1b32dd9a038
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 22 21:28:15 2009 -0700

    Fix bug where satd was incorrectly used with subme<=1
    Faster subme<=1 with i4x4 enabled.

commit be17f0306ec42c2fc6e572a50d16c3717c7991ce
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 22 20:40:27 2009 -0700

    Remove some pointless error handling code in cabac/cavlc

commit b6470f07f02342d1abf960b1482e3e9e835fbc5d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 22 18:40:12 2009 -0700

    Save some memory on mv cost arrays
    Have quantizers that use the same lambda share the same cost array.

commit 83d2c126382fb5f012e979b1a80f92fd49f35771
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 22 16:57:33 2009 -0700

    Various CABAC and CAVLC optimizations
    Backport CAVLC partial-inlining early termination to CABAC (~2-4% faster CABAC residual coding)

commit 7b6ce6a005f791f1d82c369d2f1e1c30b9ccbe80
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue May 19 02:47:15 2009 +0000

    fix a race condition at the end of thread_input

commit fb4e2845497f77e2dae3262e1414de2cdf327ab5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon May 18 22:40:45 2009 -0400

    Various trellis speed optimizations

commit e86a1734047fb3e3af8dbe17a0e29479e839635b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 16 12:16:34 2009 -0700

    Make i686 the default arch on x86_32
    Disabling asm will default to a generic arch.
    Also fix configure for gcc 4.4.

commit 0e050663d16cd5b095723bd00136873aa461d5cd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 15 20:07:59 2009 -0700

    Faster signed golomb coding
    3% faster CAVLC RDO and bitstream writing.

commit 3b80f2321937ed4962c6e2fcc679765bbf729723
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 14 04:11:15 2009 -0700

    Faster spatial direct MV prediction
    unroll/tweak col_zero_flag

commit 400740ba1a8a7a6001aa9b01e9be0b3d0905856e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon May 4 04:19:28 2009 -0700

    More CABAC and CAVLC optimizations
    Simplified function calling for block_residual_write_(cabac|cavlc) and improved sigmap coding.
    Tried making 0/1-bit specific versions of CABAC asm, but benefit was minimal under GCC 4.3.
    Helped a decent bit under 3.4, but you shouldn't be using such old versions anyways.

commit f526f244cbc21c245064a2a9c5611840dd3b5203
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 29 22:54:52 2009 -0700

    Various optimizations in frametype lookahead

commit ecae94a0ee6689bec9d32d64cce64cab7790a984
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 26 22:13:17 2009 -0700

    Some cosmetics/cleanup
    Move some macros to x86util.asm that should have been there to begin with.
    Fix a typo that didn't cause any issues.

commit d2e1e1c35c43ea9c90c9211be6202143b69b35b9
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Tue Apr 21 21:18:44 2009 +0000

    fix "incompatible types in initialization" compilation issues with GCC 4.3 (which is stricter than previous compiler version)

commit 4fc8c03ad568efe3dd2f57db33b0863d29cb63a0
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Tue Apr 21 17:32:21 2009 +0200

    fix conversions between vectors with differing element types or numbers of subparts errors

commit 755470584932877c4d5ea1b51c2cc2dbd044b7ca
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Apr 18 16:07:53 2009 -0700

    Add "coded blocks" stat to output information.
    This measures the total percentage of blocks, intra and inter, which have nonzero coefficients.
    "y,uvAC,uvDC" refers to luma, chroma DC, and chroma AC blocks.
    Note that skip blocks are included in this stat.

commit a908c88f0bbd4250afbd16b6c55b3c9f613af96d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 17 23:38:29 2009 -0700

    Enable asm predict_8x8_filter
    I'm not entirely sure how this snuck its way out of holger's intra pred patch.

commit c74726e1ed0312e2073f0ea8c45804a870512579
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 17 06:00:39 2009 -0700

    Remove various bits of dead code found by CLANG.

commit 37424f87a43a2dcecba61bc24b46506ced32307c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Apr 14 14:47:02 2009 -0700

    Slightly faster SSE4 SA8D, SSE4 Hadamard_AC, SSE2 SSIM
    shufps is the most underrated SSE instruction on x86.

commit 1024283b0321e53a3e08fddb1411429330bf1731
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 9 02:14:41 2009 -0700

    Various CABAC optimizations
    Move calculation of b_intra out of the core residual loop and hardcode it where applicable.
    Inlining cabac_mb_mvd was unnecessary and wasted tremendous amounts of code size.  Inlining only cache_mvd is faster and significantly smaller.

commit fe11a6f39e4e8235d685591ec9c0ec86eca4fee9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 8 05:45:03 2009 -0700

    CAVLC optimizations
    faster bs_write_te, port CABAC context selection optimization to CAVLC.

commit 1fda88277f6b2eda27a0f741d58b31532ad0664d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 5 13:01:42 2009 -0700

    Faster CABAC RDO
    Since the bypass case is quite unlikely, especially when doing merged sigmap/level coding,
    it's faster to use a branch than a cmov.

commit 3f9ba82b9788231c879d31d9c4c8ebf4518d07fe
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 31 10:36:57 2009 -0700

    Activate intra_sad_x3_8x8c in lookahead

commit 9d0c378b235182341edd2e95f01d4fd25132ad50
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 31 10:34:35 2009 -0700

    MBAFF interlaced coding is not allowed in baseline profile

commit b8808bf0a35b83c2fac05e07a504ad164c931960
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 30 19:30:59 2009 -0700

    intra_sad_x3_8x8 assembly

commit 8df40a4c41eb5e79d0055f2e5af4b214285b9c8c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 30 16:37:46 2009 -0700

    intra_sad_x3_4x4 assembly

commit d39f8ae1730b07286f1bb281a22d8cd57d0f90b9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 30 04:07:50 2009 -0700

    intra_sad_x3_8x8c assembly
    Also fix intra_sad_x3_16x16's use of "n" as a loop variable (broke SWAP)

commit d3ca4647a247186c2df7760be2a9c649efe34815
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 29 18:27:32 2009 -0700

    Shave one instruction off CABAC encode_decision
    range_lps>>6 ranges from 4-7, so (range_lps>>6)-4 == (range_lps>>6) & 3

commit 847597773aff56a5612a9edbebb40b350c637edf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Mar 26 22:22:23 2009 -0700

    Faster probe_skip
    Add a second chroma threshold after the DC transform.

commit c109c8e7db67df7194f2f913a7a4d65217caee26
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Mar 19 12:28:21 2009 -0700

    Add missing "static" qualifier to two arrays
    Should slightly improve performance.

commit 682b54d6175f98dfa14fec4d951f4b3b6e686b95
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 17 11:01:57 2009 -0700

    SSE2 zigzag_interleave
    Replace PHADD with FastShuffle (more accurate naming).
    This flag represents asm functions that rely on fast SSE2 shuffle units, and thus are only faster on Phenom, Nehalem, and Penryn CPUs.

commit 8d82fecc3377b3052279f038f2273ade3a5b65cc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 9 23:37:53 2009 -0700

    Faster integral_init
    palignr to avoid unaligned loads is worth it in inith, but not initv.

commit 96733ab692b4a268685d65070d6977964a466c91
Author: Holger Lubitz <holger@lubitz.org>
Date:   Mon Mar 9 14:05:16 2009 -0700

    Faster SSSE3 hpel_filter_v
    ~10% faster hpel_filter on 64-bit Penryn.
    32-bit version by Jason Garrett-Glaser.

commit 10d6ef07409ebe38b5f1e8e4516155a2fe66d4c6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Mar 7 16:43:09 2009 -0800

    Faster SSE2 pixel_var
    Optimized using the DEINTB method from r1122.  ~32% faster var_16x16 on Conroe.

commit e1c7f12cb828072b2b5b096195ff3004b83c7785
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Mar 7 00:27:27 2009 -0800

    SSSE3 hpel_filter_v
    Optimized using the same method as in r1122.  Patch partially by Holger.
    ~8% faster hpel filter on 64-bit Nehalem

commit 3d780622c1ff19bc3d6a522a65879779a7ddb3dd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Mar 6 18:57:15 2009 -0800

    Update some asm copyright headers

commit 2dca5f5413051a26cbba4e20f3c77ff69b694ba3
Author: Holger Lubitz <holger@lubitz.org>
Date:   Fri Mar 6 18:16:30 2009 -0800

    Vastly faster SATD/SA8D/Hadamard_AC/SSD/DCT/IDCT
    Heavily optimized for Core 2 and Nehalem, but performance should improve on all modern x86 CPUs.
    16x16 SATD: +18% speed on K8(64bit), +22% on K10(32bit), +42% on Penryn(64bit), +44% on Nehalem(64bit), +50% on P4(32bit), +98% on Conroe(64bit)
    Similar performance boosts in SATD-like functions (SA8D, hadamard_ac) and somewhat less in DCT/IDCT/SSD.
    Overall performance boost is up to ~15% on 64-bit Conroe.

commit f3872178768cca2973f759c479e26f3ac35e55fe
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Mar 6 15:28:47 2009 -0800

    Update x264 copyright date

commit 8544346a43456720f07e6a438cfbb0d84b39779a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 4 03:16:06 2009 -0800

    Remove pre-scenecut from fprofile commands as well
    Also add psy-trellis to fprofile

commit 6f0b2a9b18f3af3fd7e495640756e1d5e43343e1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 3 16:21:52 2009 -0800

    Slightly faster 8x16 SAD on Penryn Core 2
    Same as MMX 8x16 cacheline SAD, but calls SSE2 8x16 SAD in non-cacheline case.
    Only Nehalem benefits from sizes smaller than 8x16, and Nehalem doesn't use cacheline functions, so no smaller versions are included.

commit 1cc16dcee61496a5fb4da80d7605c1c88e2d371d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Feb 26 19:50:09 2009 -0800

    Fix scenecut and VBV with videos of width/height <= 32
    Also remove an unused variable

commit 3e4946f305317856ed79e0898f25f10859df22ed
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Feb 26 14:29:50 2009 -0800

    Remove non-pre scenecut
    Add support for no-b-adapt + pre-scenecut (patch by BugMaster)
    Pre-scenecut was generally better than regular scenecut in terms of accuracy and regular scenecut didn't work in threaded mode anyways.
    Add no-scenecut option (scenecut=0 is now no scenecut; previously it was -1)
    Fix an incorrect bias towards P-frames near scenecuts with B-adapt 2.
    Simplify pre-scenecut code.

commit 7ddb2c7da0621bb853b6702e6f59619c2d1c6a08
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Tue Mar 3 07:44:18 2009 -0800

    Add AltiVec version of hadamard_ac. 2.4x faster than the C version.
    Note this this implementation is pretty naive and should be improved
    by implementing what's discussed in this ML thread:
    date: Mon, Feb 2, 2009 at 6:58 PM
    subject: Re: [x264-devel] [PATCH] AltiVec implementation of hadamard_ac routines

commit 11863ace50e918ec75f7c8e22907ebf1000820e1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Feb 26 12:07:56 2009 -0800

    Fix regression in r1085
    Deblocking was very slightly incorrect with partitions=all.
    Bug found by BugMaster.

commit a933a3e6a6be918a2ae56e3d94ecea29143b9ea5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 16 05:56:12 2009 -0800

    Optimize neighbor CBP calculation and fix related regression
    r1105 introduced array overflow in cbp handling

commit cc4f807796220a042e386da259ddc38e6ca8e43b
Author: Tal Aloni <tal.aloni.il@gmail.com>
Date:   Fri Feb 13 16:30:14 2009 -0800

    Show FPS when importing a raw YUV file

commit f43e22a7873ea3811bbc15e30d67681f23249087
Author: Anton Mitrofanov <BugMaster@narod.ru>
Date:   Wed Feb 11 10:38:56 2009 -0800

    Windows 64-bit support
    A "make distclean" is probably required after updating to this revision.

commit d56e13f9016b898a3bd4043b26c2e70c2bb9f6c4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Feb 11 10:35:56 2009 -0800

    Minor fixes and cosmetics
    Suppress a GCC warning, fix a non-problematic array overflow, one REP->REP_RET.

commit 05afd8e02bd83c6c9eba4d41b8d829a383689117
Author: Manuel <maaanuuu@gmx.net>
Date:   Tue Feb 10 12:06:47 2009 -0800

    fix 10l in 75b495f2723fcb77f
    Original thread:
    date: Mon, Feb 9, 2009 at 9:37 PM
    subject: [x264-devel] commit: Spare a vec_perm and a vec_mergeh though using a LUT of permutation vectors . (Guillaume Poirier )

commit 75b495f2723fcb77fe7d5c92511136d3fea4cf13
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Feb 9 21:17:33 2009 +0100

    Spare a vec_perm and a vec_mergeh though using a LUT of permutation vectors.

commit 37f98cb85024d288eab5508a3b04ca1324335693
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Feb 9 21:12:23 2009 +0100

    Promote chroma planes to 16 byte alignment.
    This will allow simplifying vectors loads that can only load 16-bytes
    aligned data (such as AltiVec).

commit b5b9728b9b1cf9e4e54092515fd9fa86cd9023a4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Feb 9 11:30:54 2009 -0800

    Fix 10L in intra pred
    Forgetting a %define resulted in SIGILL on 32-bit systems without SSE (e.g. Athlon XP).

commit 0ee50db35db3e5af0d40936dbc5ff7e2478b1a2c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Feb 8 23:36:40 2009 -0800

    Add decimation in i16x16 blocks
    Up to +0.04db with CAVLC, generally a lot less with CABAC.

commit 9bf45f6d397559486b5fe038c3847b0d35c61728
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Feb 7 02:27:16 2009 -0800

    Much faster CABAC residual context selection
    Up to ~17% faster CABAC RDO, ~36% faster intra-only CABAC RDO.
    Up to 7% faster overall in extreme cases.

commit 3927938121ef63d72d9fd429c25202ebd65dd208
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Feb 7 01:57:43 2009 -0800

    Faster coeff_last64 on 32-bit

commit 32615747d3ab5648b666b4f55531f47b3c075521
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Feb 6 02:59:36 2009 -0800

    More intra pred asm optimizations
    SSSE3 version of predict_8x8_hu
    SSE2 version of predict_8x8c_p
    SSSE3 versions of both planar prediction functions
    Optimizations to predict_16x16_p_sse2
    Some unnecessary REP_RETs -> RETs.
    SSE2 version of predict_8x8_vr by Holger.
    SSE2 version of predict_8x8_hd.
    Don't compile MMX versions of some of the pred functions on x86_64.
    Remove now-useless x86_64 C versions of 4x4 pred functions.
    Rewrite some of the x86_64-only C functions in asm.

commit 711e6e87967aa3813a894fdfcd1e2b7eb48328a6
Author: Manuel <manuelro@gmx.de>
Date:   Sun Feb 8 21:35:51 2009 +0100

    Speed-up mc_chroma_altivec by using vec_mladd cleverly, and unrolling.
    Also put width == 2 variant in its own scalar function because it's faster
    than a vectorized one.

commit b69548aa3a0218ba1d4f934edcf8942f2b1682f5
Author: Holger Lubitz <holger@lubitz.org>
Date:   Wed Feb 4 12:46:17 2009 -0800

    Merging Holger's GSOC branch part 2: intra prediction
    Assembly versions of most remaining 4x4 and 8x8 intra pred functions.
    Assembly version of predict_8x8_filter.
    A few other optimizations.
    Primarily Core 2-optimized.

commit 122a54a0dbbfd5a8b649a6ca7eb0b7d3c42f89aa
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Wed Feb 4 10:04:55 2009 +0000

    10l: fix compilation with GCC 4.3+

commit c0be8106d40b2ccbfec37229afaecf236b03762c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jan 31 05:00:39 2009 -0800

    Faster 8x8dct+CAVLC interleave
    Integrate array_non_zero with the CAVLC 8x8dct interleave function.
    Roughly 1.5-2x faster than the original separate array_non_zero method.

commit 91bffdcc24e59620cc09aa4288f7e0c0b74c8891
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jan 31 01:00:26 2009 -0800

    Measure CBP cost in i8x8 RD refinement
    ~0.02-0.05db PSNR gain at high quants in intra-only encoding, pretty small otherwise.
    Allows a small optimization in i8x8 encoding.

commit e404f350afc3c52a99d13d22f862cd2ede1438b0
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sun Feb 1 20:58:00 2009 +0100

    Take advantage of saturated signed horizontal sum instructions in
    the variance computation epilogue since there won't be any overflow
    triggering an overflow.
    Suggested by Loren Merritt

commit 4c171c3b1c803a173ace823275882b3c9a2ecd24
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jan 30 03:40:54 2009 -0800

    Massive overhaul of nnz/cbp calculation
    Modify quantization to also calculate array_non_zero.
    PPC assembly changes by gpoirior.
    New quant asm includes some small tweaks to quant and SSE4 versions using ptest for the array_non_zero.
    Use this new feature of quant to merge nnz/cbp calculation directly with encoding and avoid many unnecessary calls to dequant/zigzag/decimate/etc.
    Also add new i16x16 DC-only iDCT with asm.
    Since intra encoding now directly calculates nnz, skip_intra now backs up nnz/cbp as well.
    Output should be equivalent except when using p4x4+RDO because of a subtlety involving old nnz values lying around.
    Performance increase in macroblock_encode: ~18% with dct-decimate, 30% without at CRF 25.
    Overall performance increase 0-6% depending on encoding settings.

commit 8ae672fe2e0f779e57abe560bafdf41ec1fea533
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Thu Jan 29 01:28:12 2009 -0800

    Add PowerPC support for "checkasm --bench", reading the time base register.
    This isn't ideal since the `time base' register is running at a fraction
    of the processor cycle speed, so the measurement isn't as precise as x86's
    rdtsc.
    It's better than nothing though...

commit c9095eb2792b18a264569d46a3d923eafe333f45
Author: Brad <brad@comstyle.com>
Date:   Thu Jan 29 04:35:34 2009 +0000

    fix detection of pthread and isfinite on OpenBSD

commit 1df50b9287c83d5443d19482345b6842b78081c3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Jan 27 05:42:51 2009 +0000

    remove $ECHON kludge, which broke on SunOS. bring back `gcc -MT`.
    remove auto-reconfigure on svn update, which has done nothing since we stopped using svn.
    fix $AS on sparc (was disabled by mmx check).
    fix --extra-asflags (was ignored).
    mark bash scripts as bash, not sh
    
    patch partly by Greg Robinson and Jugdish.

commit 60f4cd8936af4997cfbd9650ea27152df00c5669
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Jan 26 14:28:48 2009 +0000

    1.6x faster satd_c (and sa8d and hadamard_ac) with pseudo-simd.
    60KB smaller binary.

commit 71c5a8dca6e5f7bf2330d028989eeeab27701151
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 27 23:27:56 2009 -0800

    Hack around a potential failure point in VBV
    pred_b_from_p can become absurdly large in static scenes, leading to rare collapses of quality with VBV+B-frames+threads.
    This isn't a final fix, but should resolve the problem in most cases in the meantime.

commit 8e2c4b76dd49c44cedf46343e46b292d5a0ca39e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jan 26 23:43:25 2009 -0800

    Much faster chroma encoding and other opts
    ~15% faster chroma encode by reorganizing CBP calculation and adding special-case idct_dc function, since most coded chroma blocks are DC-only.
    Small optimization in cache_save (skip_bp)
    Fix array_non_zero to not violate strict aliasing (should eliminate miscompilation issues in the future)
    Add in automatic substitutions for some asm instructions that have an equivalent smaller representation.

commit 355c445f222eae4f953f1be9f8e1d44a2a07d639
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Jan 26 06:28:23 2009 -0800

    add AltiVec implementation of x264_mc_copy_w16_aligned

commit 71ac0a34bc0460bf67da68f300e4150bc50d9aae
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Fri Jan 23 13:53:06 2009 -0800

    add AltiVec implementation of x264_pixel_var_16x16 and x264_pixel_var_8x8

commit 1959672cf6f18da888940261916dbf81248e0598
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Fri Jan 23 01:11:20 2009 -0800

    add AltiVec 16 <-> 32 bits conversions macros

commit 39a279613d10fa4dbe608f1a2af1eb86686033af
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Jan 19 21:29:27 2009 +0100

    Replace 16x16=>32 mul + pack + add by a simple 16x16=>16 multiply-add.
    Suggested by Loren.

commit 5fb6417309febda6f73a98494cb935379129e15d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Jan 19 15:17:53 2009 -0800

    Eliminate support for direct_8x8_inference=0
    The benefit in the most extreme contrived situation was at most 0.001db PSNR, at the cost of slower decoding.
    As this option was basically useless, it was a waste of code and prevented some other useful optimizations.
    Remove some unused mc code related to sub-8x8 partitions.
    Small deblocking speedup when p4x4 is used.
    Also remove unused x264_nal_decode prototype from x264.h.

commit a48d1d0a2ad590d041b79bb152ed47d00451ba8d
Author: Brad <brad@comstyle.com>
Date:   Mon Jan 19 05:14:53 2009 -0800

    Add AltiVec and CPU numbers detection on OpenBSD.

commit 09e76c903d3419619ed326a4dd114369a55bdd6e
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sun Jan 18 22:44:14 2009 +0100

    Add AltiVec implementation of predict_8x8c_p. 2.6x faster than scalar C.

commit bde164d50f1936b28a9cd66f8be8d9995cc5a01b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jan 17 15:16:37 2009 -0500

    Warn if direct auto wasn't set on the first pass
    And, if it wasn't, run direct auto as if it was the first pass, rather than simply forcing temporal direct mode on all frames.
    Also a small tweak to coeff_level_run asm.

commit 201f7ad8ad50ff460f79cb44e0bee6aebbf039ca
Author: Brad <brad@comstyle.com>
Date:   Sat Jan 17 12:52:28 2009 +0000

    Changes the PowerPC ppccommon.h header so it no longer checks for a particular
    OS such as Linux but instead looks for HAVE_ALTIVEC_H being set.
    Fixes all *BSD/PowerPC builds.

commit 56e91836a12f1b119fb4aae43182f2fc012f1eca
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Wed Jan 14 21:56:31 2009 +0100

    update x264_hpel_filter_altivec's prototype to match the one of the C version.
    It changed in commit 045ae4045a1827555b3eaab4fbf3c9809e98c58f (factorization of mallocs)
    (NB: Altivec implementation wasn't allocating and writing to any scratch memory.)

commit d2b6423db8310e5238fd7c0e517b3344578cc08a
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Wed Jan 14 21:49:42 2009 +0100

    rename vector+array unions to closer match the vector typedefs names.

commit 264e447cc4ce267d7e4d078b080716093a78a2c8
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Wed Jan 14 21:13:58 2009 +0100

    Add Altivec implementation of all the remaining 16x16 predict routines.

commit e46f64824a718ca146724d6cfa104aaba16eb169
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 13 21:11:50 2009 -0500

    Cache ref costs and use more accurate MV costs
    New MV costs should improve quality slightly by improving the smoothness of the field of MV costs (and they're closer to CABAC's actual costs).
    Despite being optimized for CABAC, they still help under CAVLC, albeit less.
    MV cost change by Loren Merritt

commit 79bfb039de253c986986fbd99935c0d4a95ad503
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 13 20:22:36 2009 -0500

    Support forced frametypes with scenecut/b-adapt
    This allows an input qpfile to be used to force I-frames, for example.
    The same can be done through the library interface.
    Document the format of the qpfile in --longhelp and the forcing of frametypes in x264.h
    Note that forcing B-frames and B-refs may not always have the intended result.
    Patch partially by Steven Walters <kemuri9@gmail.com>.

commit 7c4f8297e057a439cf1f1d7cf95d05b9f27063c7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 13 19:58:44 2009 -0500

    Remove an IDIV from i8x8 analysis
    Only one IDIV is left in macroblock level code (transform_rd)

commit b6bb3d4287727b73291f9e9a2bf38589ac397382
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jan 8 15:07:16 2009 -0500

    Fix regression in r1066
    With some combinations of video width and other settings, the scratch buffer was slightly too small.
    This caused heap corruption on some systems.
    Also prevent merange from being raised during encoding with esa/tesa through encoder_reconfig, as this no longer works.

commit 6a4a9beae060d69bbeaeb8c1c3056fb6ae6765f6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jan 6 16:55:44 2009 -0500

    Disable B-frames in lossless mode
    They hurt compression anyways, and direct auto was bugged with lossless.

commit f586ba52b87ebb6b1d7689603680ef7d3219e09a
Author: Brad Smith <brad@comstyle.com>
Date:   Mon Jan 5 22:53:11 2009 +0000

    Factorize in ppccommon.h the conditional inclusion of altivec.h on Linux systems.

commit 87b6d55ebda8a11186f7b09b5866b05a4584d13d
Author: Brad Smith <brad@comstyle.com>
Date:   Mon Jan 5 15:58:32 2009 -0500

    Disable __builtin_clz() intrinsic on gcc versions prior to 3.4.
    The function did not exist before that version.

commit 6f7c9be698848e8d9fd116b728af7d718ea43a2f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jan 1 21:44:00 2009 -0500

    Small tweaks to coeff asm
    Factor out a few redundant pxors
    Related cosmetics

commit ed32ad20d6914d1781c7711574f10a8df49e3e20
Author: Steven Walters <kemuri9@gmail.com>
Date:   Tue Dec 30 22:20:37 2008 -0500

    Use the correct strtok under MSVC
    Also change one malloc -> x264_malloc

commit 390d26ad2ca72b420448c36a747d3ee49b79e75b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 30 22:14:45 2008 -0500

    Add stack alignment for lookahead functions
    Should allow libx264 to be called from non-gcc-compiled applications without adding force_align_arg_pointer.

commit 00cef64dd3fff5d4b5b9b0e63314c11bfb7d33e0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 30 20:47:45 2008 -0500

    Add support for SSE4a (Phenom) LZCNT instruction
    Significantly speeds up coeff_last and coeff_level_run on Phenom CPUs for faster CAVLC and CABAC.
    Also a small tweak to coeff_level_run asm.

commit 045ae4045a1827555b3eaab4fbf3c9809e98c58f
Author: Steven Walters <kemuri9@gmail.com>
Date:   Mon Dec 29 05:14:26 2008 +0000

    factor mallocs out of hpel, ssim, and esa.
    there should now be no memory allocation outside of init-time.

commit 681544ef803f3bd0429659495f97455aed1158a0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 30 03:12:17 2008 +0000

    Much faster CAVLC RDO and bitstream writing
    Pure asm version of level/run coding.  Over 2x faster than C.
    Up to 40% faster CAVLC RDO.  Overall benefit up to ~7.5% with RDO or ~5% with fast encoding settings.

commit 648e132f7135c7e18625198e3ffe2c6c7d824df6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Dec 29 21:52:25 2008 -0500

    Cosmetics: cleaner syntax for defining temporary registers in asm
    Globally define t#[qdwb], so that only t# needs to be locally defined when reorganizing registers

commit 84a1ca6ce70fe7bad4922ddc5a72c2e9cd73703b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Dec 27 21:36:14 2008 -0500

    Much faster CABAC RDO
    Since RDO doesn't care about what order bit costs are calculated, merge sigmap and level coding into the same loop in RDO.
    This is bit-exact for 4x4dct but slightly incorrect for 8x8dct due to the sigmap containing duplicated contexts.
    However, the PSNR penalty of this is extremely small (~0.001db).
    Speed benefit is about 15% in 4x4dct and 30% in 8x8dct residual bit cost calculation at QP20.
    Overall encoding speed benefit is up to 5%, depending on encoding settings.
    Also remove an old unnecessary CABAC table that hasn't been used for years.

commit 40ad1b6d411d1e7d0788d29627804a19977bb6ee
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Dec 26 07:35:49 2008 -0500

    VLC table optimizations
    Slightly reorganize VLC tables for ~2% faster block_residual_write_cavlc.
    Also a small optimization in p8x8 CAVLC.

commit 839cd8cf33492213f7878bf14c26b387b6599abd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Dec 24 22:58:17 2008 -0500

    Fix crash in --me esa/tesa introduced in r1058
    Also suppress the last mingw warning message

commit 42070dff1bc3019a6f56773fce3dd6e328e3a61b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 23 22:33:28 2008 -0500

    Optimize variance asm + minor changes
    Remove SAD argument from var, not needed anymore.
    Speed up var asm a bit by eliminating psadbw and instead HADDWing at end.
    Eliminate all remaining warnings on gcc 3.4 on cygwin
    Port another minor optimization from lavc (pskip)

commit 265d61bcdc5e6ce6688e377af9f6c0136724ed59
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Dec 23 18:31:48 2008 -0500

    Minor CABAC cleanups and related optimizations
    Merge the two list tables to allow cleaner MC/CABAC/CAVLC code
    Remove lots of unnecessary {s
    Port some very minor opts from lavc

commit a4ec1020efb1a2a6757f8f891d78c2dd9344bb91
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Dec 11 19:47:17 2008 +0000

    faster ESA init
    reduce memory if using ESA and not p4x4

commit 5f8a1490eb0bc2a934c34bc8307bfdc1ade6a92d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 15 23:02:49 2008 -0800

    More macroblock_cache optimizations
    Patch partially by Loren Merritt

commit e59ee249829049de338bebc3a2a00f9e471b40f3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 15 13:15:29 2008 -0800

    Faster macroblock_cache_rect
    Explicit loop unrolling

commit 2b8d6a6f957be623186ea2a20bcb13c3637440b8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Dec 14 18:30:51 2008 -0800

    Optimizations in predict_mv_direct
    Add some early terminations and minor optimizations
    This change may also fix the extremely rare direct+threading MV bug.

commit 918ff3c6a33e170655b61af85f8955ec5590fff8
Author: David Wolstencroft <wolstencroft@alum.rpi.edu>
Date:   Sun Dec 14 10:47:28 2008 +0000

    Fix visual corruption when picture width was not mod 32.
    The previous Altivec implemention of mc_chroma assumed that i_src_stride was always mod 16.

commit 9089d217078450fad075b5eb61f372572d094a5f
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Dec 8 21:11:45 2008 +0100

    Add support for FSF GCC version >= 4.3 on OSX.
    So far, only Apple GCC version was supported.

commit ad2c84f76f9fbb4f360caeb87df824beab023bbf
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Dec 11 17:31:52 2008 -0800

    More accurate refcost for p8x8 CAVLC
    Slightly better quality, especially in non-RD mode, with CAVLC.

commit 549cc55b50df76d5167c0ace75c62595feb753ca
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Dec 10 20:54:17 2008 -0800

    use lookup tables instead of actual exp/pow for AQ
    Significant speed boost, especially on CPUs with atrociously slow floating point units (e.g. Pentium 4 saves 800 clocks per MB with this change).
    Add x264_clz function as part of the LUT system: this may be useful later.
    Note this changes output somewhat as the numbers from the lookup table are not exact.

commit 877d22e071f1b73fb33c628cc273e2819d10c3de
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Dec 10 20:53:13 2008 -0800

    Suppress saveptr warnings on Windows GCC

commit 0fdd0403cc9cc95637e287ddd1b257d6b65b7ddb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Dec 10 20:52:06 2008 -0800

    More small speed tweaks to macroblock.c

commit 77028cd3671de855affb02ffefe6bbd99ac7816e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Dec 8 13:44:23 2008 -0800

    Much faster CAVLC residual coding
    Use a VLC table for common levelcodes instead of constructing them on-the-spot
    Branchless version of i_trailing calculation (2x faster on Nehalem)
    Completely remove array_non_zero_count and instead use the count calculated in level/run coding.  Note: this slightly changes output with subme > 7 due to different nonzero counts being stored during qpel RD.

commit f773bf06256a467f6b18418d97ce2c7ddbe5728c
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Fri Dec 5 22:26:55 2008 +0100

    fix compilation with GCC-4.3+

commit 71d34b4eb454027cd742e6d96e2a70cce8cd163c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 29 23:13:58 2008 -0800

    High Profile allows 25% higher maxbitrate/cpb
    Correct level detection to take this into account.

commit cc40e308c919010ef9ae6ff376cda56a58a79f3a
Author: BugMaster <BugMaster@narod.ru>
Date:   Sat Nov 29 14:04:29 2008 -0800

    s/nasm/yasm in VS project file

commit 6c3e0258776c1117929aec7c12d51b88c214467c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 29 04:49:18 2008 -0800

    Cosmetic: update various file headers.

commit 2f031b0e31b799072383792358eee376baeb2ba7
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Nov 29 11:54:02 2008 +0000

    add date and compiler to `x264 --version`

commit 5df2a7162aecda66b3da8dde501971389b1bbd44
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 28 14:32:11 2008 -0800

    10L in r1041

commit 12724e638e8d28ce97bcb9c77d2bb7336b087af3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 27 19:37:56 2008 -0800

    Significantly faster CABAC and CAVLC residual coding and bit cost calculation
    Early-terminate in residual writing using stored nnz counts
    To allow the above, store nnz counts for luma and chroma DC
    Add assembly functions to find the last nonzero coefficient in a block
    Overall ~1.9% faster at subme9+8x8dct+qp25 with CAVLC, ~0.7% faster with CABAC
    Note this changes output slightly with CABAC RDO because it requires always storing correct nnz values during RDO, which wasn't done before in cases it wasn't useful.
    CAVLC output should be equivalent.

commit 1591275a92faa3d63186e6de1e9022956113bc1d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 26 23:42:55 2008 -0800

    dequant_4x4_dc assembly
    About 3.5x faster DC dequant on Conroe

commit 2338e1301aded556be8b85c6c3b4050e562ed862
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Nov 27 02:37:46 2008 +0000

    fix an overflow in dct4x4dc_mmx
    (unlikely to have occurred in any real video)

commit a7fd9f5da062de323ae89f9a71ede03bfd6ddb6a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Nov 25 16:30:39 2008 -0800

    Remove nasm support
    Nasm won't correctly parse the SSE4 code introduced a few revisions ago, so we're removing support.
    Users should upgrade to yasm 0.6.1 or later.

commit 0fe9b85f393e00b79c37d8c81aeae2a2f3d41290
Author: BugMaster <BugMaster@narod.ru>
Date:   Tue Nov 25 15:11:24 2008 -0800

    Fix rare warning messages in ratecontrol due to r1020

commit adffb7fa3d3db6d2fa2ad97e0c950afec8889ea5
Author: BugMaster <BugMaster@narod.ru>
Date:   Tue Nov 25 15:10:43 2008 -0800

    Fix MSVC compilation and clean up MSVC build file
    Remove Release64 which never worked anyways.

commit e1013e8152254614696bbc9d92959bc9705d98b1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Nov 25 01:04:26 2008 -0800

    Faster width4 SSD+SATD, SSE4 optimizations
    Do satd 4x8 by transposing the two blocks' positions and running satd 8x4.
    Use pinsrd (SSE4) for faster width4 SSD
    Globally replace movlhps with punpcklqdq (it seems to be faster on Conroe)
    Move mask_misalign declaration to cpu.h to avoid warning in encoder.c.
    These optimizations help on Nehalem, Phenom, and Penryn CPUs.

commit cab23dd7e6bf4ed501f36e1e6f64d4902d0489c9
Author: Guillaume Poirier <gpoirier@dusk.caps-entreprise.com>
Date:   Tue Nov 25 17:27:27 2008 +0100

    fix indentation, whitespace cleanup, more consistent indentation of macro backslashes

commit 4bf4109aee5b602f8a124b434e18f93ef539bbe6
Author: David Wolstencroft <wolstencroft@alum.rpi.edu>
Date:   Sat Nov 22 17:54:38 2008 +0100

    Change some macros to be more sensitive to memory alignment, thus avoiding
    useless loads/stores and calculations of permutation vectors.
    Affected functions are all of mc_luma, mc_chroma, 'get_ref', SATD, SA8D and deblock.
    Gains globally vary from ~5% - 15% on a depending on settings running on a 1.42 ghz G4.

commit 8215f79c7e19747b3206bcd6245be6cc6e668145
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Nov 7 05:31:24 2008 +0000

    refactor satd. 20KB smaller binary.
    refactor sa8d. slightly faster.
    more checkasm for hadamard.

commit 3a028c8e50238b7799175bd5a172e5517b4baf8d
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 24 21:56:24 2008 -0800

    Fix crash with threads and SSEMisalign on Phenom
    Misalign mask needed to be set separately for each encoding thread.

commit f9dba8bb274dffb19394db20912823464efcb8e1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 21 03:39:11 2008 -0800

    Phenom CPU optimizations
    Faster hpel_filter by using unaligned loads instead of emulated PALIGNR
    Faster hpel_filter on 64-bit by using the 32-bit version (the cost of emulated PALIGNR is high enough that the savings from caching intermediate values is not worth it).
    Add support for misaligned_mask on Phenom: ~2% faster hpel_filter, ~4% faster width16 multisad, 7% faster width20 get_ref.
    Replace width12 mmx with width16 sse on Phenom and Nehalem: 32% faster width12 get_ref on Phenom.
    Merge cpu-32.asm and cpu-64.asm
    Thanks to Easy123 for contributing a Phenom box for a weekend so I could write these optimizations.

commit cb3c213850320fb0c1b17ae8bbbbf5d687e43961
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Nov 20 20:11:14 2008 -0800

    A few tweaks to decimate asm
    A little bit faster on both 32-bit and 64-bit

commit 83baa7fdd2edf3e2f9522fc8b79e0826bcf190fc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 12 16:50:31 2008 -0800

    Nehalem optimization part 2: SSE2 width-8 SAD
    Helps a bit on Phenom as well
    ~25% faster width8 multiSAD on Nehalem

commit aa14719bf2b78f8fd3da7bbabb0faf142313dae1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 10 23:34:02 2008 -0800

    Add subme=0 (fullpel motion estimation only)
    Only for experimental purposes and ultra-fast encoding.  Probably not a good idea for firstpass.

commit 745a48beddc58e2ef121326e9156d3d42590a4b5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 10 15:34:48 2008 -0800

    Fix minor memory leak in r1022

commit fdb6114d1b456e1438374671ec42d1d77cdd05f8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 10 15:32:06 2008 -0800

    r1024 borked checkasm
    Remove idct/dct2x2 from checkasm as they are no longer in dctf

commit 2652abeae5445ffefded5ee7d0853300d0973b37
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Nov 9 17:39:21 2008 -0800

    Faster chroma encoding
    9-12% faster chroma encode.
    Move all functions for handling chroma DC that don't have assembly versions to macroblock.c and inline them, along with a few other tweaks.

commit f13d4637fe9b2f10b8c103500ac9293bfca3ad1f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Nov 9 17:34:31 2008 -0800

    Various cosmetics and minor fixes
    Disable hadamard_ac sse2/ssse3 under stack_mod4
    Fix one MSVC compilation warning
    Fix compilation in debug mode in certain cases on x64
    Remove eval.c from MSVC project
    Fix crash when VBV is used in CQP mode
    Patches by MasterNobody

commit 7cdaf638c3777f2b38fb60181dde7ed4de614cc1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Nov 8 20:16:17 2008 -0800

    Faster b-adapt + adaptive quantization
    Factor out pow to be only called once per macroblock.  Speeds up b-adapt, especially b-adapt 2, considerably.
    Speed boost is as high as 24% with b-adapt 2 + b-frames 16.

commit 852579be365549db3ccc1c2906c9a1d2f4a92ac9
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Nov 7 11:39:43 2008 -0800

    Faster CABAC residual encoding
    6% faster block_residual_write_cabac in RD mode.

commit 418cace8646a6f546a9026da47f79fad7285f577
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 5 19:51:59 2008 -0800

    Fix potential crash in the case that the input statsfile is too short
    Also resolve various other potential weirdness (such as multiple copies of the same error message in threaded mode).

commit a5ac6a5b8688915553fe6fccee09f1272f3788ac
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Nov 5 03:11:45 2008 -0800

    Initial Nehalem CPU optimizations
    movaps/movups are no longer equivalent to their integer equivalents on the Nehalem, so that substitution is removed.
    Nehalem has a much lower cacheline split penalty than previous Intel CPUs, so cacheline workarounds are no longer necessary.
    Thanks to Intel for providing Avail Media with the pre-release Nehalem CPU needed to prepare these (and other not-yet-committed) optimizations.
    Overall speed improvement with Nehalem vs Penryn at the same clock speed is around 40%.

commit 41b8069cb74fa3bc905618225be07ee8d35bbc79
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date:   Tue Nov 4 09:56:03 2008 -0800

    Fix potential infinite loop in VBV under GCC 4.2

commit e4c4568d4f0f234e942b4855391aea7224c41eb6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Nov 3 22:59:49 2008 -0800

    Encoder_reconfig: esa/tesa can only be enabled if they were on to begin with
    Bug report by kemuri-_9.

commit dbc5ef040b1f8a83e7491dc8a2fc8943b1e20c07
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Oct 30 00:47:09 2008 -0700

    Fix bug in hadamard_ac SSE assembly
    Some extreme inputs could cause overflows.

commit a0a1bfac7f4a09159f6ef2bf13fb69548b6c5a02
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 28 20:35:15 2008 -0700

    Full sub8x8 RD mode decision
    Small speed penalty with p4x4 enabled, but significant quality gain at subme >= 6
    As before, gain is proportional to the amount of p4x4 actually useful in a given input at the given bitrate.

commit aa40e41abae051191117ae670cadd9cd50f66b6f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 25 01:50:08 2008 -0700

    Optimize CABAC bit cost calculation
    Speed up cabac mvd and add new precalculated transition/entropy table.
    Add "noup" function for cabac operations to not update the state table when it isn't necessary.
    1-3% faster macroblock_size_cabac.
    Cosmetics

commit d7df1a477b5e0e851d206e8c25da0b275ae0b7cc
Author: Anders Ossowicki <arkanoid@exherbo.org>
Date:   Thu Oct 23 22:36:11 2008 -0700

    Replace "git-command" with "git command" in version.sh for git 1.6 support

commit 990274cd5fd276bb26ac0fa13fc9bc1cbcf7acbc
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Oct 23 13:45:04 2008 -0700

    Add assembly version of CAVLC 8x8dct interleave
    Faster CAVLC encoding and RDO with 8x8dct

commit 86a0fe50c6e369d6dacac5b992febb4bd09de85d
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Wed Oct 22 15:55:30 2008 -0700

    Add support for psy-rd/trellis to encoder_reconfig

commit 4c78f091e625e87b8f82c567af81969c2fd3e671
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Wed Oct 22 15:00:43 2008 -0700

    Fix Darwin speed regression

commit 8ca555ef691e20d4eb429b45e178f4c0108b607d
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date:   Wed Oct 22 14:48:47 2008 -0700

    Further improve prediction of bitrate and VBV in threaded mode

commit 8fa0bf3d56fa1b02a44f8ee0f673ea998294bd7e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Oct 22 13:37:09 2008 -0700

    Sub-8x8 Qpel-RD in P-frames
    Improves quality when using p8x4/p4x8/p4x4 subpartitions
    Benefit is proportional to how many sub-8x8 partitions are used; helps most at high bitrates and low resolutions.

commit d0add77f5f084253202747266f85daa65f7fc9cc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Oct 22 02:20:06 2008 -0700

    Faster qpel-RD
    3-4% faster qpel-RD; avoid re-checking bmv/pmv during the hex search.

commit f451563f93fad8972c0e9b788b30799e777e913a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Oct 22 00:37:00 2008 -0700

    Some minor optimizations in RD refinement
    Don't write b subpartition in CABAC RDO
    Calculate nonzero count in i4x4 CAVLC RDO

commit 84ede33bec64332cc4bc5da1106c53f3cffa919b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 21 20:17:18 2008 -0700

    Faster deblocking when p4x4 isn't used
    Most of the MV checks can be skipped, resulting in faster strength calculation

commit ce0b11099e5fa920b8d1bc39389ae9373f921358
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 21 19:38:21 2008 -0700

    Print profile and level information upon starting encode
    Previously level was only printed as part of autodetect, and only in verbose mode.

commit 296b39dd863ea90a12d8a52848d1135e387a28f3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 21 17:10:46 2008 -0700

    Fix possible crash in trellis at very low QPs

commit f5da8110606c1bdb8f3a194f11574db28855415e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Oct 21 14:59:07 2008 -0700

    Add assembly versions of decimate_score
    3-7x faster decimation, 1-3% faster overall

commit 6d9ef8ad39b0bfa5df0c1305e91ae932aad4997e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Oct 18 03:40:59 2008 -0700

    Fix typo in subme8/9 lossless qpel-RD
    Slightly improves compression.

commit 79194caffdc216e338674d88e50adca2f4ea8fa2
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Oct 16 03:17:53 2008 -0700

    Extend trellis to support luma/chroma DC and chroma AC
    Small speed loss in trellis 1, slightly larger in trellis 2, but significant quality improvement.

commit cc510478de710f86ab400f610b6e075304d902cb
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Oct 2 20:57:08 2008 -0600

    rm gtk, avc2avi.
    I don't remember why I allowed a gui into the repository in the first place. There's nothing that makes this one special relative to all the other x264 guis.
    avc2avi doesn't compile since we removed the bitstream reader. And avc doesn't belong in avi.

commit 6768543b76ee5ed65d096444fda2bc282b41dd91
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Oct 2 18:11:13 2008 -0700

    Resolve quality regression in r996
    Accidentally removed the wrong line of code.  I think this classifies as a "10l".
    Thanks to techouse for initial bug report and skystrife for helping me find it.

commit 65b837fc75bdbabcc34f5e12048c10d77932eee2
Author: Ralf Terdic <contact@jswiff.com>
Date:   Thu Oct 2 08:52:33 2008 -0700

    Fix minor memory leak accidentally added with the addition of b-adapt 2

commit c89bc900a3bf0d4c4c728ad378703970b4f14e18
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 30 18:34:56 2008 -0700

    Rework subme system, add RD refinement in B-frames
    The new system is as follows: subme6 is RD in I/P frames, subme7 is RD in all frames, subme8 is RD refinement in I/P frames, and subme9 is RD refinement in all frames.
    subme6 == old subme6, subme7 == old subme6+brdo, subme8 == old subme7+brdo, subme9 == no equivalent
    --b-rdo has, accordingly, been removed.  --bime has also been removed, and instead enabled automatically at subme >= 5.
    RD refinement in B-frames (subme9) includes both qpel-RD and an RD version of bime.

commit 2324c7074585b8b3f56e49ae41df9cbca06f6185
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 29 00:11:38 2008 -0700

    Fix potential miscompilation of some inline asm
    Caused problems under some gcc 4.x versions with predictive lossless

commit b35a044b95c7eab2c91f55a3ac4100ca26a29d92
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 27 16:37:27 2008 -0700

    Replace High 4:4:4 profile lossless with High 4:4:4 Predictive.
    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.

commit 37269f42fca115f2083e01135f7bab0b4e9fce3b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 26 09:19:56 2008 -0700

    Fix typo in progress indicator when using piped input

commit e21b11f4ae99ef8ec0e37c1605f72ef18adfa7c3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Sep 22 04:17:35 2008 -0600

    avg_weight_ssse3

commit 972814a9c76c8d718063e27a15328fa638e92c61
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Sep 20 08:41:17 2008 -0600

    fix bitstream writer on bigendian 64bit (regression in r903)

commit 7265a215167d305cbc818dad6bb413901bb7aca2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Sep 19 23:52:11 2008 -0600

    remove authors whose code no longer exists

commit 48734012a4fa151aa26d9e1a5f67d35303a4b4f6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Sep 15 05:00:26 2008 -0600

    more diagnostics when configure finds an unsuitable assembler

commit 41c9e22257b7da84299aa55fd8e6564577d4246e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 26 09:19:56 2008 -0700

    Make x264 progress indicator more concise
    Now the % indicator should be readable on the header of a minimized window on Windows systems.

commit e71168d48b9cb994bbb3895bbf25ebee2893ba4f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 21 22:17:34 2008 -0700

    Fix deblocking + threads + AQ bug
    At low QPs, with threads and deblocking on, deblocking could be improperly disabled.
    Revision in which this bug was introduced is unknown; it may be as old as b_variable_qp in x264 itself.

commit 24961b015bed5dcda178e683a9f46a4945dc4fe3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 21 13:35:00 2008 -0700

    Resolve possible crash in bime, improve the fix in r985

commit e256ea1fd2198fb2475e03913b9b3b6bddd3b5da
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 20 19:36:07 2008 -0700

    Fix rare crash issue in b-adapt
    Regression *probably* in r979

commit 36223eac828a715b63d0211000a6cbd2d466704d
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date:   Sat Sep 20 02:36:55 2008 -0700

    Merging Holger's GSOC branch part 1: hpel_filter speedups

commit b4b64837d7bb6714f710cb1f2ef85f87f77da739
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Sep 20 12:31:10 2008 -0600

    r980 borked weighted bime

commit cc0fd8ab09eacaa78941169cbf52123333a8fe2e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 20 01:39:16 2008 -0700

    Disable I_PCM with psy-RD
    psy-RD seems to put the PCM threshold a bit lower than it should be, so PCM is now disabled under psy-RD.

commit 9e319ff18553055b288c61397b6cff80766a536b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 19 09:21:34 2008 -0700

    Merge avg and avg_weight
    avg_weight no longer has to be special-cased in the code; faster weightb

commit b4cb6ef372d451d231bf884f551670577f3195d4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 17 21:25:05 2008 -0700

    Rewrite avg/avg_weight to take two source pointers
    This allows the use of get_ref instead of mc_luma almost everywhere for bipred

commit 6d4af8d257162ac8881a0f96d9552eb928328d95
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 17 00:33:37 2008 -0700

    Use low-resolution lookahead motion vectors as an extra predictor
    Improves quality considerably (0-5%) in 1pass/CRF mode, especially with lower --me values and complex motion.
    Reverses the order of lowres lookahead search to improve the usefulness of the extra predictors.

commit dcb123f72958af61b1803103246cc61e2528c5cb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 16 22:44:10 2008 -0700

    Add missing free() for f_qp_offset in frame.c

commit 2042a196655aae035d1ef8164c4d4f46ce83dbee
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date:   Tue Sep 16 01:54:37 2008 -0700

    Correct misprediction of bitrate in threaded mode
    Improves bitrate accuracy in cases with large numbers of threads.
    Loosely based on a patch by BugMaster.

commit 7eaff1792dd1064ff607fec47d0d7d91fdc62641
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date:   Tue Sep 16 01:53:02 2008 -0700

    Fix a case in which VBV underflows can occur
    Fix a potential case where a frame might be initially allocated too low a QP, which would then have to be raised a low during row-based ratecontrol.
    In some cases, this could even produce VBV underflows in 2pass mode.

commit 90220ef752a8f2de2f7d53bb266e64ba803bb09b
Author: Panagiotis Issaris <takis@issaris.org>
Date:   Mon Sep 15 20:47:50 2008 +0200

    Use correct format specifier for uint64_t

commit a92bbc2325942d2ceab2ab043727f5943a33bd64
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 16 00:31:26 2008 -0700

    Cache motion vectors in lowres lookahead
    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.

commit f4736691f1052fbe32288a5fd87abce672c7b32f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 15 12:22:48 2008 -0700

    Fix regression in b-adapt patch: encoder_open failed for multipass encodes without bframes.

commit cbdaeb04ec128db18fcdb7480d81785fa7f4f371
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 15 10:53:29 2008 -0700

    Stop SAR in y4m input from overriding --sar on commandline

commit ead885761b88312acf2b7b2b93f35632b8b5b518
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Sep 15 02:24:12 2008 -0600

    hadamard_ac for psy-rd
    c version is 1.7x faster than satd+sa8d+sad
    ssse3 version is 2.3x faster than satd+sa8d+sad

commit abe641635e9dc1209af4e201f9308edd33fe3096
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 14 21:36:45 2008 -0700

    Psychovisually optimized rate-distortion optimization and trellis
    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.

commit 9818865c1f5eccbc04fb51f062cb1b3abff02db0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Sep 14 18:18:15 2008 -0700

    Add optional more optimal B-frame decision method
    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).

commit 173b40c276ee187de31ef630fd207a62de1b2cc7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Sep 13 14:03:12 2008 -0700

    Move adaptive quantization to before ratecontrol, eliminate qcomp bias
    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!

commit 869d5e4146a669f73d8a5ca07b3c04235fda0514
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 9 23:51:17 2008 -0700

    Fix crash when using b-adapt at resolutions 32x32 or below.
    Original patch by BugMaster, but was mostly rewritten in order to make b-adapt actually *work* at such resolutions, not merely stop crashing.

commit bb11e37f87fe53633f531bd3b9d331f987852ed3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 9 23:12:20 2008 -0700

    Add title-bar progress indicator under WIN32
    Also add bitrate-so-far output when piping data to x264 (total frames not known)
    Patch mostly by recover from Doom9.

commit 3d2983da7bbdbcfa08b12252ab71b0bf19a9ce26
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Sep 5 23:14:23 2008 -0700

    Revert part of r963
    In some rare (but significant) cases, the optimized nal_encode algorithm gave incorrect results.

commit e48a952cb74741fbf13d0ec352906dc2f3a61e4b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 4 20:13:38 2008 -0700

    Predict 4x4_DC asm
    Also remove 5-year-old unnecessary #define that reduced speed unnecessarily under MSVC-compiled builds

commit d21665d886638b08862e41bc68ea62472a646ca1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Sep 4 00:43:54 2008 -0700

    Faster NAL unit encoding and remove unused nal_decode
    Small speedup at very high bitrates

commit e0d7f9e53f847909574b603a3e725dddb8154574
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 3 22:12:23 2008 -0700

    CAVLC cleanup and optimizations
    Also move some small functions in macroblock.c to a .h file so they can be inlined.

commit 954117a7127fbf50540891f9c97ebe7c607be736
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 3 21:43:06 2008 -0700

    Faster avg_weight assembly
    Unrolling the loop a bit improves performance

commit f4d733a90136fe28b9a9a4c7efdce71c0446aeb5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 3 15:35:22 2008 -0700

    Faster H asm intra prediction functions
    Take advantage of the H prediction method invented for merged intra SAD and apply it to regular prediction, too.

commit b0c599be2502bbb97266a5e7a971d7dc485e2596
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 3 15:32:16 2008 -0700

    Add merged SAD for i16x16 analysis
    Roughly 30% faster i16x16 analysis under subme=1

commit f6229465eb1307ab7250c8faa350887b7b03598c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Sep 3 15:15:17 2008 -0700

    Add sad_aligned for faster subme=1 mbcmp
    Distinguish between unaligned and aligned uses of mbcmp
    SAD_aligned, for MMX SADs, uses non-cacheline SADs.

commit 7ce0f2c74ef4890138dddd13c41163baf5df3ac6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Sep 2 11:49:55 2008 -0700

    Improve progress indicator
    Show average bitrate so far during encoding
    Decrease update interval for longer encodes (max of 10 frames encoded between updates)

commit 7b71d586bce87181a4978ee3f8eb775b0481f6d4
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Sep 1 10:35:41 2008 -0700

    Fix speed regression in r951
    Row SATDs are only necessary in VBV mode, so don't need to be checked if VBV is off.

commit d4265bb3976dea84ae582cc8d96fe69a72d2332d
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date:   Sun Aug 31 20:55:50 2008 -0600

    zigzag asm

commit 6b33ca95bf3dfb67014655de4d28304beb34bb61
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sun Aug 31 21:46:31 2008 +0200

    fix SOFLAGS used when building gtk frontend
    patch by Markus Kanet %darkvision A gmx P eu%

commit 3727f2b46abd4821c4deea415eeafa42da898eb0
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 20 20:56:56 2008 -0600

    remove the distinction between itex and ptex
    (changes 2pass statsfile format)

commit 088631894e19e9a761f80c952e78f1a10f450506
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 20 20:51:39 2008 -0600

    hardcode the ratecontrol equation, and remove the rceq option

commit 445d87ec5188aa7f6303e0dcf1c943b80ed6c933
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Aug 27 13:14:36 2008 -0400

    Fix some uses of uninitialized row_satd values in VBV
    Resolves some issues with QP51 in I-frames with scenecut

commit 3c3dc3cde75e72b7c212a9a9ddd623ef8a617e41
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 26 14:51:29 2008 -0400

    Activate trellis in p8x8 qpel RD
    Also clean up macroblock.c with some refactoring
    Note that this change significantly reduces subme7+trellis2 performance, but improves quality.
    Issue originally reported by Alex_W.

commit 60c4f7e359a9de86f79f04039a84b3736a38ef55
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date:   Mon Aug 25 10:50:45 2008 -0400

    Improve VBV accuracy
    Don't use the previous frame's row SATD as a predictor if it is too different from this frame's row SATD.

commit 9d4d168bb484c2a27e9f4b8f5eb360a00a1cf426
Author: Guillaume Poirier <gpoirier@macbook-pro-de-guillaume-poirier.local>
Date:   Fri Aug 22 21:05:37 2008 +0200

    improve generation of Darwin libraries
    Patch by vmrsss %vmrsss A gmail P com%

commit af82aae3649ba73b4d6bf380fb58ba00527d44d7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 21 21:23:08 2008 -0400

    Fix compilation in gcc 3.4.x (issue in r946)
    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.

commit e3a06225cea141b6eef8fface6ee2be5fdf2abec
Author: Loic Le Loarer <lll+vlc@m4x.org>
Date:   Thu Aug 21 04:19:24 2008 -0600

    shut up various gcc warnings

commit 82efeea14c5fd03a6ed9c0b8eaa594e5d9407fce
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Aug 21 04:15:49 2008 -0600

    fix a crash with invalid args and --thread-input (introduced in r921)

commit 36caec420e52767e61d49b84fe3bc0748d2f461c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 20 05:36:32 2008 -0600

    drop support for x86_32 PIC.

commit bff4dbace4256478381c66e4e58cdb4fb3d800cb
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Aug 19 01:55:57 2008 -0600

    use permute macros in satd
    move some more shared macros to x264util.asm

commit fd5cc6d0a007a4d9c2b8e09215854d2c742fb07f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 20 20:32:13 2008 -0600

    cosmetics

commit ae8da3e5c85562d1018b9f85c601884022f070a3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 20 19:00:52 2008 -0600

    r940 broke threads

commit 2cdc944ab6b231b98e326ff0526c6bd9b69faa99
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Aug 20 13:28:15 2008 -0400

    Cleanups in macroblock_cache_save/load
    A bit more loop unrolling, and moving some constant code to the global init function

commit bae10fe0da35b61883bc2bfa8514396633136093
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Aug 19 14:18:24 2008 -0600

    Deblocking code cleanup and cosmetics
    Convert the style of the deblocking code to the standard x264 style
    Eliminate some trailing whitespace

commit 9881ffdf482017798ab0067f4f894ab53c18e626
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Aug 18 23:03:37 2008 -0600

    4% faster deblock: special-case macroblock edges
    Along with a bit of related code reorganization and macroification

commit d994e0bca73aab306eb41f84483b9e1a36feb9c7
Author: David Pethes <imcold@centrum.sk>
Date:   Sat Aug 16 09:43:26 2008 -0600

    Add dedicated variance function instead of using SAD+SSD
    Faster variance calculation

commit 7c35ae4abafb8babf1d5456f967920a38d5b572f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Aug 15 03:04:28 2008 -0600

    6% faster deblock: remove some clips, earlier termiantion on low qps.

commit c6456de1be0008836e9891446cc924f773863cea
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Aug 14 19:31:42 2008 -0600

    Faster deblocking
    Early termination for bS=0, alpha=0, beta=0
    Refactoring, various other optimizations
    About 30% faster deblocking overall.

commit fd1de69b8054ef718b52f5ae1520267a5e5402e8
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Aug 2 08:19:50 2008 -0600

    asm cosmetics

commit 4b24e98d58ae597ab832852f76ea2795080fa4fc
Author: Daniel Vergien <daniel.vergien@rrz.uni-hamburg.de>
Date:   Wed Aug 6 08:10:53 2008 -0600

    yet another posix-emulating define on solaris

commit ad47d25fe0d6fc4e852f219477e80cbc2cc381ce
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date:   Wed Aug 6 07:45:05 2008 -0600

    update msvc projectfile

commit 26600fe260969e371766f261b53d34c904526259
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Aug 6 07:34:42 2008 -0600

    drop support for msvc6

commit 91d865c17da30a27cf934179d30eb8efaa25e5d0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 9 09:36:04 2008 -0600

    Prevent VBV from lowering quantizer too much
    This code seemed to act up unexpectedly sometimes, creating a situation where in 1-pass VBV mode, a frame's quantizer would drop all the way to qpmin and then shoot back upwards to qpmax, causing serious visual issues.
    This change may decrease bitrate in VBV mode, but that is preferable to the artifacting produced by this code.

commit 245833c3f6c6f247a097b49fbc452d2ddce93b10
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Aug 9 09:34:37 2008 -0600

    Improve subme7 at low QPs and add subme7 support in lossless mode

commit 4816918fb7526aed96d9cd94c294b4f708a5f266
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Jul 30 22:35:20 2008 -0600

    cosmetics: merge x86inc*.asm

commit d1fe0938e588fd2fb37fe4b6fc97d458ae6944a5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 30 15:29:46 2008 -0600

    Add missing x264util.asm

commit e5eeedc50570a564c3bd00eeabd857feff324158
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 30 15:28:21 2008 -0600

    Basic sanity checking of qpmax/qpmin options

commit 9e864aa0f819db25bf97ff8881041ba3e4d911f3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 30 14:42:29 2008 -0600

    Fix regression in r922
    set the chroma DC coefficients to zero for residual coding in qpel-rd
    fix C99ism

commit c51c761fdfed0b72e75754311d9eadb457306e84
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date:   Tue Jul 29 21:36:01 2008 -0600

    Refactor asm macros part 2: DCT

commit 90b30e6ef1780e9199b584b783689c82f7c7ec72
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date:   Tue Jul 29 21:26:58 2008 -0600

    Refactor asm macros part 1: DCT

commit 4e7f5cb0b486a616660e39e32efdd4700b3b379a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 29 17:08:38 2008 -0600

    Improve intra RD refine, speed up residual_write_cabac
    a do/while loop can be used for residual_write, but i8x8 had to be fixed so that it wouldn't call residual_write with zero coeffs
    proper nnz handling added to cabac intra rd refine
    chroma cbp added to 8x8 chroma rd
    cbp was tested, but wasn't useful

commit c761eb0b9f2c032503bed86118d57d618cfefece
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 29 13:42:41 2008 -0600

    Fix a few more minor memleaks

commit 8c8acae0e483b8b048bee3cae8d5539cfbeb0a0c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jul 25 18:14:31 2008 -0600

    stats summary: print distribution of numbers of consecutive B-frames

commit cf466eb47e1cd82d3e2114cefdf2f2d16950ae77
Author: Loic Le Loarer <lll+vlc@m4x.org>
Date:   Fri Jul 25 16:08:32 2008 -0600

    add interlacing to the list of stuff checked by x264_validate_levels

commit 91fe97b6c7655fdf3109fb0d1a6404bb36d7a6cd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 24 07:58:50 2008 -0600

    Fix C99-ism in r907

commit 244f9bef20341d230501dbe7e09a80004d0c0dbb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 17 18:17:22 2008 -0600

    Faster temporal predictor calculation
    Split into a separate commit because this changes rounding, and thus changes output slightly.

commit aa0e6277769b3fedb77d1cb8efa43f9c957646c0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 17 07:55:24 2008 -0600

    Align lowres planes for improved cacheline split performance

commit 14046ae09f91272751f3df4d70fb0268321ee557
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Jul 15 20:16:16 2008 -0600

    autodetect level based on resolution/bitrate/refs/etc, rather than defaulting to L5.1
    if vbv is not enabled (and especially in crf/cqp), we have to guess max bitrate, so we might underestimate the required level.

commit fee2f2ce3cda8e39cc4c123afa726933b6b9b877
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jul 17 20:25:03 2008 -0600

    fix bs_write_ue_big for values >= 0x10000.
    (no immediate effect, since nothing writes such values yet)

commit 64848ffdfa740f03948d6860c1d49adc6c5b4f7c
Author: BugMaster <BugMaster@narod.ru>
Date:   Wed Jul 16 11:54:51 2008 -0600

    Fix lossless mode borked in r901

commit 9c5e557c5544690b22f61614fae9b516c7e53ba1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jul 12 14:37:58 2008 -0600

    Relax QPfile restrictions
    Allow a QPfile to contain fewer frames than the total number of frames in the video and have ratecontrol fill in the rest.
    Patch by kemuri9.

commit 8a440db9296cf374b0599313aa5876c22c98524b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Jul 12 14:10:38 2008 -0600

    Limit MVrange correctly in interlaced mode
    Bug report by Sigma Designs, Inc.

commit 0976ead3dd6641d88de51dbbdfd82f8d3079a458
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jul 11 22:53:27 2008 -0600

    Fix bug with PCM and adaptive quantization
    In rare cases CABAC desync could occur, causing bitstream corruption

commit 21ee1224f2d939ec716627b4db43d3023f18415c
Author: BugMaster <BugMaster@narod.ru>
Date:   Fri Jul 11 16:00:02 2008 -0600

    Fix memory leak upon x264 closing
    Doesn't affect the CLI, but potentially important for programs which call x264 as a shared library.

commit 8cd5d60fcc23edcbdb97a190d8ac926db4161eb1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jul 11 15:45:54 2008 -0600

    Fix compilation on PPC systems (borked in r903)
    Bigendian systems didn't have endian_fix32 defined

commit 7f67bb47de843974fd01f090c5ac99c99cd8f1f1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jul 11 14:16:18 2008 -0600

    Add L1 reflist and B macroblock types to x264 info
    Also remove display of "PCM" if PCM mode is never used in the encode.
    L1 reflist information will only show if pyramid coding is used.

commit ceb2df9ddf03e7eb21bdc81748c7b9978ea64085
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 10 08:36:45 2008 -0600

    Fix and enable I_PCM macroblock support
    In RD mode, always consider PCM as a macroblock mode possibility
    Fix bitstream writing for PCM blocks in CAVLC and CABAC, and a few other minor changes to make PCM work.
    PCM macroblocks improve compression at very low QPs (1-5) and in lossless mode.

commit ca9c628dc66e51f2aabb70298b150dc66f3e4bd2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jul 4 21:03:26 2008 -0600

    de-duplicate vlc tables

commit 3d2b0006a80fca9a8ddad9d0769fa55517fdfcd6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jul 4 18:56:30 2008 -0600

    faster ue/se/te write

commit 8951797a04c4069e1926b5c4bcd2c39eb3b3a266
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jul 4 18:32:32 2008 -0600

    faster bs_write

commit 58ffd4ea367732710ef8303c8a7b5f185623bb85
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jul 3 00:37:16 2008 -0600

    cosmetics in ssd asm

commit 58d7d06f919fa38d4c62acaec1858be6d77f4bab
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jul 6 12:59:15 2008 -0600

    Various optimizations and cosmetics
    Update AUTHORS file with Gabriel and me
    update XCHG macro to work correctly in if statements
    Add new lookup tables for block_idx and fdec/fenc addresses
    Slightly faster array_non_zero_count_mmx (patch by holger)
    Eliminate branch in analyse_intra
    Unroll loops in and clean up chroma encode
    Convert some for loops to do/while loops for speed improvement
    Do explicit write-combining on --me tesa mvsad_t struct
    Shrink --me esa zero[] array
    Speed up bime by reducing size of visited[][][] array

commit a9af9425820cfba99ae4b378c33c4fee4e99b2ce
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jul 6 11:15:19 2008 -0600

    Resolve floating point exception with frame_init_lowres mmx
    In some cases, the mmx version of frame_init_lowres could leave the FPU uninitialized for use in ratecontrol, resulting in floating point exceptions.
    Since frame_init_lowres is such a time-consuming function, an emms was just put at the end, since it costs almost nothing compared to the total time of frame_init_lowres.

commit f8428ed08f6fdb1f7a66be1b2ddc4213792fc49c
Author: Eric Petit <eric.petit@lapsus.org>
Date:   Fri Jul 4 11:31:32 2008 +0200

    Update my email address

commit 6b3087c7b5ac20dd8631eb8e3566c8bceee4643a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jul 3 20:05:00 2008 -0600

    Update file headers throughout x264
    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

commit 79bd5994122b7647b75de057991f3b480d402993
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 2 20:59:24 2008 -0600

    denoise_dct asm

commit 65df9ebc10338d8aa50f0c9470d3180a424d2df7
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Jul 2 20:55:10 2008 -0600

    cosmetics in permutation macros
    SWAP can now take mmregs directly, rather than just their numbers

commit 16b8f79bb6825053b6dd0eebb1d24c1bdf112fbb
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jul 2 10:43:57 2008 -0600

    Fix bug in adaptive quantization
    In some cases adaptive quantization did not correctly calculate the variance.
    Bug reported by MasterNobody

commit 3440cf193fc13e558d2c6b98024d59e95a7b2774
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Jun 29 00:00:03 2008 -0600

    lowres_init asm
    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.

commit 1c8f807054a0308482d53d4c58ba1d5f5d2ae263
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jul 1 23:42:39 2008 -0600

    Optimizations and cosmetics in macroblock.c
    If an i4x4 dct block has no coefficients, don't bother with dequant/zigzag/idct.  Not useful for larger sizes because the odds of an empty block are much lower.
    Cosmetics in i16x16 to be more consistent with other similar functions.
    Add an SSD threshold for chroma in probe_skip to improve speed and minimize time spent on chroma skip analysis.
    Rename lambda arrays to lambda_tab for consistency.

commit ad1d7a4a585bc7f995ced5152557a4f5306275bf
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date:   Thu Jun 26 21:09:55 2008 -0600

    some asm functions require aligned stack. disable these when compiling with msvc/icc.

commit 2ca45934d79a62c1c04771c98eb3ee1d119cdd7a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 24 15:27:41 2008 -0600

    Move bitstream end check to macroblock level
    Additionally, instead of silently truncating the frame upon reaching the end of the buffer, reallocate a larger buffer instead.

commit a55f1c31d0da2e0bf04916e7f13813c8e902cfd1
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 24 12:23:50 2008 -0600

    Convert NNZ to raster order and other optimizations
    Converting NNZ to raster order simplifies a lot of the load/store code and allows more use of write-combining.
    More use of write-combining throughout load/save code in common/macroblock.c
    GCC has aliasing issues in the case of stores to 8-bit heap-allocated arrays; dereferencing the pointer once avoids this problem and significantly increases performance.
    More manual loop unrolling and such.
    Move all packXtoY functions to macroblock.h so any function can use them.
    Add pack8to32.
    Minor optimizations to encoder/macroblock.c

commit 2c597171d5126c3ccae7546f6699d6c4d8ec5e3a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jun 12 03:00:23 2008 -0600

    mc_chroma_sse2/ssse3

commit cb29306fabf20ae4935906f18ed7869afcf837c3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jun 12 08:43:41 2008 -0600

    checkasm --bench=function_name

commit 22d3c0409deec7601292c56c7cd0a23427dbc107
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Jun 12 01:39:22 2008 -0600

    interleave psnr/ssim computation with reference frame filtering, to improve cache coherency

commit 107553614c9ef5a94ba67bbc4361d709a8f91836
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jun 15 11:59:25 2008 -0600

    Add more inline asm and a runtime check for MMXEXT support
    x264 will now terminate gracefully rather than SIGILL when run on a machine with no MMXEXT support.
    A configure option is now available to build x264 without assembly support for support on such old CPUs as the Pentium 2, K6, etc.

commit 63657b5a1fe05034846631377fbd584fd3d5def6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jun 15 11:51:36 2008 -0600

    Use aligned memcpy for x264_me_t struct and cosmetics

commit 23132cb6b0e18f3cf8e1f73a729ea65f1095dda0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Jun 15 11:50:17 2008 -0600

    Cosmetics and loop unrolling
    GCC is not very good at loop unrolling in cases where it can perform constant propagation, so the unrolling unfortunately has to be done manually.

commit cfaac5c2494bab44ba0b034aff448c4fb27beb1c
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jun 12 09:17:49 2008 -0600

    Fix regression in 64-bit in r882
    i_mvc needs to be 64-bit when used with a 64-bit memory pointer

commit 11ae289c685bf901bddb121910c6c50f57625f98
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jun 12 08:09:22 2008 -0600

    More tweaks to me.c
    Added inline MMX version of UMH's predictor difference test
    Various cosmetics throughout me.c
    Removed a C99-ism introduced in r878.

commit e098505c3329ebacdb479b40969fa22502e2091f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 11 18:23:00 2008 -0600

    Fix regression in r736
    r736 added intra RD refinement to B-frames; however, it is possible for subme=7 to be used without b-rdo.
    This means intra RD isn't run, and therefore it is possible for intra chroma analysis to not have been run, since update_cache was never called for an intra block, and chroma ME is not required even at subme=7.
    r801, which removed a memset, made this worse because previously the chroma prediction mode was at least initialized to zero; now it was not initialized at all.
    Therefore, --no-chroma-me, --subme 7, and no --b-rdo had the potential to crash.
    This change restricts intra RD refinement to only be run when --b-rdo is enabled (sensible to begin with), thus preventing a crash in this case.

commit 2389de25ff7fe6f84c9c885578c0fbaa6b656f4a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 10 21:37:57 2008 -0600

    Fix regression in r850
    Bug resulted in rare incorrect chroma encoding

commit 3464b0e7b5c6df009c1959f73966b9666f4949d0
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date:   Tue Jun 10 18:40:52 2008 -0600

    Cosmetics in VBV handling

commit a95ecfdf6b5bf7b9ecb23901f68a3f6f89fa55b8
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Jun 10 18:34:46 2008 -0600

    Tweaks and cosmetics in me.c
    Use write-combining for predictor checking and other tweaks.

commit c74a8e29d4ed7f0ca3887ccc99ab02a4661f4bed
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 6 14:59:10 2008 -0600

    Partially inline trellis quantization
    Inlining trellis into the 4x4/8x8 trellis wrappers increases trellis speed by about 5-10% through constant propagation.

commit 82ea3a45f80de8e18e41b6013ed8f54090203dbe
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 6 12:32:57 2008 -0600

    Various cosmetic changes.

commit 8a74b3fdfd2004dc2788660ba7ace5aba32d013b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Jun 6 22:57:33 2008 -0600

    avg_weight_sse2

commit 86c70b0fccc46752e03d3ed7fc5733dab31b5a41
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jun 6 23:31:22 2008 -0600

    many changes to which asm functions are enabled on which cpus.
    with Phenom, 3dnow is no longer equivalent to "sse2 is slow", so make a new flag for that.
    some sse2 functions are useful only on Core2 and Phenom, so make a "sse2 is fast" flag for that.
    some ssse3 instructions didn't become useful until Penryn, so yet another flag.
    disable sse2 completely on Pentium M and Core1, because it's uniformly slower than mmx.
    enable some sse2 functions on Athlon64 that always were faster and we just didn't notice.
    remove mc_luma_sse3, because the only cpu that has lddqu (namely Pentium 4D) doesn't have "sse2 is fast".
    don't print mmx1, sse1, nor 3dnow in the detected cpuflags, since we don't really have any such functions. likewise don't print sse3 unless it's used (Pentium 4D).

commit 2998b17a64cb41ecf3389cc9f5a44c6f07620487
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jun 6 23:30:37 2008 -0600

    enable ssse3 phadd satd on Penryn.

commit 0591b7a64b6ed0043ca65781100cae6887db8a2f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Jun 6 22:59:37 2008 -0600

    benchmark most of the asm functions (checkasm --bench).

commit 100d067b75ef8b27c288917b3af763fe433af624
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Jun 5 11:32:05 2008 -0600

    Cosmetic: fix C99-ism

commit c98aab086a2d8f99c53b501ec165c2a804d49725
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Jun 4 21:28:48 2008 -0600

    Use a gaussian window for cplxblur
    Cplxblur was originally intended to use a gaussian window, but in its current form did not.  This change provides a tiny improvement to 2pass ratecontrol.

commit ea2648b34da352de8c2e52aa657c83bf28ec0f21
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Jun 2 09:47:50 2008 -0600

    cosmetics

commit 601b46ebb444c5e5e27fe7684e7507417a623747
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Jun 2 09:40:49 2008 -0600

    nasm compatible NX stack

commit c4c85baeb5f374e9e1ca9b32954d5a4974cef043
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Jun 2 08:57:59 2008 -0600

    CQP is incompatible with AQ

commit ba3ac82d860cbd72e146e257d36c571c2d66acbc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 24 13:10:21 2008 -0600

    memzero_aligned_mmx

commit 02a04f2d03e80be3f66bb76fd1bc775216b0d37c
Author: BugMaster <BugMaster@narod.ru>
Date:   Sat May 24 01:09:07 2008 -0600

    binmode stdin on mingw, not just msvc

commit f88d09450264d597e7b08f83993bed95ba1f7cfa
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri May 23 21:22:29 2008 -0600

    omit redundant mc after non-rdo dct size decision, and in b-direct rdo

commit 9a9d39a568cf7a9486cc04014e22a4fc99fc0b7f
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 9 16:46:51 2008 -0600

    allow fractional CRF values with AQ.

commit 26088fc4526d329a12296b862f10c85fb7801d2f
Author: Noboru Asai <noboru.asai@gmail.com>
Date:   Mon Jun 2 09:12:29 2008 -0600

    fix some uninitialized partitions in rdo

commit 7331ea4e381898421a1a908ed57f73126faacd36
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date:   Mon Jun 2 12:53:01 2008 -0600

    2-pass VBV support and improved VBV handling
    Dramatically improves 1-pass VBV ratecontrol (especially CBR) and provides support for VBV in 2-pass mode.  This consists of a series of functions that attempts to find overflows and underflows in the VBV from the first-pass statsfile and fix them before encoding.
    1-pass VBV code partially by Dark Shikari.

commit c415d98820c96b8eb489736b1c9ed7c5927b077f
Author: Alexander Strange <astrange@ithinksw.com>
Date:   Mon Jun 2 12:16:51 2008 -0600

    Fix noise reduction in threaded mode.
    Previously enabling noise reduction with threads had no effect.
    Note that this is not an optimal solution; each thread still tracks noise reducation separately (unlike in single-threaded mode).

commit ce13bb6e8108657599433031df9c260c9f81b49d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue May 20 20:15:41 2008 -0600

    fix a crash on win32 with threads.
    r852 introduced an assumption in deblock that the stack is aligned.

commit 0903472f2e1bba9eeb6bc54f70747d037a5a6cf9
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue May 20 03:58:08 2008 -0600

    remove nasm version check. a feature check is all that's needed.
    silence stderr in yasm version check.

commit d86d4bd394fa7ef671f1a914b45fc6517090aa9f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun May 18 08:33:34 2008 -0600

    cosmetics in cabac

commit bd6ce404c3c4c51b0133b8c1a3ebeeb4b60265c6
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun May 18 07:14:28 2008 -0600

    faster residual_write_cabac

commit 5c257938de9e0017762395d63925a9747a0ff6e6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun May 18 06:23:57 2008 -0600

    change DEBUG_DUMP_FRAME to run-time --dump-yuv

commit a50d364ce947f9943458ca70ec6bf26f9e24475f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat May 17 03:39:59 2008 -0600

    x264_median_mv_mmxext
    this is the first non-runtime-detected use of mmxext, but it has to be inlined

commit 6f74cfa72249651c71acbc83b473e581f202e18c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Apr 20 03:18:19 2008 -0600

    factor duplicated code out of deblock chroma mmx

commit 1451b1285b37e54209c2216a7eab6f47ed2a0abd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 15 17:52:32 2008 -0600

    deblock_luma_intra_mmx

commit e11ef38d38d4c83c1788b9be53021239133e348f
Author: vmrsss <vmrsss@gmail.com>
Date:   Sat May 17 00:50:22 2008 -0600

    write aspect ratio in mp4

commit 18a1d7eed0d0131d3e728d39d1c1cc81c519e1f7
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 15 22:44:12 2008 -0600

    omit delta_quant in i16x16 blocks with no residual
    (all other block types were already covered, but i16x16 cbp is special)

commit 911904cabc6f423ad47a057a0bcdf4e94d271736
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 15 06:01:01 2008 -0600

    explicit write combining, because gcc fails at optimizing consecutive memory accesses

commit b9073299fd9dbc116c0c47ddba925162fe0d1f83
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 15 05:41:43 2008 -0600

    force unroll macroblock_load_pic_pointers
    and a few other minor optimizations

commit 76c9f3dbcb15013efd54b9ee87be5ab32e1560a0
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu May 15 05:14:53 2008 -0600

    quant_2x2_dc_ssse3

commit fcee08ae4a37ed51ac09277805ec9e0b9d96cbb5
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat May 17 00:47:31 2008 -0600

    r836 borked lossless cabac nnz

commit 9386865f979a21d2a1000b77ac13cc51f16d7fcd
Author: Henry Bent <hbent@cs.oberlin.edu>
Date:   Wed May 7 19:49:14 2008 -0600

    use elf instead of a.out on netbsd

commit ee0c7dcd7d3bd3fc33ebc910453c968c24c88ebf
Author: Ning Xin <nxin2000@gmail.com>
Date:   Wed May 7 17:18:44 2008 -0600

    fix x264_realloc when not using libc realloc.

commit 5e103026a9c1661c3743a851b4fe928982bb0fb9
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon May 5 16:28:24 2008 -0600

    don't pretend to support win64. remove all related code.
    it hasn't worked since probably some time in 2005, and won't ever be fixed unless someone steps up to maintain it.

commit 97fc930ef25741c504f91b7929d46915cc3e245b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon May 5 16:25:19 2008 -0600

    cosmetics: replace last instances of parm# asm macros with r#

commit 1b75bd4cdea04d70491331743d7506980001ece5
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Apr 28 03:12:29 2008 -0600

    remove DEBUG_BENCHMARK

commit b55625d5952f8a9a163b4b93699bdafcb1c2cc29
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 27 03:10:28 2008 -0600

    faster probe_skip

commit 27c3071979593d059a0929ca7b0ad82a762626f6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 22 17:16:25 2008 -0600

    drop support for pre-SSE3 assemblers

commit 8ce08bee184f75c9d5ce1966e35de3d0eec1a916
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Apr 25 00:33:12 2008 -0600

    s/x264_cpu_restore/x264_emms/
    no point in giving it a generic name when it's not generic

commit 45cc42cc3f5155a9bcbadaaa88c828359884c85b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Apr 27 02:37:37 2008 -0600

    faster cabac_mb_cbp_luma
    ported from ffmpeg

commit 5dae513218070a3aafc7c56b097bc7ff7ae58526
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 25 21:41:40 2008 -0600

    remove some redundant nnz counts
    move some nnz counts from macroblock_encode to cavlc if cabac doesn't need them

commit a9057b503939d763a9f17111c41672bfca8beb7e
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 25 20:43:57 2008 -0600

    compute missing nnz count in subme7 cavlc

commit 5a562eb9e12ef535be3d8c956b477982707083dd
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Fri Apr 25 01:47:47 2008 -0600

    remove a division in macroblock-level bookkeeping

commit 2b3d65e7c2389fc4201dafb69422550e15ef0d85
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Apr 24 18:55:30 2008 -0600

    omit P/B-skip mc from macroblock_encode if the pixels haven't been overwritten since probe_skip

commit 2f75bcc1b74ece41ae39134719bcdefc2a6a0265
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Apr 24 05:17:04 2008 -0600

    earlier termination in SEA if mvcost exceeds residual

commit 971301a7a1c164620b3e80bcd1e2517d053213c5
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 22 04:00:24 2008 -0600

    remove void* arithmetic from r821

commit 5ca01b326a47615337a0eb6d4b25eaa53aa283bb
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Fri Apr 25 11:29:09 2008 +0200

    Fix define of illegal function identifiers (as defined in section "7.1.3 Reserved identiers" of C99 spec)

commit ef36548b728491cb5d81c24e7f48c9f216845a3d
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Fri Apr 25 10:50:48 2008 +0200

    Fix define of illegal identifier (as defined in section "7.1.3 Reserved identiers" of C99 spec) "__UNUSED__", and use the one defined in common/osdep.h, i.e. "UNUSED"
    based on a patch by Diego Biurrun

commit ee95c7fb74179d78ebf6c0fbb71af58b3ab341b6
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Thu Apr 24 14:46:11 2008 +0200

    more consistent include name (in line with other PPC includes)

commit 29ae7d14bb675c082098ac6e2ec787a1cd559e23
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Thu Apr 24 14:44:24 2008 +0200

    fix illegal identifiers in multiple inclusion guards
    patch by Diego Biurrun % diego A biurrun P de %

commit 138601d1df8c1101f74c2e3bcea66040a764314a
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Apr 22 00:38:37 2008 -0600

    AQ now treats perfectly flat blocks as low energy, rather than retaining previous block's QP.
    fixes occasional blocking in fades.

commit 15f3190277ee18b110a1825a7a98e989756659e9
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Apr 20 12:19:46 2008 -0600

    checkasm cabac

commit f892ee11a99c0b85e577e33bc1e695373b58584a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Apr 20 02:39:31 2008 -0600

    s/movdqa/movaps/g

commit d940f6e66f418e24daa16f93f649ba9a38b173ce
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Apr 20 18:25:53 2008 -0600

    --asm to allow testing of different versions of asm without recompile

commit 9b52ed57a8897f50d193b4ddbefe9fd19d234098
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Apr 12 01:40:28 2008 -0600

    copy left neighbor pixels directly from previous mb instead of main plane

commit 44361e9514344c4e4685bca45e8c55a28c3cd395
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 9 16:30:34 2008 -0600

    cacheline split workaround for mc_luma

commit d50f9cbdc47cdb20d066fe19d616e95ef9560358
Author: Guillaume Poirier <gpoirier@fili.caps-entreprise.com>
Date:   Wed Apr 16 10:46:15 2008 +0200

    add "SECTION_RODATA" before "SECTION .text" to setup the fakegot label used in macho binaries.
    This fixes compilation with --enable-pic
    Requires Yasm 0.7.0 or newer
    Patch by Dave Lee % davelee P com A gmail P com %

commit 0414d78c3c44b3be7f3340d959aaaeb73e4b017a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Apr 13 10:29:15 2008 -0600

    more hpel fixes

commit d4b7d2bca9a333cd88583a035ede864c1368c66c
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date:   Thu Apr 10 08:59:19 2008 -0600

    update msvc projectfile

commit 69172761934ee2e531fd551d00ba696ad42029d4
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Apr 11 18:48:30 2008 -0600

    r810 borked hpel_filter_sse2 on unaligned buffers

commit 761630d7f646d4ad3562e7ff55fa7c80f8dce039
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Apr 10 03:17:53 2008 -0600

    threads=auto on multicore now implies thread input, just like explicit thread numbers already did

commit c9a928bf0b3acf13287147137ea3ceee3c6c81b2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 8 20:16:50 2008 -0600

    dct4 sse2

commit b32dacbaf2294607c31ee3658c85f44b8f40722a
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Apr 8 12:19:23 2008 -0600

    faster x86_32 dct8

commit a7eec58b62c43f3417d7523a5e337f2f68602ec9
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Apr 7 10:22:03 2008 -0600

    macros to deal with macros that permute their arguments

commit 0feb9f1b088af1391603bee9da0b1f06b5fb45f6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Apr 7 08:24:40 2008 -0600

    mmx cachesplit sad of non-square sizes checked height instead of width

commit 9f0db01e173d7e98bbb711bed871b6320392f62b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Apr 4 01:07:40 2008 -0600

    sfence after nontemporal stores

commit 2487cdf92f3050830fe2b7ffc4e04cf292823e9e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Apr 2 11:22:43 2008 -0600

    simplify hpel filter asm (move control flow to C) and add sse2, ssse3 versions

commit 5cc926a4dad3b73da4458a54b194c926f91cacd3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Apr 3 20:46:36 2008 -0600

    more mmx/xmm macros (mova, movu, movh)

commit 6cf65da995c454f5d9330a1f07718ec1734f8454
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Apr 2 05:06:02 2008 -0600

    improve handling of cavlc dct coef overflows
    support large coefs in high profile, and clip to allowed range in baseline/main

commit 08b5132ff6e6a8e986b6699987b49624e4efbef3
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Mar 31 10:50:45 2008 +0200

    fix shared libs on MacOSX
    based on a patch by İsmail Dönmez

commit 457ce6a50ab44b28406d05fa290549a62a2452f4
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 31 02:27:53 2008 -0600

    typo in r803

commit decfd7b9ce0df2d89d39cf002955bce65f02c1d9
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 30 18:08:28 2008 -0600

    fix a crash on mp4 muxing with invalid params

commit dc4f40ce74c996a1e15021b82ab71ebcb8652d0b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 30 17:58:41 2008 -0600

    variance-based psy adaptive quantization
    new options: --aq-mode --aq-strength
    AQ is enabled by default

commit ae3d8b1d6b15f4d2118438dc7d9338686490cf28
Author: Zuxy Meng <zuxy.meng@gmail.com>
Date:   Sat Mar 29 18:04:23 2008 -0600

    fix naming of .dll on mingw

commit a09f8f5e3759331b4699ec50c98dea7ce20b748b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 29 17:53:36 2008 -0600

    don't distinguish between mingw and cygwin

commit 73cfc9e5b8947e4d279a63da8f18253a4c066c89
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sat Mar 29 16:27:54 2008 -0600

    remove a memset

commit 32390823a9812bc646f6e6e8416b114b31a3028e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 29 16:27:08 2008 -0600

    typo. don't evaluate rd pskip when p16x16 found ref>0.

commit bd0d9a568b826269ea131889181b57ed986699cd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 29 20:42:51 2008 -0600

    r784 borked lossless dc zigzag

commit 17e5dac11adae8af7521c95a9dd1d70549a13b64
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Mar 25 07:31:51 2008 -0600

    fix an arithmetic overflow that disabled SEA threshold after finding a mv with SAD < mvcost.

commit 2f6fd93be1cbcd18dd131ba0d46d3ad0d3e5b72b
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Tue Mar 25 16:30:04 2008 +0000

    fix hpel_filter_altivec picked up by checkasm
    Patch by Manuel %maaanuuu A gmx.net % and Noboru Asai % noboru P asai A gmail P com %

commit 5e0e058c72e6dcf0f432157b48c0b07566535fe6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Mar 25 00:59:50 2008 -0600

    faster residual

commit 261873ec7737bd4e71fdce45608ef46b0cc0472d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 24 21:31:46 2008 -0600

    nasm doesn't like align(nop) in structs

commit 4b18012311fe5e823495169ab9a911e1cb9b3907
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 24 19:25:19 2008 -0600

    reduce the size of some cabac arrays

commit e403fe9364ad1ea1cd8c3d5055759a538e97bb8b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 24 19:21:24 2008 -0600

    use cabac context transition table from trellis in normal residual coding too

commit 6ae335530efb189b00fd6f3b1b7da5eefd856473
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 24 19:12:07 2008 -0600

    rearrange cabac struct to reduce code size

commit 7255f6843c719b0d21c2c35b94eed39616075710
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Mon Mar 24 03:25:25 2008 -0600

    higher precision RD lambda
    improves quality at QP<=12.

commit 1035c63eb9ef354670c3c16f23fd3ac2bb88ec19
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 24 01:56:31 2008 -0600

    faster cabac_encode_ue_bypass

commit bf9bf7acf61da13d9cc45c35291f61e614d7414c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 23 22:14:18 2008 -0600

    cabac asm.
    mostly because gcc refuses to use cmov.
    28% faster than c on core2, 11% on k8, 6% on p4.

commit 36879873dd9a741700474d80160e98f2d9e61e5c
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 23 22:08:07 2008 -0600

    cosmetics in cabac

commit d4f9f60faf14bd1415f16dd419d1889324db3e1e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 20:25:06 2008 -0600

    inline cabac_size_decision

commit aa5391aae3c8b7327532261d1345c0434ee65ad3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 03:25:03 2008 -0600

    cosmetics in DECLARE_ALIGNED

commit 192768df4d84ac176be0ed0cc5c759e30b5328df
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 03:06:18 2008 -0600

    don't distinguish between luma4x4 and luma4x4ac

commit 36fe32ae368797be584657eed37350faa0e93e78
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 02:46:31 2008 -0600

    faster lossless zigzag

commit 170f57bf8c186427c3e160afb3db6c71e1aafabd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 03:14:33 2008 -0600

    more alignment

commit 9bdc256db55d93541de80e27e54d46b8e8c45cfe
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 01:49:52 2008 -0600

    add tesa and lossless to fprofile

commit 5a66f307ef2e71b2f1945a84f408a719ea4cc6a6
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sat Mar 22 01:46:43 2008 -0600

    cosmetics in residual_write

commit 571dda602b20b5b461f83e8d07fd3a3d9652c52b
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Mar 21 23:24:33 2008 -0600

    remove unused bitstream reader

commit 5d47436a4dbe0aa14a9da43cc9a57cf5b421539e
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Mar 21 18:58:46 2008 -0600

    cosmetics in quant asm

commit afba69a247ee3ff4ae9781cb63093529175ec135
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Mar 21 18:46:29 2008 -0600

    special case dequant for flat matrix

commit 02e610262bac2645742cfaa40d018fd43f26e859
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Fri Mar 21 00:04:46 2008 -0600

    faster dequant

commit e8448ff4a975b058524a0117fffa830e3f56a0e5
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Mar 20 22:08:07 2008 -0600

    simplify hpel_filter_c

commit 32fb497fe346d3383937a05ee99a031c13a3ac4d
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Mar 20 19:35:54 2008 -0600

    use x264_mc_copy_w16_sse2 in mc.copy, it was previously only in mc_luma

commit adfab36d395dff335c5a34d050c84ac8e7e1b470
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Mar 20 14:00:08 2008 -0600

    new ssd_8x*_sse2
    align ssd_16x*_sse2
    unroll ssd_4x*_mmx

commit e1d815e15cc62b52ed67b4fd1538aaa238c70e97
Author: Manuel <maaanuuu@gmx.net>
Date:   Thu Mar 20 13:21:16 2008 -0600

    update altivec zigzags

commit 2be14de6fc2ffa973b411f6ec022ab3292fd0772
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Mar 20 10:41:50 2008 -0600

    r768 borked cavlc

commit b6a966a3364a4d3788f4bd9023da07b869b5bbde
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Thu Mar 20 00:52:11 2008 -0600

    cosmetics in intra predict

commit 67a130f53f26ac5ecf29ee4bd0ab442e0d87fc70
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Thu Mar 20 00:31:42 2008 -0600

    faster intra predict 8x8 hu/hd

commit 3f48ce7e838aab6d0701150f93166132cb06c6a0
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Mar 19 23:43:19 2008 -0600

    reduce zigzag arrays from int to int16_t

commit 84452e50633eb7d98a2e5f55ff4c799b2bf30f32
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Mar 19 23:42:20 2008 -0600

    reduce the size of some arrays

commit f46c3bc88be70eb4ab798cba5e0da75b13038ffc
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 19 15:01:05 2008 -0600

    skip intra pred+dct+quant in cases where it's redundant (analyse vs encode)
    large speedup with trellis=2, small speedup with trellis=0 and/or subme>=6

commit 123f29a18afc120d9c6ccca1c32e8054124051b2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Wed Mar 19 14:03:34 2008 -0600

    cosmetics in asm

commit 1df5f84baf226141548948d94c84a1f3b1792c0b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 19 14:00:34 2008 -0600

    satd_4x4_ssse3

commit dcf2604a00d57c05a2def4551b75b8a08af024e3
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Wed Mar 19 13:40:41 2008 -0600

    get_ref_sse2

commit 09499759acc0adc246a63a72099fc85ca1746235
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Tue Mar 18 19:17:22 2008 -0600

    continue instead of crash when the threading mv constraint is violated.
    doesn't fix the underlying bug, but hopefully less annoying until we find it.

commit 1fc702f8fc5b7640c62f80a5574b15a9b01fdfb7
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Mar 18 18:24:01 2008 -0600

    remove remaining reference to clip1.h

commit 4c02055a87b79cf00da75456e8666d60fd1785d3
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Tue Mar 18 12:34:10 2008 -0600

    fix name mangling again.
    apparently it's not just a convention, dll build fails if you try to export a non-prefixed name.

commit 57741220cfb20e1628a1e671b83687ddaf2958fe
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date:   Mon Mar 17 15:44:40 2008 -0600

    update msvc projectfile

commit 018a6e0fefcedbe73afffff8dca310e396b6bda4
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 17 15:41:59 2008 -0600

    missing #ifdef HAVE_SSE3

commit 205d011e2e8418d7cf90fc58589238d36e941942
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 17 15:41:30 2008 -0600

    don't define offsetof since it's standard

commit 4d9499b41be91645f27a7ca01e4a5a09d041ecbd
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Mon Mar 17 01:23:35 2008 -0600

    shut up gcc warning in offsetof

commit 2c8600ea161bdf2be733b01e17974fe75a4e31d3
Author: Håkan Hjort <hakan.hjort@gmail.com>
Date:   Mon Mar 17 01:20:02 2008 -0600

    increase alignment of mv arrays

commit 91991ba67aa9a7256b4bdf8d1d9be183ec2daa2b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date:   Sun Mar 16 23:58:04 2008 -0600

    memcpy_aligned_sse2

commit ede2a6e0d305647b82b5c240c981b19f96ba40c2
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 16 22:40:43 2008 -0600

    checkasm check whether callee-saved regs are correctly saved
    x86_32 only for now since x86_64 varargs are annoying

commit 357ab3381fbe85eca5d076c1ab5f6814d2a03215
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 16 22:28:20 2008 -0600

    fix x86_32 ads which failed to preserve a register

commit 5862a17e25bc4eab46cb856b56e04f51814051db
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 16 16:34:41 2008 -0600

    fix some name mangling issues introduced by the merge

commit dafc72cc87c40d4972292d8255781fea70299650
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 16 15:30:40 2008 -0600

    remove x264_mc_clip1.
    it's wrong for sufficiently perverse inputs, and clip_uint8 is faster anyway.

commit c4680aceec03d3063cbefa5db7ab4404f32578d8
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 16 13:54:58 2008 -0600

    merge x86_32 and x86_64 asm, with macros to abstract calling convention and register names

commit 096b39036aad8d363b81e520ad13cee412b0e568
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 9 05:58:55 2008 -0600

    git compatible version script

commit 397d1bf764246716772004fe7ac8583a82c2a8a5
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 2 17:53:01 2008 -0700

    check for broken versions of yasm

commit 6e55e8a729d59130f479f22ea5d53852b1ae2e1f
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 2 17:27:38 2008 -0700

    increase the alignment of the i8x8 edge cache, needed for sse2 intra prediction.
    patch by Alexander Strange.

commit 233a760dc99fe8a6cc401b711ffb3a3c90f8a5fa
Author: Loren Merritt <pengvado@akuvian.org>
Date:   Sun Mar 2 16:12:57 2008 -0700

    .gitignore

commit 1cce7bbcecf5073b5624754d1c7cc0cdb8b65a6a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 2 03:04:07 2008 +0000

    pic macros now keep track of which register holds the GOT, so variable access doesn't have to care
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@745 df754926-b1dd-0310-bc7b-ec298dee348c

commit 01d7b8acc40243402d6d8feadecc1e4da0aa2b20
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 2 02:27:45 2008 +0000

    remove x86_64 predict_8x8_ddl_mmxext because sse2 is faster even on amd
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@744 df754926-b1dd-0310-bc7b-ec298dee348c

commit bce7d0f272db32f741353672cc35e413c8581d41
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 2 02:26:00 2008 +0000

    cosmetics in dsp init
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@743 df754926-b1dd-0310-bc7b-ec298dee348c

commit e4059f859e072ef5ac61c101897bcf67f76e27f1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 2 02:11:12 2008 +0000

    sse2 16x16 intra pred.
    port the remaining intra pred functions from x86_64 to x86_32.
    patch by Dark Shikari.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@742 df754926-b1dd-0310-bc7b-ec298dee348c

commit c34e1098fec1b950f8265680daa6d3f98d361074
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 1 13:47:05 2008 +0000

    some simplifications to mmx intra pred that should have been done way back when we switched to constant fdec_stride.
    and remove pic spills in functions that have a free caller-saved reg.
    patch partly by Dark Shikari.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@741 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9da2facd2a45c20ff4a225fbbbcba0f3ad644457
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 1 07:30:34 2008 +0000

    faster array_non_zero
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@740 df754926-b1dd-0310-bc7b-ec298dee348c

commit c32cac21f5f634398ca7135a6f8e304c9ea528b4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 1 04:33:24 2008 +0000

    x86_32 sse2 idct8
    ported from ffmpeg by Dark Shikari
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@739 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8f32196651ee0c8fa3659c84e78407602079e0f1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 1 04:13:55 2008 +0000

    checkasm: relax the threshold for floating-point ssim
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@738 df754926-b1dd-0310-bc7b-ec298dee348c

commit 56fca1c2a6a1338b28f4a1ba5cb3fbf2c6140974
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 1 04:07:44 2008 +0000

    checkasm: test idct with the range of coefficients what can really be encountered, as opposed to random numbers which might overflow.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@737 df754926-b1dd-0310-bc7b-ec298dee348c

commit 641416d827085d80887a6a1dc21161c98616b7a0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 28 14:33:42 2008 +0000

    intra_rd_refine in B-frames
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@736 df754926-b1dd-0310-bc7b-ec298dee348c

commit d4d76b9f2b3eea4fe1ec87baf3f7feed53fe27e1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 16:29:54 2008 +0000

    print average of macroblock QPs instead of frame's nominal QP
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@735 df754926-b1dd-0310-bc7b-ec298dee348c

commit ebdc49ffafe04f28381acea368c4c4926c0dfe24
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 16:16:37 2008 +0000

    update date
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@734 df754926-b1dd-0310-bc7b-ec298dee348c

commit efeb097a791e8d082f82b17378176bf954a43984
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 16:06:31 2008 +0000

    remove colorspace conversion support, because it has no business in any codec
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@733 df754926-b1dd-0310-bc7b-ec298dee348c

commit c1940b923740ef2e75dade431bc47f0c633e5af7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 14:01:40 2008 +0000

    misc fixes in checkasm
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@732 df754926-b1dd-0310-bc7b-ec298dee348c

commit ea9eaa7086e4262405b3aff047da621b6edc8814
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 13:39:09 2008 +0000

    remove a useless bit of me=umh (originally copied from JM, where it was used for something)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@731 df754926-b1dd-0310-bc7b-ec298dee348c

commit a93d7bf14049affb0ef925ba8e0f7f919693bca9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 11:50:50 2008 +0000

    fix a memleak in cqm
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@730 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6f9cb0d93cb51d19c7e50e03b2d08f570bbef087
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 11:49:16 2008 +0000

    fix a memleak in mkv muxer
    patch by saintdev
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@729 df754926-b1dd-0310-bc7b-ec298dee348c

commit fa58b842b47a5e7fd3ac91d8141e800ecdbab0c7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 11:36:11 2008 +0000

    satd exhaustive motion search (--me tesa)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@728 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2c437ce15c167def5ff0b98759bed56000d782ca
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 11:09:52 2008 +0000

    fix cabac context for nonzero delta_qp of the 2nd mb of a frame in interlaced mode
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@727 df754926-b1dd-0310-bc7b-ec298dee348c

commit c111a8e2cf2993551c859bfb8459409b0749294e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 10:32:36 2008 +0000

    fix mapping of mvs to partitions in p4x4_chroma
    patch by Noboru Asai
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@726 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3ef36bcf151b4231b2853e770c4a1f208964f046
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 10:12:24 2008 +0000

    fix mvp for b16x8 and b8x16 L1 search
    patch by Wei-Yin Chen
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@725 df754926-b1dd-0310-bc7b-ec298dee348c

commit 47ea39dc0e5df989776f7d5a78cb9033fbd72947
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 10:05:20 2008 +0000

    shave a couple cycles off cabac functions
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@724 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6cbea64acf3e6641600e7ac04789989ae61ceaf3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 09:12:39 2008 +0000

    faster and smaller x264_macroblock_cache_mv etc
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@723 df754926-b1dd-0310-bc7b-ec298dee348c

commit 573314cce458b5689aa768a4667927b5affdf0f8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 27 09:11:01 2008 +0000

    configure test for endianness
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@722 df754926-b1dd-0310-bc7b-ec298dee348c

commit 41d021e339d1ace8bbce7b3bd2cc04eea7385589
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 18 00:42:38 2008 +0000

    change the meaning of --ref: it now selects DPB size (including B-frames), rather than L0 size (which B-frames are added to)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@721 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5d3a62a22c15fc2a5a8e45a6ecf8e2745066a55b
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Jan 14 09:54:33 2008 +0000

    add / fix support for FreeBSD, based on a patch by Igor Mozolevsky % igor A hybrid-lab P co P uk %
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@720 df754926-b1dd-0310-bc7b-ec298dee348c

commit 85d88a4260abe6bd931e749a6e0a98cd37020b05
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 9 11:25:09 2008 +0000

    shut up some valgrind warnings
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@719 df754926-b1dd-0310-bc7b-ec298dee348c

commit 810c096dcb7f9b571540200a32e89b31ee964cca
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 8 18:10:51 2008 +0000

    slightly wrong memory allocation in r717, fixes a potential crash with merange>32
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@718 df754926-b1dd-0310-bc7b-ec298dee348c

commit fd9ab6cee508192fe53ffaa52d3d7586004808fa
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 6 08:15:04 2008 +0000

    convert absolute difference of sums from mmx to sse2
    convert mv bits cost and ads threshold from C to sse2
    convert bytemask-to-list from C to scalar asm
    1.6x faster me=esa (x86_64) or 1.3x faster (x86_32). (times consider only motion estimation. overall encode speedup may vary.)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@717 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9f38e6044c4e4a97af6af1dce6689a32603cf40f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 6 08:06:36 2008 +0000

    round esa range to a multiple of 4
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@716 df754926-b1dd-0310-bc7b-ec298dee348c

commit eb978d2202e2b99bdb3c73659470c0a9a312255d
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Thu Jan 3 22:24:38 2008 +0000

    use define _WIN32 instead of __WIN32__ or WIN32 defines.
    NSDN reference: http://msdn2.microsoft.com/en-us/library/b0084kay(VS.80).aspx
    Patch by BugMaster %BugMaster A narod P ru%
    Original thread:
    date: Dec 27, 2007 3:18 AM
    subject: [x264-devel] VS2008 compilation error (need of replacement __WIN32__ with _WIN32)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@715 df754926-b1dd-0310-bc7b-ec298dee348c

commit 96a59591e1190a3b4dbcbae79f9b150f09977427
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 21 01:57:14 2007 +0000

    tweak x264_pixel_sad_x4_16x16_sse2 horizontal sum. 168 -> 166 cycles on core2.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@714 df754926-b1dd-0310-bc7b-ec298dee348c

commit 22fbdf34f4b4fd6a7f7758792b63bb0db7f7c49e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Dec 20 19:24:17 2007 +0000

    fix a nondeterminism involving 8x8dct, rdo, and threads.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@713 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0d0bbedf31c8c393909454a6035500564efbafda
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Thu Dec 13 15:43:41 2007 +0000

    also test arch-specific x264_zigzag_* implementations in checkasm.c
    patch by Patch by Noboru Asai % noboru P asai A gmail P com%
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@712 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9fb4e53f4cbf65d5386da7f3321ddcaf8f5250d3
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Dec 10 22:09:13 2007 +0000

    Add AltiVec implementation of
    - x264_zigzag_scan_4x4_frame_altivec()
    - x264_zigzag_scan_4x4ac_frame_altivec()
    - x264_zigzag_scan_4x4_field_altivec()
    - x264_zigzag_scan_4x4ac_field_altivec()
    each around 1.3 tp 1.8x faster than C version
    Patch by Noboru Asai % noboru P asai A gmail P com%
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@711 df754926-b1dd-0310-bc7b-ec298dee348c

commit 795c3c1c2a4f5d4d2ef9025583a21ab400439fa6
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sun Dec 9 15:50:52 2007 +0000

    adds AliVec implementation of predict_16x16_p()
    over 4x faster than C version
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@710 df754926-b1dd-0310-bc7b-ec298dee348c

commit fec04825ea98af0420fdf11cf0a2b5a268371590
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 4 21:56:18 2007 +0000

    revert the x86_32 part of r708. elf shared libraries aren't important enough to be worth the extra lines of code to check for nasm.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@709 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2eb91cc12b9db4adb546f990f383265720a822ce
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Dec 3 01:17:23 2007 +0000

    mark asm functions as hidden
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@708 df754926-b1dd-0310-bc7b-ec298dee348c

commit b21b675b714735de723d7d2e5602e11f75644c41
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Dec 3 01:16:57 2007 +0000

    check whether ld supports -Bsymbolic before using it
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@707 df754926-b1dd-0310-bc7b-ec298dee348c

commit cda2dead4d316f2b1015a9cbb37765ad7eb57a13
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Dec 2 15:57:43 2007 +0000

    reduce the data type used in some tables. 16KB smaller exe.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@706 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4b199a95c2df54707186d3fab1b8c9511cfe0458
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 1 18:03:16 2007 +0000

    faster removal of duplicate mv predictors
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@705 df754926-b1dd-0310-bc7b-ec298dee348c

commit f72092d59eeb212bb6db98796c797b53d1f3d966
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 1 15:17:19 2007 +0000

    avoid a division in x264_mb_predict_mv_ref16x16.
    patch by Dark Shikari.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@704 df754926-b1dd-0310-bc7b-ec298dee348c

commit c0b1b1af1cc30fe9ae7ad46e5c1ccd7640ceb889
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 1 02:58:34 2007 +0000

    avoid a division in umh.
    patch by Dark Shikari.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@703 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3c9aac03ba992811e8cbddf26c76cb6de3cbdcdb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 26 11:44:37 2007 +0000

    fix a memleak in h->mb.mvr
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@702 df754926-b1dd-0310-bc7b-ec298dee348c

commit beeedbd05790c7205e046d8b36ee19b7fd3a07ea
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Nov 25 12:38:19 2007 +0000

    fix compilation as a shared library on x86_64 (regression in r696)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@701 df754926-b1dd-0310-bc7b-ec298dee348c

commit ebd03d46126b828de6cc30e7d45a6ec4f0caa1d1
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Wed Nov 21 18:30:49 2007 +0000

    add support for x86_64 on Darwin9.0 (Mac OS X 10.5, aka Leopard)
    Patch by Antoine Gerschenfeld %gerschen A clipper P ens P fr%
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@700 df754926-b1dd-0310-bc7b-ec298dee348c

commit b5c805e343923f7d12c8bb09cd64682584dc9ca6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Nov 21 11:52:19 2007 +0000

    cover some more options in fprofile. (esa, bime, cqm, nr, no-dct-decimate, trellis2)
    previously, esa was slower with fprofile than without, since gcc thought it wasn't important. now esa benefits like anything else.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@699 df754926-b1dd-0310-bc7b-ec298dee348c

commit d4493c32b2d6f1eee5b7df0026a31562665bff07
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Tue Nov 20 18:22:03 2007 +0000

    Add AltiVec implementation of x264_pixel_ssd_8x8, 3x faster than C version
    Overall speed-up: 0.7% with  --bframes 3 --ref 5 -m 7 --b-rdo
    Patch by Noboru Asai %noboru P asai A gmail P com%
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@698 df754926-b1dd-0310-bc7b-ec298dee348c

commit a2db19e6ca89f40b2523f6964832c69369a3ee29
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 20 08:53:26 2007 +0000

    limit mvs to [-512,511.75] instead of [-512,512]
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@697 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6d6092197676cf4949bff2a1e28a79aa1bbab1ea
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 20 06:07:17 2007 +0000

    avoid memory loads that span the border between two cachelines.
    on core2 this makes x264_pixel_sad an average of 2x faster. other intel cpus gain various amounts. amd are unaffected.
    overall speedup: 1-10%, depending on how much time is spent in fullpel motion estimation.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@696 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1dddea2512490c558b82888ccd7497800e5c7766
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 20 05:57:29 2007 +0000

    add cache info to cpu_detect. also print sse3.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@695 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1cab251509f48fd605616c0c2d1c769552abbc71
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 19 17:10:57 2007 +0000

    cosmetics: reorder mc_luma/mc_chroma/get_ref arguments for consistency with other functions
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@694 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4611e5ca14ba407aa7aa8e00cfeedc822a504c3a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 19 17:08:07 2007 +0000

    separate pixel_avg into cases for mc and for bipred
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@693 df754926-b1dd-0310-bc7b-ec298dee348c

commit edf284268a60110e0ce0474f0b4e3fb772c6935f
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sun Nov 18 23:58:18 2007 +0000

    add AltiVec implementation of ssim_4x4x2_core, about 4x faster than C version.
    Overall: 0.1-0.2% faster with default encoding settings
    Patch by Noboru Asai %noboru P asai A gmail P com%
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@692 df754926-b1dd-0310-bc7b-ec298dee348c

commit b9eb9117a8f028ec5b727587c823a1c2ae83509e
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sun Nov 18 23:47:41 2007 +0000

    Add AltiVec implementation ofx264_hpel_filter. Provides a 10-11% overall speed-up with default encoding options
    Patch by Noboru Asai %noboru P asai A gmail P com%
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@691 df754926-b1dd-0310-bc7b-ec298dee348c

commit 370e10918eaab9cdfb101c8cadacbd8549434558
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Nov 18 01:45:44 2007 +0000

    cosmetics in dsp function selection
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@690 df754926-b1dd-0310-bc7b-ec298dee348c

commit a6ed1528c30883cb7ee36bc6046809095cae7a1c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Nov 17 10:21:46 2007 +0000

    remove sad_pde. it's been unused ever since successive elimination replaced it.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@689 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9f6f0b25d41263d3081a21d1d9bae853a1ec8329
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Nov 16 10:27:14 2007 +0000

    cosmetics: use symbolic constants for frame padding radius
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@688 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5324ae5fc9eb5c318ad5e3136d3aca4dd4ae7831
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Nov 16 09:17:58 2007 +0000

    move hpel_filter cpu detection to a function pointer like everything else
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@687 df754926-b1dd-0310-bc7b-ec298dee348c

commit 131603a5579f5dc36388d7e1b6edf1594a2bb039
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 15 10:50:37 2007 +0000

    cosmetics: use separate variables for frame width and stride
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@686 df754926-b1dd-0310-bc7b-ec298dee348c

commit a22fe12c4358ee3bbe205cf6dfded782eedd3886
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Nov 12 20:36:33 2007 +0000

    Add AltiVec implementation of add4x4_idct, add8x8_idct, add16x16_idct, 3.2x faster on average
    1.05x faster overall with default encoding options
    Patch by Noboru Asai % noboru DD asai AA gmail DD com %
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@685 df754926-b1dd-0310-bc7b-ec298dee348c

commit ebf8b1ea0e217f05c9efede19c5cdab89ec13aab
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Nov 12 20:28:30 2007 +0000

    add AltiVec implementation of dequant_4x4 and dequant_8x8, 2.8x faster than C,
     1.01x faster than previous revision with default encoding options
    Patch by Noboru Asai % noboru DD asai AA gmail DD com %
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@684 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1d22eba0d87412862692b2ce1e85c34b89c23a9b
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Nov 12 12:47:38 2007 +0000

    Add AltiVec implementation of quant_2x2_dc,
    fix Altivec implementation of quant_(4x4|8x8)(|_dc) wrt current C implementation
    Patch by Noboru Asai % noboru DD asai AA gmail DD com %
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@683 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0fabcd46823bc8dd3f19d98f23452dba1a8b7cbc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 1 12:21:13 2007 +0000

    fix a possible nondeterminism with me=umh + threads.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@682 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7da80e549051583d23d8f503665c0fb660b695bb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 29 14:48:46 2007 +0000

    use hex instead of dia for rdo mv refinement. ~0.5% lower bitrate at subme=7.
    patch by Dark Shikari.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@681 df754926-b1dd-0310-bc7b-ec298dee348c

commit 35094bec4e0202cbdb710b98fa04ea24375531e0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Sep 24 13:37:44 2007 +0000

    port sad_*_x3_sse2 to x86_64
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@680 df754926-b1dd-0310-bc7b-ec298dee348c

commit 673ce32a59310b5494049cce140e5420128331ed
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Sep 24 11:24:28 2007 +0000

    don't overwrite pthread* namespace, because system headers might define those functions even if we don't want them
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@679 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5c49545c0277a8da1c29809118a734c461116c54
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Sep 21 20:20:22 2007 +0000

    faster 4x4 sad
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@678 df754926-b1dd-0310-bc7b-ec298dee348c

commit a6edfd669f97154571f203cfa69d634a639800ff
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Sep 20 08:10:45 2007 +0000

    fix an arithmetic overflow in trellis at high qp.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@677 df754926-b1dd-0310-bc7b-ec298dee348c

commit 463437926e73b3d18542804cbef31f277d115cc2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 15 06:34:05 2007 +0000

    implement multithreaded me=esa
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@676 df754926-b1dd-0310-bc7b-ec298dee348c

commit cde5f334121ba1cf6ae13174337ae49008c1f2a4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Sep 12 05:42:23 2007 +0000

    fix some integer overflows. now vbv size can exceed 2 Gbit.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@675 df754926-b1dd-0310-bc7b-ec298dee348c

commit d16a4da48b06671e85578ee022729bb2fb6f59c9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Sep 9 03:17:20 2007 +0000

    allow --vbv-init to take absolute values (in kbit), in addition to the previous fractions of vbv-bufsize.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@674 df754926-b1dd-0310-bc7b-ec298dee348c

commit 98494077449c4a66ed55cd5ee5a89b7c62e12dd0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Sep 7 20:40:13 2007 +0000

    remove a bashism
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@673 df754926-b1dd-0310-bc7b-ec298dee348c

commit 759620535bccdb4d872fcc3b798eb6df68c672db
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Sep 2 04:32:17 2007 +0000

    reorder headers so that largefile support is defined before the first copy of stdio
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@672 df754926-b1dd-0310-bc7b-ec298dee348c

commit 71af28517442b4388c031d1ce74fa5096beca9bf
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Aug 20 16:44:42 2007 +0000

    regression in r669: broke saving of configure args if make has to re-run configure
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@671 df754926-b1dd-0310-bc7b-ec298dee348c

commit 393daac2d7578e0a9d7d541f25026f22f62d03bc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Aug 18 01:13:22 2007 +0000

    regression in r669: --enable-shared should imply --enable-pic on some archs.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@670 df754926-b1dd-0310-bc7b-ec298dee348c

commit 113800851647deafdacc9a35ee8a1a761f1c777d
Author: Loïc Minier <lool@videolan.org>
Date:   Sun Aug 12 12:46:15 2007 +0000

    * Add a --host flag to allow overriding config.guess; this is particularly
      useful with a 64-bits kernel running a 32-bits userland to build 32-bits
      apps.
    * Normalize any host triplet into a quadruplet via config.sub.
    * Move option parsing before any use of architecture information.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@669 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3d51a5ba7966542355f0e3904f6e8319b9ba55c2
Author: Loïc Minier <lool@videolan.org>
Date:   Sun Aug 12 12:36:23 2007 +0000

    * Update config.guess.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@668 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0ea7d1b2ecb6d744c0af674e7b3b8f85eabf3aaa
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jul 17 11:24:26 2007 +0000

    mingw doesn't have strtok_r
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@667 df754926-b1dd-0310-bc7b-ec298dee348c

commit 85f2fc3252f0fae8031fa9e942577d121cb75cd1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jul 17 11:11:19 2007 +0000

    move os/compiler specific defines to their own header
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@666 df754926-b1dd-0310-bc7b-ec298dee348c

commit a18f3dab89e6786233c11723900f8b0126e1494d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jul 12 23:48:23 2007 +0000

    extend zones to support (some) encoding parameters in addition to ratecontrol.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@665 df754926-b1dd-0310-bc7b-ec298dee348c

commit d5ddf40b1ae1c267ea3f9e998d6ac1e3a4004e07
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jul 6 17:08:26 2007 +0000

    cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@664 df754926-b1dd-0310-bc7b-ec298dee348c

commit ee62378f91c3cfcc028e771b8bc998b4490cc8a1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jun 28 21:26:21 2007 +0000

    limit vertical motion vectors to +/-512, since some decoders actually depend on that limit.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@663 df754926-b1dd-0310-bc7b-ec298dee348c

commit 303175413b0f1f38d488c7decbce9d7ccb81f647
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Fri Jun 22 21:42:41 2007 +0000

    Add vertical and horizontal luma deblocking accelerated with Altivec,
    based on Graham Booker's code written for FFmpeg with slight modifications
    to re-use x264's macros
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@662 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9acd233b21bb1c0808b2f4c4c100511b3d6d45a1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 16 04:09:01 2007 +0000

    cosmetics in cpu detection
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@661 df754926-b1dd-0310-bc7b-ec298dee348c

commit 80090ccfb3493659451c21506d77dcacda6bcab2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 16 04:02:48 2007 +0000

    fix compilation without asm on x86_32 (r658 worked only on x86_64).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@660 df754926-b1dd-0310-bc7b-ec298dee348c

commit fedfacea656db5a327fba0c449fe70181539f876
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jun 10 23:46:31 2007 +0000

    exempt 1080p from the non-mod16 warning.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@659 df754926-b1dd-0310-bc7b-ec298dee348c

commit 17dd119d8275224ad7f830dcdf4a5458150fcd31
Author: Alex Izvorski <aizvorski@gmail.com>
Date:   Tue Jun 5 18:38:31 2007 +0000

    allow compiling without yasm/nasm on x86 and x86-64 platforms
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@658 df754926-b1dd-0310-bc7b-ec298dee348c

commit 26bed72be4941353b4c79eddf500ce39aaf75490
Author: Alex Izvorski <aizvorski@gmail.com>
Date:   Tue Jun 5 18:32:13 2007 +0000

    updated MS VC8/VC7 build, patch by Gabriel Bouvigne
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@657 df754926-b1dd-0310-bc7b-ec298dee348c

commit a35548661f5f50c22516147b9b164f25d44a69db
Author: Alex Izvorski <aizvorski@gmail.com>
Date:   Sat May 26 03:13:08 2007 +0000

    replace alloca with malloc everywhere. per manpage, use of alloca is discouraged. this may have a minor effect on the speed of ssim and esa, but that appears too small to measure.
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@656 df754926-b1dd-0310-bc7b-ec298dee348c

commit ffa4e76d4573303271c768f6ec03c21f0f2f4f02
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 2 21:33:43 2007 +0000

    require a ratecontrol method to be specified, it no longer defaults to cqp=26.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@655 df754926-b1dd-0310-bc7b-ec298dee348c

commit b5ef788a7c6d2c7ba2cdb664ffd5544603979495
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 23 08:34:52 2007 +0000

    fix nnz computation in cavlc+8x8dct+deblock. (regression in r607)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@654 df754926-b1dd-0310-bc7b-ec298dee348c

commit 08b4f6956135d54693b4e618f58fd7f68e654473
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 23 07:09:30 2007 +0000

    fix the computation of bits used for vbv. (regression in r651)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@653 df754926-b1dd-0310-bc7b-ec298dee348c

commit fe85aca1c58ef4975aee8e6e32b4d57624960367
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Apr 22 03:37:56 2007 +0000

    c89 compile fix
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@652 df754926-b1dd-0310-bc7b-ec298dee348c

commit b3076aef6c40f10260ef7386e3f2e028997da5d5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Apr 21 11:32:34 2007 +0000

    cabac: use bytestream instead of bitstream.
    35% faster cabac, 20% faster overall lossless, ~1% faster overall at normal bitrates.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@651 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8300d3344b73612ec449a2c2ee259c654fef9d0a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 11 22:21:15 2007 +0000

    remove the restriction on number of threads as a function of resolution (it was wrong anyway in the presence of B-frames), and raise the max number of threads in general (though more will have to be done before it can really scale to lots of cores).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@650 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8ecf4b912011e9a097d570086553f4685d5dddc5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 10 22:37:18 2007 +0000

    tweak ssse3 quant
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@649 df754926-b1dd-0310-bc7b-ec298dee348c

commit c266480eb24e7886877f52436056e99fced02cdc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Apr 7 04:53:16 2007 +0000

    change some tables from int to int8_t. 13KB smaller executable.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@648 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2f66c11a4eeb17950b3aee18cc105572e860ec44
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Apr 6 21:45:33 2007 +0000

    faster cabac rdo. up to 10% faster at q0, but negligible at normal bitrates.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@647 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3e7b136c8525f73f6e01be260adbfc15c34503d7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Apr 6 21:17:34 2007 +0000

    workaround gcc's inability to align variables on the stack.
    this crash was introduced in r642, but only because previous versions didn't use sse2 on the stack.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@646 df754926-b1dd-0310-bc7b-ec298dee348c

commit 84676d2eba9fc18d62e168b60d7d1118d1c232d3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 5 16:11:03 2007 +0000

    32bit version of ssse3 satd.
    switch default assembler to yasm. it will still fallback to nasm if you don't have yasm.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@645 df754926-b1dd-0310-bc7b-ec298dee348c

commit 71c097b28e1405076f554d3b948885fd69c1774f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 4 19:34:02 2007 +0000

    simplify trellis
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@644 df754926-b1dd-0310-bc7b-ec298dee348c

commit 12681eea55239d21eb8ce0ca058c5d859afedc9f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 4 18:59:20 2007 +0000

    fix an arithmetic overflow in trellis with QP >= 42
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@643 df754926-b1dd-0310-bc7b-ec298dee348c

commit 10265a0c2a0b29e6252ad3be6fad1569e7a04339
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 4 18:45:25 2007 +0000

    2x faster quant. 2% overall.
    side effects:
    not bit-identical to the previous algorithm.
    while the new algorithm covers a wider range of cqms than the previous one did,
    I couldn't find a good way to fallback to a general version for the extreme
    cqms. so now it refuses to encode extreme cqms instead of just being slower.
    lays a framework for custom deadzone matrices, though I didn't add an api.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@642 df754926-b1dd-0310-bc7b-ec298dee348c

commit b37ac36e8442dd8fd8f25933b6a0a119d471e8f7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 4 18:35:51 2007 +0000

    when encoding with a cqm, probe_skip now also uses the cqm, instead of the flat matrix
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@641 df754926-b1dd-0310-bc7b-ec298dee348c

commit e3a07e098f96dfc2dbde8da6cad77ed012d4397e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 4 00:48:55 2007 +0000

    cosmetics in asm macros
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@640 df754926-b1dd-0310-bc7b-ec298dee348c

commit 71943e8acbfdb85d944f2800e49bcb7902afaaf3
Author: Alex Izvorski <aizvorski@gmail.com>
Date:   Tue Apr 3 17:18:17 2007 +0000

    use only c-style comments in public header (patch by Vincent Torres)
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@639 df754926-b1dd-0310-bc7b-ec298dee348c

commit dfb854775c7b52945a84ef756dc88a4ccb7c2d2c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 2 23:56:09 2007 +0000

    in hpel search, merge two 16x16 mc calls into one 16x17. 15% faster hpel, .3% overall.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@638 df754926-b1dd-0310-bc7b-ec298dee348c

commit e63c3924ef2c9790aa6440fa11dddf1026862f23
Author: Christophe Mutricy <xtophe@videolan.org>
Date:   Mon Apr 2 19:17:28 2007 +0000

    Compile fix
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@637 df754926-b1dd-0310-bc7b-ec298dee348c

commit dd7e21c6cba26298eac190abcb702b490bd98c5e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 30 20:20:36 2007 +0000

    remove private stuff from public headers. no more need for -D__X264__
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@636 df754926-b1dd-0310-bc7b-ec298dee348c

commit 87fdea89e007258c2d48156f14b883ef29c02831
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 24 12:58:27 2007 +0000

    adjust bitstream buffer sizes for very large frames
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@635 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8b37cc6aa5e23bf4a529b79745f73dedab1fa4ff
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 14 22:41:50 2007 +0000

    conflate HAVE_MMXEXT with HAVE_SSE2, since they were never used distinctly.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@634 df754926-b1dd-0310-bc7b-ec298dee348c

commit 11ef32f432b8e055c30c99531e25320dbce8f656
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 14 21:53:47 2007 +0000

      * Made -DNEED_ALTIVEC unnecessary, thanks to Guillaume Poirier.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@633 df754926-b1dd-0310-bc7b-ec298dee348c

commit 37ad2377b8781330d400985ce12a1ec61067a5e4
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 14 21:31:50 2007 +0000

      * check x264_cpu_detect() before calling AltiVec functions.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@632 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8aef0e941d986f10427cc2d3a848162065bdef3a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 14 21:11:11 2007 +0000

    ssse3 detection. x86_64 ssse3 satd and quant.
    requires yasm >= 0.6.0
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@631 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1980de9bba111561be5ad3dde37b6f7a29a80a4e
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 14 20:40:24 2007 +0000

      * Use -maltivec when building dependencies, or <altivec.h> cannot be used.
      * Do not declare vectors in non-AltiVec files.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@630 df754926-b1dd-0310-bc7b-ec298dee348c

commit e1a4ae9ef58f461aa8ca1e0a1f88140a61d03680
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 14 18:04:06 2007 +0000

      * common/cpu.c: runtime AltiVec autodetection on Linux.
      * configure, Makefile: do not build the whole project with -maltivec because
        it generates AltiVec code in weird places.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@629 df754926-b1dd-0310-bc7b-ec298dee348c

commit f81c3eafa27ad90a02c1d87a9f74b509199ddb63
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 5 15:35:42 2007 +0000

    fix a small memleak.
    patch by Limin Wang.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@628 df754926-b1dd-0310-bc7b-ec298dee348c

commit 62fc8a9c507166baaf104e69fd4c055d41fb0dce
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Sat Mar 3 12:59:23 2007 +0000

    compile fix for GCC-3.3 on OSX, based on a patch by
    Patrice Bensoussan % patrice P bensoussan A free P fr%
    Note: regression test still do not pass with GCC-3.3,
    but they never did as far as I can remember.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@627 df754926-b1dd-0310-bc7b-ec298dee348c

commit 89930744ed6921c5dfb0ffdfad2ca6059b2e6c6a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 3 12:12:54 2007 +0000

    cosmetics in regression test
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@626 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6e1bbd2ff961ee51d8a5bd566784f19fb194c028
Author: Alex Izvorski <aizvorski@gmail.com>
Date:   Sat Mar 3 11:44:01 2007 +0000

    regression testing, run similar to fprofiled: VIDS='vid_720x480.yuv' make test
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@625 df754926-b1dd-0310-bc7b-ec298dee348c

commit 435b675bac7e89d34644affd69bf88a82ddc9242
Author: Alex Izvorski <aizvorski@gmail.com>
Date:   Wed Feb 28 18:47:04 2007 +0000

    add ability to generate doxygen documentation; make dox
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@624 df754926-b1dd-0310-bc7b-ec298dee348c

commit dac2be0cc94b897749381135e248cd1844f58fda
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 22 05:01:38 2007 +0000

    oops, scenecut detection failed to activate when using threads and not using B-frames
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@623 df754926-b1dd-0310-bc7b-ec298dee348c

commit 49d16d48a132b3de8b80a59752e95dbe896e7477
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 29 14:42:42 2007 +0000

    extras/getopt.c was BSD licensed. replace with a LGPL version (from glibc).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@622 df754926-b1dd-0310-bc7b-ec298dee348c

commit 972172560df8efb3d2162938526b3a3c812710a4
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Thu Jan 25 08:32:16 2007 +0000

    Fix build issues on Linux. Only gcc-4.x is supported, as on OSX.
    Cleans up a few inconsistencies in the code too.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@621 df754926-b1dd-0310-bc7b-ec298dee348c

commit c9cd0fce3fcdb83fee9a49987abaa9983b4d1cf4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 21 12:12:04 2007 +0000

    tweak block_residual_write_cavlc.
    up to 1% faster lossless, no difference at normal bitrates.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@620 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4c949c31a111c461b0362409baaff4550b7f664f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jan 20 05:07:44 2007 +0000

    don't assume int is exactly 4 bytes
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@619 df754926-b1dd-0310-bc7b-ec298dee348c

commit cf9e6c5c0ea4771da523d1a95517b2276cca6cf1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jan 11 23:55:51 2007 +0000

    make array_non_zero() compatible with -fstrict-aliasing
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@618 df754926-b1dd-0310-bc7b-ec298dee348c

commit 285f98e197be56efde6b2c42832625193c432c54
Author: Christophe Mutricy <xtophe@videolan.org>
Date:   Tue Jan 9 20:25:32 2007 +0000

    Honor CFLAGS and LDFLAGS set by the user
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@617 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0fe97f423591939454ac7d272fe5fb5dde837b3f
Author: Eric Petit <titer@videolan.org>
Date:   Tue Jan 2 14:51:10 2007 +0000

    Check whether 'echo -n' works, otherwise try printf (fixes build on current OS X 10.5)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@616 df754926-b1dd-0310-bc7b-ec298dee348c

commit bbc68bea7c30988d9f59e2ac99f88f9188f65654
Author: Eric Petit <titer@videolan.org>
Date:   Mon Jan 1 22:41:44 2007 +0000

    Check version of nasm on OS X / Intel
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@615 df754926-b1dd-0310-bc7b-ec298dee348c

commit b630af6c4af3118453d91aae75d2e61c513f2010
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 20 04:22:59 2006 +0000

    wrong reference frames were used with refs>=14 + pyramid (regression in r607)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@614 df754926-b1dd-0310-bc7b-ec298dee348c

commit 01e1db245d0c1c6119a8316994f2083c6096811a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 19 21:24:47 2006 +0000

    enable thread synchronization primitives on linux too
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@613 df754926-b1dd-0310-bc7b-ec298dee348c

commit 34c6fb35ac799907caed6ad1cbbc287136c6b6c6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 19 09:35:45 2006 +0000

    fix a crash with x264_encoder_headers() + threads
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@612 df754926-b1dd-0310-bc7b-ec298dee348c

commit dfe7bb017bface15c9ed47ab5924062300a79e5c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 16 00:46:37 2006 +0000

    don't skip autodection on configure --enable-pthread
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@611 df754926-b1dd-0310-bc7b-ec298dee348c

commit ab3b6602d733c9382a17b9e20a4478efd7ae5994
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 16 00:32:38 2006 +0000

    more win32threads -> pthreads
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@610 df754926-b1dd-0310-bc7b-ec298dee348c

commit cc753d6ba6634cfeee9c8b461bc996adf7e1aee6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 15 23:08:57 2006 +0000

    cosmetics: rename list operators to be consistent with Perl, and move them to common/
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@609 df754926-b1dd-0310-bc7b-ec298dee348c

commit 87f1430384a1c61035a4ca595e5defecf4b64cb8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 15 23:06:21 2006 +0000

    win32: use pthreads instead of win32threads. for some reason, pthreads is much faster.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@608 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7b4f6a1fd95c7e0ab479e116fe59e66e5d1fd107
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 15 23:03:36 2006 +0000

    New threading method:
    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

commit fa2c1e5430619c6011dfe2ffbebbd59557afa228
Author: Sam Hocevar <sam@videolan.org>
Date:   Tue Dec 12 02:17:44 2006 +0000

      * Do not assume anything about sizeof(cpu_set_t).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@606 df754926-b1dd-0310-bc7b-ec298dee348c

commit 167abec138939a7475b481c6cf4a3738601f279a
Author: Sam Hocevar <sam@videolan.org>
Date:   Mon Dec 11 16:01:49 2006 +0000

      * Add support for kFreeBSD (FreeBSD kernel with GNU userland).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@605 df754926-b1dd-0310-bc7b-ec298dee348c

commit e8cc72c7acc75df584cece7da9176eb4be6c9d36
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date:   Mon Nov 27 21:40:21 2006 +0000

    Add Altivec implementations of add8x8_idct8, add16x16_idct8, sa8d_8x8 and sa8d_16x16
    Note: doesn't take advantage of some possible aligned memory accesses, so there's still room for improvement
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@604 df754926-b1dd-0310-bc7b-ec298dee348c

commit 575b238cb5e5bdb18b5541456d6eb4781bcd36d5
Author: Eric Petit <titer@videolan.org>
Date:   Sat Nov 25 16:31:24 2006 +0000

    Force alignment of the fake .rodata on MacIntel
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@603 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4659f518e453250783fd13bedda8a8560e8d32a5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 23 03:13:18 2006 +0000

    don't treat vbv_maxrate as a minrate too if it's higher than target average bitrate.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@602 df754926-b1dd-0310-bc7b-ec298dee348c

commit c494e9c5e22d0fbe30deb7f2c1b932ac9fb449b5
Author: Eric Petit <titer@videolan.org>
Date:   Sat Nov 18 14:38:07 2006 +0000

    Merges Guillaume Poirier's AltiVec changes:
     * Adds optimized quant and sub*dct8 routines
     * Faster sub*dct routines
    ~8% overall speed-up with default settings
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@601 df754926-b1dd-0310-bc7b-ec298dee348c

commit 41c111bc13badf2f7fa71165c94d4b528213a8cd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 6 22:49:41 2006 +0000

    10% faster deblock mmx functions. ported from ffmpeg.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@600 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6eeb78f6a8bc0541ea68fb84ba41c456e56a2589
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 6 22:38:42 2006 +0000

    checkasm: ignore insignificant differences in floating-point ssim
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@599 df754926-b1dd-0310-bc7b-ec298dee348c

commit 485172deeb75ca1eb88ac24b6ab6719b8a16825b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 30 02:31:48 2006 +0000

    display final ratefactor in abr when a loose vbv is applied. (still disabled in true cbr)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@598 df754926-b1dd-0310-bc7b-ec298dee348c

commit a9d754a37787daccdd88e4d08ec95f9b9ae59a8c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 30 00:09:21 2006 +0000

    fix parsing of --deblock %d,%d  (beta was ignored)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@597 df754926-b1dd-0310-bc7b-ec298dee348c

commit ccac553deccf9646fdc53728f91caa988ee09176
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 29 05:48:57 2006 +0000

    compute chroma_qp only once per mb
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@596 df754926-b1dd-0310-bc7b-ec298dee348c

commit 94a4aede9033614fa810ec88ca92dcd39822b544
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 29 01:17:33 2006 +0000

    rd refinement of intra chroma direction (enabled in --subme 7)
    patch by Alex Wright.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@595 df754926-b1dd-0310-bc7b-ec298dee348c

commit e7a4aba997a82cfd5c1d5217d413513d52b6af3e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Oct 18 04:06:44 2006 +0000

    fix a crash in avc2avi
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@594 df754926-b1dd-0310-bc7b-ec298dee348c

commit 41b85c4fa872df880352024aa2d707b1813a4258
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 15 23:39:03 2006 +0000

    skip deblocking and motion interpolation when using only I-frames
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@593 df754926-b1dd-0310-bc7b-ec298dee348c

commit 197a94a8cfff879ef3691eb178b5b617bda03ffb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Oct 13 23:50:57 2006 +0000

    cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@592 df754926-b1dd-0310-bc7b-ec298dee348c

commit 93b54ce1fbbbb191e69d8c6e33897037ba5bbfd1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Oct 13 20:04:58 2006 +0000

    allow fractional values of crf
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@591 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8d1ebe2eeb30a204b588502d69d361ee85187821
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Oct 10 21:26:31 2006 +0000

    prefetch pixels for motion compensation and deblocking.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@590 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9fadbd7b82a1bd785e206dfef81af066c7470a2f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Oct 10 19:16:39 2006 +0000

    fix a crash on interlace + >8 reference frames
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@589 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4107178cc2998dd37cca106898e16e833a99b50e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Oct 10 05:05:55 2006 +0000

    no more decoder. it never worked anyway, and the presence of defunct code was confusing people.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@588 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9243c844dfc47d6dea825a0a92bd8a990d6c3cac
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 9 23:31:45 2006 +0000

    compute pskip_mv only once per macroblock, and store it
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@587 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0a453377cdac1aa50a4f21be0ddfba2a93719603
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 9 20:55:54 2006 +0000

    slightly faster chroma_mc_mmx
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@586 df754926-b1dd-0310-bc7b-ec298dee348c

commit 42bb1b494e19732fb510fb42f30bf5ae0a66dd71
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 9 17:44:47 2006 +0000

    missing emms in plane_copy_mmx
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@585 df754926-b1dd-0310-bc7b-ec298dee348c

commit 43e4162f3026f964d0bcf4502afe13cdaaa53f4d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Oct 6 23:25:41 2006 +0000

    merge center_filter_mmx with horizontal_filter_mmx
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@584 df754926-b1dd-0310-bc7b-ec298dee348c

commit c485e7e75bf24036c9438467ba854bd17122e277
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Oct 6 05:43:53 2006 +0000

    1.5x faster center_filter_mmx (amd64)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@583 df754926-b1dd-0310-bc7b-ec298dee348c

commit 299d3ed4ee3c8e875a428bf872bfe791a7ccd687
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Oct 6 00:02:59 2006 +0000

    mmx/prefetch implementation of plane_copy
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@582 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9f05a7fdfc08e0279a825dc851b61c61063564b3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Oct 5 08:15:55 2006 +0000

    no more vfw
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@581 df754926-b1dd-0310-bc7b-ec298dee348c

commit aabb91c80b714e9a8e2bbdca8beaf5655e9e9540
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Oct 5 07:44:22 2006 +0000

    gtk fixes:
    in Makefile
    - fix datadir for mingw users
    - remove the shared lib during the clean rule
    - use $(ENCODE_BIN) instead of x264_gtk_encode
    - add some $(DESTDIR) and create some directories when necessary
    - remove -lintl
    statfile_length -> statsfile_length
    fix the "sensitivity" of the widget of update_statfile
    the logo is now handled correctly on windows
    added: beginning of multipass support
    patch by Vincent Torri.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@580 df754926-b1dd-0310-bc7b-ec298dee348c

commit 90a9219545cf073847160933d1c7d3e9b761e909
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Oct 5 01:57:00 2006 +0000

    accept mencoder's option names as synonyms (api only, not in x264cli)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@579 df754926-b1dd-0310-bc7b-ec298dee348c

commit cb8b5dad7dc99c13e591aaf74b84b406ea80b69e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Oct 3 01:39:38 2006 +0000

    simplify satd_sse2
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@578 df754926-b1dd-0310-bc7b-ec298dee348c

commit 04834f596bb9bec1e8afd7ab7b1eee74ad13df0a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 2 08:31:48 2006 +0000

    better error checking in x264_param_parse.
    add synonyms for a few options.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@577 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0cbf0fc27bd391509d788ebb2e06b930bf840925
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 2 02:46:23 2006 +0000

    fix some strides that weren't a multiple of 16.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@576 df754926-b1dd-0310-bc7b-ec298dee348c

commit 58e12b0e792596ae4eac95df4ae358ca664a6c20
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 1 13:08:42 2006 +0000

    tweak motion compensation amd64 asm. 0.3% overall speedup.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@575 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6de50f51151c29331040f8c24bf3697c063fe0dd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 1 08:06:22 2006 +0000

    strip local symbols from asm .o files, since they confuse oprofile
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@574 df754926-b1dd-0310-bc7b-ec298dee348c

commit f9cc941183c0b190d09e030a30c537259c3e4088
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 1 07:25:01 2006 +0000

    add an option to control direct_8x8_inference_flag, default to enabled.
    slightly faster encoding and decoding of p4x4 + B-frames,
    and is needed for strict Levels compliance.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@573 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8f0864a9f5755a02158cbb96c215afee95846639
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 1 03:05:15 2006 +0000

    allow custom deadzones for non-trellis quantization.
    patch by Alex Wright.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@572 df754926-b1dd-0310-bc7b-ec298dee348c

commit a7cd9cf8ba99e4703805d34eef494d47850f9b99
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 1 02:44:36 2006 +0000

    move zigzag scan functions to dsp function pointers.
    mmx implementation of interlaced zigzag.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@571 df754926-b1dd-0310-bc7b-ec298dee348c

commit faec300a71cdb64e1bd27d393de51d2e3d1f5992
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 1 02:41:22 2006 +0000

    support interlace. uses MBAFF syntax, but is not adaptive yet.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@570 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3b7857057005ebecc9852ef56c9f725d26b94bc4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Sep 27 06:37:19 2006 +0000

    allow --zones in cqp encodes
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@569 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7960eaf2451a445078a3c55b1ade5efc1948e02f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Sep 26 19:27:07 2006 +0000

    cli: fix some typos in vui parameters from r542.
    patch by Foxy Shadis.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@568 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1b93c2a5cccb6ad7aedfd2746c671dcfffe60795
Author: Sam Hocevar <sam@videolan.org>
Date:   Mon Sep 25 10:25:55 2006 +0000

      * Add an "all" rule to the Makefile. Ideally "default" should be renamed,
        but I don't want to break existing scripts.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@567 df754926-b1dd-0310-bc7b-ec298dee348c

commit 52b8a0530721abb276c286d95a7827da3529baa4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Sep 24 21:35:56 2006 +0000

    workaround: on some systems, alloca() isn't aligned
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@566 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7bfc7360d713aa651b71691a9fb85f34104573e4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Sep 22 16:39:05 2006 +0000

    missing picpop
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@565 df754926-b1dd-0310-bc7b-ec298dee348c

commit 460699ffdfaf263faaebd720c82475d1fb949279
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Sep 13 19:24:13 2006 +0000

    fix a buffer overread from r540
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@564 df754926-b1dd-0310-bc7b-ec298dee348c

commit 55c208edb7e3a3ad54c1c1412577003b1eb13a69
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Sep 12 23:32:21 2006 +0000

    cosmetics (spelling)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@563 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8850b6faaf55b83ed3aa86ff9fcb5e35c439b236
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Sep 12 22:21:23 2006 +0000

    faster ESA
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@562 df754926-b1dd-0310-bc7b-ec298dee348c

commit f8652aab3dda281aa446ead0674d7e1f1c6d6e74
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Sep 12 22:18:29 2006 +0000

    faster ESA
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@561 df754926-b1dd-0310-bc7b-ec298dee348c

commit a020d6ec4933d9f431be5bad429289b87efabe17
Author: Sam Hocevar <sam@videolan.org>
Date:   Sun Sep 10 17:37:13 2006 +0000

      * Use the autotool's config.guess script instead of uname to check the
        system and CPU types, to avoid issues when using for instance a 32-bit
        userland on top of a 64-bit kernel.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@560 df754926-b1dd-0310-bc7b-ec298dee348c

commit 477c5bfb641d0c662a98a3474c6a2a441476b5a1
Author: Sam Hocevar <sam@videolan.org>
Date:   Sun Sep 10 17:16:21 2006 +0000

      * Add the autotool's config.guess script so that we can use it instead
        of uname in the configure script.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@559 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4a5a03bbba8a8100d84bf5c30709eec133dda282
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Aug 22 07:43:14 2006 +0000

    10l in r553
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@558 df754926-b1dd-0310-bc7b-ec298dee348c

commit 73657d88d1e1371d684eea805fb88c008e44e96b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Aug 21 00:46:20 2006 +0000

    ssim broke on amd64 w/ pic.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@557 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1808700e26023fccfabec9e65ee7e4fb18ae57f2
Author: Steve Lhomme <robux@videolan.org>
Date:   Fri Aug 18 20:50:10 2006 +0000

    MSVC compatibility fix from Haali
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@556 df754926-b1dd-0310-bc7b-ec298dee348c

commit f78c224c21e991b55deb637d35b30b06a78d78da
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Aug 17 22:49:45 2006 +0000

    support changing some more parameters in x264_encoder_reconfig()
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@555 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7760f1b2e78360542e31eb55db81e84dcb4f95ac
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Aug 17 21:57:59 2006 +0000

    SSIM computation. (default on, disable by --no-ssim)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@554 df754926-b1dd-0310-bc7b-ec298dee348c

commit 127e2fbf0a338549b00f6a3022ce1d2bab1d2acb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Aug 16 20:13:06 2006 +0000

    configure: --enable-debug reduces optimization to -O1
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@553 df754926-b1dd-0310-bc7b-ec298dee348c

commit dc5d530e13e0aa38218feb7c6c1fc4b75c0b7261
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Aug 16 19:57:08 2006 +0000

    cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@552 df754926-b1dd-0310-bc7b-ec298dee348c

commit 12bd065367f7aa0a4efc550dd595142d783a9525
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Aug 4 03:12:43 2006 +0000

    gcc -fprofile-generate isn't threadsafe
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@551 df754926-b1dd-0310-bc7b-ec298dee348c

commit b3f15918ac03a0fc3b6fe1a8311fabedf5fa6b53
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Aug 3 19:49:17 2006 +0000

    cli: move some options from --help to --longhelp
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@550 df754926-b1dd-0310-bc7b-ec298dee348c

commit 64a8b781013148bd351c2a45fdcb6a9aaf26ff4a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Aug 3 18:22:08 2006 +0000

    cli: don't try to get resolution from filename unless input is rawyuv
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@549 df754926-b1dd-0310-bc7b-ec298dee348c

commit de41ef2605bf1d5ded851888438a55a6bf66c42a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Aug 3 18:13:56 2006 +0000

    r542 broke --visualize
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@548 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1ff80a23db8912967238d1d9d4df2aebeeafbd1a
Author: Eric Petit <titer@videolan.org>
Date:   Wed Aug 2 18:11:21 2006 +0000

    Nicer OS X x264_cpu_num_processors (thanks David)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@547 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3493a54ddfd504fdd993c98a321916f98b96b09d
Author: Eric Petit <titer@videolan.org>
Date:   Tue Aug 1 15:20:35 2006 +0000

    Support OS X and BeOS in x264_cpu_num_processors
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@546 df754926-b1dd-0310-bc7b-ec298dee348c

commit 86ec16c126168adbb6f615159e26065b4b0000a7
Author: Eric Petit <titer@videolan.org>
Date:   Tue Aug 1 15:18:31 2006 +0000

    Fixes contexts allocation with threads=auto
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@545 df754926-b1dd-0310-bc7b-ec298dee348c

commit eeebca20ad854271fab898f306f1657887ca6588
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Aug 1 02:22:36 2006 +0000

    select initial qp for abr and cbr baased on satd and bitrate, rather than cq24.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@544 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9e9a869aa7dc3c39a883a5a5886c0bbd82e8b95c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Aug 1 00:17:18 2006 +0000

    --threads=auto to detect number of cpus
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@543 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0b07708cdab6c2f54673930c10d2908c53e19120
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jul 31 21:59:04 2006 +0000

    api addition: x264_param_parse() to set options by name
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@542 df754926-b1dd-0310-bc7b-ec298dee348c

commit 99b8471e5032bfab1f81cb04fb350ee6fa878561
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jul 31 06:34:53 2006 +0000

    fix a rare NaN in ratecontrol
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@541 df754926-b1dd-0310-bc7b-ec298dee348c

commit adc4b4f85e3682bd4868df21babcea725c919bef
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jul 30 02:39:05 2006 +0000

    move quant_mf[] from x264_t to the heap, and merge duplicate entries
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@540 df754926-b1dd-0310-bc7b-ec298dee348c

commit 75d6edb847722b1058914a2effcc6d47c5b7971a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jul 28 21:39:07 2006 +0000

    GTK update. patch by Vincent Torri.
      fixed:
    cleaning of Makefile
    time elapsed seems broken ('total time' label replaced by 'time remaining')
    text entries of the status window are now not editable
      added:
    compilation from x264/ (add --enable-gtk option to configure)
    shared lib creation if --enable-shared is passed to configure
    x264gtk.pc
    --b-rdo, --no-dct-decimate
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@539 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4b2556f688c482e2cbda025a5468bb4853810f89
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jul 23 19:19:40 2006 +0000

    new option: --qpfile forces frames types and QPs.
    (intended for ratecontrol experiments, not for real encodes)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@538 df754926-b1dd-0310-bc7b-ec298dee348c

commit b8692db2efa98c719332979f6dc8fc39af8f1eff
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jul 18 01:10:54 2006 +0000

    api change: select ratecontrol method with an enum (param.rc.i_rc_method) instead of a bunch of booleans.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@537 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4e7bd4a1f038aeb538bfd07fc2d5ac67c041a0e9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jul 16 18:28:39 2006 +0000

    slightly faster mmx dct
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@536 df754926-b1dd-0310-bc7b-ec298dee348c

commit 637470c0dbbadf4b0d8b01c6c2179a4305f2b203
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jul 16 18:25:38 2006 +0000

    OpenBSD build fixes.
    patch by Vizeli Pascal (pvizeli at yahoo dot de)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@535 df754926-b1dd-0310-bc7b-ec298dee348c

commit c6213d2fbb3b9a1a23c7cbe023080e98ee8e35a6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jul 8 17:56:22 2006 +0000

    mc_chroma width2 mmx
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@534 df754926-b1dd-0310-bc7b-ec298dee348c

commit eff6a5e204a9d9789b44d1ebf3de510f0f6d4334
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Wed Jun 28 21:58:58 2006 +0000

    make libx264.so symlink relative
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@533 df754926-b1dd-0310-bc7b-ec298dee348c

commit 360853117fccdd082a6654c34c2c7dc2577f10cd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jun 12 08:22:09 2006 +0000

    GTK update. patch by Vincent Torri.
      added:
    direct=auto
    no-fast-pskip
    vbv
    cqm
    tooltips (without descriptions yet)
    translations
    `make clean` for .exe
    when file exists, ask for override
      fixes:
    debug level bug
    bitrate slider bug
    mixed-refs can be set only if ref>1
    i8x8 can be set only if 8x8 transform is enabled
    # of threads capped at 4
    fourcc can't be removed
    cosmetics
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@532 df754926-b1dd-0310-bc7b-ec298dee348c

commit 918c7ef4540f8741ecc23d74f227abd594986fba
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 31 23:55:35 2006 +0000

    vfw installer: tweak nsis compression.
    patch by Francesco Corriga.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@531 df754926-b1dd-0310-bc7b-ec298dee348c

commit b5d08311537cf047b1720243f866264abc5150d3
Author: Eric Petit <titer@videolan.org>
Date:   Tue May 30 10:05:56 2006 +0000

    Fixed typo that caused x264_encoder_open to always fail
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@530 df754926-b1dd-0310-bc7b-ec298dee348c

commit 91bbfb98c003715a0a44c31053c6e361b5262995
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 30 07:07:55 2006 +0000

    check some mallocs' return value
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@529 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0ac281dc97ac8c0b85165062d5f25227c9e0142f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun May 28 21:14:24 2006 +0000

    make -> $(MAKE)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@528 df754926-b1dd-0310-bc7b-ec298dee348c

commit c9155d3e9fbe646e2504c09b5b751f7279900522
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 24 03:59:19 2006 +0000

    convert non-fatal errors to message level "warning".
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@527 df754926-b1dd-0310-bc7b-ec298dee348c

commit ae4b97a2530da93b750ac6b525941d408294a216
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon May 22 23:07:58 2006 +0000

    fix a memory alignment. (no effect on x86, but might be needed for other simd)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@526 df754926-b1dd-0310-bc7b-ec298dee348c

commit c832ac1af21e82f7418077c6e61d13819420fd61
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri May 19 20:10:41 2006 +0000

    when using DEBUG_DUMP_FRAME, write decoded pictures in display order.
    patch by Loic Le Loarer.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@525 df754926-b1dd-0310-bc7b-ec298dee348c

commit 361b283acbcc2d4b1ff8171ac2945449936e5b93
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri May 19 19:14:29 2006 +0000

    non-referenced B-frames should have the same frame_num as the following ref frame, not the previous.
    patch by Loic Le Loarer.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@524 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1ca108eb75a947ad86dc4ab88ecf6e69bd22d358
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri May 12 08:17:53 2006 +0000

    set the SPS constraint_set[01]_flag based on the profile in use, just in case some decoder cares
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@523 df754926-b1dd-0310-bc7b-ec298dee348c

commit de1af4c2e5528fae5918ddf00d6ae09a68ea2222
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 10 16:47:05 2006 +0000

    msvc doesn't like C99 named array initializers
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@522 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7022fe85d84db4a5a95a7b4ac699423277638881
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 10 16:42:07 2006 +0000

    allow sar=1/1.
    patch by Loic Le Loarer.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@521 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0d88274d5d833030ee3f54dfd09ef039f341da01
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 10 06:09:48 2006 +0000

    faster intra search: filter i8x8 edges only once, and reuse for multiple predictions.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@520 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3de28cd5878a8be64e1db80ff2453e79acb0040d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 9 06:11:42 2006 +0000

    faster intra search: some prediction modes don't have to compute a full hadamard transform.
    x86 and amd64 asm.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@519 df754926-b1dd-0310-bc7b-ec298dee348c

commit e63f25b44ed1bfd2ccd0ff1e7f1f453c6ba08179
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat May 6 17:12:23 2006 +0000

    --sps-id, to allow concatenating streams with different settings.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@518 df754926-b1dd-0310-bc7b-ec298dee348c

commit 609deaf54ad74816ba061c7022172986694049c9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 3 17:59:23 2006 +0000

    typo in expand_border_mod16
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@517 df754926-b1dd-0310-bc7b-ec298dee348c

commit f5bdc82806070eb101f3c6ab9a5370c4788d7597
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Apr 30 01:21:49 2006 +0000

    typo impaired 2pass bitrate prediction.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@516 df754926-b1dd-0310-bc7b-ec298dee348c

commit f51297f19065e4ab34179e6e1d785b28fb3ad6be
Author: Eric Petit <titer@videolan.org>
Date:   Sat Apr 29 11:13:04 2006 +0000

     Let the user choose the compiler with "CC=xxx ./configure"
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@515 df754926-b1dd-0310-bc7b-ec298dee348c

commit e7141289a2f8d07168d19fc751bb302a9c32a79e
Author: Eric Petit <titer@videolan.org>
Date:   Sat Apr 29 11:12:16 2006 +0000

     More vector types fixes for gcc 3.3
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@514 df754926-b1dd-0310-bc7b-ec298dee348c

commit f3323f8478176852ff8e974217cb59227bbb693e
Author: Eric Petit <titer@videolan.org>
Date:   Fri Apr 28 17:13:37 2006 +0000

    More vector casts to try and make compilers happier
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@513 df754926-b1dd-0310-bc7b-ec298dee348c

commit c1f64a50b7563b737c8938ed796f46d3bad354a4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 25 04:08:21 2006 +0000

    Use sa8d instead of satd for i8x8 search.
    +.01 dB, -.5% speed
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@512 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8aa294381e5e7725a9ae01ce84d1a8f4ac86a8eb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 24 19:34:06 2006 +0000

    Before evaluating the RD score of any mode, check satd and abort if it's much worse than some other mode.
    Also apply more early termination to intra search.
    speed at -m1:+1%, -m4:+3%, -m6:+8%, -m7:+20%
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@511 df754926-b1dd-0310-bc7b-ec298dee348c

commit eb3d83c0a32636674f59bbd7f8fedd430f1e4c2c
Author: Sam Hocevar <sam@videolan.org>
Date:   Mon Apr 24 19:01:10 2006 +0000

      * common/ppc/pixel.c: fixed illegal implicit casts of vector types.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@510 df754926-b1dd-0310-bc7b-ec298dee348c

commit 17b90bf3c3f6a2c5711b68be39df784204b425b8
Author: Sam Hocevar <sam@videolan.org>
Date:   Mon Apr 24 18:49:50 2006 +0000

      * Added %$#@#$! support for #@%$!#@ armv4l CPU.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@509 df754926-b1dd-0310-bc7b-ec298dee348c

commit 35a5a4f121667717bfd783d3dcbb6e79fc7c8668
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 24 08:27:26 2006 +0000

    When evaluating predictors to start fullpel motion search, use subpel positions instead of rounding to fullpel.
    about +.02 dB, -1.6% speed at subme>=3
    patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@508 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6b577361fbab9d785787eba3e16a63a23d84be28
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 24 03:52:55 2006 +0000

    mmx implementation of x264_pixel_sa8d
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@507 df754926-b1dd-0310-bc7b-ec298dee348c

commit af751ac37f6397567696ba7eb2479f72ea2c2004
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 20 23:48:46 2006 +0000

    10l in r463 (q0 i16x16 dc was permuted)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@506 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2735ae7056413fb6d4461618269b971e8ae45915
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 20 20:33:25 2006 +0000

    typo in r504
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@505 df754926-b1dd-0310-bc7b-ec298dee348c

commit 656b0698c90b7c3b3365416391b6d3706d1afb0d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 20 04:38:45 2006 +0000

    update msvc project files.
    patch by anonymous.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@504 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2f95856be50ec7c744ad4d65408846d3dce75491
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 19 09:02:19 2006 +0000

    Before, we eliminated dct blocks containing only a small single coefficient. Now that behavior is optional, by --no-dct-decimate.
    based on a patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@503 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9a6815d3cb06e48888bdd1d804ae9eb72adf71bb
Author: Eric Petit <titer@videolan.org>
Date:   Mon Apr 17 11:08:58 2006 +0000

    Enables more agressive optimizations (-fastf -mcpu=G4) on OS X.
    Adds AltiVec interleaved SAD and SSD16x16.
    Overall speedup up to 20%.
    
    Patch by anonymous
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@502 df754926-b1dd-0310-bc7b-ec298dee348c

commit 97ab2190599297ab0edaa62b8a7027117ca74ed5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 17 01:19:47 2006 +0000

    faster cabac_encode_bypass
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@501 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1927b27504ebee226b5eb1a51461b35e72a6d542
Author: Eric Petit <titer@videolan.org>
Date:   Sun Apr 16 18:24:38 2006 +0000

    restored AltiVec dct
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@500 df754926-b1dd-0310-bc7b-ec298dee348c

commit d0a556549b9ae59c3a30b6c1b0280e6857350da3
Author: Eric Petit <titer@videolan.org>
Date:   Sun Apr 16 16:38:16 2006 +0000

    more AltiVec mc, ~4.5% overall speedup
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@499 df754926-b1dd-0310-bc7b-ec298dee348c

commit 71f11146131d1804311d86535a6aa7d0ff777501
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 12 21:21:59 2006 +0000

    slightly faster loopfilter
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@498 df754926-b1dd-0310-bc7b-ec298dee348c

commit d2ab724f262f831a320ba75b81092bc182bca695
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 12 06:28:52 2006 +0000

    3% faster satd_mmx
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@497 df754926-b1dd-0310-bc7b-ec298dee348c

commit a23a3678b474450876ac297c979bb2ad27afe6f4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Apr 12 00:45:07 2006 +0000

    cosmetics in sad/ssd/satd mmx
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@496 df754926-b1dd-0310-bc7b-ec298dee348c

commit b3ad52d4860127a9b7348923671b595b98cb4d09
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 11 21:16:44 2006 +0000

    store quoted configure options. needed e.g. for multiple args under --extra-cflags.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@495 df754926-b1dd-0310-bc7b-ec298dee348c

commit c293b80b3b57789bbac663f0eac0ee26c1bd8eec
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 11 10:45:00 2006 +0000

    fix a yasm-incompatible syntax in x86 asm
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@494 df754926-b1dd-0310-bc7b-ec298dee348c

commit ae82d2423aa1d54eb367ca292262bc6bd3dec134
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 11 02:41:43 2006 +0000

    yasm noexec stack
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@493 df754926-b1dd-0310-bc7b-ec298dee348c

commit 283d57ed95a22f104e4f22a6119e2aaeeca39833
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 10 18:46:54 2006 +0000

    more interleaved SAD.
    25% faster halfpel.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@492 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0f4c0eb836912fcbd2376c920a9dd7bf438f4e43
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 10 17:56:02 2006 +0000

    more interleaved SAD.
    1% faster umh, 6% faster esa.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@491 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8947b51f35151f821c3718b01c1e93d517d814b5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 10 03:03:13 2006 +0000

    interleave multiple calls to SAD.
    15% faster fullpel motion estimation.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@490 df754926-b1dd-0310-bc7b-ec298dee348c

commit bddf5f03ff621a8fdbcc9925453573600984b27d
Author: Sam Hocevar <sam@videolan.org>
Date:   Sun Apr 9 13:20:17 2006 +0000

      * Added support for ppc64. I'm really fucking tired of having to do this.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@489 df754926-b1dd-0310-bc7b-ec298dee348c

commit ac4249d20d47f75ca9aebb04c4b329c2d497100c
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Sat Apr 8 01:33:13 2006 +0000

    use LDFLAGS when linking shared lib
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@488 df754926-b1dd-0310-bc7b-ec298dee348c

commit 85ab23ceca033df09e17d650647cba3d4995f9e8
Author: Felix Paul Kühne <fkuehne@videolan.org>
Date:   Wed Mar 29 06:37:55 2006 +0000

    * compilation fix for mingw, darwin (off_t was undefined)
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@487 df754926-b1dd-0310-bc7b-ec298dee348c

commit 540ed9aafdf7577cf51914676dfc010952c76052
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 27 08:11:37 2006 +0000

    GTK: support yuv4mpeg input.
    patch by Vincent Torri.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@486 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5fe3e77f3d9f20286feb1432a63d2d6652dc8777
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 26 20:54:33 2006 +0000

    GTK: fix avs input
    patch by Vincent Torri.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@485 df754926-b1dd-0310-bc7b-ec298dee348c

commit a84899e0b4fd16d49cb7085a275cd7bb1ce9f67c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 26 20:40:20 2006 +0000

    cli: support yuv4mpeg input.
    patch by anonymous.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@484 df754926-b1dd-0310-bc7b-ec298dee348c

commit e510c09889d83c5d7e85eca83036af36f1284b87
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 26 01:09:09 2006 +0000

    GTK: compilation fixes
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@483 df754926-b1dd-0310-bc7b-ec298dee348c

commit 845feff6507dc682944a8c733f8ee1c8a4da6f09
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 25 23:26:07 2006 +0000

    GTK: compilation fixes on mingw,
    add avs input for the app (if avalaible),
    add filters for the filechooser,
    add icon for the main window.
    patch by Vincent Torri.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@482 df754926-b1dd-0310-bc7b-ec298dee348c

commit fc34d38657b89418cb68576889c647a4aa5e8108
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 25 10:13:12 2006 +0000

    GTK-based graphical frontend.
    patch by Vincent Torri.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@481 df754926-b1dd-0310-bc7b-ec298dee348c

commit 50aadebc2de139f2003314bfbeea7d7ce1680901
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 25 10:06:15 2006 +0000

    silence some gcc warnings
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@480 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5b6c5effb4c1864b692213cafef9c85e3623573c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 24 21:45:39 2006 +0000

    use FDEC_STRIDE instead of a parameter in mmx dct
    .5% speedup
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@479 df754926-b1dd-0310-bc7b-ec298dee348c

commit da9158b3ec035e8261e6fe2c5fd77e073425ed08
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 22 14:21:53 2006 +0000

      * configure: support for 64 bits MIPS.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@478 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7c013538206535c3abd70eb56a00bed0dccb43c5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 20 23:32:43 2006 +0000

    10l in r473 and stdin
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@477 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3b66f690bd8a7d1417cedf98aec0df2702338bb2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 20 23:00:52 2006 +0000

    RD subpel motion estimation (--subme 7)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@476 df754926-b1dd-0310-bc7b-ec298dee348c

commit 48633d2afd50d9f15b83e6639024c382dd958c76
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 20 22:46:38 2006 +0000

    cosmetics in cabac_mb_cbf
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@475 df754926-b1dd-0310-bc7b-ec298dee348c

commit 50f40fd2a3b63ef89e8f94085ef2ed971a408468
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 19 11:00:02 2006 +0000

    separate --thread-input from --threads
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@474 df754926-b1dd-0310-bc7b-ec298dee348c

commit 36c25b664e28e4e15ce49242af6ac306eb6f7cca
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 18 09:20:06 2006 +0000

    if --threads > 1, then read the input stream in its own thread.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@473 df754926-b1dd-0310-bc7b-ec298dee348c

commit c20906a56b2f17a89b7ba4afc87e78202447e7fb
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Fri Mar 17 22:27:31 2006 +0000

    FreeBSD uses ELF
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@472 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9c61b0cbd68304b8f2860dc2d7df401ad6839b81
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 17 22:10:34 2006 +0000

    10l in r470 on x86_64
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@471 df754926-b1dd-0310-bc7b-ec298dee348c

commit fdb64099b4da93ffa70af98aad85cc7c6fc564d0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 17 21:36:27 2006 +0000

    some mmxext functions really only required mmx.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@470 df754926-b1dd-0310-bc7b-ec298dee348c

commit abffd18fe30bcc0daa344a7dcedab30ddc3e97f6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 17 07:36:06 2006 +0000

    simplify get_ref and mc_luma
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@469 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9eaa83d4c97cfceaeb6491ae8e7a74c0bd6f397b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 15 04:38:57 2006 +0000

    b16x16 wpred analysis used wrong weight
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@468 df754926-b1dd-0310-bc7b-ec298dee348c

commit 926212b3f0ff67ffc8ea2e3a7b299c016a00404c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 11 03:32:37 2006 +0000

    configure: --enable-shared for libx264.so
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@467 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8f79dcc217245ebdc4aba8be505526c7277c6d3c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 10 18:58:29 2006 +0000

    wrong modulus when delta_qp = +26
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@466 df754926-b1dd-0310-bc7b-ec298dee348c

commit 78f414d5646e018254339a9a5db08bdf69de6551
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 9 16:56:33 2006 +0000

    10l in vbv + 2pass
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@465 df754926-b1dd-0310-bc7b-ec298dee348c

commit d8e790ca7c0a524ea0aa01bf0d9020530e3dba9a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 9 15:59:08 2006 +0000

    macroblock-level ratecontrol: improved vbv strictness, and improved quality when using vbv.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@464 df754926-b1dd-0310-bc7b-ec298dee348c

commit 79389771d6bc84a886b754bba995e7d9ac8b48d4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 9 05:30:08 2006 +0000

    keep transposed dct coefs. ~1% overall speedup.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@463 df754926-b1dd-0310-bc7b-ec298dee348c

commit ce9b3336d66cff23019d43656baf425491702727
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 9 05:24:02 2006 +0000

    tweak rounding of 8x8dct
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@462 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9331f05948dfcd42461a8aa8b6f0994e594dc74a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 8 19:58:30 2006 +0000

    cosmetics in makefile
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@461 df754926-b1dd-0310-bc7b-ec298dee348c

commit 058c3be5405df19bb0f029956c54251d626ca0f0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 8 16:03:30 2006 +0000

    cosmetics: muxers -> muxers.c
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@460 df754926-b1dd-0310-bc7b-ec298dee348c

commit a34eec24d5caed8b43f2d1ecf7a0f36b9fe60189
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 6 18:38:44 2006 +0000

    no --nr in intra blocks. intra prediction doesn't work well enough for the residual to be indicative of noise.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@459 df754926-b1dd-0310-bc7b-ec298dee348c

commit afbbaf9b0229751fe545e1ac8b8f1ca68228d56a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 6 03:21:38 2006 +0000

    10l in direct auto + multiref + 1pass
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@458 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9773268370492490235dee06d46e091f563626d7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 5 07:01:58 2006 +0000

    --direct auto
    selects direct mode per frame. works best in 2pass (enable in both passes).
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@457 df754926-b1dd-0310-bc7b-ec298dee348c

commit 126ccb3360e4c9b92ced4c995e618e4129be97a2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 5 06:59:06 2006 +0000

    change default direct mode to spatial
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@456 df754926-b1dd-0310-bc7b-ec298dee348c

commit 39c6d0824e23a3e6e769812968082026a9df61f8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 5 06:28:40 2006 +0000

    remove TODO. most of it is done, and the rest is out of date.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@455 df754926-b1dd-0310-bc7b-ec298dee348c

commit 918a791bb4ed544368cd7389147ab9e18fb6f8d4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 5 02:26:32 2006 +0000

    more amd64 mmx intra prediction
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@454 df754926-b1dd-0310-bc7b-ec298dee348c

commit 469b4e5032b8183dd04c8cb6f22e9724146bb2f5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 5 02:16:19 2006 +0000

    for i8x8 neighbors, don't assume a new slice starts at the edge of the frame
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@453 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4fe3aff6fd991a72b8a80b2157092678b13db433
Author: Sam Hocevar <sam@videolan.org>
Date:   Sat Mar 4 02:49:44 2006 +0000

      * common/i386/i386inc.asm: got PIC to work for real on OS X x86.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@452 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4139febfe8acad10fb759b9d5a8992ed8cad6234
Author: Sam Hocevar <sam@videolan.org>
Date:   Thu Mar 2 20:48:08 2006 +0000

      * common/i386/*.asm: don't use the "GLOBAL" reserved word, some versions
        NASM complain about it. Replaced it with "GOT_ebx".
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@451 df754926-b1dd-0310-bc7b-ec298dee348c

commit 059410eda5d125c166b5ba050e3ca8152e84a2c7
Author: Sam Hocevar <sam@videolan.org>
Date:   Thu Mar 2 20:46:54 2006 +0000

      * configure: activate minor nasm optimisations, such as assembling
        "add eax, 8" as "add eax, byte 8".
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@450 df754926-b1dd-0310-bc7b-ec298dee348c

commit b5fda5741bf36e3f03cf0ebac90ddd9dce4f6420
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 1 22:21:47 2006 +0000

      * common/i386: factored the .rodata section declaration into i386inc.asm.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@449 df754926-b1dd-0310-bc7b-ec298dee348c

commit 17683d75b1dae07e8dfc901883231b41e73fe8cd
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 1 22:16:16 2006 +0000

      * configure common/i386/i386inc.asm: got rid of -DFORMAT_* nasm flags
        and use built-in preprocessor tests instead.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@448 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3723deea1601ba0dbda44ce09f77d6e1019226ac
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Mar 1 22:12:22 2006 +0000

      * common/i386/i386inc.asm: tell the ELF linker about our stack properties
        so that it does not assume the stack has to be executable.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@447 df754926-b1dd-0310-bc7b-ec298dee348c

commit 70c140345c62ecb13ffa1af412f1e8f9f10567d2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 28 19:49:00 2006 +0000

    10l in r443 (p4x4 chroma)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@446 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3bd4ade21dcbf30287f3a350c25bda26ea667d22
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 27 07:31:36 2006 +0000

    copy current macroblock to a smaller buffer, to improve cache coherency and reduce stride computations.
    part 3: asm
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@445 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4ecb5f8ed11073fd4e6a4673a1275c430478aefc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 27 07:29:24 2006 +0000

    copy current macroblock to a smaller buffer, to improve cache coherency and reduce stride computations.
    part 2: intra prediction
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@444 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8f05dffc4574c40557a5a161b18c4e6037aeec48
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 27 07:28:20 2006 +0000

    copy current macroblock to a smaller buffer, to improve cache coherency and reduce stride computations.
    part 1: memory arrangement.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@443 df754926-b1dd-0310-bc7b-ec298dee348c

commit 388658234c05e9b282569be052a5977d6cc9e812
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 27 07:18:23 2006 +0000

    h->mc.copy()
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@442 df754926-b1dd-0310-bc7b-ec298dee348c

commit 34cbb9170c3b9daeae91ef4aa2a48c2ec9bdfbc8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 27 06:32:43 2006 +0000

    lowres intra used wrong neighboring pixels
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@441 df754926-b1dd-0310-bc7b-ec298dee348c

commit bca81cae09973cd349382d8612ad6aaf412444b4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 23 22:46:21 2006 +0000

    trellis=2 slightly affected intra analysis even without subme=6
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@440 df754926-b1dd-0310-bc7b-ec298dee348c

commit e5ed306c33a9b03d083660bb521758c76bdf36bd
Author: Sam Hocevar <sam@videolan.org>
Date:   Thu Feb 16 22:00:46 2006 +0000

      * encoder/ratecontrol.c: OS X support for exp2f and sqrtf.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@439 df754926-b1dd-0310-bc7b-ec298dee348c

commit 14b26394bd35f6ab03c6d4b7424ddea893a5bfa1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 16 01:32:56 2006 +0000

    allow delta_qp > 26
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@438 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5fbca87deb6e3a79b9d3b6b31ea85fc79e49534f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 14 01:21:43 2006 +0000

    ratecontrol didn't always account for header bits, causing an undersize in multipass with --ratetol inf.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@437 df754926-b1dd-0310-bc7b-ec298dee348c

commit 12b778b8f4e8501cf06ba3513fc0e824d4a87ac1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 13 17:36:22 2006 +0000

    -q0 --b-rdo wasn't lossless
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@436 df754926-b1dd-0310-bc7b-ec298dee348c

commit 14f3cc06834e207b37222d93b7c6aea47b17524d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 13 04:34:15 2006 +0000

    cosmetics
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@435 df754926-b1dd-0310-bc7b-ec298dee348c

commit 476a0f93c9aa42a39c3518f891e024ef41b1056e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 12 06:50:19 2006 +0000

    allow ',' separator for --filter
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@434 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8dfd87aeef4c1523d60684ca6c1368007a24aad4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 12 06:28:22 2006 +0000

    VfW: 10l in bime and refs
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@433 df754926-b1dd-0310-bc7b-ec298dee348c

commit d53108a30cd1b1284c59eb9e8bdfac157a3ddb37
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 12 01:36:21 2006 +0000

    more lowres mv clipping fixes
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@432 df754926-b1dd-0310-bc7b-ec298dee348c

commit eb32d28463ab8433fba16851d4796d041b8de39f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Feb 11 22:04:57 2006 +0000

    VfW: cosmetics
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@431 df754926-b1dd-0310-bc7b-ec298dee348c

commit 60e848749dbcb8a44709675ea391f5c28a8a8c1f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Feb 11 20:11:05 2006 +0000

    VfW: support trellis, brdo, nr, bime.
    patch by Dan Nelson (dnelson at allantgroup dot com).
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@430 df754926-b1dd-0310-bc7b-ec298dee348c

commit 681b394485671f977a1a19d2279ace4c22eb0177
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 10 21:58:43 2006 +0000

    amd64 mmx for some intra pred functions
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@429 df754926-b1dd-0310-bc7b-ec298dee348c

commit e1d852d2947dfaac201dfb7149070ed341caa64f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 10 20:52:48 2006 +0000

    dequant_mmx made incorrect assumptions about extreme inputs. now uses 32bit in more cases.
    patch by Christian Heine.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@428 df754926-b1dd-0310-bc7b-ec298dee348c

commit fed2847ca9c4b9f8240be78145681d12ea85e1e9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 10 01:16:40 2006 +0000

    lowres can reuse the normal mv cost table
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@427 df754926-b1dd-0310-bc7b-ec298dee348c

commit f959a749aec65753e77a0b5566adb18d6a9af87f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 9 04:51:55 2006 +0000

    r422 broke x264_center_filter_mmxext
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@426 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7125f9174c8d32f66bf9264c2b986dd1c03f4a27
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Feb 8 12:45:21 2006 +0000

      * configure: define FORMAT_ELF under Linux and FORMAT_AOUTB under *BSD.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@425 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5d5c5cc213fb25a1fd151af80ab0a4fb614dd32c
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Feb 8 11:07:06 2006 +0000

      * common/i386/i386inc.asm: support for ELF, a.out and Mach-O objects.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@424 df754926-b1dd-0310-bc7b-ec298dee348c

commit 78d31c22dcc1c42d6b2009b52ba758958dd1bff4
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Feb 8 09:32:03 2006 +0000

      * configure: added a --enable-pic flag.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@423 df754926-b1dd-0310-bc7b-ec298dee348c

commit dc454eab263d463d2eeecf627aae31a10a5d080c
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Feb 8 09:26:56 2006 +0000

      * Additional fixes to the PIC versions of assembly routines. They now pass
        all checkasm tests and output streams are bit-by-bit identical, which
        sounds good.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@422 df754926-b1dd-0310-bc7b-ec298dee348c

commit ac9da5dbb4447c64bf9b82e849f4ae233c4413d3
Author: Sam Hocevar <sam@videolan.org>
Date:   Wed Feb 8 09:03:28 2006 +0000

      * tools/checkasm.c: print the random seed used for the test, to allow for
        replays. It looks like dequant_4x4 fails 1 time out of 600, with the
        following seeds for instance: 1423 1957 2149 2455 3385 3403 3724 4095.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@421 df754926-b1dd-0310-bc7b-ec298dee348c

commit bb21f3a920ffefe84a77933c060775b2089a9c6c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Feb 8 00:53:35 2006 +0000

    cosmetics in mc_chroma
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@420 df754926-b1dd-0310-bc7b-ec298dee348c

commit 80b669bbc73e92944954cadc612650ba08b80358
Author: Sam Hocevar <sam@videolan.org>
Date:   Tue Feb 7 19:05:47 2006 +0000

      * Oh, so what I thought was unused code was in fact used. This fixes my
        breakage but makes the code rather slow in PIC mode. I will fix it later.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@419 df754926-b1dd-0310-bc7b-ec298dee348c

commit eea893893af7ae49cd9cab333279f0323302db81
Author: Sam Hocevar <sam@videolan.org>
Date:   Tue Feb 7 17:40:56 2006 +0000

      * Support for x86 position-independent code (PIC), needed for dynamic libs
        on Mac OS X Intel. I tried to make this as little intrusive as possible.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@418 df754926-b1dd-0310-bc7b-ec298dee348c

commit 97f05071bb3aed659785ec10ccd6824020dfaef8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 6 21:34:52 2006 +0000

    msvc: #define isfinite()
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@417 df754926-b1dd-0310-bc7b-ec298dee348c

commit 19d07afabccda339852d7d49d3d5b11d538181f3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 6 06:14:04 2006 +0000

    x86 mmx for some intra pred functions
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@416 df754926-b1dd-0310-bc7b-ec298dee348c

commit d2dada763c6114b6245c6b468dfc2287123d12c5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 6 05:53:44 2006 +0000

    cosmetics: reorganize intra prediction dsp
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@415 df754926-b1dd-0310-bc7b-ec298dee348c

commit 791495e3d82b982ffa086593956bb96da45973e2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 6 03:49:38 2006 +0000

    too many systems don't have off_t; use uint64_t instead.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@414 df754926-b1dd-0310-bc7b-ec298dee348c

commit ce237ab663525259ce64423341ce6893309cee88
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Feb 4 05:39:02 2006 +0000

    fix order of frame evaluation in pre-me
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@413 df754926-b1dd-0310-bc7b-ec298dee348c

commit f116707e12e1ba980c8cf6a091f3290ba4d75af4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 3 18:23:26 2006 +0000

    update AUTHORS
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@412 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8b498e443950c642fd5f6c1406636f4ab5def27e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 2 04:37:05 2006 +0000

    fix a check for NaN in ratecontrol
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@411 df754926-b1dd-0310-bc7b-ec298dee348c

commit e3b1f110b9eb2286e481febf29a015256a48c576
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 29 08:46:20 2006 +0000

    fix mv predictors in pre-me for b-adapt.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@410 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6da9fc956cdafd6dde4c334568c18bd7bef292c1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 23 02:02:50 2006 +0000

    print --nr in sei params. tweak ratecontrol param checking.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@409 df754926-b1dd-0310-bc7b-ec298dee348c

commit be6cce52d13fc6424e6244bfce03f67894c15d1e
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Jan 19 00:05:42 2006 +0000

    I've moved
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@408 df754926-b1dd-0310-bc7b-ec298dee348c

commit 273dc626b8b4f7cfe166be728038d9d3e9fd1fb7
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Jan 19 00:05:05 2006 +0000

    write correct VUI timing info
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@407 df754926-b1dd-0310-bc7b-ec298dee348c

commit d125e4373da6f5e50d2e4ab73aab2d97732212c5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 18 07:42:29 2006 +0000

    early termination in UMH search
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@406 df754926-b1dd-0310-bc7b-ec298dee348c

commit a373f2aef22a54c8d597156429ff7f0ad41f1c9e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 18 07:08:01 2006 +0000

    split mv_range enforcement from edge-of-frame clipping. fixes an occasional artifact with long mvs.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@405 df754926-b1dd-0310-bc7b-ec298dee348c

commit 61b57afb7b614ab09a0508c4c53ca411f4f675f8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 18 04:29:18 2006 +0000

    cosmetics: suppress warning on unused variables
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@404 df754926-b1dd-0310-bc7b-ec298dee348c

commit 271c1947a599ccdc3a509260da2d5cd6699148d7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 17 21:16:28 2006 +0000

    cosmetics: simplify #includes
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@403 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7fb7e61b6247d9571fe7244f03231adbcc1d7e75
Author: Sam Hocevar <sam@videolan.org>
Date:   Mon Jan 16 12:23:35 2006 +0000

      * configure: NSLU2 platform support (why oh why)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@402 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1d82beb4c26d82d068e84265344e078854907c1e
Author: Eric Petit <titer@videolan.org>
Date:   Sun Jan 15 22:29:15 2006 +0000

     Re-enabled x86 optims on MacIntel, assume Nasm CVS is installed and
      -f macho -DPREFIX just seems to do the job
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@401 df754926-b1dd-0310-bc7b-ec298dee348c

commit 096c4eb70a5b3cc5aebda44e62b4d3dd83edbc9c
Author: Eric Petit <titer@videolan.org>
Date:   Sat Jan 14 16:11:48 2006 +0000

     Quick compile fix for OS X / Intel
     Optimizations are disabled at the moment. In order to get them to
     work, we'd need either nasm to be able to output Mach-O object files,
     or we should convert the assembly code to something OS X can handle,
     like gas.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@400 df754926-b1dd-0310-bc7b-ec298dee348c

commit 743ad5971608e491bd1d70a31e9bfdc496301eef
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 13 06:54:10 2006 +0000

    cli: large file support
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@399 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0abf15d29e904339fb9f606e83e01c9265e54b15
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 10 07:31:29 2006 +0000

    dct-domain noise reduction (ported from lavc)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@398 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6bf39eaa780ef0877b7d6fe8497df9a38d4baa3d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 9 06:18:39 2006 +0000

    early termination within large SADs. ~1% faster UMH, ~4% faster ESA.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@397 df754926-b1dd-0310-bc7b-ec298dee348c

commit 73a45ef20dec4dc709e029f175eb20ae8eb099b9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jan 5 19:11:38 2006 +0000

    mkv: increase nalu size size to 4 bytes.
    patch by Haali.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@396 df754926-b1dd-0310-bc7b-ec298dee348c

commit d3c2f10353e8409932f05be20c11f4eae09974c1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 4 03:43:15 2006 +0000

    less 64bit math: 12% faster trellis
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@395 df754926-b1dd-0310-bc7b-ec298dee348c

commit 28c0f2419db96278a14d126de3859a67d31d0a84
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 1 10:14:17 2006 +0000

    more error checking of input parameters
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@394 df754926-b1dd-0310-bc7b-ec298dee348c

commit bf1e4d1faba2eff0f54029ccf4d98ce9ef09a757
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 1 09:39:29 2006 +0000

    always write sps.vui
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@393 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7091b47e853fb45ae2d9432ea7ffe085efa31936
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 31 14:16:02 2005 +0000

    use some extra packing modes for CQM headers.
    fix typo in --cqm4p[yc].
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@392 df754926-b1dd-0310-bc7b-ec298dee348c

commit a977f764240cb9139c2152448bb85dd89260639f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 30 08:26:42 2005 +0000

    MSVC compatibility fixes
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@391 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2fa8f84b6e108222735c2895b6419ed8c29ef031
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 30 04:56:49 2005 +0000

    joint bidirectional motion refinement (--bime)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@390 df754926-b1dd-0310-bc7b-ec298dee348c

commit 684d2d58a5e60bec5bd45834e1c87b4b150c4244
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 24 20:59:13 2005 +0000

    fix some overflows in mp4 timestamps.
    patch by Francesco Corriga.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@389 df754926-b1dd-0310-bc7b-ec298dee348c

commit 25b40141a3d6569bfdc58a94d3004a89211029d6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 20 02:57:52 2005 +0000

    Successive elimination motion search: same as exhaustive search, but 2-3x faster.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@388 df754926-b1dd-0310-bc7b-ec298dee348c

commit a9607af8a776bb00aa463fa926fb4e4661eff1e4
Author: Eric Petit <titer@videolan.org>
Date:   Tue Dec 13 16:32:39 2005 +0000

     Fixed cc_check on OS X (gcc -o /dev/null always fails)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@387 df754926-b1dd-0310-bc7b-ec298dee348c

commit b914f8081539c243a7a3f5a15a11145e06466da9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 13 11:24:02 2005 +0000

    postpone pskip decision until after p16x16ref0 motion search.
    reduces the number of erroneous pskips in low-detail regions.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@386 df754926-b1dd-0310-bc7b-ec298dee348c

commit cc3308878925bf33c0e2707c9177dd345ed238a5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 7 17:29:20 2005 +0000

    configure: autodetect gpac, avis, pthread, vfw
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@385 df754926-b1dd-0310-bc7b-ec298dee348c

commit 38fcbfbeb53d402f9431f18709aee37987dcf318
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Dec 5 12:46:46 2005 +0000

    --no-fast-pskip
    patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@384 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5ce628fa0413b7d87e87619a65a9e1cabe5cd5be
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Dec 5 12:38:46 2005 +0000

    cosmetics: config.h is now modified only by configure. make now calls configure if you haven't.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@383 df754926-b1dd-0310-bc7b-ec298dee348c

commit f03dbfd42d110e982323f78aac131024e0687590
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Dec 4 21:19:17 2005 +0000

    MP4: set "track enabled" flag.
    patch by Robert Swain.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@382 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8443f260777556ebd6132f6448d406c769194e23
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Dec 3 01:50:52 2005 +0000

    faster subpel motion search.
    patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@381 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8f0d66cc0973cfb8360fad55b22248fe620def34
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 28 07:43:22 2005 +0000

    don't use gnu extensions to grep and sed.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@380 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6826cf2faf2692b0bb37780148a89b0e58826f6b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 28 02:03:12 2005 +0000

    pkg-config: major.minor.patch version
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@379 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8e44d938b225c0a4dabad257b471335fdd0fe18d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 28 00:29:10 2005 +0000

    `make fprofiled` to automate gcc -fprofile-generate/use
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@378 df754926-b1dd-0310-bc7b-ec298dee348c

commit 71b75efe735e76d8d6ec4b51cd09b477dc0908cc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Nov 27 23:24:43 2005 +0000

    10l
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@377 df754926-b1dd-0310-bc7b-ec298dee348c

commit bdddcf97476ae25a8bd80339090c399b59b8c2f3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Nov 27 23:23:49 2005 +0000

    param.b_repeat_headers (not yet used)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@376 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8c7611c14281f5d597262aa66771f0b9b50366a8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 19:27:54 2005 +0000

    support pkg-config.
    patch by Caro.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@375 df754926-b1dd-0310-bc7b-ec298dee348c

commit 78d2f605d0293484d50d58b74489700b65cc0472
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 06:59:48 2005 +0000

    write encoding options to the userdata SEI and to the 2pass statsfile.
    check for incompatible options in the 2nd pass.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@374 df754926-b1dd-0310-bc7b-ec298dee348c

commit c010ba1dde8fb861417e30c0d4316c6cb33064dd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 05:02:33 2005 +0000

    change default level to "5.1"
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@373 df754926-b1dd-0310-bc7b-ec298dee348c

commit 05e6cf0516ff5646c841fa66d96be5e0264b0daa
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 02:53:53 2005 +0000

    skip dequant+idct of decimated blocks.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@372 df754926-b1dd-0310-bc7b-ec298dee348c

commit bc478923aefe1e4aa5e0201b2214f1ed8ad8f719
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 02:48:39 2005 +0000

    after a 1pass ABR, print the value of --crf which would result in the same bitrate.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@371 df754926-b1dd-0310-bc7b-ec298dee348c

commit 528cbd1f16cd20b3ee8bbfd5b5edf6634a7f4634
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 02:43:11 2005 +0000

    subpel search: always check mvp.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@370 df754926-b1dd-0310-bc7b-ec298dee348c

commit 429e0603017630feb239e22de3eb279ee02932c9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 22 02:36:29 2005 +0000

    faster b-rdo (skip RD of modes with bad SATD).
    patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@369 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6fe92323b2e007e3a31714fb5b090b732fc24e62
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Nov 18 11:20:07 2005 +0000

    RD mode decision for B-frames (--b-rdo)
    patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@368 df754926-b1dd-0310-bc7b-ec298dee348c

commit 322c42ad8ca9ac3d4755e62fadb29c3ef7a4ecf5
Author: Sam Hocevar <sam@videolan.org>
Date:   Fri Nov 11 23:57:18 2005 +0000

      * common/amd64/quant-a.asm: added missing GLOBAL flags that prevented PIC
        builds, thanks to Anssi Hannula.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@367 df754926-b1dd-0310-bc7b-ec298dee348c

commit ffd008ebdd6ebbf6f83dbf08315f3765a072261a
Author: Sam Hocevar <sam@videolan.org>
Date:   Fri Nov 11 17:46:24 2005 +0000

      * configure: added the Alpha platform.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@366 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9187a8f84ba24b2825487971ce94db404303393d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 7 07:53:42 2005 +0000

    use array_non_zero() when we don't need a full array_non_zero_count()
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@365 df754926-b1dd-0310-bc7b-ec298dee348c

commit d18bbd3b2e28958b9e153b62033a7f66f6fea0ec
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Nov 6 07:07:30 2005 +0000

    mmx dequant. up to 3% speedup w/ RD.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@364 df754926-b1dd-0310-bc7b-ec298dee348c

commit d447c2d3db71e0b422ed9330ac26410ba9f90622
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Nov 6 00:26:43 2005 +0000

    allow --level to understand names in addition to idc
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@363 df754926-b1dd-0310-bc7b-ec298dee348c

commit 87e5994706c76bd628c7e23f0dca95f05e922a7c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Nov 4 11:39:58 2005 +0000

    check (most of) the levels constaints.
    set default max_mv_range based on level_idc.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@362 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1e80b69b3717e019f6cbab071582f9812b85fa4d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 22:57:52 2005 +0000

    if p16x16 RD decides to code a MB as p_skip, then don't check smaller partitions.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@361 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5c43fb3b66b5ccf4ae0c4bd63599bf3f64d4557e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 22:20:47 2005 +0000

    Trellis RD quantization.
    around +.2 dB
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@360 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3f1ed7cee623b64fd66fc60db62275df23177966
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 20:16:56 2005 +0000

    cosmetics: XCHG macro
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@359 df754926-b1dd-0310-bc7b-ec298dee348c

commit 662e56b59eee5ddc15e5fb8c53c7cd49bcc39eeb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 11:27:24 2005 +0000

    skip a few duplicate candidates in qpel search.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@358 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2107a4f7204f0a764830b562e86d50f2b979a0b8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 11:26:17 2005 +0000

    skip a few duplicate candidates in fullpel hex&umh search.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@357 df754926-b1dd-0310-bc7b-ec298dee348c

commit 01c05a79022c2349ddba2f3e101f8a1d26500906
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 06:53:59 2005 +0000

    cli: arithmetic overflow in bitrate printing
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@356 df754926-b1dd-0310-bc7b-ec298dee348c

commit db67b818250aa75680df5ff15ff58418e850d321
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 06:47:19 2005 +0000

    cosmetics in x264_cabac_mb_type
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@355 df754926-b1dd-0310-bc7b-ec298dee348c

commit 89d2c6a13fc2c864191af2ad86d07dee69a6c75b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 06:40:46 2005 +0000

    X264_ABS => abs
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@354 df754926-b1dd-0310-bc7b-ec298dee348c

commit d13a18680572b8ae1075f9a2d53bf57b51eab6ec
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 3 02:42:48 2005 +0000

    amd64 sse2 8x8dct. 1.45x faster than mmx.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@353 df754926-b1dd-0310-bc7b-ec298dee348c

commit 08e19ed8f28e5bb1fdd951eb2bab04c0248f9af1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Nov 1 03:34:48 2005 +0000

    allow 1pass ratecontrol with keyint=1
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@352 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9617e25c2ea08d029decb106fa7cf51a13a03706
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 31 04:02:15 2005 +0000

    cli: print estimated time left in --progress
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@351 df754926-b1dd-0310-bc7b-ec298dee348c

commit d484bce60eb3405b2d1bc666a61120dea6bbe294
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 31 02:52:33 2005 +0000

    doc/ratecontrol.txt
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@350 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5aced82614a4be3106eec04ba983d122e9e7f668
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 31 02:50:36 2005 +0000

    rm doc/dct.txt
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@349 df754926-b1dd-0310-bc7b-ec298dee348c

commit b179e4740f7624ea1be4db0682a658fe6822a9e8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 30 23:42:24 2005 +0000

    in constant QP mode, write that QP in the PPS to save a few bits in each slice header.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@348 df754926-b1dd-0310-bc7b-ec298dee348c

commit 108f197cb62a9f29b0b671e2eceafd8ccc4ded21
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 30 06:22:29 2005 +0000

    faster decimation
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@347 df754926-b1dd-0310-bc7b-ec298dee348c

commit fa01979f7260543c845d0823d4a7c0774bcf5a16
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 29 04:05:57 2005 +0000

    cosmetics: fix an erroneous warning from r340.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@346 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8d857c5601be89dc32d995c519c096805249f77f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 29 03:00:50 2005 +0000

    cosmetics: change literal cabac_block_cat to an enum.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@345 df754926-b1dd-0310-bc7b-ec298dee348c

commit c636f90355a1855b0b2576d79d34541c063daee5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 29 02:21:39 2005 +0000

    cabac: merge i_state with i_mps. bs_write multiple bits at once.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@344 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5167ebb2bcfdd525d47abc91329d3588feab0b5f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 29 01:43:29 2005 +0000

    remove unused adaptive cabac_idc code
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@343 df754926-b1dd-0310-bc7b-ec298dee348c

commit 817ef1468a80b20a76b4c12af44e3b85339880d5
Author: Eric Petit <titer@videolan.org>
Date:   Thu Oct 27 10:27:04 2005 +0000

     Fixed compilation on PPC (spotted by David Wolstencroft)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@342 df754926-b1dd-0310-bc7b-ec298dee348c

commit 109ae085288c0068e2f40bfffd41070bd25dfa8b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Oct 26 08:38:11 2005 +0000

    mmx deblocking.
    2.5x faster deblocking functions, 1-4% overall.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@341 df754926-b1dd-0310-bc7b-ec298dee348c

commit 166601503800e00a33d88eb488da744a486ecb77
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Oct 26 07:04:59 2005 +0000

    If frame count is known at init time (cli & vfw), then abort if the 2nd pass
    exceeds the length of the 1st pass.
    If it's not known (mencoder), then report a non-fatal error when we run off the
    end of the 1st pass stats, and switch to constant QP.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@340 df754926-b1dd-0310-bc7b-ec298dee348c

commit 75832019417943ed6a68b99bd75f5ef7efe1d998
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Oct 26 06:40:51 2005 +0000

    move checkasm to tools/
    delete unused stuff in testing/
    `make clean` deletes checkasm and avc2avi
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@339 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6347263823e0fce26593fe36d812ba95931ebcb0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Oct 26 06:31:35 2005 +0000

    checkasm: check 8x8dct, mc average, quant, and SSE2.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@338 df754926-b1dd-0310-bc7b-ec298dee348c

commit 57900a1b0caa43372433b7bca25b26d764fadaff
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Oct 26 06:30:19 2005 +0000

    r336 broke amd64 x264_pixel_sad_16x16_sse2 (though it's not being used)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@337 df754926-b1dd-0310-bc7b-ec298dee348c

commit 360eb55eda428cba8d6d4e411ff87e0d5dedbf05
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Oct 25 10:57:29 2005 +0000

    Windows 64bit asm.
    patch by squid_80.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@336 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6d969739baac6b9f7e9bcb44c3b7dbc21890dd1b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 24 16:15:11 2005 +0000

    delete build/cygwin because it's handled in the main configure/makefile.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@335 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0ddc9d5524a48882ac804948775fd7a35b3a07da
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 23 09:52:34 2005 +0000

    --crf: 1pass quality-based VBR.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@334 df754926-b1dd-0310-bc7b-ec298dee348c

commit 06f1dafd17e9ebb1cd9d271fd72eb0c04e2337bc
Author: Eric Petit <titer@videolan.org>
Date:   Sun Oct 16 09:53:05 2005 +0000

     Added --enable-gprof (patch by Johannes Reinhardt)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@333 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2ac5fe040b35546a7d7bc0b463fd4a9cb268ff3b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 16 05:44:50 2005 +0000

    cosmetics: remove #if0'ed code
    patch by Robert Swain.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@332 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1647e6d6e147b3e2072b4f36b1ed27df0715ff0d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 16 01:47:30 2005 +0000

    faster bs_write
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@331 df754926-b1dd-0310-bc7b-ec298dee348c

commit b659ca6f53df6f7b1b423112ef0f95e7eb166ef5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 15 04:11:06 2005 +0000

    during RDO, skip the bitstream writing and just calculate the number of bits
    that would be used. speedup: cabac +4-8%, cavlc +2-4%.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@330 df754926-b1dd-0310-bc7b-ec298dee348c

commit 48c2e935e3638a38c988b11204ff52a85bf48fc9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 15 00:27:17 2005 +0000

    Use SAD instead of SATD for halfpel motion search.
    Move multiref termination after halfpel search.
    Total: 3-7% speedup and +/-.02 dB.
    patch by Alex Wright.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@329 df754926-b1dd-0310-bc7b-ec298dee348c

commit a8ac858b06ddca09acd98c35456b1008412cbe94
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Oct 13 18:19:38 2005 +0000

    VfW: mixed refs.
    patch by celtic_druid.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@328 df754926-b1dd-0310-bc7b-ec298dee348c

commit d69837d312aa09c020416008c26f7008783d8c7f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 10 22:51:26 2005 +0000

    allow non-mod16 resolutions
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@327 df754926-b1dd-0310-bc7b-ec298dee348c

commit 67f2a4791ca35a019dd645818c2c95f2b88c936e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 10 01:29:17 2005 +0000

    VfW: prevent duplicate free() in compress_end()
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@326 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0bde6ae12b9eda914fa51da95bef8beae09ea8f0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Oct 10 00:32:45 2005 +0000

    cosmetics: remove declarations of nonexistent asm functions
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@325 df754926-b1dd-0310-bc7b-ec298dee348c

commit 015ac5865c81ee94125493aca28d0ccbc0f639b4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 9 21:55:53 2005 +0000

    cosmetics (whitespace) in VfW
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@324 df754926-b1dd-0310-bc7b-ec298dee348c

commit 54d413b9ad22244599489a0c50e99fafa07b89a1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 9 21:37:56 2005 +0000

    VfW: some reorganization
    patch by Francesco Corriga.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@323 df754926-b1dd-0310-bc7b-ec298dee348c

commit a75462ead66beb222aae1efe1958848c26dc4be6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 9 06:10:03 2005 +0000

    cosmetics: merge some duplicate tables
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@322 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1c6ccbf543ac7725e46f94bdb24fa6784d315962
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 9 03:32:56 2005 +0000

    remove cabac byte-stuffing code, because it just wastes bits in lossless, and does nothing at all at sane bitrates.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@321 df754926-b1dd-0310-bc7b-ec298dee348c

commit acee2d5168a39f301b7cda1d4effe943e321e1f8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 9 00:14:30 2005 +0000

    don't allocate lowres planes if they won't be used (i.e. in the 2nd pass).
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@320 df754926-b1dd-0310-bc7b-ec298dee348c

commit 938c52d2a7285c5872eea2f5d165a1b26699b349
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 8 21:17:44 2005 +0000

    cosmetics: move some stuff from macroblock_encode to cache_save
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@319 df754926-b1dd-0310-bc7b-ec298dee348c

commit a0012bf38d366b1b97e571fe27c665139f3c631c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 8 06:49:29 2005 +0000

    new option: --mixed-refs
    Allows each 8x8 or 16x8 partition to independently select a reference frame, as opposed to only one ref per macroblock.
    patch mostly by Alex Wright (alexw0885 at hotmail dot com).
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@318 df754926-b1dd-0310-bc7b-ec298dee348c

commit 68592115c77b8fcd091b32f2d39d8e129a95bbef
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 8 04:45:51 2005 +0000

    cosmetics in option parsing
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@317 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4b925a1cfbdd6613449b70283cd6f80adbeb1f27
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 8 03:52:10 2005 +0000

    expose the rest of the VUI flags.
    patch by Christian Heine.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@316 df754926-b1dd-0310-bc7b-ec298dee348c

commit aebad793a69d175b139da28aafff6dbfec81d7c1
Author: Sam Hocevar <sam@videolan.org>
Date:   Tue Oct 4 12:08:33 2005 +0000

      * common/amd64/mc-a.asm: use RIP-relative addressing in PIC mode.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@315 df754926-b1dd-0310-bc7b-ec298dee348c

commit db80497dd2e8bb0cd02c45d73ca74294b0671b61
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Oct 4 07:12:21 2005 +0000

    temporal predictors for 16x16 motion search.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@314 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7e165477fb69bc107e3fcfdac3e2cb53541870f6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 2 22:07:12 2005 +0000

    slightly faster/cleaner block_residual_write_cabac
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@313 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4c8ccfe6de4a44cd46bcaf1fc17ae90bfe34d958
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 2 20:12:46 2005 +0000

    cosmetics
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@312 df754926-b1dd-0310-bc7b-ec298dee348c

commit ce3a422466b4df055f5b67116483eee20676939c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 2 05:50:35 2005 +0000

    cli: fix a crash on piped input.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@311 df754926-b1dd-0310-bc7b-ec298dee348c

commit cb88eb7bf7756e25123cdfffdbdc49abc169ef33
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 2 05:01:39 2005 +0000

    stats summary: separately report all 5 partition sizes, and add ref usages
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@310 df754926-b1dd-0310-bc7b-ec298dee348c

commit bab1d61dd306199747dd8f949bde2a49b20c6f70
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Oct 2 04:03:06 2005 +0000

    disposable frames shouldn't get their own coded_frame_num.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@309 df754926-b1dd-0310-bc7b-ec298dee348c

commit 31a36aa8621c7bd0264b87421e8d0a490d7c45f5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 1 19:33:26 2005 +0000

    typo in ia32 x264_pixel_avg_weight_w8_mmxext
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@308 df754926-b1dd-0310-bc7b-ec298dee348c

commit 458e63cadb0c6295273fd85def3aca0098a309e3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 1 06:48:13 2005 +0000

    mmx avg (already existed by not used for bipred)
    mmx biweighted avg (3x faster than C)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@307 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3112619429c0cf781817867f0d124c882740d66f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Oct 1 04:43:31 2005 +0000

    cosmetics: move avg function ptrs from pixf to mc.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@306 df754926-b1dd-0310-bc7b-ec298dee348c

commit 82d5e6faa6aa8ca8888481019513782ef9701240
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Sep 27 19:59:09 2005 +0000

    with B-pyramid, forget old refs in POC order instead of coded order.
    (before, b_skip was unavailable with pyramid and ref=1)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@305 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4223e3874f7268d9ea36f32a2150c3a123881f4b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Sep 26 03:00:10 2005 +0000

    typo in r296.
    patch by lurui.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@304 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2a3417b0fe4a806480e49a6dd13ab8d625b03466
Author: Sam Hocevar <sam@videolan.org>
Date:   Sun Sep 25 22:12:56 2005 +0000

      * common/amd64/*.asm: use RIP-related addressing in PIC mode.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@303 df754926-b1dd-0310-bc7b-ec298dee348c

commit 77997bffd6fdb3727c31f787767aafa11bc62266
Author: Sam Hocevar <sam@videolan.org>
Date:   Sun Sep 25 19:52:57 2005 +0000

      * common/amd64/mc-a.asm: removed useless global variables
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@302 df754926-b1dd-0310-bc7b-ec298dee348c

commit b2e9af98bf5f44363f3877baf7bfa6cce4d64805
Author: Sam Hocevar <sam@videolan.org>
Date:   Sun Sep 25 13:52:58 2005 +0000

      * configure: support extra $(ASFLAGS) through --extra-asflags.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@301 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1b16298a215393dc741fabb0e7212c0b0ee53846
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 24 19:41:50 2005 +0000

    reorganized VfW UI.
    patch by Antony Boucher, graphic by Jarod.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@300 df754926-b1dd-0310-bc7b-ec298dee348c

commit 35f641710900a39ea208860befc9cfe35043f7cd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 24 18:54:49 2005 +0000

    MP4 output: update to GPAC 0.4 API.
    patch mostly by Robert Swain.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@299 df754926-b1dd-0310-bc7b-ec298dee348c

commit cfebeac1a475f4a2ee57e5dd3cd1ff0c560f38db
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 24 18:22:02 2005 +0000

    faster mmx quant 15bit, and add 16bit version. total speedup: ~0.3%
    patch by Christian Heine.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@298 df754926-b1dd-0310-bc7b-ec298dee348c

commit 49ac5e2f921ef940701e31ca7e6246e44480783b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 24 17:04:21 2005 +0000

    faster mmx satd. *x16: 20%, *x8: 10%, total: 2-4%.
    ia32 patch by Christian Heine, amd64 port by me.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@297 df754926-b1dd-0310-bc7b-ec298dee348c

commit 76192dcb1cc7720a1e633ba6b0fbdb2fbacbe9bb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 24 16:58:36 2005 +0000

    allow i4x4 and i8x8 down-left prediction with emulated top-right samples.
    based on a patch by Johannes Reinhardt (Johannes dot Reinhardt at uni-konstanz dot de)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@296 df754926-b1dd-0310-bc7b-ec298dee348c

commit 690a02b1c9132bfecc88068de757e6b0e5ef7b84
Author: Steve Lhomme <robux@videolan.org>
Date:   Tue Sep 20 16:18:23 2005 +0000

    fps patch by Haali
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@295 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8a5de70e926c334bcf422d21e8995b7be6ecf496
Author: Sam Hocevar <sam@videolan.org>
Date:   Tue Sep 20 15:50:41 2005 +0000

      * configure: added support for ia64, mips/mipsel, m68k, arm, s390 and hppa
        platforms, as well as linux sparc.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@294 df754926-b1dd-0310-bc7b-ec298dee348c

commit c4ffed4986fe4706c0c5c2b514ce95668f0b8393
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Sep 14 17:20:17 2005 +0000

    MMX quantization functions, and optimization of the C versions.
    about 3x faster quant_8x8, quant_4x4, quant_4x4_dc, and quant_2x2_dc. total speedup: 4-10%.
    patch by Alexander Izvorski and Christian Heine.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@293 df754926-b1dd-0310-bc7b-ec298dee348c

commit 16f423a00ee91f692d441a31fa99394543995582
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Sep 10 11:23:09 2005 +0000

    SSE2 pixel comparison functions
    P4: SAD 16x*, SSD 16x*, SATD 16x*: 30% faster, SATD 8x8: 15% faster, total: 2-4% faster
    K8: SSD 16x*: 6% faster, total: not much
    patch by Alexander Izvorski.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@292 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6db6362c9d558d0acea9be1975344d217f453ab9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Aug 30 17:11:35 2005 +0000

    10l in rev290: duplicate declaration of x264_pixel_sub_8x8_mmx.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@291 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2d05702f88d1058b2ecd3945cd01269eb86829bb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Aug 29 20:37:31 2005 +0000

    mmx 8x8 dct.
    On a K8: sub16x16_dct8 3806->1461, add16x16_idct8 4852->1297 cycles. total speedup: 1-3%.
    patch by Christian Heine (sennindemokrit at gmx dot net)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@290 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2e5b0b93384f8d48e32b26beb6badb8a3236c29b
Author: Eric Petit <titer@videolan.org>
Date:   Mon Aug 29 13:20:45 2005 +0000

     VC++ fix (thx fenrir)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@289 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2a6e7a685391f4ae465c79111583c91fb26cb5a8
Author: Eric Petit <titer@videolan.org>
Date:   Mon Aug 29 11:20:23 2005 +0000

     x264.h: issue an explicit warning when neither stdint.h nor inttypes.h
     has be included before x264.h
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@288 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0403fed87a9cea867afa55d45500f6396c326659
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Aug 17 15:18:42 2005 +0000

    VfW: SAR wording. patch by Sharktooth.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@287 df754926-b1dd-0310-bc7b-ec298dee348c

commit 48af1d03ed42e14b51f5e9c6986bd910aaab5b7a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Aug 16 15:09:41 2005 +0000

    cli: workaround to allow "--ratetol inf" on win32.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@286 df754926-b1dd-0310-bc7b-ec298dee348c

commit 796da8ed7e5ab52eb64d232c89e7e38bfa77215c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Aug 9 18:48:57 2005 +0000

    fix spatial direct mv prediction with B-pyramid. copied from libavcodec.
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@285 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1459ac0dbca3f1f31557d9d8bb8911cb980aad6b
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 9 07:20:26 2005 +0000

     * all: Patch by Mike Matsnev :
    
    "The following things were fixed:
     * AR calculation was broken on previous import
     * Wrong conditional in write_nalu_mkv() was fixed
     * Error checking was added in all places"
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@284 df754926-b1dd-0310-bc7b-ec298dee348c

commit 47673d940a290207345bb13f08c371aa435e92a2
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 9 07:17:26 2005 +0000

     xyuv: bug fixes + autodetect of video size.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@283 df754926-b1dd-0310-bc7b-ec298dee348c

commit d9218cb35688033a78f936e963a4ca3572cfdb29
Author: Eric Petit <titer@videolan.org>
Date:   Sun Aug 7 17:17:05 2005 +0000

     Run ranlib after make install (OS X needs that)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@282 df754926-b1dd-0310-bc7b-ec298dee348c

commit 205910672b5686174b7d6f0a1960d53cd4bd9f9b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jul 26 16:07:17 2005 +0000

    update i_mb_b16x8_cost_table[] for I8x8 mb type (r278 only fixed a symptom).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@281 df754926-b1dd-0310-bc7b-ec298dee348c

commit d945b153baa4a81cb40a92e4c09b0e2f16081408
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Fri Jul 22 15:51:10 2005 +0000

     * all: Added matroska writing. Patch by Mike Matsnev.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@280 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5552052c55d550b48cb43d33cb3655ea53e4a273
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Fri Jul 22 15:48:18 2005 +0000

     * pixel.*:
    
    "I have completed additonal SAD implementations (8x16, 16x8 and 16x16)
     using Sparc VIS.  Overall speedup is roughly 90% from straight C.  I'm
     doing development and testing on a Sun Fire V220, with 2 * 1.5ghz
     UltraSPARC-III CPUs.
    
     I've hand-unrolled each of the loops.  Sun's assembler does not appear
     to have macro functionality built-in and I didn't want to establish an
     external dependancy on m4.  Please let me know if you run into any
     trouble with the patch."
    
     Patch by Phil Jensen.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@279 df754926-b1dd-0310-bc7b-ec298dee348c

commit d2715116f9ef8d96d78e81010eda7fdee83cc212
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Fri Jul 22 15:43:16 2005 +0000

     analyse: "It correct the size of array i_mb_b16x8_cost_table
       from 16 to 17,otherwise,it can result a mismatch of b16x8
       mb type cost and can result memory read overflow on it." Patch by lurui.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@278 df754926-b1dd-0310-bc7b-ec298dee348c

commit f52a280836003583a11b93883e68ac23881355ac
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Jul 20 15:39:44 2005 +0000

     * x264 compilation on NetBSD. Patch by Mike Matsnev.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@277 df754926-b1dd-0310-bc7b-ec298dee348c

commit 300e93ef08f5b389da3942474da8ec6fb9c62fda
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Jul 20 15:27:18 2005 +0000

     * all: "8x8 SAD written in Sparc Assembly using VIS." Patch by Phil Jensen.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@276 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1a0920f5c5c482d18dcbc775a542cb1529d019d0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jul 15 16:21:58 2005 +0000

    10l: rd score for sub-8x8 partitions used wrong mvs.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@275 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0f34713af75421dcf3db067511d26d08ebe36134
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jul 13 15:52:59 2005 +0000

    faster SAD_INC_2x16P for amd64.
    patch by Josef Zlomek.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@274 df754926-b1dd-0310-bc7b-ec298dee348c

commit 86a01ef552f00fcc3225776bd41d7ebfb6507d0b
Author: Eric Petit <titer@videolan.org>
Date:   Sun Jul 10 12:51:21 2005 +0000

     Fixed win32 handle leakage (thanks Trax)
     Default enabled support of threads on BeOS
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@273 df754926-b1dd-0310-bc7b-ec298dee348c

commit da60272bf0c4b65128d673daef4d4d7c09c13ae3
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Thu Jul 7 07:48:36 2005 +0000

     * Add support for UltraSparc (uname -m: sun4u) with Solaris.
     Patch by Tuukka Toivonen.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@272 df754926-b1dd-0310-bc7b-ec298dee348c

commit 95c407157830f714c4914ceaeb850bebd198d14b
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Thu Jul 7 07:37:54 2005 +0000

     * Faster SAD_INC_2x16P. Patch by Alexander Izvorski.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@271 df754926-b1dd-0310-bc7b-ec298dee348c

commit 90793358d78f5ad79aef3cc09ea80d5ea81bb53b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jun 21 14:49:27 2005 +0000

    example quant matrix file
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@270 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7b1b45e8a6fc3e36447b7626617978dd7c9d5958
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jun 21 08:16:01 2005 +0000

    --cqmfile reads quant matrices in a JM-compatible format.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@269 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7a77a1e7295b99a418c4fad2a5ab91f0dc896115
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jun 21 04:45:49 2005 +0000

    adjust coded buffer size based on input resolution and QP (old default wasn't enough for HD lossless)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@268 df754926-b1dd-0310-bc7b-ec298dee348c

commit ca8ead2eb1ac51d9784af6fe7a6a3df1fbf10ada
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jun 20 00:36:05 2005 +0000

    update avc2avi for high profile
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@267 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1ab01bbc01bc482e9891fe843e1ddd14b7625540
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jun 20 00:08:28 2005 +0000

    custom quant matrices
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@266 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2c4b31daae223b688feb4a6fdef36fce3b1bc6f0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jun 17 08:32:56 2005 +0000

    VfW: workaround a windows unicode bug.
    patch by Leowai.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@265 df754926-b1dd-0310-bc7b-ec298dee348c

commit 396133936510d57bc2054dd1c1d3d92fa0eb5495
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jun 17 08:21:48 2005 +0000

    lossless mode enabled at qp=0
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@264 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2f9a70c0a5b257eb1413601df191556547f307d5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jun 14 19:49:16 2005 +0000

    VfW: enable RDO. some option dependencies.
    patch by Francesco Corriga.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@263 df754926-b1dd-0310-bc7b-ec298dee348c

commit 15ecd54fc67e75ccd380a7e36720f1a0c2514f94
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jun 14 19:19:52 2005 +0000

    rate-distortion optimized MB types in I- and P-frames (--subme 6)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@262 df754926-b1dd-0310-bc7b-ec298dee348c

commit 41c37d9e05416a71c2499f788ea268032da0a6c4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jun 12 23:17:12 2005 +0000

    more VfW options.
    patch mostly by celtic_druid.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@261 df754926-b1dd-0310-bc7b-ec298dee348c

commit a296ffcc5aa892d5281a9e6b2b4e863dd94e0b69
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 11 21:17:30 2005 +0000

    VFW: 8x8 transform, SAR.
    patch by celtic_druid.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@260 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7832f017704235b31c7a33b54a06ab196c1dcc4a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 11 20:32:22 2005 +0000

    threads option in vfw.
    patch by celtic_druid.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@259 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8c6e66479e66da8a9a79eacfec9fc2ff39a24464
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 11 19:27:02 2005 +0000

    win32 threads enabled by default
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@258 df754926-b1dd-0310-bc7b-ec298dee348c

commit 96813e36dc54e1e9866dad24a8c0cc7a748f0d4a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 11 19:15:35 2005 +0000

    vfw installer nsis script.
    patch by Francesco Corriga.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@257 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8025723ee4a1c99e3e833ce963d05e5eb8c74606
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 11 05:52:38 2005 +0000

    print 8x8 transform usage % in stats summary.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@256 df754926-b1dd-0310-bc7b-ec298dee348c

commit 26aa962acdc90204f7c915be91ead00ebcc5f30d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jun 8 17:16:20 2005 +0000

    revert 216, another try at max_dec_frame_buffering.
    disable adaptive cabac_idc by default; 0 is always best anyway.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@255 df754926-b1dd-0310-bc7b-ec298dee348c

commit c4f5de5230b584189c57db18f68d73f19d653d00
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jun 8 00:38:03 2005 +0000

    typo in cabac tables
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@254 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2b5a6b2bd914a9d3ff9c304062c93f28c58ff532
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jun 5 20:39:58 2005 +0000

    cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@253 df754926-b1dd-0310-bc7b-ec298dee348c

commit 916136c96d49961ff944b6ef2feeedfc7a90af98
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jun 5 18:39:21 2005 +0000

    fix i8x8 decision with chroma_me
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@252 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8614594835ce25879c0d01ca88625ea444d577f2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jun 5 11:07:28 2005 +0000

    SATD-based decision for 8x8 transform in inter-MBs.
    Enable 8x8 intra.
    CLI options: --8x8dct, --analyse i8x8.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@251 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6bf1398b824c013184548277eb8f2dbccd4d6fc5
Author: Eric Petit <titer@videolan.org>
Date:   Sun Jun 5 10:17:10 2005 +0000

     Use win32 native threads (you still have to --enable-pthread to use
     them, though)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@250 df754926-b1dd-0310-bc7b-ec298dee348c

commit 46a487299946e8a2130c3629bfaac1252ff068c4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jun 5 01:09:38 2005 +0000

    slightly faster 8x8 dct
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@249 df754926-b1dd-0310-bc7b-ec298dee348c

commit 398a6bf064d7ce46b0cb0edc66323473009d5e06
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jun 4 06:23:56 2005 +0000

    remove unused tables from SPS/PPS. reduces overhead when syncing threads.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@248 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1729616639eada4977171af3611f3040113f1f01
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jun 3 09:58:25 2005 +0000

    10l (debug stuff in 246)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@247 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1ab45c8f7411f7b4453ddff66919910e823ed33b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jun 3 05:33:15 2005 +0000

    8x8 transform and 8x8 intra prediction.
    (backend only, not yet used by mb analysis)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@246 df754926-b1dd-0310-bc7b-ec298dee348c

commit e46db68534f54a52c9df7595d8bd8fd4c8b21b53
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jun 1 06:49:00 2005 +0000

    cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@245 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7f988086c20dc28cafdec793af7900fcb477a25a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jun 1 05:31:39 2005 +0000

    fix a bug with cabac + B-frames + mref + slices.
    call visualization per frame instead of per slice.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@244 df754926-b1dd-0310-bc7b-ec298dee348c

commit b1f4d5b12789e6d608288b71ebefa59acf4fba86
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Mon May 30 19:47:02 2005 +0000

    accept the standard --prefix etc. options
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@243 df754926-b1dd-0310-bc7b-ec298dee348c

commit c77e709785fab74313a6c443c4f2f00fb9a86b70
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon May 30 01:52:00 2005 +0000

    tweak cflags
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@242 df754926-b1dd-0310-bc7b-ec298dee348c

commit e85db920bb31a699b38c057f51a3eb68bb1b719d
Author: Eric Petit <titer@videolan.org>
Date:   Sun May 29 20:27:09 2005 +0000

     Fixed multithreading on BeOS (pthread emulation required)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@241 df754926-b1dd-0310-bc7b-ec298dee348c

commit 10851d0e11e90e814c37695aa244f113b21415f2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun May 29 18:28:49 2005 +0000

    multithreading (via slices)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@240 df754926-b1dd-0310-bc7b-ec298dee348c

commit 36f6321d4dd1b87331bec691ba1bdd3c6ec19b22
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 24 05:10:38 2005 +0000

    move zones parsing to ratecontrol.c; allows passing in zones as a string.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@239 df754926-b1dd-0310-bc7b-ec298dee348c

commit 470e1b284f31e294119c7bc457a762488b34dd60
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 24 04:16:54 2005 +0000

    UMHex motion seach (but no early termination yet)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@238 df754926-b1dd-0310-bc7b-ec298dee348c

commit c8b1a477d2d145698b065d7c20cd10be2f75e94d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 24 01:34:57 2005 +0000

    Zoned ratecontrol.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@237 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0072b802fb9205be3606f45ec9cc6f5111c3ec3e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon May 23 08:57:02 2005 +0000

    fix rounding of intra dequant when qp<=3
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@236 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7c02f091422b68fa01d48645eb2f04bbf409fb79
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat May 21 20:49:06 2005 +0000

    API: x264_encoder_reconfig(). (not yet used by any frontend)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@235 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7fef6efa884a0fdad75181564a916ac94f81e3b3
Author: Eric Petit <titer@videolan.org>
Date:   Thu May 19 15:42:48 2005 +0000

     Makefile: in target "install", first create the directories if they
     don't already exist
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@234 df754926-b1dd-0310-bc7b-ec298dee348c

commit 809c516abe16bf051beb9d053d673a26906aa43c
Author: Eric Petit <titer@videolan.org>
Date:   Sun May 15 20:19:22 2005 +0000

     Optimized subXxX_dct
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@233 df754926-b1dd-0310-bc7b-ec298dee348c

commit f025abc9c0006c0a67d112afc6daff78c4fa7aad
Author: Eric Petit <titer@videolan.org>
Date:   Sat May 14 15:49:36 2005 +0000

     s/==/=/
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@232 df754926-b1dd-0310-bc7b-ec298dee348c

commit 04ded39b9ba4e8f0b983efcc056292f25d544b9f
Author: Eric Petit <titer@videolan.org>
Date:   Sat May 14 07:08:08 2005 +0000

     ppc/: compile fixes for Linux/PPC (courtesy of Rasmus Rohde) and
           for gcc < 4
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@231 df754926-b1dd-0310-bc7b-ec298dee348c

commit 94829ef6e277315e635df05d669848b5216f00d3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri May 13 16:54:03 2005 +0000

    visualize reference pic numbers. misc cleanups in visualization.
    patch by Tuukka Toivonen.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@230 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4d5c7a033fbe7e7b168381a9fa15e8c2eb1a6a2f
Author: Eric Petit <titer@videolan.org>
Date:   Fri May 13 15:30:18 2005 +0000

     ppc/*: more tuning on satd (+5%)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@229 df754926-b1dd-0310-bc7b-ec298dee348c

commit e0bd8066395df74d5f2edc851c048512a0fed4ba
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri May 13 08:03:42 2005 +0000

    CLI option: --seek
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@228 df754926-b1dd-0310-bc7b-ec298dee348c

commit 036494a60f7850c1613c5084fe9a11c7821cb5a7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu May 12 23:03:49 2005 +0000

    CLI option: --visualize
    Displays the encoded video along with MB types and motion vectors.
    patch by Tuukka Toivonen.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@227 df754926-b1dd-0310-bc7b-ec298dee348c

commit 31c91bd71f1cc7fd0988892657a3574dc534f628
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu May 12 19:48:10 2005 +0000

    fix an uninitialized value in slicetype_analyse
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@226 df754926-b1dd-0310-bc7b-ec298dee348c

commit 92ea0c5c30a74408e931227765009ef8aaee1542
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 11 17:58:00 2005 +0000

    port recent MC asm changes to amd64.
    patch by Josef Zlomek.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@225 df754926-b1dd-0310-bc7b-ec298dee348c

commit d926e41d04312639d762d79af3867d61ce340591
Author: Eric Petit <titer@videolan.org>
Date:   Wed May 11 16:22:18 2005 +0000

     ppc/*:
      + Removed unused code
      + Optimized mc chroma 4xH and satd 8x4 and 4x8
      + Won a bunch of cycles by not trusting gcc about inlining and
        unrolling properly
     (about 17% faster globally)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@224 df754926-b1dd-0310-bc7b-ec298dee348c

commit aecc6ab057616f32eb0643b36db2d5b04d7a07ea
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 11 15:57:43 2005 +0000

    New ratecontrol options:
    1pass ABR. VBV constraint for ABR and 2pass.
    There is no longer a dedicated CBR mode: use ABR+VBV.
    VfW now uses ABR instead of CQP for 1st of multipass.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@223 df754926-b1dd-0310-bc7b-ec298dee348c

commit 540fba7a1404909074eb08e76b98d7f9d36fd5e9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed May 11 00:15:34 2005 +0000

    use a predicted mv as starting point for subpel refinement.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@222 df754926-b1dd-0310-bc7b-ec298dee348c

commit dcb0aebebeb197c75fc5f0f49185f6afb6fd90ec
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 10 08:21:36 2005 +0000

    slight speedup in halfpel interpolation.
    patch by Mathieu Monnier.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@221 df754926-b1dd-0310-bc7b-ec298dee348c

commit 22a567bbe57fec9cf4beacca7517cc6d9139e091
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri May 6 19:38:40 2005 +0000

    Cleaner allocation of tmp space in halfpel interpolation; fixes some valgrind/nasm warnings.
    patch by Mathieu Monnier.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@220 df754926-b1dd-0310-bc7b-ec298dee348c

commit ca4a34dfe0e6d93ce7598dd18c3c6af8c611d7e5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue May 3 08:25:31 2005 +0000

    "2pass failed to converge" is no longer considered fatal.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@219 df754926-b1dd-0310-bc7b-ec298dee348c

commit ab2cdf4b804f9e97a112fa4be96c1306522746e4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Apr 30 01:20:50 2005 +0000

    Updated MSVC project files.
    thanks to Bonzi.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@218 df754926-b1dd-0310-bc7b-ec298dee348c

commit e0a640413f484d1db034a9ecbd0fa472204f273a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 25 18:39:32 2005 +0000

    cosmetics.
    silence some gcc warnings.
    amd64 doesn't need a separate copy of the c/h files, only the asm.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@217 df754926-b1dd-0310-bc7b-ec298dee348c

commit d2ad6a20941a4f25b69c88d136e7450d10b035be
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Apr 22 04:05:35 2005 +0000

    10l (214 wrote wrong DPB size in SPS -> B-pyramid broke)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@216 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7229a11c2fe117e0511cd76fa264baf25be92a5f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 21 09:20:43 2005 +0000

    CLI (mp4): return to 'capture' output mode, remove useless SetCtsPackMode() (fixed in gpac).
    Note: requires gpac cvs-20050419 or later.
    patch by bobo.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@215 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9b44391701779bfb0d291592d1d81c70bcf6c116
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 19 23:09:29 2005 +0000

    combined L0 & L1 reference lists are limited to a total of 16 pics.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@214 df754926-b1dd-0310-bc7b-ec298dee348c

commit 41f9b8134c332599555bb44c3d0b8e94af44ebf9
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 19 18:44:42 2005 +0000

    amd64 asm patch, part2.
    by Josef Zlomek ( josef dot zlomek at xeris dot cz )
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@213 df754926-b1dd-0310-bc7b-ec298dee348c

commit 413d8fa90917044e0ffaffb7009ccbc8059c61b0
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 19 18:35:45 2005 +0000

    amd64 asm patch, part1.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@212 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7d35ba6bf080610d8f144f4270e961c69ba14f1c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 19 08:45:36 2005 +0000

    Allow manual selection of fullpel ME method. New method: Exhaustive search.
    based on a patch by Tuukka Toivonen.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@211 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0c641421898f5c3087d52abcfd35ab617d101010
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 19 01:42:12 2005 +0000

    misc makefile changes.
    propogate --extra-cflags to vfw.
    'make clean' removes x264.exe and vfw.
    tweak dependencies.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@210 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1519835f0fa218993ed031a2247ec88eb5906dd7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Apr 18 02:00:58 2005 +0000

    10l (CLI: fflush after progress update)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@209 df754926-b1dd-0310-bc7b-ec298dee348c

commit da4c0384503bd7b2fa7752ef2045e5060e5df0cd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Apr 17 18:43:17 2005 +0000

    CLI: progress indicator
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@208 df754926-b1dd-0310-bc7b-ec298dee348c

commit a61378bea90edd13a0e9b907917f7645e9266750
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Apr 16 20:21:06 2005 +0000

    VfW: build from main makefile
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@207 df754926-b1dd-0310-bc7b-ec298dee348c

commit c6f3d17ffa67ad27f126bf579a08a443023ad0d3
Author: Eric Petit <titer@videolan.org>
Date:   Fri Apr 15 17:26:09 2005 +0000

     [mp4] ftyp & moov boxes at the begining of the file, (thanks to jeanlf
     for comments)
    
     patch by bobololo
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@206 df754926-b1dd-0310-bc7b-ec298dee348c

commit 74eecd32358de0799a1b9bad041ebb6550002769
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 14 23:04:48 2005 +0000

    CLI: --fps had side-effects. fixed.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@205 df754926-b1dd-0310-bc7b-ec298dee348c

commit 78ca42c56ec53e153fef1b2a1a612191c840d797
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 14 21:59:00 2005 +0000

    CLI: cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@204 df754926-b1dd-0310-bc7b-ec298dee348c

commit e06dfd4ac1cd0c80525f2dfbacbce28c543770fc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Apr 14 19:45:08 2005 +0000

    Makefile: strip x264cli.
    tweak stats summary.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@203 df754926-b1dd-0310-bc7b-ec298dee348c

commit 29facf8bf218a7c7c47ca48c8b7abb6672d6544e
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Apr 13 14:25:32 2005 +0000

     * x264.c: Fix ctts box creation. Patch by bobololo from Ateme.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@202 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1014aa4e4fa0097e98754afbcf68245a14480710
Author: Eric Petit <titer@videolan.org>
Date:   Wed Apr 13 03:43:07 2005 +0000

     common/ppc: more cleaning, optimized a bit
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@201 df754926-b1dd-0310-bc7b-ec298dee348c

commit 77404162c8588abc9b720b88e20fac34dfe31139
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 12 20:38:40 2005 +0000

    CLI: require output file (don't default to stdout). warn if trying to use mp4 or avis when not supported. misc cleanup.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@200 df754926-b1dd-0310-bc7b-ec298dee348c

commit fe905276b25c8aa202379d0b5c0115d7b5b631c8
Author: Eric Petit <titer@videolan.org>
Date:   Tue Apr 12 18:45:24 2005 +0000

     configure:   use -falign-loops=16 on OS X
     common/ppc/: added AltiVecized mc_chroma + cleaning
     checkasm.c:  really fixed MC tests
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@199 df754926-b1dd-0310-bc7b-ec298dee348c

commit a1b9531707b835e6934cadfb78249149f6351d7e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 12 17:33:10 2005 +0000

    Configure tweaks. Allow avis-input in mingw. Turn off debug by default.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@198 df754926-b1dd-0310-bc7b-ec298dee348c

commit 35d85ca65d77f4013cfc37b2dd76b9ef87db144d
Author: Eric Petit <titer@videolan.org>
Date:   Tue Apr 12 16:34:48 2005 +0000

     checkasm.c: fixed MC tests
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@197 df754926-b1dd-0310-bc7b-ec298dee348c

commit c0abfd39627fcb3e2f6c9aed7ebbed7dfda9230e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 12 03:34:25 2005 +0000

    CLI: MP4 muxing.
    patch by bobo from Ateme.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@196 df754926-b1dd-0310-bc7b-ec298dee348c

commit e1b747ff05b28ee786425d48be53376c620a1cdc
Author: Eric Petit <titer@videolan.org>
Date:   Mon Apr 11 21:21:05 2005 +0000

     Cygwin fixes
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@195 df754926-b1dd-0310-bc7b-ec298dee348c

commit b7c3b444753d5ddce3b87249c96a207c85301075
Author: Eric Petit <titer@videolan.org>
Date:   Mon Apr 11 20:52:31 2005 +0000

     configure: ooops, restored -g
     ratecontrol.c: OS X has exp2f in -lmx
     checkasm: quick compile fix
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@194 df754926-b1dd-0310-bc7b-ec298dee348c

commit ecbf942b1e46e1a4df0e8fd87db538342d968059
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Mon Apr 11 20:00:49 2005 +0000

    add x86_64 to configure
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@193 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7d9ac7c215bc0b77c538d100c92498e847e1cfa8
Author: Eric Petit <titer@videolan.org>
Date:   Mon Apr 11 19:41:28 2005 +0000

     set svn:ignore
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@192 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6490f4398d9e28e65d7517849e729e14eede8c5b
Author: Eric Petit <titer@videolan.org>
Date:   Mon Apr 11 19:28:03 2005 +0000

      Added a configure to detect the platform/system/etc so people don't
     have to edit the Makefile (will work for Linux/OS X/BeOS/FreeBSD, feel
     free to modify for others), and we can now remove the Jamfile which
     was broken most of the time anyway.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@191 df754926-b1dd-0310-bc7b-ec298dee348c

commit b12cb05a8fee91c50dc3d1d3c2569a801cc1a5e3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Apr 10 23:35:01 2005 +0000

    Makefiles: better dependencies for SEI version number
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@190 df754926-b1dd-0310-bc7b-ec298dee348c

commit 90a6fd3e4e8685f990c7f9fe05c8718e77c0e080
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Apr 7 23:26:51 2005 +0000

    Forgot rbsp_trailing_bits in AUD NAL
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@189 df754926-b1dd-0310-bc7b-ec298dee348c

commit e103917aa0cbb702ba09c2507565398d7f129c2e
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Apr 7 23:11:06 2005 +0000

    Optionally use access unit delimiter NAL units.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@188 df754926-b1dd-0310-bc7b-ec298dee348c

commit d4663a41a4bb0c67eb861046ed2917111257883f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 5 21:32:52 2005 +0000

    VfW: cleaner install on win98.
    patch by Riccardo Stievano.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@187 df754926-b1dd-0310-bc7b-ec298dee348c

commit 990e58b646629a2937e76794b97892d7806a932e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 5 20:50:13 2005 +0000

    new util: countquant for 2pass statsfiles
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@186 df754926-b1dd-0310-bc7b-ec298dee348c

commit b780e711dd0a1e97535c690f84e9726eefa95c2c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Apr 5 20:39:47 2005 +0000

    print svn version number in SEI info and in CLI/VfW.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@185 df754926-b1dd-0310-bc7b-ec298dee348c

commit ea9308c6b3bfc891a2dcebe1dc89e0c301c57066
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Mar 31 21:20:41 2005 +0000

    Make reconstructed frame available to caller.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@184 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6dcb0e4b6d827b9c79f402ff91049b2830b8a743
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 31 06:03:22 2005 +0000

    make install
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@183 df754926-b1dd-0310-bc7b-ec298dee348c

commit 11de51977d28b9ff242aa137f9c270b0f1b3f465
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 31 05:59:11 2005 +0000

    free() -> x264_free()
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@182 df754926-b1dd-0310-bc7b-ec298dee348c

commit de97a12a8b976acad6afdbeda54e4bfbdd9bf8b5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 28 05:08:43 2005 +0000

    CLI: flush B-frames at the end of the encode
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@181 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0df24cf995faf3169fe15d808e4fff00c18ad7dc
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 27 20:49:59 2005 +0000

    convert mc's inline asm to nasm (slight speedup and msvc compatibility).
    patch by Mathieu Monnier.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@180 df754926-b1dd-0310-bc7b-ec298dee348c

commit 48c34d0bffd57ba7c73f20bd6c892b4b06131140
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 27 06:58:35 2005 +0000

    buffer overruns in slicetype_decision.
    patch by Mathieu Monnier.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@179 df754926-b1dd-0310-bc7b-ec298dee348c

commit a1c2c04693de8fe2d7712249c06c7a6406d0b422
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 17 17:35:11 2005 +0000

    tweak usage message
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@178 df754926-b1dd-0310-bc7b-ec298dee348c

commit ac93ce1bb01701ddc0faa79eeb1079288b6e3543
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 16 22:02:02 2005 +0000

    Simplify inter analysis option names. (psub16x16 -> p8x8)
    patch by Robert Swain.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@177 df754926-b1dd-0310-bc7b-ec298dee348c

commit 04557605de60718c172ce6d1fc26b30d6fd2ee8b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 16 21:52:59 2005 +0000

    173 broke .depend when debugging was enabled
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@176 df754926-b1dd-0310-bc7b-ec298dee348c

commit bf7f679c793a2db2580e00f87eb3bed45b47a805
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 16 20:50:19 2005 +0000

    early termination for intra4x4 analysis
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@175 df754926-b1dd-0310-bc7b-ec298dee348c

commit ee5b2be9406eb8b9b11180f406febc944fd8845d
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Tue Mar 15 12:09:00 2005 +0000

    Check/fix range of x264_param_t.rc.i_qp_constant.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@174 df754926-b1dd-0310-bc7b-ec298dee348c

commit 94086b8bb5885f76093e74b5a5b0f4d4db287c95
Author: Eric Petit <titer@videolan.org>
Date:   Tue Mar 15 07:21:18 2005 +0000

     Cleaned up and fixed Makefile for OS X and BeOS (hopefully FreeBSD too)
     It defaults for x86/linux, others: uncomment the lines for your
     platform & OS at the beginning of the Makefile
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@173 df754926-b1dd-0310-bc7b-ec298dee348c

commit cb6a40f00d1f5f14b9c14974309b43955a0b83ed
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Mar 15 02:30:16 2005 +0000

    macroblock_analyse: simplify cost comparisons. (cosmetic)
    CLI: enable cabac by default.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@172 df754926-b1dd-0310-bc7b-ec298dee348c

commit 79fa69451ad4552c2dd84fcd3c5e75da136af17f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 14 22:47:19 2005 +0000

    Chroma ME (P-frames only).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@171 df754926-b1dd-0310-bc7b-ec298dee348c

commit abbd6c56da04a9e10d10a4bd158104826e8fc81a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Mar 14 13:05:57 2005 +0000

    SSE optimized chroma MC.
    patch by Radek Czyz.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@170 df754926-b1dd-0310-bc7b-ec298dee348c

commit 553b8295bac6b6fd9d91e591bca1299923f0fc96
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 13 23:36:42 2005 +0000

    167 broke psnr calculation for non-mod-32 inputs
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@169 df754926-b1dd-0310-bc7b-ec298dee348c

commit 70da43b22cd394160c4358a33330446bc104c78e
Author: Eric Petit <titer@videolan.org>
Date:   Sun Mar 13 18:49:51 2005 +0000

     sqrtf requires -lmx on Mac OS X
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@168 df754926-b1dd-0310-bc7b-ec298dee348c

commit e72f431c685731663d2824aa768218927490e704
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 13 10:25:11 2005 +0000

    use mmx ssd for psnr calculation.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@167 df754926-b1dd-0310-bc7b-ec298dee348c

commit be2f0e088810860ab760d8d362a9450aaf917a29
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 13 08:26:52 2005 +0000

    revert 164. blame Spyder.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@166 df754926-b1dd-0310-bc7b-ec298dee348c

commit 73522c84014f240abe7ee70c6e98657b08f97b44
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 13 07:04:16 2005 +0000

    SSD comparison function (not yet used).
    Cosmetics in mmx SAD.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@165 df754926-b1dd-0310-bc7b-ec298dee348c

commit c68f34e555e22f4687d985ade6d81ea87cc73f29
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 12 00:23:50 2005 +0000

    VfW: reject YUY2 and RGB input formats
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@164 df754926-b1dd-0310-bc7b-ec298dee348c

commit fd527e3760074a19637c503d0f828d97b7c079fd
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Fri Mar 11 18:10:35 2005 +0000

    Really fix QP override.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@163 df754926-b1dd-0310-bc7b-ec298dee348c

commit a2245645c8b3948de32f2c27f8cb0acb86e4d2d4
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 11 02:15:25 2005 +0000

    write VUI bitstream restrictions
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@162 df754926-b1dd-0310-bc7b-ec298dee348c

commit 29dee22af6b6174f54bb621f1038c0604a42d21e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 10 23:03:55 2005 +0000

    AVI & Avisynth input (win32 only).
    patch by bobo from Ateme.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@161 df754926-b1dd-0310-bc7b-ec298dee348c

commit 79ebb19964a115ab8de21fe1e90162ff9954b283
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 10 21:42:24 2005 +0000

    expose option "chroma qp offset"
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@160 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2fc52995de23f963e67ac408dc247ee3bf68c952
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Mar 10 19:42:05 2005 +0000

    Fix per-frame QP override broken in rev 137.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@159 df754926-b1dd-0310-bc7b-ec298dee348c

commit 99b10e79b55520264a29ae4b82d67cd60005faab
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Tue Mar 8 01:08:40 2005 +0000

    Don't include x264.o in the library.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@158 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9f97e90ef5f3df22a560c10ad49a658041c88629
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 6 21:07:10 2005 +0000

    VfW: expose B pyramid and weighted B prediction.
    patch by Riccardo Stievano.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@157 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4fbdc5c1ee77497e6455cd72a895383fb99a77fe
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 6 11:39:08 2005 +0000

    10l
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@156 df754926-b1dd-0310-bc7b-ec298dee348c

commit 1f735a32c9626b86b608c9604170b3f4c4549159
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 6 09:50:17 2005 +0000

    buffer overrun when bframes == X264_BFRAME_MAX
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@155 df754926-b1dd-0310-bc7b-ec298dee348c

commit c90534d6c85664c7a161cbe70a7928cb65f19e18
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Mar 6 05:12:25 2005 +0000

    Adaptive B skipped some POC numbers (slightly reducing b_direct efficiency).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@154 df754926-b1dd-0310-bc7b-ec298dee348c

commit d0bd44f769543e81280a5a97bbe985c6dfd86cf1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 5 09:34:53 2005 +0000

    avc2avi:
    Use POC to determine frame boundaries (frame_num couldn't distinguish consecutive B-frames).
    Fix keyframe flag to mark IDR only, not all I slices.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@153 df754926-b1dd-0310-bc7b-ec298dee348c

commit f01e3d5f2bffe3a033ecbaa608be6b4f3aca9c60
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 5 04:16:05 2005 +0000

    allow 16 refs (instead of 15)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@152 df754926-b1dd-0310-bc7b-ec298dee348c

commit c47bb1ffbe630609fda9bd7c9488bae7f0078a4e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Mar 5 00:37:25 2005 +0000

    report version number in decimal instead of hex
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@151 df754926-b1dd-0310-bc7b-ec298dee348c

commit 91536acdb42ec9615a50f5b9f3af34b6c6408049
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Mar 4 12:52:35 2005 +0000

    New option: "B-frame pyramid" keeps the middle of 2+ consecutive B-frames as a reference, and reorders frame appropriately.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@150 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9591b0383829c707791b7797a68a79008349e198
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Mar 3 04:36:46 2005 +0000

    smarter parsing of resolution from commandline
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@149 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4337ee8de793cb5c6f0dee3b0a851041466fec7e
Author: Eric Petit <titer@videolan.org>
Date:   Thu Mar 3 03:02:27 2005 +0000

     ratecontrol.c: fixed exp2f on BeOS so rate control works properly
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@148 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4b2ba852564a05a651f9312651cc402043089648
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Mar 2 22:44:31 2005 +0000

    Fix a buffer overrun with very long MVs.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@147 df754926-b1dd-0310-bc7b-ec298dee348c

commit ccf61cef868c38bb71d746fcc03f583d93fd3e4c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 28 19:01:58 2005 +0000

    wrong stride in lowres image
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@146 df754926-b1dd-0310-bc7b-ec298dee348c

commit b04a2601088a855361169a3eb5236e8b998f7e70
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 28 18:50:55 2005 +0000

    10l (fast1stpass was slower than non-fast)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@145 df754926-b1dd-0310-bc7b-ec298dee348c

commit d05adbc7f35e461879f1559a095b82b7253d78cd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 25 03:10:04 2005 +0000

    Disable deblocking filter in frames of sufficiently low QP that it would have no effect. (Saves a little CPU time in the decoder.)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@144 df754926-b1dd-0310-bc7b-ec298dee348c

commit d836d8f9b7ae3962ac0f5a325f43ca9d6a87a7ff
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 25 00:46:56 2005 +0000

    Simplify x264_frame_expand_border.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@143 df754926-b1dd-0310-bc7b-ec298dee348c

commit 067f22c153eaf19e1ba5ec35deef96a8fb3eae4e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 24 13:09:55 2005 +0000

    Altivec functions for MC using the cached halfpel planes.
    Patch by Fredrik Pettersson <fredrik_pettersson at yahoo dot se>.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@142 df754926-b1dd-0310-bc7b-ec298dee348c

commit 323b54ffa0bbcfe82b02cb0d204e9ba5121264fd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 24 13:01:21 2005 +0000

    Don't use uninitialize MVs in x264_mb_predict_mv_ref16x16.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@141 df754926-b1dd-0310-bc7b-ec298dee348c

commit 92f6f36f1d58fd9809263aba16ddeb78ec2ee47d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 24 13:00:34 2005 +0000

    Implicit weights in B16x16 analysis were swapped.
    patch by Radek Czyz.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@140 df754926-b1dd-0310-bc7b-ec298dee348c

commit c2b0c8a0e11ef079e82789f79d54c30c9b2364ae
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 24 08:31:12 2005 +0000

    Cosmetics: Some renaming. Move the rest of slice type decision from encoder.c to slicetype_decision.c
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@139 df754926-b1dd-0310-bc7b-ec298dee348c

commit 24a6672ecaa6bccc65c4043248c1787e3161062c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 24 08:17:31 2005 +0000

    Take into account keyint_max in B-frame decision.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@138 df754926-b1dd-0310-bc7b-ec298dee348c

commit 68c13530b5ffc28325aee408f4cd19ab7da06715
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Feb 23 19:58:02 2005 +0000

    Preliminary adaptive B-frame decision (not yet tuned).
    Fix flushing of delayed frames when the encode finishes.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@137 df754926-b1dd-0310-bc7b-ec298dee348c

commit e2efb4b7d5885112a32b5b710958fe9fa5458bbf
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 22 22:08:07 2005 +0000

    Write x264's version in a SEI message.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@136 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3ada9c0514d0d785dec7de1f5d092fbda7a629cb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 22 10:46:28 2005 +0000

    VfW: Enable weighted B prediction when max B-frames > 1. Enforce max reference frames <= 15.
    patch by Riccardo Stievano.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@135 df754926-b1dd-0310-bc7b-ec298dee348c

commit 834eac288ff5e8d40a1a751d61a59d77d67c0537
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 22 05:19:02 2005 +0000

    Add: implicit weighted prediction for B-frames.
    Slightly optimize x264_mb_mc_01xywh.
    Fix an error in B16x8 cost.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@134 df754926-b1dd-0310-bc7b-ec298dee348c

commit 47706e75fdf80b0c0011e2d697e5e181060a08fe
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 20 01:52:12 2005 +0000

    Oops, increment API number.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@133 df754926-b1dd-0310-bc7b-ec298dee348c

commit d7443f67331e392b580564f815a34c5762f71f03
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 20 01:26:03 2005 +0000

    Configurable level. Levels are still not enforced; it's up to the user to select a level compatible with the rest of the encoding options.
    Patch by Jeff Clagg <snacky at ikaruga dot co dot uk>.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@132 df754926-b1dd-0310-bc7b-ec298dee348c

commit 15450dbe916e971793989dc44762e1bda23ca153
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Feb 19 06:18:22 2005 +0000

    Always use the tempfile and rename method for multipass stats, so that VfW knows whether the previous pass completed.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@131 df754926-b1dd-0310-bc7b-ec298dee348c

commit b1f47ea51c7057ebc0d8938a224662cc6fe23c80
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 18 07:47:35 2005 +0000

    More tweaks to bitrate prediction.
    Change error messages when 2pass fails to converge.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@130 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0606b3ac325a3cb3fd1fe648d9a6468ab731f7d5
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 17 19:31:15 2005 +0000

    Improved 2pass bitrate predictor. No real change most of the time, but allows correct ratecontrol on some pathological videos that used to diverge completely. Also improves prediction when 2nd pass bitrate is very different from 1st pass.
    The new qscale2bits() has no simple inverse, so I also had to change rc_eq to output qscale instead of bits.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@129 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3b2116cdd0aceff59036a17c6f9aa32592de4851
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Feb 16 04:59:21 2005 +0000

    Some defines needed by MSVC, and convert the DSP files to DOS-style newlines.
    Patch by Radek Czyz.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@128 df754926-b1dd-0310-bc7b-ec298dee348c

commit d688918e861714e23f8fa7bdaaa6bf47ffec0395
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 14 23:32:38 2005 +0000

    Precalculate lambda*bits for all allowed mvs. 1-2% speedup.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@127 df754926-b1dd-0310-bc7b-ec298dee348c

commit ac411e297aaaec200b33b6dab082e12c55c3b7ef
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 14 11:08:00 2005 +0000

    Deblock B-frames. (Not yet used, since B-frames aren't kept as references.)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@126 df754926-b1dd-0310-bc7b-ec298dee348c

commit 50a924885b78abc24dba59bb6717095bcde15d1b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 14 05:58:50 2005 +0000

    Simplify x264_mb_mc_01xywh()
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@125 df754926-b1dd-0310-bc7b-ec298dee348c

commit b2d78b5c7a423a75f0cb555173d92011b4accc44
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Feb 14 04:10:15 2005 +0000

    Save some memcopies in halfpel ME.
    Patch by Radek Czyz.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@124 df754926-b1dd-0310-bc7b-ec298dee348c

commit 46141bf206dc672c3ab2b50850df702305ecb8ff
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 13 09:49:42 2005 +0000

    Cache half-pixel interpolated reference frames, to avoid duplicate motion compensation.
    30-50% speedup at subq=5.
    Patch by Radek Czyz.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@123 df754926-b1dd-0310-bc7b-ec298dee348c

commit d81fa19a0af848bd97b2250e1405b5fac54820b1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Feb 12 12:26:52 2005 +0000

    In N-pass mode if stat_in and stat_out are the same file, instead save to a temp file and overwrite stat_in only when the encode finishes.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@122 df754926-b1dd-0310-bc7b-ec298dee348c

commit dc270b76915975ab1ea6e16992aa79e96e6801f7
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 11 19:04:44 2005 +0000

    VfW: x264_log now creates a window for error messages
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@121 df754926-b1dd-0310-bc7b-ec298dee348c

commit ef4d1fa4a99a23420708083c66e882d7cfd21d9f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 10 22:11:39 2005 +0000

    cosmetics
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@120 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6f298b9d889536c5dc14fc08faa95447a322a1cd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 10 21:54:40 2005 +0000

    bs_align_1() didn't actually write all ones. (so encoded streams with cabac were technically invalid, though no decoder cares.)
    Patch by Tuukka Toivonen.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@119 df754926-b1dd-0310-bc7b-ec298dee348c

commit ca4ae5219a95e05e80e707ce6828b79276e1f795
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 8 23:30:33 2005 +0000

    VfW: tweak option names
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@118 df754926-b1dd-0310-bc7b-ec298dee348c

commit 85c92e1be46a3fa90e81121a03bfb8479e87a2da
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Feb 6 06:47:42 2005 +0000

    VfW: use separate stats files for each pass of an N-pass encode.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@117 df754926-b1dd-0310-bc7b-ec298dee348c

commit 70ce7a4be261f638a614918ed0e822b7f60d8269
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Feb 5 22:55:48 2005 +0000

    VfW: Enable multipass by default, increase the configurable range of I and B quant ratios.
    core: Tweak error messages.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@116 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2796ba0138a59efa32357f9dc708eefe01c55882
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Feb 4 01:20:55 2005 +0000

    r114 didn't completely fix the problem, trying again.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@115 df754926-b1dd-0310-bc7b-ec298dee348c

commit 33140d0984c7415ed0441858022e777794934550
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Feb 3 11:03:17 2005 +0000

    Another MV clipping fix.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@114 df754926-b1dd-0310-bc7b-ec298dee348c

commit 917924591931e63df4458eb90d5d8bce4bff035d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Feb 1 10:13:51 2005 +0000

    Simplify x264_cabac_mb_type.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@113 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7927c9ec8c4991040728d64893490c8ecb3d9b44
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 31 12:20:23 2005 +0000

    More accurate clipping rectangle for motion search. (slight compression improvement for high-motion scenes)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@112 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5b750c35db61a4d26e8801c175da422d11748aad
Author: Eric Petit <titer@videolan.org>
Date:   Fri Jan 28 15:17:51 2005 +0000

     encoder/encoder.c: gcc < 3 compile fix
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@111 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3f098e9644a31f17490f05d0ecea08e6443aa110
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 28 13:47:14 2005 +0000

    Change default level from 2.1 to 4.0 until I get around to calculating actual levels.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@110 df754926-b1dd-0310-bc7b-ec298dee348c

commit bccb009f9fa67797da6cd3da742ad9a27266b12b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 28 02:51:21 2005 +0000

    Clipping mvs to within picture + emulated border when running motion compensation.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@109 df754926-b1dd-0310-bc7b-ec298dee348c

commit c16119a2ccf2dff2328628dd9ded4681f5502c38
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jan 27 11:33:14 2005 +0000

    Fix clipping of mvs in probe_pskip. (Previously it mixed up fullpel with qpel.) This should eliminate the black blocks that sometimes appeared in high motion, low detail scenes.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@108 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6558c8322f175e3970c8a2f351dd7f8f66e130d2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 25 22:25:05 2005 +0000

    Fix length of strings stored in the registry.
    Patch by Riccardo Stievano.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@107 df754926-b1dd-0310-bc7b-ec298dee348c

commit 084175d95978011c837e4363616f5cac5794bc07
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 24 22:55:48 2005 +0000

    registry values for min/max keyint were mixed up
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@106 df754926-b1dd-0310-bc7b-ec298dee348c

commit 79f73aa2f5a5a6d16dadbc10c7ae9647fae76a29
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sun Jan 23 09:38:42 2005 +0000

    VfW: expose option "Nth pass" (i.e. simultaneously read and update the multipass stats file).
    Patch by Riccardo Stievano.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@105 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0292410a8da029c45625c9f8670c9bf16c828c12
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 21 08:22:47 2005 +0000

    add "make NDEBUG=1" to strip library
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@104 df754926-b1dd-0310-bc7b-ec298dee348c

commit 66ee02bdb20e5fe43f3dabbaa10e61d49a945a03
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 18 21:32:20 2005 +0000

    finish subpixel motion refinement for B-frames (up to 6% reduced size of B-frames at subq <= 3)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@103 df754926-b1dd-0310-bc7b-ec298dee348c

commit 37c0a244e49e607855a55a06b4b911eaadbc4604
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 18 12:19:39 2005 +0000

    VfW: expose the 2pass ratecontrol option: qcomp ("bitrate variability").
    Some rearranging of the advanced configuration dialogue.
    Patch by Riccardo Stievano <walkunafraid at tin dot it>.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@102 df754926-b1dd-0310-bc7b-ec298dee348c

commit c80d310f2af65750dafc3decdab6c1df2cbbc5e3
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 17 04:29:24 2005 +0000

    VfW: Support ip_factor and pb_factor, some cleanups.
    patch by Riccardo Stievano <walkunafraid at tin dot it>
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@101 df754926-b1dd-0310-bc7b-ec298dee348c

commit 19ed02568e95f69e2dd33f9b8d8cd1ff900f268b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jan 15 11:28:44 2005 +0000

    Use floats instead of int64 in log messages, since win32 (incl. mingw) doesn't understand %lld.
    Also display MB statistics in percent instead of number.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@100 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4394c4d549caac00dedfeacffa14857839365f04
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jan 15 10:28:51 2005 +0000

    finished printf -> x264_log conversion.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@99 df754926-b1dd-0310-bc7b-ec298dee348c

commit 04bb83346e4c7ba29c4f6b0c5e376ebde81a899b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 14 21:38:13 2005 +0000

    Don't apply keyframe boost to I-frames that are followed by another I.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@98 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7b46f42d142f790ecf053f952ce024b467eac762
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 14 01:04:28 2005 +0000

    New VfW option: "fast 1st pass" automatically disables some partitions and reduces ME quality and number of reference frames.
    Removed option direct_pred=none, since it provides no benefits.
    Patch by Riccardo Stievano <walkunafraid at tin dot it>.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@97 df754926-b1dd-0310-bc7b-ec298dee348c

commit 177e211333d91a06ec2df3ac87c12336812d32e6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jan 13 19:47:51 2005 +0000

    vfw: tweak wording and defaults
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@96 df754926-b1dd-0310-bc7b-ec298dee348c

commit b80ed7030d5979bfa2da92a2584078c7f844f28f
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Jan 13 18:18:05 2005 +0000

    From Riccardo Stievano <walkunafraid at tin dot it>:
    
    here's a patch that fixes the VfW frontend after the changes made in
    revision 93 (GOP size management). Default values for i_keyint_max
    and i_keyint_min have been set to 250 and 10, respectively.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@95 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0a7090477d28a3f708a7b1edb89845e10b71191d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Jan 13 06:11:22 2005 +0000

    My last change of IDR decision broke in 2pass mode. fixed by remembering which frames are IDR.
    Disable benchmarking, as it was very slow for some people, and we already know that all the time is spent in macroblock analysis.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@94 df754926-b1dd-0310-bc7b-ec298dee348c

commit 648328088b1c4bfb3afcbc92b6711cb7b7b5e068
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 12 09:50:38 2005 +0000

    Changes the mechanics of max keyframe interval:
    Now enforces min and max GOP sizes, and allows variable numbers of
    non-IDR I-frames within a GOP.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@93 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5b13c839df14fdd8b94724230ec2e92cba3164a1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 12 05:23:16 2005 +0000

    MinGW compatible resource.rc by Radek Czyz
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@92 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8379464a55722872e63cb6b2120e81ed5ac80781
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 12 04:45:10 2005 +0000

    strict QP offset for B-frame vs following P-frame
    strict QP offset for I-frame vs GOP average
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@91 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0af83ad2ddca90ba0a4066d67513a32798395ce6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Jan 11 06:20:37 2005 +0000

    r72 broke B-frames without intra4x4. fixed.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@90 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5ccb93c1a78a8dfeb1953426b89494f6f5d36fec
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 10 09:29:31 2005 +0000

    updated VfW interface by Radek Czyz
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@89 df754926-b1dd-0310-bc7b-ec298dee348c

commit fc2e7ba68bfcb5b22f510839b6f0b3da333671fd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Sat Jan 8 02:51:24 2005 +0000

    improved mv prediction: 1-3% better compression of B-frames
    early termination for B-frame ref search: up to 20% faster with lots of refs.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@88 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7fc5f99d43b5c2498b368e6f5c1620f591bd2a45
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 7 18:45:11 2005 +0000

    allow constant qp on Nth pass (e.g. for forcing frame types)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@87 df754926-b1dd-0310-bc7b-ec298dee348c

commit 094266b31789338c7a6b91f96aa2fc8c1bd72f94
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Jan 7 11:08:55 2005 +0000

    disable subme=0 (the huge bitrate penalty wasn't worth the speed)
    renumber direct_pred
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@86 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3a11b25d31f7eac4ccc4252b5525a6554c6d22ba
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 5 09:15:35 2005 +0000

    oops, last patch had some debug statements
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@85 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0ad06e691819f2a2a05f673b50afe8b676d48f44
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 5 07:08:40 2005 +0000

    fix: "x264 -A all" didn't include b8x8 types.
    add: "make NDEBUG=1" to strip library
    update TODO with B-frame status
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@84 df754926-b1dd-0310-bc7b-ec298dee348c

commit 53295729673187df0ab1143c08fae578b5447376
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Jan 5 06:59:29 2005 +0000

    Reorganize frame type selection: No longer produces consecutive I-frames when B-frames are enabled. Not thoroughly tested, but works for me.
    Fix scenecut detection when B-frames are present: Can now produce IDR, but is slower since it re-encodes more frames. This might reduce compression ratio in the presence of quick fade-ins.
    2pass ratecontrol deals more gracefully with completely skipped frames.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@83 df754926-b1dd-0310-bc7b-ec298dee348c

commit b1d946cd95c7b4d3ab618b9bbb0191949a49ad4c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 3 03:47:49 2005 +0000

    remove Makefile.cygwin because build/cygwin/Makefile is more up to date.
    put correct object file names in .depend
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@82 df754926-b1dd-0310-bc7b-ec298dee348c

commit 456e8fdc5d5a20ad14a41e83db21b9aa5529c476
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Jan 3 02:32:44 2005 +0000

    reduce default verbosity, add option -v
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@81 df754926-b1dd-0310-bc7b-ec298dee348c

commit 007c6f71c2b0d2868dfc46edaf24a5c27eceab47
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 31 02:33:21 2004 +0000

    remove relative include paths, to avoid conflicts with libtool
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@80 df754926-b1dd-0310-bc7b-ec298dee348c

commit b42bd7463a00b65f1e2d5e2c10ff374531e997f6
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 31 01:56:26 2004 +0000

    rename *.asm to avoid conflicts with libtool
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@79 df754926-b1dd-0310-bc7b-ec298dee348c

commit dabd095c2a59ec95f83428555a329049e4ab165f
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Dec 30 23:58:06 2004 +0000

    list default settings in --help
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@78 df754926-b1dd-0310-bc7b-ec298dee348c

commit fc1380db831cab2d90a8a116848d9263bd83b871
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Dec 30 04:01:58 2004 +0000

    replace EPZS diamond with a hexagon search pattern.
    early termination for multiple reference frame search (up to 1.5x faster).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@77 df754926-b1dd-0310-bc7b-ec298dee348c

commit ab0c769d9813d82f9d7d6f82cce289ae2e466db8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 29 21:18:14 2004 +0000

    sps->i_num_ref_frames was set higher than necessary
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@76 df754926-b1dd-0310-bc7b-ec298dee348c

commit e33ed4c9fc447b7e4bc057e85f9ee83b07b714e1
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 29 12:08:50 2004 +0000

    new option: --fps
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@75 df754926-b1dd-0310-bc7b-ec298dee348c

commit d5322b4e055d3710ea48a1d3cb336b5264a9621e
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 29 10:53:03 2004 +0000

    various cleanups in macroblock caching.
    store motion data for each reference frame (but not yet used).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@74 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9df283c3b29afdcb20387997b09893e450075976
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 28 10:14:19 2004 +0000

    more accurate cost for psub8x8 modes.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@73 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4e5e3770a6b2366676232fe5f335f572f6cdefcb
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Dec 23 04:33:36 2004 +0000

    implement macroblock types B_16x8, B_8x16
    tweak thresholds for comparing B mb types
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@72 df754926-b1dd-0310-bc7b-ec298dee348c

commit efbf4ad58c26c6a609a43a2b636ce50e1272f101
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 22 21:09:45 2004 +0000

    simplify x264_mb_predict_mv_direct16x16_temporal
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@71 df754926-b1dd-0310-bc7b-ec298dee348c

commit 457eaa93110fa95c393794d85bde7943b2d325bd
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 22 20:52:13 2004 +0000

    option '--frames' limits number of frames to encode.
    patch by Tuukka Toivonen <tuukkat at ee.oulu.fi>
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@70 df754926-b1dd-0310-bc7b-ec298dee348c

commit dfbbcec847ddb9b9bbc4549671c6ce7533a7c098
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 22 20:29:19 2004 +0000

    simplify calvc mb type
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@69 df754926-b1dd-0310-bc7b-ec298dee348c

commit 199ff7406b76dc1c10b756053398bf8a834bcf5c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Dec 17 10:57:02 2004 +0000

    implement macroblock types B_SKIP, B_DIRECT, B_8x8
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@68 df754926-b1dd-0310-bc7b-ec298dee348c

commit b6954ba2bba2f4fc002e8be4f57d7f3b43871c33
Author: Loren Merritt <pengvado@videolan.org>
Date:   Tue Dec 14 02:04:02 2004 +0000

    rename 'core/' to 'common/', which avoids conflicts with libtool
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@67 df754926-b1dd-0310-bc7b-ec298dee348c

commit da49faec0719a3e774177356c66a4b41ddd0b10c
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 8 05:01:57 2004 +0000

    cleanup stats reporting
    report B macroblock types
    report average QP
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@66 df754926-b1dd-0310-bc7b-ec298dee348c

commit bc0a1e9b79d725680418be2bf7cf584a739ca47b
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 8 02:28:58 2004 +0000

    apply ip_factor and pb_factor in constant quantiser encodes.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@65 df754926-b1dd-0310-bc7b-ec298dee348c

commit 25b542c01b85c6da7bea789fc60f1f22d7281488
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Dec 1 21:23:06 2004 +0000

    save a little bit of memory
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@64 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0f65f519a8539602e08fd87d9c21b0b3f34a80d8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Mon Nov 22 07:34:17 2004 +0000

    multiple hypothesis mv prediction:
    1-3% improved compression, and .5-1% faster
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@63 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2489b6a66d960d46db325a15314ac82fc9f3ed1a
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Thu Nov 18 12:30:27 2004 +0000

    * analyse: we can do 4x4 Horizontal Up mode when LEFT is avaible.
      Thanks Stephen Henry for the report.
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@62 df754926-b1dd-0310-bc7b-ec298dee348c

commit 71f820d76b4a38b4ed73a12a8aeb93589b18527a
Author: Loren Merritt <pengvado@videolan.org>
Date:   Wed Nov 17 18:40:26 2004 +0000

    improved 2pass ratecontrol:
    ensures that I-frames have comparable quantizer to the following P-frames,
    and produces more consistent quality in areas of fluctuating complexity.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@61 df754926-b1dd-0310-bc7b-ec298dee348c

commit 7972ae1f284b1130abb6cc4f3fe963dcb0ee48c8
Author: Loren Merritt <pengvado@videolan.org>
Date:   Fri Nov 12 07:14:24 2004 +0000

    more informative error message when 2pass fails to converge
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@60 df754926-b1dd-0310-bc7b-ec298dee348c

commit 30c6a09063e499f47077edab206fd79992914ef7
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Nov 11 12:37:24 2004 +0000

    #include <stdarg.h>
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@59 df754926-b1dd-0310-bc7b-ec298dee348c

commit a0b32b7cc24d59826f311dcd2e64945a80803dc2
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Nov 4 09:19:34 2004 +0000

    cleanup spacing of frame stats with verbose logging.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@58 df754926-b1dd-0310-bc7b-ec298dee348c

commit bdf9b10610bf0141ede5812a70d889f7b557560d
Author: Loren Merritt <pengvado@videolan.org>
Date:   Thu Oct 28 20:10:53 2004 +0000

    typo in x264_cabac_mb_sub_b_partition
    (see ITU-T H.264 clause 9.3.3.1.2)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@57 df754926-b1dd-0310-bc7b-ec298dee348c

commit e917887b2e16e5d00d67fa8da7cd828a456fd75d
Author: Eric Petit <titer@videolan.org>
Date:   Wed Oct 27 19:14:24 2004 +0000

     Typo
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@56 df754926-b1dd-0310-bc7b-ec298dee348c

commit 851989ac7c839ee2bf42c74a6fd90b5eb78f0a69
Author: Eric Petit <titer@videolan.org>
Date:   Wed Oct 27 19:06:47 2004 +0000

     + No need to emulate memalign on OS X
     + Fixed Makefile for OS X
    
     (Original patch by Peter Handel)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@55 df754926-b1dd-0310-bc7b-ec298dee348c

commit 57554925f4075d00708be958853d5b2e9a9f6487
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Wed Oct 27 15:43:15 2004 +0000

    Conditionally inits 1pass rc, only if it's enabled.
    This prevents a couple of irrelevant warnings from appearing in
    constant QP mode. (Loren Merritt <lorenm at u dot washington dot edu>)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@54 df754926-b1dd-0310-bc7b-ec298dee348c

commit c9a501a467f06277ed72ba5e222ba00b018364eb
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Mon Oct 25 09:40:23 2004 +0000

    Oops, changing those types messed up some vprintf's. fixed.
    (Loren Merrit <lorenm at u dot washington dot edu>)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@53 df754926-b1dd-0310-bc7b-ec298dee348c

commit 46d0385cdd96b8d0753016bb255108a3adb3ba86
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Tue Oct 19 21:35:18 2004 +0000

    filesize (bits) in a 32 bit int will overflow after 250MB, screwing up
    2pass ratecontrol.
    (patch by Loren Merritt <lorenm at u dot washington dot edu>)
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@52 df754926-b1dd-0310-bc7b-ec298dee348c

commit 3f7206dc5bfb84ff4e1fb494d9ecf09e98baa937
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Mon Oct 11 10:13:05 2004 +0000

    fix compilation on FreeBSD (from Loren Merritt (thanks to Igla))
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@51 df754926-b1dd-0310-bc7b-ec298dee348c

commit 48937c64c13904973f83495b64afdf4223f647f5
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Sep 29 16:05:24 2004 +0000

     * ratecontrol: Patch by Loren Merritt :
    
    " This patch
    * calculates average QP as a float, providing slightly improved
    ratecontrol if the first pass was CBR.
    * fixes the reported QP if you set both b_stat_read and b_stat_write,
    allowing 3 pass encoding (or just examination of the 2nd pass's stats)."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@50 df754926-b1dd-0310-bc7b-ec298dee348c

commit e3ae8a7d1a3953c0f261cba6e1b161cfc7f1b0d6
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Sep 29 16:02:18 2004 +0000

     * all: Patch by Loren Merritt.
    
    " This patch makes scene-cut detection based on the relative cost of I-frame
    vs P-frame, rather than just on the number of I-blocks used.
    It also makes the scene-cut threshold configurable.
    
    This doesn't have a very large effect: Most scene cuts are obvious to
    either algorithm. But I think this way is better in some less clear cut
    cases, and sometimes finds a better spot for an I-frame than just waiting
    for the max I-frame interval."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@49 df754926-b1dd-0310-bc7b-ec298dee348c

commit 79a2bb78b970e55e92bb4a74ff5f88dc6d0a6851
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Sep 22 07:37:43 2004 +0000

     * ratecontrol: added 'b' flag to fopen.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@48 df754926-b1dd-0310-bc7b-ec298dee348c

commit 48e288644ed493a77b5935e90010973a4e15faf6
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Sep 22 07:07:48 2004 +0000

     * all: Patches by Loren Merritt:
    "Improved patch. Now supports subpel ME on all candidate MB types,
    not just on the winner.
    
    subpel_refine: (completely different scale from before)
    0 => halfpel only
    1 => 1 iteration of qpel on the winner (same as x264 r46)
    2 => 2 iterations of qpel (about the same as my earlier patch, but faster
    3 => halfpel on all MB types, qpel on the winner
    4 => qpel on all
    5 => more iterations
    
    benchmarks:
    mencoder dvd://1 -ovc x264 -x264encopts
    qp_constant=19:fullinter:cabac:iframe=200:psnr
    
    subpel_refine=1:  PSNR Global:46.82 kb/s:1048.1 fps:17.335
    subpel_refine=2:  PSNR Global:46.83 kb/s:1034.4 fps:16.970
    subpel_refine=3:  PSNR Global:46.84 kb/s:1023.3 fps:14.770
    subpel_refine=4:  PSNR Global:46.87 kb/s:1010.8 fps:11.598
    subpel_refine=5:  PSNR Global:46.88 kb/s:1006.9 fps:10.824"
    
     And
    
    "The current code for calculating the cost of encoding which reference
    frame a MB is predicted from, introduces a bias towards ref0 and
    against P16x16.
    Removing this bias produces an improvement of .4% - 2% bitrate,
    depending on content and number of reference frames."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@47 df754926-b1dd-0310-bc7b-ec298dee348c

commit f9bd35a32d8de87c67749c1628ea7693a2b83460
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 29 12:02:50 2004 +0000

     * x264: added --ipratio --pbratio in help section.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@46 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8c6f6fa0db394e65fa9b4272deec859c9cb67aac
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 29 11:32:34 2004 +0000

     * ratecontrol: path by Loren Merritt.
    
     "Use average qp instead of last qp in the frame for 2pass rc.
     (Improves quality and rate accuracy if the first pass was cbr.)"
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@45 df754926-b1dd-0310-bc7b-ec298dee348c

commit d46df39630925245993e3ecde07adce618d3c30a
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 28 22:30:44 2004 +0000

     * x264: added --quiet and --no-psnr.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@44 df754926-b1dd-0310-bc7b-ec298dee348c

commit cba0cd394dfd87f82daa4b621dd9b701fca5bb9f
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 28 22:19:47 2004 +0000

     * eval.c: lalala ;)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@43 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8a5aa764ab46fd04dd60acfa3a6641742c4b0daa
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 28 22:19:15 2004 +0000

     * added Loren Merritt.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@42 df754926-b1dd-0310-bc7b-ec298dee348c

commit 58b7012e219b64752168084fa028e76792b6f42a
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 28 22:16:48 2004 +0000

     * all: added eval.c (I hope libx264.dsp is correct, I can't test).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@41 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9116d300befee74c92ff3ac9fe7625a57dafab48
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 28 22:14:26 2004 +0000

     * all: 2pass patch by Loren Merritt <lorenm AT u.washington DOT edu>
    
     "Mostly borrowed from libavcodec.
     There is not much theoretical basis behind my choice of defaults for
     rc_eq, qcompress, qblur, and ip_factor."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@40 df754926-b1dd-0310-bc7b-ec298dee348c

commit 67b673006c7b13a3435e89ccf0a83ebbdd23937c
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 28 19:24:08 2004 +0000

     * all: first part of the 2pass patch by Loren Merritt
     (only the header/textures bits computed for now).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@39 df754926-b1dd-0310-bc7b-ec298dee348c

commit 0a7d38ca3a65133af46a438d00ff25948a78019a
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 22 15:01:46 2004 +0000

     * all: include stdarg.h (needed for x264_log)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@38 df754926-b1dd-0310-bc7b-ec298dee348c

commit 63e5a5c8865f76d9fb0af10ee238fdb1bea1178c
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Wed Aug 18 09:28:56 2004 +0000

    Use x264_log() in ratecontrol.c
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@37 df754926-b1dd-0310-bc7b-ec298dee348c

commit f246a87fa64a4febe10a17e983f1b656d7914625
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 17 21:08:23 2004 +0000

     * encoder/encoder.c: oops. (fixed compilation).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@36 df754926-b1dd-0310-bc7b-ec298dee348c

commit dab6f065ffd7ab2ecc591ef22e0d556a3516a48f
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 17 20:39:03 2004 +0000

     * all: more fprintf -> x264_log.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@35 df754926-b1dd-0310-bc7b-ec298dee348c

commit f53a7ae05c5f348baf1322d6d233aba899287df0
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 17 20:27:05 2004 +0000

     * all: added a x264_param_t.analyse.b_psnr
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@34 df754926-b1dd-0310-bc7b-ec298dee348c

commit 72eced43c35ecce69b422c2da228ae044430c038
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 17 20:03:46 2004 +0000

     * encoder/encoder.c: kb/s with k=1000 (more consistant). Patch by Loren
    Merritt <lorenm AT u DOT washington DOT edu>
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@33 df754926-b1dd-0310-bc7b-ec298dee348c

commit a01315f4e71b38b63ca08f9453b3409bf4f044b8
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Aug 17 19:56:36 2004 +0000

     * all: introduced a x264_log function. It's not yet used everywhere
     but we should start using it :)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@32 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5ffe5a90e7553c20f40dcb1ae372579a941280cb
Author: Eric Petit <titer@videolan.org>
Date:   Mon Aug 16 08:52:05 2004 +0000

     OS X is missing exp2f()
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@31 df754926-b1dd-0310-bc7b-ec298dee348c

commit 348de7f684821ffbb5e8a3a52969986de00c89c8
Author: Eric Petit <titer@videolan.org>
Date:   Mon Aug 16 08:47:51 2004 +0000

    Fixed warnings with PPC 64
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@30 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2885471d5ea17e4e84b9e2551d8c1e2049bb3d7f
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Fri Aug 13 13:36:14 2004 +0000

    Add my svn user name.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@29 df754926-b1dd-0310-bc7b-ec298dee348c

commit ed61d8ee02dabbfc7c667ee4711e5c9cd95f2032
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Fri Aug 13 13:34:47 2004 +0000

    Bugfix.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@28 df754926-b1dd-0310-bc7b-ec298dee348c

commit 6b20e508a7f7110b4c951fbdc4a971cc5c14494d
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Aug 12 20:52:24 2004 +0000

    Include timing info in VUI.
    Change frame rate from float to fraction (sorry for the inconvenience).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@27 df754926-b1dd-0310-bc7b-ec298dee348c

commit 2b3cd6c669b64046a54b32577946bc262360d8ae
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Thu Aug 12 13:07:41 2004 +0000

    Add TAGS rule.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@26 df754926-b1dd-0310-bc7b-ec298dee348c

commit 444615252b766c95c3dcbb11327c379101929468
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Wed Aug 11 20:24:20 2004 +0000

    Fixes by Loren Merritt (lorenm at u.washington.edu).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@25 df754926-b1dd-0310-bc7b-ec298dee348c

commit 78292e08d9e9770b1c74766368670eeeb3f02e3e
Author: Måns Rullgård <mru@mru.ath.cx>
Date:   Wed Aug 11 01:02:05 2004 +0000

    Get rid of integer overflows that caused the rate control to go
    haywire in some situations.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@24 df754926-b1dd-0310-bc7b-ec298dee348c

commit 374baca15e0ce069cadd4c32633f915b6f8294b0
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Mon Aug 9 00:05:22 2004 +0000

     * encoder: correct range for i_idr_pic_id is 0..65535
     (Not 0..65534)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@23 df754926-b1dd-0310-bc7b-ec298dee348c

commit 07a0494bd1b2c1ec05866d09bf84d0564d6e5080
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 8 21:36:41 2004 +0000

     ratecontrol: patch by Loren Merritt <lorenm AT u DOT washington DOT edu>
    
     "The new cbr mode fails to completely disable itself when encoding in
     constant QP mode. The per-block QPs are then randomized between QP+4 and
     QP-2 based on uninitialized ratecontrol parameters."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@22 df754926-b1dd-0310-bc7b-ec298dee348c

commit 249259d03700724183b879cd504a172d9c2d35f6
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 8 19:15:10 2004 +0000

     * ratecontrol: patch by Måns Rullgård <mru AT mru DOT ath DOT cx>
     "This patch fixes a small bug (divide by 0 possible) in the rate control."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@21 df754926-b1dd-0310-bc7b-ec298dee348c

commit e96703d73226f61149e2c815a03f8443a620ffff
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 8 16:18:49 2004 +0000

     * encoder: simpler scene cut detection (seems better but do not check
    size anymore, so need more testing).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@20 df754926-b1dd-0310-bc7b-ec298dee348c

commit 11e1b0c27fdd2213007fdb91f40d0fc2a1c11569
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sun Aug 8 14:23:50 2004 +0000

     * all: Change the way PSNR is computed (based on a patch by Loren
    Merritt <lorenmn AT u DOT washington DOT edu>
     Using SQE(DeltaSourceReconstructed) = Sum( delta^2 )
           PSNR( SQE, Size ) = -10Ln(SQE / 255^2 / Size )/Ln(10) )
           Y+U+V : Union of YUV planes.
    
     Now there is
      - Mean PSNR : Sum( PSNR( SQE(Y/U/V), Size(Y/U/V) ) / TotalFrames
      - Average PSNR: Sum( PSNR( SQE(Y+U+V), Size(Y+U+V) ) ) / TotalFrames
      - Global PSNR: PSNR( Sum( SQE(Y+U+V) ), Size(Y+U+V)*TotalFrames )
    
      Mean PSNR is used by the JM, and Average/Overall is used on Doom9 for
    example.
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@19 df754926-b1dd-0310-bc7b-ec298dee348c

commit 9168b245fb9b7e84e4c55faba839b89a4b54a48b
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Sat Aug 7 16:02:20 2004 +0000

     * x264.h: increased X264_BUILD.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@18 df754926-b1dd-0310-bc7b-ec298dee348c

commit 20c19c4b3a001c9e02775fdba040725a438db795
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Fri Aug 6 18:06:09 2004 +0000

     * all: Patch from Måns Rullgård <mru AT mru DOT ath DOT cx>
    
    "Here's a patch that adds some kind of rate control.  I suppose it is
     by no means perfect, but it's much better than constant quantizer.  It
     also has a very crude scene change detection that sometimes avoids a
     buffer underflow by reencoding oversized P/B frames as I frames."
    
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@17 df754926-b1dd-0310-bc7b-ec298dee348c

commit 30a244d00365a81999c82bdd3dd8beb0d036d36a
Author: Eric Petit <titer@videolan.org>
Date:   Mon Aug 2 07:05:05 2004 +0000

     Linux PPC AltiVec fix
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@16 df754926-b1dd-0310-bc7b-ec298dee348c

commit b0495a99ee0b65b03be7d6961ddb70ef7e38dcf0
Author: Eric Petit <titer@videolan.org>
Date:   Wed Jul 28 21:39:06 2004 +0000

     BeOS fixes (no stdint.h, no libm)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@15 df754926-b1dd-0310-bc7b-ec298dee348c

commit bf06e99e9b054a3f671a6f3f0c62d9b204057b0b
Author: Eric Petit <titer@videolan.org>
Date:   Tue Jul 27 08:34:59 2004 +0000

     Attempt to fix build on Linux PPC
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@14 df754926-b1dd-0310-bc7b-ec298dee348c

commit 86ca49033ad85660dc88f82ab721263f4d29290e
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Fri Jul 23 18:14:59 2004 +0000

     * encoder.c, analyse.c, macroblock: fixed when using a qp per MB.
     (Buggy for pskip and mb with null cbp luma and chroma).
     * dct*: fixed order of idct.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@13 df754926-b1dd-0310-bc7b-ec298dee348c

commit 55eb54c7e47a8f98f4382a953e03ee414972c36f
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Fri Jul 16 18:26:19 2004 +0000

     * cpu.asm: mmh trashing ebp,esi and edi isn't a good idea I fear ;)
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@12 df754926-b1dd-0310-bc7b-ec298dee348c

commit a8703c8933f51715c25118eb83487072a548934e
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Tue Jun 29 22:41:42 2004 +0000

     * all: fixed ss2 runtime selection.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@11 df754926-b1dd-0310-bc7b-ec298dee348c

commit 02713c2401b471fb3bfa4541e8b867dfd06628cc
Author: Min Chen <chenm001@163.com>
Date:   Fri Jun 18 02:00:40 2004 +0000

    update & SSE2 support
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@10 df754926-b1dd-0310-bc7b-ec298dee348c

commit 77bce7d16d8a2fc12aff32997def2f966975617c
Author: Min Chen <chenm001@163.com>
Date:   Thu Jun 17 09:01:19 2004 +0000

    update
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@9 df754926-b1dd-0310-bc7b-ec298dee348c

commit c7631faf30ef78cc254a7ad8a7552e65824507d8
Author: Min Chen <chenm001@163.com>
Date:   Thu Jun 17 08:58:43 2004 +0000

    remove some unused code
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@8 df754926-b1dd-0310-bc7b-ec298dee348c

commit 8d3d88be0fe3a22ea39861321eed015efb454359
Author: Min Chen <chenm001@163.com>
Date:   Mon Jun 14 05:47:51 2004 +0000

    support for build checkasm.exe
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@7 df754926-b1dd-0310-bc7b-ec298dee348c

commit b2e2e34b3415cb9429475c1b828dcb2c36855308
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Thu Jun 10 18:13:38 2004 +0000

     * build fix (thx xxcd).
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@6 df754926-b1dd-0310-bc7b-ec298dee348c

commit 4fb5f9aa45f1a71fd718eaabd0992b8086887fa0
Author: VideoLAN <videolan@videolan.org>
Date:   Thu Jun 10 07:32:18 2004 +0000

     * TODO: test.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@5 df754926-b1dd-0310-bc7b-ec298dee348c

commit a511bbecc348964c9de501a954c08f1b3bd4644d
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Jun 9 19:35:31 2004 +0000

     * vfw/* : oops...
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@4 df754926-b1dd-0310-bc7b-ec298dee348c

commit 166ed2dd0b3ef0a89f64371e78c70a1b8f874ddd
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Wed Jun 9 19:35:07 2004 +0000

     * mc-c.c compilation fix for gcc >= 3.3
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@3 df754926-b1dd-0310-bc7b-ec298dee348c

commit 602c87d5a3fb75cf7404bae08ecc3d5bc5ab1372
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Thu Jun 3 19:29:57 2004 +0000

     * all: re-import of CVS.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@2 df754926-b1dd-0310-bc7b-ec298dee348c

commit 5dc0aae2f900064d1f58579929a2285ab289a436
Author: Laurent Aimar <fenrir@videolan.org>
Date:   Thu Jun 3 19:29:33 2004 +0000

     * all: re-import of the CVS.
    
    
    git-svn-id: svn://svn.videolan.org/x264/trunk@1 df754926-b1dd-0310-bc7b-ec298dee348c
