commit 847597773aff56a5612a9edbebb40b350c637edf Author: Jason Garrett-Glaser Date: Thu Mar 26 22:22:23 2009 -0700 Faster probe_skip Add a second chroma threshold after the DC transform. encoder/macroblock.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) commit c109c8e7db67df7194f2f913a7a4d65217caee26 Author: Jason Garrett-Glaser Date: Thu Mar 19 12:28:21 2009 -0700 Add missing "static" qualifier to two arrays Should slightly improve performance. encoder/analyse.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 682b54d6175f98dfa14fec4d951f4b3b6e686b95 Author: Jason Garrett-Glaser 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. common/cpu.c | 5 +++-- common/dct.c | 6 ++++-- common/pixel.c | 2 +- common/x86/dct-a.asm | 49 ++++++++++++++++++++++++++++++++++++++++++++++++- common/x86/dct.h | 1 + tools/checkasm.c | 9 ++++++--- x264.h | 2 +- 7 files changed, 64 insertions(+), 10 deletions(-) commit 8d82fecc3377b3052279f038f2273ade3a5b65cc Author: Jason Garrett-Glaser 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. common/x86/mc-a2.asm | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) commit 96733ab692b4a268685d65070d6977964a466c91 Author: Holger Lubitz 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. common/x86/mc-a2.asm | 64 +++++++++++++++++++++++++++++++++---------------- 1 files changed, 43 insertions(+), 21 deletions(-) commit 10d6ef07409ebe38b5f1e8e4516155a2fe66d4c6 Author: Jason Garrett-Glaser 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. common/x86/pixel-a.asm | 85 ++++++++++++++++++++++++++---------------------- 1 files changed, 46 insertions(+), 39 deletions(-) commit e1c7f12cb828072b2b5b096195ff3004b83c7785 Author: Jason Garrett-Glaser 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 common/x86/mc-a2.asm | 68 ++++++++++++++++++++++++++++++++++--------------- common/x86/mc-c.c | 3 +- 2 files changed, 49 insertions(+), 22 deletions(-) commit 3d780622c1ff19bc3d6a522a65879779a7ddb3dd Author: Jason Garrett-Glaser Date: Fri Mar 6 18:57:15 2009 -0800 Update some asm copyright headers common/x86/dct-32.asm | 4 ++-- common/x86/dct-64.asm | 4 ++-- common/x86/dct-a.asm | 2 +- common/x86/pixel-32.asm | 4 ++-- common/x86/sad-a.asm | 2 +- common/x86/x86inc.asm | 5 ++++- 6 files changed, 12 insertions(+), 9 deletions(-) commit 2dca5f5413051a26cbba4e20f3c77ff69b694ba3 Author: Holger Lubitz 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. common/dct.c | 5 + common/pixel.c | 66 ++-- common/x86/dct-32.asm | 136 +++++-- common/x86/dct-64.asm | 215 +++++++--- common/x86/dct-a.asm | 189 ++++----- common/x86/dct.h | 7 + common/x86/pixel-32.asm | 16 +- common/x86/pixel-a.asm | 1054 ++++++++++++++++++++++++++++++---------------- common/x86/pixel.h | 8 +- common/x86/x86util.asm | 260 +++++++++++- tools/checkasm.c | 2 +- 11 files changed, 1326 insertions(+), 632 deletions(-) commit f3872178768cca2973f759c479e26f3ac35e55fe Author: Jason Garrett-Glaser Date: Fri Mar 6 15:28:47 2009 -0800 Update x264 copyright date encoder/set.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 8544346a43456720f07e6a438cfbb0d84b39779a Author: Jason Garrett-Glaser Date: Wed Mar 4 03:16:06 2009 -0800 Remove pre-scenecut from fprofile commands as well Also add psy-trellis to fprofile Makefile | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 6f0b2a9b18f3af3fd7e495640756e1d5e43343e1 Author: Jason Garrett-Glaser 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. common/pixel.c | 13 ++++++++++--- common/x86/sad-a.asm | 40 +++++++++++++++++++++------------------- 2 files changed, 31 insertions(+), 22 deletions(-) commit 1cc16dcee61496a5fb4da80d7605c1c88e2d371d Author: Jason Garrett-Glaser Date: Thu Feb 26 19:50:09 2009 -0800 Fix scenecut and VBV with videos of width/height <= 32 Also remove an unused variable encoder/slicetype.c | 25 ++++++++++--------------- 1 files changed, 10 insertions(+), 15 deletions(-) commit 3e4946f305317856ed79e0898f25f10859df22ed Author: Jason Garrett-Glaser 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. common/common.c | 16 ++++--- common/common.h | 5 -- encoder/analyse.c | 21 ++------- encoder/encoder.c | 114 ++----------------------------------------------- encoder/ratecontrol.c | 14 +------ encoder/slicetype.c | 54 +++++++++++++++--------- x264.c | 5 +- x264.h | 3 +- 8 files changed, 56 insertions(+), 176 deletions(-) commit 7ddb2c7da0621bb853b6702e6f59619c2d1c6a08 Author: Guillaume Poirier 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 common/ppc/pixel.c | 145 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 145 insertions(+), 0 deletions(-) commit 11863ace50e918ec75f7c8e22907ebf1000820e1 Author: Jason Garrett-Glaser 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. common/frame.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit a933a3e6a6be918a2ae56e3d94ecea29143b9ea5 Author: Jason Garrett-Glaser Date: Mon Feb 16 05:56:12 2009 -0800 Optimize neighbor CBP calculation and fix related regression r1105 introduced array overflow in cbp handling common/common.h | 4 ++++ common/macroblock.c | 4 ++++ encoder/cabac.c | 37 ++++++++++++++----------------------- 3 files changed, 22 insertions(+), 23 deletions(-) commit cc4f807796220a042e386da259ddc38e6ca8e43b Author: Tal Aloni Date: Fri Feb 13 16:30:14 2009 -0800 Show FPS when importing a raw YUV file x264.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit f43e22a7873ea3811bbc15e30d67681f23249087 Author: Anton Mitrofanov Date: Wed Feb 11 10:38:56 2009 -0800 Windows 64-bit support A "make distclean" is probably required after updating to this revision. Makefile | 10 ++-- common/common.c | 2 +- common/pixel.c | 2 +- common/x86/cabac-a.asm | 37 ++++++----- common/x86/cpu-a.asm | 19 +++--- common/x86/dct-32.asm | 8 +- common/x86/dct-64.asm | 8 +- common/x86/dct-a.asm | 66 ++++++++++++++------ common/x86/deblock-a.asm | 86 +++++++++++++++----------- common/x86/mc-a.asm | 111 +++++++++++++++++---------------- common/x86/mc-a2.asm | 30 ++++++--- common/x86/mc-c.c | 2 +- common/x86/pixel-a.asm | 124 +++++++++++++++++++++---------------- common/x86/predict-a.asm | 8 +- common/x86/quant-a.asm | 153 ++++++++++++++++++++++++---------------------- common/x86/sad-a.asm | 91 +++++++++++++++++++++------ common/x86/x86inc.asm | 147 ++++++++++++++++++++++++++++++++++++-------- configure | 40 ++++++++++--- extras/getopt.c | 5 ++ tools/checkasm-a.asm | 83 +++++++++++++++++++++++-- tools/checkasm.c | 6 +- 21 files changed, 682 insertions(+), 356 deletions(-) commit d56e13f9016b898a3bd4043b26c2e70c2bb9f6c4 Author: Jason Garrett-Glaser 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. common/x86/quant-a.asm | 2 +- encoder/cabac.c | 2 ++ encoder/encoder.c | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) commit 05afd8e02bd83c6c9eba4d41b8d829a383689117 Author: Manuel 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 ) common/ppc/pixel.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 75b495f2723fcb77fe7d5c92511136d3fea4cf13 Author: Guillaume Poirier Date: Mon Feb 9 21:17:33 2009 +0100 Spare a vec_perm and a vec_mergeh though using a LUT of permutation vectors. common/ppc/pixel.c | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) commit 37f98cb85024d288eab5508a3b04ca1324335693 Author: Guillaume Poirier 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). common/frame.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) commit b5b9728b9b1cf9e4e54092515fd9fa86cd9023a4 Author: Jason Garrett-Glaser 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). common/x86/predict-a.asm | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 0ee50db35db3e5af0d40936dbc5ff7e2478b1a2c Author: Jason Garrett-Glaser 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. encoder/macroblock.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) commit 9bf45f6d397559486b5fe038c3847b0d35c61728 Author: Jason Garrett-Glaser 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. encoder/cabac.c | 121 ++++++++++++++++++------------------------------------- 1 files changed, 39 insertions(+), 82 deletions(-) commit 3927938121ef63d72d9fd429c25202ebd65dd208 Author: Jason Garrett-Glaser Date: Sat Feb 7 01:57:43 2009 -0800 Faster coeff_last64 on 32-bit common/x86/quant-a.asm | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit 32615747d3ab5648b666b4f55531f47b3c075521 Author: Jason Garrett-Glaser 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. common/x86/predict-a.asm | 518 +++++++++++++++++++++++++++++----------------- common/x86/predict-c.c | 387 ++++++++++++---------------------- 2 files changed, 465 insertions(+), 440 deletions(-) commit 711e6e87967aa3813a894fdfcd1e2b7eb48328a6 Author: Manuel 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. common/ppc/mc.c | 175 ++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 115 insertions(+), 60 deletions(-) commit b69548aa3a0218ba1d4f934edcf8942f2b1682f5 Author: Holger Lubitz 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. common/common.h | 1 + common/predict.c | 12 +- common/predict.h | 3 +- common/x86/predict-a.asm | 461 +++++++++++++++++++++++++++++++++++++++++++--- common/x86/predict-c.c | 62 +++++-- common/x86/predict.h | 3 +- encoder/analyse.c | 2 +- encoder/encoder.c | 2 +- tools/checkasm.c | 32 +++- 9 files changed, 520 insertions(+), 58 deletions(-) commit 122a54a0dbbfd5a8b649a6ca7eb0b7d3c42f89aa Author: Guillaume Poirier Date: Wed Feb 4 10:04:55 2009 +0000 10l: fix compilation with GCC 4.3+ common/ppc/pixel.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit c0be8106d40b2ccbfec37229afaecf236b03762c Author: Jason Garrett-Glaser 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. common/dct.c | 9 ++++++- common/dct.h | 2 +- common/x86/dct-a.asm | 59 +++++++++++++++++++++++++++++++++++++------------ common/x86/dct.h | 2 +- encoder/cavlc.c | 6 +---- tools/checkasm.c | 25 ++++++++++++++++++++- 6 files changed, 79 insertions(+), 24 deletions(-) commit 91bffdcc24e59620cc09aa4288f7e0c0b74c8891 Author: Jason Garrett-Glaser 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. encoder/analyse.c | 104 +++++++++++++++++++++++++++----------------------- encoder/cabac.c | 1 + encoder/cavlc.c | 9 +--- encoder/macroblock.c | 2 +- encoder/rdo.c | 2 +- 5 files changed, 61 insertions(+), 57 deletions(-) commit e404f350afc3c52a99d13d22f862cd2ede1438b0 Author: Guillaume Poirier 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 common/ppc/pixel.c | 32 ++++++++++++++++---------------- 1 files changed, 16 insertions(+), 16 deletions(-) commit 4c171c3b1c803a173ace823275882b3c9a2ecd24 Author: Jason Garrett-Glaser 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. common/common.h | 4 + common/dct.c | 18 ++ common/dct.h | 1 + common/ppc/quant.c | 68 ++++---- common/ppc/quant.h | 8 +- common/quant.c | 27 +++- common/quant.h | 8 +- common/x86/dct-a.asm | 99 +++++++++++ common/x86/dct.h | 3 + common/x86/quant-a.asm | 98 ++++++++++- common/x86/quant.h | 25 ++-- encoder/analyse.c | 14 ++ encoder/cabac.c | 13 +-- encoder/cavlc.c | 1 - encoder/macroblock.c | 431 +++++++++++++++++++++++++----------------------- encoder/macroblock.h | 6 +- encoder/rdo.c | 25 ++- tools/checkasm.c | 54 ++++--- 18 files changed, 585 insertions(+), 318 deletions(-) commit 8ae672fe2e0f779e57abe560bafdf41ec1fea533 Author: Guillaume Poirier 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... tools/checkasm.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) commit c9095eb2792b18a264569d46a3d923eafe333f45 Author: Brad Date: Thu Jan 29 04:35:34 2009 +0000 fix detection of pthread and isfinite on OpenBSD common/osdep.h | 2 +- configure | 3 +++ 2 files changed, 4 insertions(+), 1 deletions(-) commit 1df50b9287c83d5443d19482345b6842b78081c3 Author: Loren Merritt 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. Makefile | 7 +++---- configure | 39 +++++++++++++-------------------------- version.sh | 2 +- 3 files changed, 17 insertions(+), 31 deletions(-) commit 60f4cd8936af4997cfbd9650ea27152df00c5669 Author: Loren Merritt 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. common/pixel.c | 276 ++++++++++++++++++++++++++++---------------------------- 1 files changed, 137 insertions(+), 139 deletions(-) commit 71c5a8dca6e5f7bf2330d028989eeeab27701151 Author: Jason Garrett-Glaser 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. encoder/ratecontrol.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 8e2c4b76dd49c44cedf46343e46b292d5a0ca39e Author: Jason Garrett-Glaser 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. common/dct.c | 26 +++++++++++++++ common/dct.h | 1 + common/macroblock.c | 7 ++-- common/macroblock.h | 10 +++--- common/x86/dct-a.asm | 80 ++++++++++++++++++++++++++++++++++++++++++++++ common/x86/dct.h | 2 + common/x86/x86inc.asm | 24 ++++++++++++++ encoder/macroblock.c | 85 ++++++++++++++++++++++++++++++------------------ tools/checkasm.c | 1 + 9 files changed, 196 insertions(+), 40 deletions(-) commit 355c445f222eae4f953f1be9f8e1d44a2a07d639 Author: Guillaume Poirier Date: Mon Jan 26 06:28:23 2009 -0800 add AltiVec implementation of x264_mc_copy_w16_aligned common/ppc/mc.c | 19 +++++++++++++++++++ 1 files changed, 19 insertions(+), 0 deletions(-) commit 71ac0a34bc0460bf67da68f300e4150bc50d9aae Author: Guillaume Poirier Date: Fri Jan 23 13:53:06 2009 -0800 add AltiVec implementation of x264_pixel_var_16x16 and x264_pixel_var_8x8 common/ppc/pixel.c | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 75 insertions(+), 0 deletions(-) commit 1959672cf6f18da888940261916dbf81248e0598 Author: Guillaume Poirier Date: Fri Jan 23 01:11:20 2009 -0800 add AltiVec 16 <-> 32 bits conversions macros common/ppc/ppccommon.h | 16 ++++++++++++++++ 1 files changed, 16 insertions(+), 0 deletions(-) commit 39a279613d10fa4dbe608f1a2af1eb86686033af Author: Guillaume Poirier 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. common/ppc/predict.c | 10 ++-------- 1 files changed, 2 insertions(+), 8 deletions(-) commit 5fb6417309febda6f73a98494cb935379129e15d Author: Jason Garrett-Glaser 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. common/common.c | 3 - common/common.h | 2 +- common/frame.c | 2 +- common/macroblock.c | 140 +++++++-------------------------------------------- common/macroblock.h | 30 ++--------- encoder/encoder.c | 3 - encoder/set.c | 6 +-- x264.c | 6 -- x264.h | 7 +-- 9 files changed, 26 insertions(+), 173 deletions(-) commit a48d1d0a2ad590d041b79bb152ed47d00451ba8d Author: Brad Date: Mon Jan 19 05:14:53 2009 -0800 Add AltiVec and CPU numbers detection on OpenBSD. common/cpu.c | 18 ++++++++++++++++-- 1 files changed, 16 insertions(+), 2 deletions(-) commit 09e76c903d3419619ed326a4dd114369a55bdd6e Author: Guillaume Poirier Date: Sun Jan 18 22:44:14 2009 +0100 Add AltiVec implementation of predict_8x8c_p. 2.6x faster than scalar C. common/ppc/predict.c | 56 +++++++++++++++++++++++++++++++++++++++++++++++++- common/ppc/predict.h | 1 + common/predict.c | 7 ++++++ 3 files changed, 63 insertions(+), 1 deletions(-) commit bde164d50f1936b28a9cd66f8be8d9995cc5a01b Author: Jason Garrett-Glaser 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. common/x86/quant-a.asm | 2 +- encoder/ratecontrol.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletions(-) commit 201f7ad8ad50ff460f79cb44e0bee6aebbf039ca Author: Brad 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. common/ppc/ppccommon.h | 2 +- configure | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 56e91836a12f1b119fb4aae43182f2fc012f1eca Author: Guillaume Poirier 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.) common/ppc/mc.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d2b6423db8310e5238fd7c0e517b3344578cc08a Author: Guillaume Poirier Date: Wed Jan 14 21:49:42 2009 +0100 rename vector+array unions to closer match the vector typedefs names. common/ppc/mc.c | 2 +- common/ppc/ppccommon.h | 22 +++++++++++----------- common/ppc/predict.c | 4 ++-- common/ppc/quant.c | 32 ++++++++++++++++---------------- 4 files changed, 30 insertions(+), 30 deletions(-) commit 264e447cc4ce267d7e4d078b080716093a78a2c8 Author: Guillaume Poirier Date: Wed Jan 14 21:13:58 2009 +0100 Add Altivec implementation of all the remaining 16x16 predict routines. common/ppc/ppccommon.h | 5 ++ common/ppc/predict.c | 110 +++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 113 insertions(+), 2 deletions(-) commit e46f64824a718ca146724d6cfa104aaba16eb169 Author: Jason Garrett-Glaser 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 encoder/analyse.c | 15 +++++++++++++-- 1 files changed, 13 insertions(+), 2 deletions(-) commit 79bfb039de253c986986fbd99935c0d4a95ad503 Author: Jason Garrett-Glaser 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 . encoder/slicetype.c | 8 +++----- x264.c | 6 +++--- x264.h | 6 +++++- 3 files changed, 11 insertions(+), 9 deletions(-) commit 7c4f8297e057a439cf1f1d7cf95d05b9f27063c7 Author: Jason Garrett-Glaser 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) encoder/analyse.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit b6bb3d4287727b73291f9e9a2bf38589ac397382 Author: Jason Garrett-Glaser 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. common/macroblock.c | 4 ++-- encoder/encoder.c | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) commit 6a4a9beae060d69bbeaeb8c1c3056fb6ae6765f6 Author: Jason Garrett-Glaser 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. encoder/analyse.c | 6 +----- encoder/encoder.c | 1 + 2 files changed, 2 insertions(+), 5 deletions(-) commit f586ba52b87ebb6b1d7689603680ef7d3219e09a Author: Brad Smith Date: Mon Jan 5 22:53:11 2009 +0000 Factorize in ppccommon.h the conditional inclusion of altivec.h on Linux systems. common/ppc/dct.c | 4 ---- common/ppc/deblock.c | 4 ---- common/ppc/mc.c | 4 ---- common/ppc/pixel.c | 4 ---- common/ppc/ppccommon.h | 4 ++++ common/ppc/predict.c | 4 ---- common/ppc/quant.c | 4 ---- 7 files changed, 4 insertions(+), 24 deletions(-) commit 87b6d55ebda8a11186f7b09b5866b05a4584d13d Author: Brad Smith 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. common/osdep.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 6f7c9be698848e8d9fd116b728af7d718ea43a2f Author: Jason Garrett-Glaser Date: Thu Jan 1 21:44:00 2009 -0500 Small tweaks to coeff asm Factor out a few redundant pxors Related cosmetics common/x86/quant-a.asm | 34 ++++++++++++++-------------------- 1 files changed, 14 insertions(+), 20 deletions(-) commit ed32ad20d6914d1781c7711574f10a8df49e3e20 Author: Steven Walters Date: Tue Dec 30 22:20:37 2008 -0500 Use the correct strtok under MSVC Also change one malloc -> x264_malloc common/osdep.h | 1 + encoder/ratecontrol.c | 2 +- 2 files changed, 2 insertions(+), 1 deletions(-) commit 390d26ad2ca72b420448c36a747d3ee49b79e75b Author: Jason Garrett-Glaser 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. common/cpu.h | 3 ++- encoder/encoder.c | 2 +- encoder/ratecontrol.c | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) commit 00cef64dd3fff5d4b5b9b0e63314c11bfb7d33e0 Author: Jason Garrett-Glaser 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. common/cpu.c | 2 + common/quant.c | 13 ++++++++ common/x86/quant-a.asm | 74 ++++++++++++++++++++++++++++++++++++----------- common/x86/quant.h | 7 ++++ tools/checkasm.c | 14 ++++++++- x264.h | 1 + 6 files changed, 92 insertions(+), 19 deletions(-) commit 045ae4045a1827555b3eaab4fbf3c9809e98c58f Author: Steven Walters 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. common/common.h | 2 ++ common/macroblock.c | 9 +++++++++ common/mc.c | 7 +++---- common/mc.h | 2 +- common/pixel.c | 8 +++----- common/pixel.h | 2 +- common/x86/mc-c.c | 9 +++------ encoder/encoder.c | 2 +- encoder/me.c | 13 ++----------- encoder/me.h | 5 +++++ tools/checkasm.c | 9 +++++---- 11 files changed, 35 insertions(+), 33 deletions(-) commit 681544ef803f3bd0429659495f97455aed1158a0 Author: Jason Garrett-Glaser 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. common/bs.h | 7 +++++ common/quant.c | 31 +++++++++++++++++++++++ common/quant.h | 1 + common/x86/quant-a.asm | 64 ++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/quant.h | 5 +++ encoder/cavlc.c | 48 ++++++++++++++--------------------- tools/checkasm.c | 56 ++++++++++++++++++++++++++++++++--------- 7 files changed, 170 insertions(+), 42 deletions(-) commit 648e132f7135c7e18625198e3ffe2c6c7d824df6 Author: Loren Merritt 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 common/x86/cabac-a.asm | 13 ++----------- common/x86/mc-a.asm | 25 +++++-------------------- common/x86/pixel-a.asm | 28 ++++++++++------------------ common/x86/quant-a.asm | 14 ++------------ common/x86/x86inc.asm | 23 +++++++++++++++++++++++ 5 files changed, 42 insertions(+), 61 deletions(-) commit 84a1ca6ce70fe7bad4922ddc5a72c2e9cd73703b Author: Jason Garrett-Glaser 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. common/cabac.c | 35 ---------------- encoder/cabac.c | 116 +++++++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 101 insertions(+), 50 deletions(-) commit 40ad1b6d411d1e7d0788d29627804a19977bb6ee Author: Jason Garrett-Glaser 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. common/bs.h | 5 +++-- common/vlc.c | 38 +++++++++++--------------------------- encoder/cavlc.c | 12 ++++++------ 3 files changed, 20 insertions(+), 35 deletions(-) commit 839cd8cf33492213f7878bf14c26b387b6599abd Author: Loren Merritt 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 common/common.c | 2 +- common/mc.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 42070dff1bc3019a6f56773fce3dd6e328e3a61b Author: Jason Garrett-Glaser 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) common/macroblock.c | 4 ++-- common/pixel.c | 3 +-- common/pixel.h | 2 +- common/x86/pixel-a.asm | 28 ++++++++++------------------ common/x86/pixel.h | 4 ++-- encoder/ratecontrol.c | 6 +++--- muxers.c | 2 +- tools/checkasm.c | 11 +++++------ 8 files changed, 25 insertions(+), 35 deletions(-) commit 265d61bcdc5e6ce6688e377af9f6c0136724ed59 Author: Jason Garrett-Glaser 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 common/macroblock.c | 12 +-------- common/macroblock.h | 35 ++++++++------------------ encoder/cabac.c | 65 ++++++-------------------------------------------- encoder/cavlc.c | 14 ++-------- encoder/encoder.c | 4 +- 5 files changed, 26 insertions(+), 104 deletions(-) commit a4ec1020efb1a2a6757f8f891d78c2dd9344bb91 Author: Loren Merritt Date: Thu Dec 11 19:47:17 2008 +0000 faster ESA init reduce memory if using ESA and not p4x4 common/common.h | 1 + common/frame.c | 2 +- common/mc.c | 71 +++++++++++++++++++++++++++++------- common/mc.h | 6 +++ common/x86/mc-a2.asm | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/mc-c.c | 16 ++++++++ encoder/encoder.c | 3 ++ tools/checkasm.c | 66 +++++++++++++++++++++++----------- 8 files changed, 227 insertions(+), 36 deletions(-) commit 5f8a1490eb0bc2a934c34bc8307bfdc1ade6a92d Author: Jason Garrett-Glaser Date: Mon Dec 15 23:02:49 2008 -0800 More macroblock_cache optimizations Patch partially by Loren Merritt common/macroblock.c | 39 ++++++++++++++++----------------------- 1 files changed, 16 insertions(+), 23 deletions(-) commit e59ee249829049de338bebc3a2a00f9e471b40f3 Author: Jason Garrett-Glaser Date: Mon Dec 15 13:15:29 2008 -0800 Faster macroblock_cache_rect Explicit loop unrolling common/macroblock.h | 29 +++++++++++++++++++---------- 1 files changed, 19 insertions(+), 10 deletions(-) commit 2b8d6a6f957be623186ea2a20bcb13c3637440b8 Author: Jason Garrett-Glaser 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. common/macroblock.c | 31 ++++++++++++++++--------------- 1 files changed, 16 insertions(+), 15 deletions(-) commit 918ff3c6a33e170655b61af85f8955ec5590fff8 Author: David Wolstencroft 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. common/ppc/mc.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) commit 9089d217078450fad075b5eb61f372572d094a5f Author: Guillaume Poirier 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. common/ppc/ppccommon.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ad2c84f76f9fbb4f360caeb87df824beab023bbf Author: Jason Garrett-Glaser 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. encoder/analyse.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-) commit 549cc55b50df76d5167c0ace75c62595feb753ca Author: Loren Merritt 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. common/osdep.h | 16 +++++++++++++ encoder/ratecontrol.c | 59 +++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 64 insertions(+), 11 deletions(-) commit 877d22e071f1b73fb33c628cc273e2819d10c3de Author: Jason Garrett-Glaser Date: Wed Dec 10 20:53:13 2008 -0800 Suppress saveptr warnings on Windows GCC encoder/ratecontrol.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 0fdd0403cc9cc95637e287ddd1b257d6b65b7ddb Author: Jason Garrett-Glaser Date: Wed Dec 10 20:52:06 2008 -0800 More small speed tweaks to macroblock.c encoder/macroblock.c | 20 +++++++++++++------- 1 files changed, 13 insertions(+), 7 deletions(-) commit 77028cd3671de855affb02ffefe6bbd99ac7816e Author: Jason Garrett-Glaser 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. common/bs.h | 16 ++++ common/common.h | 1 + common/macroblock.h | 12 --- common/vlc.c | 46 +++++++++++ common/x86/util.h | 20 ----- encoder/cabac.c | 16 ---- encoder/cavlc.c | 202 +++++++++++++++++++++++++------------------------- encoder/encoder.c | 3 +- encoder/macroblock.c | 32 ++++++++- 9 files changed, 198 insertions(+), 150 deletions(-) commit f773bf06256a467f6b18418d97ce2c7ddbe5728c Author: Guillaume Poirier Date: Fri Dec 5 22:26:55 2008 +0100 fix compilation with GCC-4.3+ common/ppc/ppccommon.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 71d34b4eb454027cd742e6d96e2a70cce8cd163c Author: Jason Garrett-Glaser Date: Sat Nov 29 23:13:58 2008 -0800 High Profile allows 25% higher maxbitrate/cpb Correct level detection to take this into account. encoder/set.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) commit cc40e308c919010ef9ae6ff376cda56a58a79f3a Author: BugMaster Date: Sat Nov 29 14:04:29 2008 -0800 s/nasm/yasm in VS project file build/win32/libx264.vcproj | 52 ++++++++++++++++++++++---------------------- 1 files changed, 26 insertions(+), 26 deletions(-) commit 6c3e0258776c1117929aec7c12d51b88c214467c Author: Jason Garrett-Glaser Date: Sat Nov 29 04:49:18 2008 -0800 Cosmetic: update various file headers. common/cpu.c | 1 + common/frame.c | 1 + common/x86/cpu-a.asm | 3 ++- common/x86/dct-a.asm | 1 + common/x86/mc-a.asm | 2 +- common/x86/mc-a2.asm | 1 + common/x86/pixel-a.asm | 1 + common/x86/quant-a.asm | 1 + common/x86/sad-a.asm | 1 + encoder/analyse.c | 1 + encoder/cabac.c | 1 + encoder/cavlc.c | 1 + encoder/encoder.c | 1 + encoder/rdo.c | 5 ++++- encoder/slicetype.c | 5 ++++- 15 files changed, 22 insertions(+), 4 deletions(-) commit 2f031b0e31b799072383792358eee376baeb2ba7 Author: Loren Merritt Date: Sat Nov 29 11:54:02 2008 +0000 add date and compiler to `x264 --version` x264.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 5df2a7162aecda66b3da8dde501971389b1bbd44 Author: Jason Garrett-Glaser Date: Fri Nov 28 14:32:11 2008 -0800 10L in r1041 encoder/cabac.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 12724e638e8d28ce97bcb9c77d2bb7336b087af3 Author: Jason Garrett-Glaser 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. common/common.h | 10 +++- common/quant.c | 42 ++++++++++++++++++ common/quant.h | 1 + common/x86/quant-a.asm | 104 +++++++++++++++++++++++++++++++++++++++++++ common/x86/quant.h | 7 +++ encoder/cabac.c | 52 +++++++++++++--------- encoder/cavlc.c | 114 ++++++++++++++++++++--------------------------- encoder/macroblock.c | 13 ++++-- tools/checkasm.c | 43 ++++++++++++++++-- 9 files changed, 290 insertions(+), 96 deletions(-) commit 1591275a92faa3d63186e6de1e9022956113bc1d Author: Jason Garrett-Glaser Date: Wed Nov 26 23:42:55 2008 -0800 dequant_4x4_dc assembly About 3.5x faster DC dequant on Conroe common/quant.c | 5 ++- common/quant.h | 5 +-- common/x86/quant-a.asm | 78 +++++++++++++++++++++++++++++++++++++++++++---- common/x86/quant.h | 2 + encoder/macroblock.c | 2 +- tools/checkasm.c | 27 ++++++++++++++++- 6 files changed, 106 insertions(+), 13 deletions(-) commit 2338e1301aded556be8b85c6c3b4050e562ed862 Author: Loren Merritt Date: Thu Nov 27 02:37:46 2008 +0000 fix an overflow in dct4x4dc_mmx (unlikely to have occurred in any real video) common/x86/dct-a.asm | 36 ++++++++++++++++---------- tools/checkasm.c | 68 ++++++++++++++++++++++--------------------------- 2 files changed, 53 insertions(+), 51 deletions(-) commit a7fd9f5da062de323ae89f9a71ede03bfd6ddb6a Author: Jason Garrett-Glaser 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. common/x86/quant-a.asm | 2 +- configure | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) commit 0fe9b85f393e00b79c37d8c81aeae2a2f3d41290 Author: BugMaster Date: Tue Nov 25 15:11:24 2008 -0800 Fix rare warning messages in ratecontrol due to r1020 encoder/ratecontrol.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit adffb7fa3d3db6d2fa2ad97e0c950afec8889ea5 Author: BugMaster Date: Tue Nov 25 15:10:43 2008 -0800 Fix MSVC compilation and clean up MSVC build file Remove Release64 which never worked anyways. build/win32/libx264.vcproj | 736 +------------------------------------------- build/win32/x264.sln | 5 - build/win32/x264.vcproj | 75 +----- 3 files changed, 12 insertions(+), 804 deletions(-) commit e1013e8152254614696bbc9d92959bc9705d98b1 Author: Jason Garrett-Glaser 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. common/cpu.c | 1 - common/cpu.h | 1 + common/pixel.c | 46 +++++++++++++++------- common/x86/dct-a.asm | 6 +- common/x86/deblock-a.asm | 2 +- common/x86/mc-a.asm | 2 +- common/x86/pixel-a.asm | 95 ++++++++++++++++++++++++++++++++++++++++------ common/x86/pixel.h | 1 + common/x86/x86util.asm | 2 +- tools/checkasm.c | 6 +++ 10 files changed, 129 insertions(+), 33 deletions(-) commit cab23dd7e6bf4ed501f36e1e6f64d4902d0489c9 Author: Guillaume Poirier Date: Tue Nov 25 17:27:27 2008 +0100 fix indentation, whitespace cleanup, more consistent indentation of macro backslashes common/ppc/mc.c | 222 +++++++------- common/ppc/pixel.c | 808 +++++++++++++++++++++++------------------------- common/ppc/ppccommon.h | 104 +++--- 3 files changed, 546 insertions(+), 588 deletions(-) commit 4bf4109aee5b602f8a124b434e18f93ef539bbe6 Author: David Wolstencroft 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. AUTHORS | 3 + common/ppc/deblock.c | 37 ++++---- common/ppc/mc.c | 220 ++++++++++++++++++++++++----------------------- common/ppc/pixel.c | 136 ++++++++++++++++++----------- common/ppc/ppccommon.h | 103 +++++++++++------------ 5 files changed, 267 insertions(+), 232 deletions(-) commit 8215f79c7e19747b3206bcd6245be6cc6e668145 Author: Loren Merritt Date: Fri Nov 7 05:31:24 2008 +0000 refactor satd. 20KB smaller binary. refactor sa8d. slightly faster. more checkasm for hadamard. common/x86/pixel-32.asm | 71 +++------ common/x86/pixel-a.asm | 363 +++++++++++++++++++++++++---------------------- common/x86/x86util.asm | 10 +- tools/checkasm.c | 41 +++++- 4 files changed, 256 insertions(+), 229 deletions(-) commit 3a028c8e50238b7799175bd5a172e5517b4baf8d Author: Jason Garrett-Glaser 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. encoder/encoder.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit f9dba8bb274dffb19394db20912823464efcb8e1 Author: Jason Garrett-Glaser 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. Makefile | 2 +- common/cpu.c | 7 +++ common/pixel.c | 5 ++ common/x86/cpu-32.asm | 91 ------------------------------------ common/x86/cpu-64.asm | 51 -------------------- common/x86/cpu-a.asm | 122 +++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/mc-a.asm | 16 +++++- common/x86/mc-a2.asm | 17 ++++++- common/x86/mc-c.c | 11 ++++- common/x86/pixel.h | 1 + common/x86/sad-a.asm | 92 ++++++++++++++++++++++++++++++++++++- tools/checkasm.c | 9 +++- x264.h | 1 + 13 files changed, 273 insertions(+), 152 deletions(-) commit cb3c213850320fb0c1b17ae8bbbbf5d687e43961 Author: Jason Garrett-Glaser 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 common/x86/quant-a.asm | 31 +++++++++++++++++-------------- tools/checkasm.c | 10 +++++----- 2 files changed, 22 insertions(+), 19 deletions(-) commit 83baa7fdd2edf3e2f9522fc8b79e0826bcf190fc Author: Jason Garrett-Glaser 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 common/pixel.c | 12 ++ common/x86/sad-a.asm | 341 ++++++++++++++++++++++++++++++++++++-------------- 2 files changed, 257 insertions(+), 96 deletions(-) commit aa14719bf2b78f8fd3da7bbabb0faf142313dae1 Author: Jason Garrett-Glaser 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. common/frame.c | 16 ++++++++++++---- common/macroblock.c | 3 --- encoder/encoder.c | 19 ++++++++++++++----- encoder/me.c | 12 ++++++------ x264.c | 3 ++- 5 files changed, 34 insertions(+), 19 deletions(-) commit 745a48beddc58e2ef121326e9156d3d42590a4b5 Author: Jason Garrett-Glaser Date: Mon Nov 10 15:34:48 2008 -0800 Fix minor memory leak in r1022 common/frame.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit fdb6114d1b456e1438374671ec42d1d77cdd05f8 Author: Jason Garrett-Glaser Date: Mon Nov 10 15:32:06 2008 -0800 r1024 borked checkasm Remove idct/dct2x2 from checkasm as they are no longer in dctf tools/checkasm.c | 31 ------------------------------- 1 files changed, 0 insertions(+), 31 deletions(-) commit 2652abeae5445ffefded5ee7d0853300d0973b37 Author: Jason Garrett-Glaser 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. common/dct.c | 18 -------------- common/dct.h | 3 -- common/quant.c | 23 ----------------- common/quant.h | 1 - encoder/macroblock.c | 65 ++++++++++++++++++++++++++++++++++--------------- 5 files changed, 45 insertions(+), 65 deletions(-) commit f13d4637fe9b2f10b8c103500ac9293bfca3ad1f Author: Jason Garrett-Glaser 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 build/win32/libx264.vcproj | 34 ---------------------------------- common/pixel.c | 10 ++++++++-- common/x86/mc-c.c | 2 +- encoder/macroblock.c | 2 +- encoder/ratecontrol.c | 4 ++++ 5 files changed, 14 insertions(+), 38 deletions(-) commit 7cdaf638c3777f2b38fb60181dde7ed4de614cc1 Author: Jason Garrett-Glaser 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. common/frame.c | 4 ++++ common/frame.h | 1 + encoder/encoder.c | 3 ++- encoder/ratecontrol.c | 2 ++ encoder/slicetype.c | 10 ++-------- 5 files changed, 11 insertions(+), 9 deletions(-) commit 852579be365549db3ccc1c2906c9a1d2f4a92ac9 Author: Jason Garrett-Glaser Date: Fri Nov 7 11:39:43 2008 -0800 Faster CABAC residual encoding 6% faster block_residual_write_cabac in RD mode. encoder/cabac.c | 196 +++++++++++++++++++++++++++---------------------------- encoder/cavlc.c | 18 +++-- encoder/rdo.c | 2 +- 3 files changed, 109 insertions(+), 107 deletions(-) commit 418cace8646a6f546a9026da47f79fad7285f577 Author: Jason Garrett-Glaser 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). encoder/ratecontrol.c | 25 ++++++++++++++----------- 1 files changed, 14 insertions(+), 11 deletions(-) commit a5ac6a5b8688915553fe6fccee09f1272f3788ac Author: Jason Garrett-Glaser 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%. common/cpu.c | 7 +++++-- common/x86/x86inc.asm | 4 ---- encoder/encoder.c | 3 +++ x264.h | 5 +++-- 4 files changed, 11 insertions(+), 8 deletions(-) commit 41b8069cb74fa3bc905618225be07ee8d35bbc79 Author: Gabriel Bouvigne Date: Tue Nov 4 09:56:03 2008 -0800 Fix potential infinite loop in VBV under GCC 4.2 encoder/ratecontrol.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit e4c4568d4f0f234e942b4855391aea7224c41eb6 Author: Jason Garrett-Glaser 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. encoder/encoder.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit dbc5ef040b1f8a83e7491dc8a2fc8943b1e20c07 Author: Loren Merritt Date: Thu Oct 30 00:47:09 2008 -0700 Fix bug in hadamard_ac SSE assembly Some extreme inputs could cause overflows. common/x86/pixel-a.asm | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit a0a1bfac7f4a09159f6ef2bf13fb69548b6c5a02 Author: Jason Garrett-Glaser 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. encoder/analyse.c | 45 +++++++++++++++++++++++---------------------- 1 files changed, 23 insertions(+), 22 deletions(-) commit aa40e41abae051191117ae670cadd9cd50f66b6f Author: Jason Garrett-Glaser 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 common/cabac.h | 9 +++- encoder/cabac.c | 131 +++++++++++++++++++++++++++++++----------------------- encoder/rdo.c | 50 ++++++++++++++------- 3 files changed, 117 insertions(+), 73 deletions(-) commit d7df1a477b5e0e851d206e8c25da0b275ae0b7cc Author: Anders Ossowicki Date: Thu Oct 23 22:36:11 2008 -0700 Replace "git-command" with "git command" in version.sh for git 1.6 support version.sh | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit 990274cd5fd276bb26ac0fa13fc9bc1cbcf7acbc Author: Loren Merritt Date: Thu Oct 23 13:45:04 2008 -0700 Add assembly version of CAVLC 8x8dct interleave Faster CAVLC encoding and RDO with 8x8dct common/dct.c | 14 ++++++++++++++ common/dct.h | 1 + common/x86/dct-a.asm | 17 +++++++++++++++++ common/x86/dct.h | 1 + encoder/cavlc.c | 6 ++---- tools/checkasm.c | 1 + 6 files changed, 36 insertions(+), 4 deletions(-) commit 86a0fe50c6e369d6dacac5b992febb4bd09de85d Author: Alexander Strange Date: Wed Oct 22 15:55:30 2008 -0700 Add support for psy-rd/trellis to encoder_reconfig encoder/encoder.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 4c78f091e625e87b8f82c567af81969c2fd3e671 Author: Alexander Strange Date: Wed Oct 22 15:00:43 2008 -0700 Fix Darwin speed regression configure | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 8ca555ef691e20d4eb429b45e178f4c0108b607d Author: Gabriel Bouvigne Date: Wed Oct 22 14:48:47 2008 -0700 Further improve prediction of bitrate and VBV in threaded mode encoder/ratecontrol.c | 54 +++++++++++++++++++++++++++++++----------------- 1 files changed, 35 insertions(+), 19 deletions(-) commit 8fa0bf3d56fa1b02a44f8ee0f673ea998294bd7e Author: Jason Garrett-Glaser 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. encoder/analyse.c | 41 +++++++++++++++++++++++++++++++---------- encoder/cabac.c | 13 +++++++++++++ encoder/cavlc.c | 18 ++++++++++++++++++ encoder/macroblock.c | 30 ++++++++++++++++++++++++++++++ encoder/macroblock.h | 1 + encoder/me.c | 19 +++++++++---------- encoder/me.h | 2 +- encoder/rdo.c | 35 +++++++++++++++++++++++++++++++++-- 8 files changed, 136 insertions(+), 23 deletions(-) commit d0add77f5f084253202747266f85daa65f7fc9cc Author: Jason Garrett-Glaser 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. encoder/me.c | 39 ++++++++++++++++++++++++++------------- 1 files changed, 26 insertions(+), 13 deletions(-) commit f451563f93fad8972c0e9b788b30799e777e913a Author: Jason Garrett-Glaser 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 encoder/cabac.c | 1 - encoder/cavlc.c | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) commit 84ede33bec64332cc4bc5da1106c53f3cffa919b Author: Jason Garrett-Glaser 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 common/frame.c | 38 +++++++++++++++++++++++--------------- 1 files changed, 23 insertions(+), 15 deletions(-) commit ce0b11099e5fa920b8d1bc39389ae9373f921358 Author: Jason Garrett-Glaser 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. encoder/encoder.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) commit 296b39dd863ea90a12d8a52848d1135e387a28f3 Author: Jason Garrett-Glaser Date: Tue Oct 21 17:10:46 2008 -0700 Fix possible crash in trellis at very low QPs encoder/rdo.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit f5da8110606c1bdb8f3a194f11574db28855415e Author: Jason Garrett-Glaser Date: Tue Oct 21 14:59:07 2008 -0700 Add assembly versions of decimate_score 3-7x faster decimation, 1-3% faster overall common/quant.c | 72 +++++++++++++++ common/quant.h | 4 + common/x86/quant-a.asm | 225 ++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/quant.h | 9 ++ encoder/macroblock.c | 59 ++----------- tools/checkasm.c | 31 +++++++ 6 files changed, 349 insertions(+), 51 deletions(-) commit 6d9ef8ad39b0bfa5df0c1305e91ae932aad4997e Author: Jason Garrett-Glaser Date: Sat Oct 18 03:40:59 2008 -0700 Fix typo in subme8/9 lossless qpel-RD Slightly improves compression. encoder/macroblock.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 79194caffdc216e338674d88e50adca2f4ea8fa2 Author: Jason Garrett-Glaser 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. encoder/macroblock.c | 25 +++++++++++++++++++------ encoder/macroblock.h | 2 ++ encoder/rdo.c | 40 +++++++++++++++++++++++++++------------- 3 files changed, 48 insertions(+), 19 deletions(-) commit cc510478de710f86ab400f610b6e075304d902cb Author: Loren Merritt 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. .gitignore | 3 - AUTHORS | 4 - Makefile | 12 +- configure | 28 - gtk/Makefile | 200 ------ gtk/fr.po | 905 --------------------------- gtk/test.c | 75 --- gtk/x264.ico | Bin 2238 -> 0 bytes gtk/x264.png | Bin 7178 -> 0 bytes gtk/x264_gtk.c | 1159 ----------------------------------- gtk/x264_gtk.h | 131 ---- gtk/x264_gtk_bitrate.c | 236 ------- gtk/x264_gtk_bitrate.h | 28 - gtk/x264_gtk_cqm.c | 491 --------------- gtk/x264_gtk_cqm.h | 28 - gtk/x264_gtk_demuxers.h | 38 -- gtk/x264_gtk_encode.c | 47 -- gtk/x264_gtk_encode_encode.c | 308 ---------- gtk/x264_gtk_encode_encode.h | 28 - gtk/x264_gtk_encode_main_window.c | 776 ----------------------- gtk/x264_gtk_encode_main_window.h | 28 - gtk/x264_gtk_encode_private.h | 66 -- gtk/x264_gtk_encode_status_window.c | 191 ------ gtk/x264_gtk_encode_status_window.h | 28 - gtk/x264_gtk_enum.h | 77 --- gtk/x264_gtk_i18n.h | 44 -- gtk/x264_gtk_mb.c | 270 -------- gtk/x264_gtk_mb.h | 28 - gtk/x264_gtk_more.c | 519 ---------------- gtk/x264_gtk_more.h | 28 - gtk/x264_gtk_private.h | 194 ------ gtk/x264_gtk_rc.c | 375 ----------- gtk/x264_gtk_rc.h | 28 - gtk/x264gtk.rc | 46 -- tools/Jamfile | 9 - tools/avc2avi.c | 857 -------------------------- tools/countquant_x264.pl | 6 +- tools/x264-rd.sh | 32 - 38 files changed, 4 insertions(+), 7319 deletions(-) commit 6768543b76ee5ed65d096444fda2bc282b41dd91 Author: Jason Garrett-Glaser 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. encoder/analyse.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 65b837fc75bdbabcc34f5e12048c10d77932eee2 Author: Ralf Terdic Date: Thu Oct 2 08:52:33 2008 -0700 Fix minor memory leak accidentally added with the addition of b-adapt 2 common/frame.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit c89bc900a3bf0d4c4c728ad378703970b4f14e18 Author: Jason Garrett-Glaser 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. Makefile | 8 ++-- common/common.c | 10 +--- encoder/analyse.c | 135 +++++++++++++++++++++++++++++++++++++--------------- encoder/cabac.c | 27 +++-------- encoder/cavlc.c | 26 ++-------- encoder/encoder.c | 6 +-- encoder/me.c | 71 +++++++++++++++++++++------ encoder/me.h | 5 +- x264.c | 17 ++++--- x264.h | 4 +- 10 files changed, 185 insertions(+), 124 deletions(-) commit 2324c7074585b8b3f56e49ae41df9cbca06f6185 Author: Jason Garrett-Glaser 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 common/x86/util.h | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit b35a044b95c7eab2c91f55a3ac4100ca26a29d92 Author: Jason Garrett-Glaser 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. common/common.h | 2 + common/dct.c | 120 ++++++++++++++++++++++++++---------------- common/dct.h | 1 + common/macroblock.c | 3 +- common/mc.c | 1 + common/mc.h | 1 + common/set.h | 5 +- common/x86/mc-c.c | 1 + encoder/analyse.c | 49 +++++++++++++---- encoder/encoder.c | 4 +- encoder/macroblock.c | 144 +++++++++++++++++++++++++++++++++++++++++++------ encoder/macroblock.h | 5 ++ encoder/set.c | 2 +- 13 files changed, 258 insertions(+), 80 deletions(-) commit 37269f42fca115f2083e01135f7bab0b4e9fce3b Author: Jason Garrett-Glaser Date: Fri Sep 26 09:19:56 2008 -0700 Fix typo in progress indicator when using piped input x264.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit e21b11f4ae99ef8ec0e37c1605f72ef18adfa7c3 Author: Loren Merritt Date: Mon Sep 22 04:17:35 2008 -0600 avg_weight_ssse3 common/macroblock.c | 5 ++ common/x86/mc-a.asm | 163 +++++++++++++++++++++++++++++++++------------------ common/x86/mc-c.c | 36 +++++++----- tools/checkasm.c | 8 +- 4 files changed, 136 insertions(+), 76 deletions(-) commit 972814a9c76c8d718063e27a15328fa638e92c61 Author: Loren Merritt Date: Sat Sep 20 08:41:17 2008 -0600 fix bitstream writer on bigendian 64bit (regression in r903) common/bs.h | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 7265a215167d305cbc818dad6bb413901bb7aca2 Author: Loren Merritt Date: Fri Sep 19 23:52:11 2008 -0600 remove authors whose code no longer exists AUTHORS | 20 -------------------- 1 files changed, 0 insertions(+), 20 deletions(-) commit 48734012a4fa151aa26d9e1a5f67d35303a4b4f6 Author: Loren Merritt Date: Mon Sep 15 05:00:26 2008 -0600 more diagnostics when configure finds an unsuitable assembler configure | 11 +++-------- 1 files changed, 3 insertions(+), 8 deletions(-) commit 41c9e22257b7da84299aa55fd8e6564577d4246e Author: Jason Garrett-Glaser 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. x264.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit e71168d48b9cb994bbb3895bbf25ebee2893ba4f Author: Jason Garrett-Glaser 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. encoder/ratecontrol.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 24961b015bed5dcda178e683a9f46a4945dc4fe3 Author: Jason Garrett-Glaser Date: Sun Sep 21 13:35:00 2008 -0700 Resolve possible crash in bime, improve the fix in r985 encoder/me.c | 2 +- encoder/slicetype.c | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) commit e256ea1fd2198fb2475e03913b9b3b6bddd3b5da Author: Jason Garrett-Glaser Date: Sat Sep 20 19:36:07 2008 -0700 Fix rare crash issue in b-adapt Regression *probably* in r979 encoder/slicetype.c | 11 ++++------- 1 files changed, 4 insertions(+), 7 deletions(-) commit 36223eac828a715b63d0211000a6cbd2d466704d Author: Holger Lubitz Date: Sat Sep 20 02:36:55 2008 -0700 Merging Holger's GSOC branch part 1: hpel_filter speedups common/x86/mc-a2.asm | 281 +++++++++++++++++++++++++++++++++++++++++++------- common/x86/mc-c.c | 7 +- 2 files changed, 248 insertions(+), 40 deletions(-) commit b4b64837d7bb6714f710cb1f2ef85f87f77da739 Author: Loren Merritt Date: Sat Sep 20 12:31:10 2008 -0600 r980 borked weighted bime encoder/me.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit cc0fd8ab09eacaa78941169cbf52123333a8fe2e Author: Jason Garrett-Glaser 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. encoder/analyse.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 9e319ff18553055b288c61397b6cff80766a536b Author: Jason Garrett-Glaser 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 common/macroblock.c | 45 +++-------- common/mc.c | 68 +++++------------ common/mc.h | 3 +- common/x86/mc-a.asm | 213 +++++++++++++++++++++++++-------------------------- common/x86/mc-c.c | 61 ++++----------- encoder/analyse.c | 20 +---- encoder/me.c | 5 +- encoder/slicetype.c | 5 +- tools/checkasm.c | 16 ++-- 9 files changed, 165 insertions(+), 271 deletions(-) commit b4cb6ef372d451d231bf884f551670577f3195d4 Author: Jason Garrett-Glaser 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 common/macroblock.c | 64 +++++++++++++++++++++++-------------- common/mc.c | 25 +++++++++------ common/mc.h | 4 +- common/x86/mc-a.asm | 81 +++++++++++++++++++++++++---------------------- common/x86/mc-c.c | 47 +++++++++++++-------------- encoder/analyse.c | 88 +++++++++++++++++++++------------------------------ encoder/me.c | 16 ++++++--- encoder/slicetype.c | 14 ++++---- tools/checkasm.c | 14 ++++---- 9 files changed, 182 insertions(+), 171 deletions(-) commit 6d4af8d257162ac8881a0f96d9552eb928328d95 Author: Jason Garrett-Glaser 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. common/macroblock.c | 9 ++++++++- encoder/analyse.c | 4 ++-- encoder/slicetype.c | 29 ++++++++++++++++------------- 3 files changed, 26 insertions(+), 16 deletions(-) commit dcb123f72958af61b1803103246cc61e2528c5cb Author: Jason Garrett-Glaser Date: Tue Sep 16 22:44:10 2008 -0700 Add missing free() for f_qp_offset in frame.c common/frame.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 2042a196655aae035d1ef8164c4d4f46ce83dbee Author: Gabriel Bouvigne 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. encoder/ratecontrol.c | 15 +++++++++++++++ 1 files changed, 15 insertions(+), 0 deletions(-) commit 7eaff1792dd1064ff607fec47d0d7d91fdc62641 Author: Gabriel Bouvigne 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. encoder/ratecontrol.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 90220ef752a8f2de2f7d53bb266e64ba803bb09b Author: Panagiotis Issaris Date: Mon Sep 15 20:47:50 2008 +0200 Use correct format specifier for uint64_t gtk/x264_gtk_encode_main_window.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit a92bbc2325942d2ceab2ab043727f5943a33bd64 Author: Jason Garrett-Glaser 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. common/frame.c | 14 +++++++++ common/frame.h | 2 + common/mc.c | 4 ++ encoder/slicetype.c | 79 ++++++++++++++++++++++++++------------------------- 4 files changed, 60 insertions(+), 39 deletions(-) commit f4736691f1052fbe32288a5fd87abce672c7b32f Author: Jason Garrett-Glaser Date: Mon Sep 15 12:22:48 2008 -0700 Fix regression in b-adapt patch: encoder_open failed for multipass encodes without bframes. encoder/ratecontrol.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit cbdaeb04ec128db18fcdb7480d81785fa7f4f371 Author: Jason Garrett-Glaser Date: Mon Sep 15 10:53:29 2008 -0700 Stop SAR in y4m input from overriding --sar on commandline muxers.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit ead885761b88312acf2b7b2b93f35632b8b5b518 Author: Loren Merritt 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 common/pixel.c | 181 +++++++++++++++++---------- common/pixel.h | 5 +- common/x86/pixel-a.asm | 323 +++++++++++++++++++++++++++++++++++++++++++++++- common/x86/pixel.h | 17 ++-- encoder/analyse.c | 2 +- encoder/rdo.c | 20 ++-- tools/checkasm.c | 17 +++ x264.c | 4 +- 8 files changed, 478 insertions(+), 91 deletions(-) commit abe641635e9dc1209af4e201f9308edd33fe3096 Author: Jason Garrett-Glaser 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. common/common.c | 20 +++++++++- common/common.h | 12 ++++++ common/dct.h | 11 +++++ encoder/analyse.c | 74 ++++++++++++++++++++++++++++++++--- encoder/encoder.c | 21 ++++++++++ encoder/macroblock.c | 22 +++++----- encoder/macroblock.h | 4 +- encoder/rdo.c | 106 +++++++++++++++++++++++++++++++++++++++++-------- x264.c | 5 ++ x264.h | 4 +- 10 files changed, 240 insertions(+), 39 deletions(-) commit 9818865c1f5eccbc04fb51f062cb1b3abff02db0 Author: Jason Garrett-Glaser 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). common/common.c | 13 ++- common/common.h | 6 +- common/frame.c | 2 + common/frame.h | 2 + encoder/encoder.c | 12 ++- encoder/ratecontrol.c | 26 +++++- encoder/slicetype.c | 248 +++++++++++++++++++++++++++++++++++-------------- gtk/x264_gtk.c | 6 +- x264.c | 9 ++- x264.h | 7 +- 10 files changed, 244 insertions(+), 87 deletions(-) commit 173b40c276ee187de31ef630fd207a62de1b2cc7 Author: Jason Garrett-Glaser 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! common/common.c | 2 +- common/frame.c | 3 ++ common/frame.h | 2 + encoder/encoder.c | 8 ++-- encoder/ratecontrol.c | 84 ++++++++++++------------------------------------ encoder/ratecontrol.h | 3 +- encoder/slicetype.c | 47 +++++++++++++++++++++------ x264.c | 5 +-- x264.h | 5 +-- 9 files changed, 73 insertions(+), 86 deletions(-) commit 869d5e4146a669f73d8a5ca07b3c04235fda0514 Author: Jason Garrett-Glaser 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. encoder/slicetype.c | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 deletions(-) commit bb11e37f87fe53633f531bd3b9d331f987852ed3 Author: Jason Garrett-Glaser 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. x264.c | 19 +++++++++++++++---- 1 files changed, 15 insertions(+), 4 deletions(-) commit 3d2983da7bbdbcfa08b12252ab71b0bf19a9ce26 Author: Jason Garrett-Glaser 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. common/common.c | 12 +++++++++--- 1 files changed, 9 insertions(+), 3 deletions(-) commit e48a952cb74741fbf13d0ec352906dc2f3a61e4b Author: Jason Garrett-Glaser 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 common/predict.c | 3 --- common/x86/predict-a.asm | 25 +++++++++++++++++++++++++ common/x86/predict-c.c | 2 ++ 3 files changed, 27 insertions(+), 3 deletions(-) commit d21665d886638b08862e41bc68ea62472a646ca1 Author: Jason Garrett-Glaser Date: Thu Sep 4 00:43:54 2008 -0700 Faster NAL unit encoding and remove unused nal_decode Small speedup at very high bitrates common/common.c | 48 +++--------------------------------------------- 1 files changed, 3 insertions(+), 45 deletions(-) commit e0d7f9e53f847909574b603a3e725dddb8154574 Author: Jason Garrett-Glaser 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. common/macroblock.c | 65 ---------------------------------------- common/macroblock.h | 76 ++++++++++++++++++++++++++++++++++++++++------ encoder/cavlc.c | 83 +++++++++++++++------------------------------------ 3 files changed, 90 insertions(+), 134 deletions(-) commit 954117a7127fbf50540891f9c97ebe7c607be736 Author: Jason Garrett-Glaser Date: Wed Sep 3 21:43:06 2008 -0700 Faster avg_weight assembly Unrolling the loop a bit improves performance common/x86/mc-a.asm | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) commit f4d733a90136fe28b9a9a4c7efdce71c0446aeb5 Author: Jason Garrett-Glaser 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. common/x86/predict-a.asm | 84 ++++++++++++++++++++++++++++++++++++++++++++++ common/x86/predict-c.c | 38 ++++++++------------- 2 files changed, 98 insertions(+), 24 deletions(-) commit b0c599be2502bbb97266a5e7a971d7dc485e2596 Author: Jason Garrett-Glaser Date: Wed Sep 3 15:32:16 2008 -0700 Add merged SAD for i16x16 analysis Roughly 30% faster i16x16 analysis under subme=1 common/pixel.c | 4 ++- common/pixel.h | 12 ++++--- common/x86/pixel.h | 23 +++++++----- common/x86/sad-a.asm | 92 ++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/x86util.asm | 17 +++++++++ encoder/analyse.c | 4 +- encoder/encoder.c | 1 + tools/checkasm.c | 18 +++++---- 8 files changed, 145 insertions(+), 26 deletions(-) commit f6229465eb1307ab7250c8faa350887b7b03598c Author: Jason Garrett-Glaser 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. common/pixel.c | 35 +++++++++++++++++++++-------------- common/pixel.h | 2 ++ common/x86/pixel.h | 1 + common/x86/sad-a.asm | 4 +++- encoder/analyse.c | 2 +- encoder/encoder.c | 3 ++- encoder/me.c | 4 ++-- tools/checkasm.c | 1 + 8 files changed, 33 insertions(+), 19 deletions(-) commit 7ce0f2c74ef4890138dddd13c41163baf5df3ac6 Author: Jason Garrett-Glaser 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) x264.c | 20 +++++++++++--------- 1 files changed, 11 insertions(+), 9 deletions(-) commit 7b71d586bce87181a4978ee3f8eb775b0481f6d4 Author: Jason Garrett-Glaser 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. encoder/slicetype.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d4265bb3976dea84ae582cc8d96fe69a72d2332d Author: Holger Lubitz Date: Sun Aug 31 20:55:50 2008 -0600 zigzag asm common/dct.c | 13 ++- common/x86/dct-a.asm | 263 +++++++++++++++++++++++++++++++++++++++++++++++- common/x86/dct.h | 53 ++++++----- common/x86/x86util.asm | 18 ++++ tools/checkasm-a.asm | 1 - tools/checkasm.c | 1 + 6 files changed, 321 insertions(+), 28 deletions(-) commit 6b33ca95bf3dfb67014655de4d28304beb34bb61 Author: Guillaume Poirier 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% configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 3727f2b46abd4821c4deea415eeafa42da898eb0 Author: Loren Merritt Date: Wed Aug 20 20:56:56 2008 -0600 remove the distinction between itex and ptex (changes 2pass statsfile format) common/common.h | 9 ++++----- encoder/cabac.c | 11 ++++------- encoder/cavlc.c | 11 ++++------- encoder/encoder.c | 5 ++--- encoder/ratecontrol.c | 23 +++++++++++------------ 5 files changed, 25 insertions(+), 34 deletions(-) commit 088631894e19e9a761f80c952e78f1a10f450506 Author: Loren Merritt Date: Wed Aug 20 20:51:39 2008 -0600 hardcode the ratecontrol equation, and remove the rceq option Makefile | 2 +- common/common.c | 8 +- encoder/encoder.c | 4 - encoder/eval.c | 253 ------------------------------------------------- encoder/ratecontrol.c | 67 +------------- x264.c | 2 - x264.h | 3 +- 7 files changed, 5 insertions(+), 334 deletions(-) commit 445d87ec5188aa7f6303e0dcf1c943b80ed6c933 Author: Jason Garrett-Glaser 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 common/mc.c | 8 +++++--- encoder/slicetype.c | 3 ++- 2 files changed, 7 insertions(+), 4 deletions(-) commit 3c3dc3cde75e72b7c212a9a9ddd623ef8a617e41 Author: Jason Garrett-Glaser 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. encoder/macroblock.c | 78 +++++++++++++++++++++++++------------------------ encoder/macroblock.h | 6 ++-- 2 files changed, 43 insertions(+), 41 deletions(-) commit 60c4f7e359a9de86f79f04039a84b3736a38ef55 Author: Gabriel Bouvigne 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. encoder/ratecontrol.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 9d4d168bb484c2a27e9f4b8f5eb360a00a1cf426 Author: Guillaume Poirier Date: Fri Aug 22 21:05:37 2008 +0200 improve generation of Darwin libraries Patch by vmrsss %vmrsss A gmail P com% Makefile | 4 ++-- configure | 14 ++++++++++++-- gtk/Makefile | 10 +++++----- 3 files changed, 19 insertions(+), 9 deletions(-) commit af82aae3649ba73b4d6bf380fb58ba00527d44d7 Author: Jason Garrett-Glaser 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. common/x86/util.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit e3a06225cea141b6eef8fface6ee2be5fdf2abec Author: Loic Le Loarer Date: Thu Aug 21 04:19:24 2008 -0600 shut up various gcc warnings common/frame.c | 6 +++--- common/mdate.c | 1 + common/quant.c | 2 +- common/set.c | 2 +- common/x86/mc-c.c | 9 +++++---- common/x86/mc.h | 3 --- encoder/cabac.c | 2 +- encoder/cavlc.c | 2 +- encoder/macroblock.c | 2 +- encoder/macroblock.h | 2 +- encoder/ratecontrol.c | 11 +++++------ encoder/ratecontrol.h | 1 + encoder/rdo.c | 12 ++++++------ encoder/set.c | 1 + encoder/slicetype.c | 6 +++--- matroska.c | 2 +- muxers.c | 6 +++--- tools/checkasm.c | 10 +++++----- 18 files changed, 40 insertions(+), 40 deletions(-) commit 82efeea14c5fd03a6ed9c0b8eaa594e5d9407fce Author: Loren Merritt Date: Thu Aug 21 04:15:49 2008 -0600 fix a crash with invalid args and --thread-input (introduced in r921) muxers.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) commit 36caec420e52767e61d49b84fe3bc0748d2f461c Author: Loren Merritt Date: Wed Aug 20 05:36:32 2008 -0600 drop support for x86_32 PIC. common/x86/cabac-a.asm | 19 +---------- common/x86/dct-32.asm | 1 - common/x86/dct-a.asm | 9 ++--- common/x86/deblock-a.asm | 6 +-- common/x86/mc-a.asm | 17 ++------- common/x86/mc-a2.asm | 10 +++--- common/x86/pixel-a.asm | 8 +--- common/x86/predict-a.asm | 32 +++++++++--------- common/x86/quant-a.asm | 6 +-- common/x86/sad-a.asm | 15 ++------ common/x86/x86inc.asm | 84 ++++++++++++---------------------------------- 11 files changed, 61 insertions(+), 146 deletions(-) commit bff4dbace4256478381c66e4e58cdb4fb3d800cb Author: Loren Merritt Date: Tue Aug 19 01:55:57 2008 -0600 use permute macros in satd move some more shared macros to x264util.asm common/x86/dct-32.asm | 44 +--- common/x86/dct-64.asm | 27 -- common/x86/dct-a.asm | 24 -- common/x86/pixel-32.asm | 582 +++++++++++++++---------------- common/x86/pixel-a.asm | 899 ++++++++++++++++++++++------------------------- common/x86/x86inc.asm | 1 + common/x86/x86util.asm | 81 +++++ 7 files changed, 786 insertions(+), 872 deletions(-) commit fd5cc6d0a007a4d9c2b8e09215854d2c742fb07f Author: Loren Merritt Date: Wed Aug 20 20:32:13 2008 -0600 cosmetics common/cabac.h | 2 +- common/common.c | 8 ++++---- common/common.h | 16 ++++++++-------- common/frame.c | 6 +++--- common/frame.h | 2 +- common/macroblock.c | 6 +++--- common/mc.c | 2 +- common/mc.h | 2 +- common/predict.c | 2 +- common/quant.c | 10 +++++----- common/quant.h | 2 +- common/set.c | 4 ++-- common/set.h | 2 +- common/x86/dct-64.asm | 4 ++-- common/x86/mc-a.asm | 2 +- common/x86/pixel-32.asm | 4 ++-- common/x86/pixel-a.asm | 4 ++-- common/x86/predict-a.asm | 2 +- common/x86/predict-c.c | 8 ++++---- common/x86/quant-a.asm | 4 ++-- common/x86/quant.h | 6 +++--- common/x86/sad-a.asm | 12 ++++++------ encoder/analyse.c | 10 +++++----- encoder/encoder.c | 34 +++++++++++++++++----------------- encoder/macroblock.c | 10 +++++----- encoder/me.c | 4 ++-- encoder/ratecontrol.c | 8 ++++---- encoder/rdo.c | 34 +++++++++++++++++----------------- encoder/set.c | 6 +++--- extras/stdint.h | 10 +++++----- gtk/x264_gtk.h | 2 +- gtk/x264_gtk_encode_private.h | 2 +- muxers.c | 4 ++-- tools/avc2avi.c | 2 +- tools/checkasm.c | 10 +++++----- x264.c | 4 ++-- x264.h | 4 ++-- 37 files changed, 127 insertions(+), 127 deletions(-) commit ae8da3e5c85562d1018b9f85c601884022f070a3 Author: Loren Merritt Date: Wed Aug 20 19:00:52 2008 -0600 r940 broke threads common/common.h | 6 ++++++ encoder/encoder.c | 1 - 2 files changed, 6 insertions(+), 1 deletions(-) commit 2cdc944ab6b231b98e326ff0526c6bd9b69faa99 Author: Jason Garrett-Glaser 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 common/macroblock.c | 156 +++++++++++++++++++++++++++----------------------- 1 files changed, 84 insertions(+), 72 deletions(-) commit bae10fe0da35b61883bc2bfa8514396633136093 Author: Jason Garrett-Glaser 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 common/frame.c | 118 +++++++++++++++++++++++++------------------------------ 1 files changed, 54 insertions(+), 64 deletions(-) commit 9881ffdf482017798ab0067f4f894ab53c18e626 Author: Jason Garrett-Glaser 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 common/frame.c | 104 ++++++++++++++++++++++++++++--------------------------- 1 files changed, 53 insertions(+), 51 deletions(-) commit d994e0bca73aab306eb41f84483b9e1a36feb9c7 Author: David Pethes Date: Sat Aug 16 09:43:26 2008 -0600 Add dedicated variance function instead of using SAD+SSD Faster variance calculation common/pixel.c | 35 +++++++++++++++- common/pixel.h | 2 + common/x86/pixel-a.asm | 106 ++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/pixel.h | 5 ++ encoder/ratecontrol.c | 6 +-- tools/checkasm.c | 21 +++++++++ 6 files changed, 170 insertions(+), 5 deletions(-) commit 7c35ae4abafb8babf1d5456f967920a38d5b572f Author: Loren Merritt Date: Fri Aug 15 03:04:28 2008 -0600 6% faster deblock: remove some clips, earlier termiantion on low qps. common/common.h | 2 + common/frame.c | 118 +++++++++++++++++++++++-------------------------- common/macroblock.h | 6 ++- encoder/analyse.c | 2 +- encoder/encoder.c | 4 +- encoder/ratecontrol.c | 2 +- 6 files changed, 67 insertions(+), 67 deletions(-) commit c6456de1be0008836e9891446cc924f773863cea Author: Jason Garrett-Glaser 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. common/frame.c | 208 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 122 insertions(+), 86 deletions(-) commit fd1de69b8054ef718b52f5ae1520267a5e5402e8 Author: Loren Merritt Date: Sat Aug 2 08:19:50 2008 -0600 asm cosmetics common/x86/mc-a.asm | 55 ++++++++++++++----------------- common/x86/mc-a2.asm | 50 ++++++++++++++-------------- common/x86/pixel-a.asm | 10 +++--- common/x86/quant-a.asm | 34 ++++++++++---------- common/x86/x86inc.asm | 82 ++++++++++++++++++++++++++++++----------------- configure | 4 +- 6 files changed, 126 insertions(+), 109 deletions(-) commit 4b24e98d58ae597ab832852f76ea2795080fa4fc Author: Daniel Vergien Date: Wed Aug 6 08:10:53 2008 -0600 yet another posix-emulating define on solaris common/osdep.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ad47d25fe0d6fc4e852f219477e80cbc2cc381ce Author: Gabriel Bouvigne Date: Wed Aug 6 07:45:05 2008 -0600 update msvc projectfile build/win32/libx264.vcproj | 34 ++++++++++++++++++++++++++++++++++ 1 files changed, 34 insertions(+), 0 deletions(-) commit 26600fe260969e371766f261b53d34c904526259 Author: Loren Merritt Date: Wed Aug 6 07:34:42 2008 -0600 drop support for msvc6 build/win32/libx264.dsp | 864 ----------------------------------------------- build/win32/x264.dsp | 110 ------ build/win32/x264.dsw | 44 --- 3 files changed, 0 insertions(+), 1018 deletions(-) commit 91d865c17da30a27cf934179d30eb8efaa25e5d0 Author: Jason Garrett-Glaser 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. encoder/ratecontrol.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 245833c3f6c6f247a097b49fbc452d2ddce93b10 Author: Jason Garrett-Glaser Date: Sat Aug 9 09:34:37 2008 -0600 Improve subme7 at low QPs and add subme7 support in lossless mode encoder/analyse.c | 7 ++- encoder/encoder.c | 1 - encoder/macroblock.c | 118 +++++++++++++++++++++++++++++--------------------- encoder/me.c | 4 +- encoder/me.h | 3 +- encoder/rdo.c | 42 +++++++++-------- 6 files changed, 99 insertions(+), 76 deletions(-) commit 4816918fb7526aed96d9cd94c294b4f708a5f266 Author: Loren Merritt Date: Wed Jul 30 22:35:20 2008 -0600 cosmetics: merge x86inc*.asm Makefile | 21 ++++---- common/x86/x86inc-32.asm | 119 ---------------------------------------------- common/x86/x86inc-64.asm | 55 --------------------- common/x86/x86inc.asm | 76 +++++++++++++++++++++++++++-- 4 files changed, 82 insertions(+), 189 deletions(-) commit d1fe0938e588fd2fb37fe4b6fc97d458ae6944a5 Author: Jason Garrett-Glaser Date: Wed Jul 30 15:29:46 2008 -0600 Add missing x264util.asm common/x86/x86util.asm | 124 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 124 insertions(+), 0 deletions(-) commit e5eeedc50570a564c3bd00eeabd857feff324158 Author: Jason Garrett-Glaser Date: Wed Jul 30 15:28:21 2008 -0600 Basic sanity checking of qpmax/qpmin options encoder/encoder.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 9e864aa0f819db25bf97ff8881041ba3e4d911f3 Author: Jason Garrett-Glaser 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 encoder/cabac.c | 6 ++++-- encoder/macroblock.c | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) commit c51c761fdfed0b72e75754311d9eadb457306e84 Author: Holger Lubitz Date: Tue Jul 29 21:36:01 2008 -0600 Refactor asm macros part 2: DCT common/x86/pixel-32.asm | 34 +------------------- common/x86/pixel-a.asm | 82 +++-------------------------------------------- 2 files changed, 6 insertions(+), 110 deletions(-) commit 90b30e6ef1780e9199b584b783689c82f7c7ec72 Author: Holger Lubitz Date: Tue Jul 29 21:26:58 2008 -0600 Refactor asm macros part 1: DCT Makefile | 2 +- common/x86/dct-32.asm | 72 +++++++++++++++++-------------------------------- common/x86/dct-64.asm | 56 +++++++++++-------------------------- common/x86/dct-a.asm | 66 ++++++-------------------------------------- 4 files changed, 52 insertions(+), 144 deletions(-) commit 4e7f5cb0b486a616660e39e32efdd4700b3b379a Author: Jason Garrett-Glaser 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 encoder/cabac.c | 26 ++++++++++++++++++++------ 1 files changed, 20 insertions(+), 6 deletions(-) commit c761eb0b9f2c032503bed86118d57d618cfefece Author: Jason Garrett-Glaser Date: Tue Jul 29 13:42:41 2008 -0600 Fix a few more minor memleaks muxers.c | 2 ++ x264.c | 1 + 2 files changed, 3 insertions(+), 0 deletions(-) commit 8c8acae0e483b8b048bee3cae8d5539cfbeb0a0c Author: Loren Merritt Date: Fri Jul 25 18:14:31 2008 -0600 stats summary: print distribution of numbers of consecutive B-frames common/common.h | 1 + encoder/encoder.c | 28 ++++++++++++++++++++-------- 2 files changed, 21 insertions(+), 8 deletions(-) commit cf466eb47e1cd82d3e2114cefdf2f2d16950ae77 Author: Loic Le Loarer Date: Fri Jul 25 16:08:32 2008 -0600 add interlacing to the list of stuff checked by x264_validate_levels encoder/set.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 91fe97b6c7655fdf3109fb0d1a6404bb36d7a6cd Author: Jason Garrett-Glaser Date: Thu Jul 24 07:58:50 2008 -0600 Fix C99-ism in r907 encoder/encoder.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 244f9bef20341d230501dbe7e09a80004d0c0dbb Author: Jason Garrett-Glaser 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. common/macroblock.c | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) commit aa0e6277769b3fedb77d1cb8efa43f9c957646c0 Author: Jason Garrett-Glaser Date: Thu Jul 17 07:55:24 2008 -0600 Align lowres planes for improved cacheline split performance common/frame.c | 33 ++++++++++++++------------------- common/frame.h | 4 ++-- 2 files changed, 16 insertions(+), 21 deletions(-) commit 14046ae09f91272751f3df4d70fb0268321ee557 Author: Loren Merritt 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. common/common.c | 4 ++-- encoder/encoder.c | 27 +++++++++++++++++++++------ encoder/set.c | 27 +++++++++++++++++++-------- encoder/set.h | 2 +- 4 files changed, 43 insertions(+), 17 deletions(-) commit fee2f2ce3cda8e39cc4c123afa726933b6b9b877 Author: Loren Merritt 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) common/bs.h | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) commit 64848ffdfa740f03948d6860c1d49adc6c5b4f7c Author: BugMaster Date: Wed Jul 16 11:54:51 2008 -0600 Fix lossless mode borked in r901 common/macroblock.h | 4 ++++ encoder/macroblock.c | 2 +- 2 files changed, 5 insertions(+), 1 deletions(-) commit 9c5e557c5544690b22f61614fae9b516c7e53ba1 Author: Jason Garrett-Glaser 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. x264.c | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) commit 8a440db9296cf374b0599313aa5876c22c98524b Author: Jason Garrett-Glaser Date: Sat Jul 12 14:10:38 2008 -0600 Limit MVrange correctly in interlaced mode Bug report by Sigma Designs, Inc. encoder/encoder.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 0976ead3dd6641d88de51dbbdfd82f8d3079a458 Author: Jason Garrett-Glaser 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 common/macroblock.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 21ee1224f2d939ec716627b4db43d3023f18415c Author: BugMaster 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. encoder/encoder.c | 52 ++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 42 insertions(+), 10 deletions(-) commit 8cd5d60fcc23edcbdb97a190d8ac926db4161eb1 Author: Jason Garrett-Glaser 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 common/osdep.h | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 7f67bb47de843974fd01f090c5ac99c99cd8f1f1 Author: Jason Garrett-Glaser 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. common/common.h | 8 ++-- common/macroblock.h | 35 +++++++------- encoder/encoder.c | 130 +++++++++++++++++++++++++++++++------------------- 3 files changed, 102 insertions(+), 71 deletions(-) commit ceb2df9ddf03e7eb21bdc81748c7b9978ea64085 Author: Jason Garrett-Glaser 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. common/common.h | 1 + common/macroblock.c | 5 +++- common/macroblock.h | 2 +- encoder/analyse.c | 27 ++++++++++++++-------- encoder/cabac.c | 53 +++++++++++++++++++++------------------------ encoder/cavlc.c | 59 +++++++++++++++++++++++--------------------------- encoder/encoder.c | 11 ++++++--- 7 files changed, 82 insertions(+), 76 deletions(-) commit ca9c628dc66e51f2aabb70298b150dc66f3e4bd2 Author: Loren Merritt Date: Fri Jul 4 21:03:26 2008 -0600 de-duplicate vlc tables Makefile | 2 +- common/bs.h | 11 + common/vlc.c | 886 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ common/vlc.h | 891 ------------------------------------------------------- encoder/cavlc.c | 1 - 5 files changed, 898 insertions(+), 893 deletions(-) commit 3d2b0006a80fca9a8ddad9d0769fa55517fdfcd6 Author: Loren Merritt Date: Fri Jul 4 18:56:30 2008 -0600 faster ue/se/te write common/bs.h | 129 ++++++++++++++++++++-------------------------------------- 1 files changed, 45 insertions(+), 84 deletions(-) commit 8951797a04c4069e1926b5c4bcd2c39eb3b3a266 Author: Jason Garrett-Glaser Date: Fri Jul 4 18:32:32 2008 -0600 faster bs_write common/bs.h | 230 +++++++++++++++++++++++++++++++---------------------- common/osdep.h | 30 +++++++- encoder/cavlc.c | 26 ++---- encoder/encoder.c | 2 + encoder/rdo.c | 2 +- encoder/set.c | 6 +- 6 files changed, 179 insertions(+), 117 deletions(-) commit 58ffd4ea367732710ef8303c8a7b5f185623bb85 Author: Loren Merritt Date: Thu Jul 3 00:37:16 2008 -0600 cosmetics in ssd asm common/x86/pixel-a.asm | 288 +++++++++++++++++------------------------------- 1 files changed, 100 insertions(+), 188 deletions(-) commit 58d7d06f919fa38d4c62acaec1858be6d77f4bab Author: Jason Garrett-Glaser 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 AUTHORS | 10 ++++++++++ common/common.h | 2 +- common/macroblock.h | 26 ++++++++++++++++++++++++++ common/x86/util.h | 10 ++++------ encoder/analyse.c | 23 +++++++---------------- encoder/macroblock.c | 36 ++++++++++++++++-------------------- encoder/me.c | 49 ++++++++++++++++++++++++++++++++----------------- 7 files changed, 96 insertions(+), 60 deletions(-) commit a9af9425820cfba99ae4b378c33c4fee4e99b2ce Author: Jason Garrett-Glaser 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. common/x86/mc-a2.asm | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit f8428ed08f6fdb1f7a66be1b2ddc4213792fc49c Author: Eric Petit Date: Fri Jul 4 11:31:32 2008 +0200 Update my email address AUTHORS | 2 +- common/ppc/dct.c | 2 +- common/ppc/dct.h | 2 +- common/ppc/mc.c | 2 +- common/ppc/mc.h | 2 +- common/ppc/pixel.c | 2 +- common/ppc/pixel.h | 2 +- common/ppc/ppccommon.h | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) commit 6b3087c7b5ac20dd8631eb8e3566c8bceee4643a Author: Jason Garrett-Glaser 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 common/bs.h | 7 ++----- common/cabac.c | 6 +++--- common/cabac.h | 8 ++++---- common/common.c | 8 ++++---- common/common.h | 6 +++--- common/cpu.c | 8 ++++---- common/cpu.h | 7 ++----- common/dct.c | 8 ++++---- common/dct.h | 7 ++----- common/display-x11.c | 6 ++---- common/display.h | 6 ++---- common/frame.c | 6 +++--- common/frame.h | 6 +++--- common/macroblock.c | 7 ++++--- common/macroblock.h | 9 +++++---- common/mc.c | 6 +++--- common/mc.h | 7 ++----- common/mdate.c | 7 ++----- common/osdep.h | 7 +++++-- common/pixel.c | 8 ++++---- common/pixel.h | 7 ++----- common/ppc/dct.c | 9 ++++----- common/ppc/dct.h | 5 ++--- common/ppc/deblock.c | 7 ++----- common/ppc/mc.c | 6 +++--- common/ppc/mc.h | 7 ++----- common/ppc/pixel.c | 5 ++--- common/ppc/pixel.h | 7 ++----- common/ppc/ppccommon.h | 7 ++----- common/ppc/predict.c | 6 ++---- common/ppc/predict.h | 6 ++---- common/ppc/quant.c | 4 ++-- common/ppc/quant.h | 4 ++-- common/predict.c | 6 +++--- common/predict.h | 8 ++++---- common/quant.c | 7 ++++--- common/quant.h | 6 +++--- common/set.c | 6 ++---- common/set.h | 8 ++++---- common/sparc/pixel.asm | 7 ++----- common/sparc/pixel.h | 7 ++----- common/visualize.c | 6 ++---- common/visualize.h | 6 ++---- common/vlc.h | 7 ++----- common/x86/cabac-a.asm | 3 ++- common/x86/cpu-32.asm | 3 ++- common/x86/cpu-64.asm | 3 ++- common/x86/dct-32.asm | 4 ++-- common/x86/dct-64.asm | 4 ++-- common/x86/dct-a.asm | 4 ++-- common/x86/dct.h | 7 ++++--- common/x86/deblock-a.asm | 2 +- common/x86/mc-a.asm | 3 ++- common/x86/mc-a2.asm | 3 ++- common/x86/mc-c.c | 3 ++- common/x86/mc.h | 7 ++++--- common/x86/pixel-32.asm | 2 +- common/x86/pixel-a.asm | 2 +- common/x86/pixel.h | 4 ++-- common/x86/predict-a.asm | 3 ++- common/x86/predict-c.c | 6 +++--- common/x86/predict.h | 5 +++-- common/x86/quant-a.asm | 2 +- common/x86/quant.h | 5 +++-- common/x86/sad-a.asm | 2 +- common/x86/util.h | 7 +++++-- common/x86/x86inc-32.asm | 5 +++-- common/x86/x86inc-64.asm | 4 ++-- common/x86/x86inc.asm | 2 +- encoder/analyse.c | 5 ++--- encoder/analyse.h | 6 +++--- encoder/cabac.c | 6 +++--- encoder/cavlc.c | 6 +++--- encoder/encoder.c | 6 +++--- encoder/eval.c | 7 +++---- encoder/macroblock.c | 5 +++-- encoder/macroblock.h | 8 ++++---- encoder/me.c | 10 +++++----- encoder/me.h | 8 ++++---- encoder/ratecontrol.c | 7 ++++--- encoder/ratecontrol.h | 8 ++++---- encoder/rdo.c | 6 ++---- encoder/set.c | 6 +++--- encoder/set.h | 6 +++--- encoder/slicetype.c | 6 ++---- extras/getopt.c | 2 +- extras/getopt.h | 2 +- gtk/test.c | 20 ++++++++++++++++++++ gtk/x264_gtk.c | 20 ++++++++++++++++++++ gtk/x264_gtk.h | 20 ++++++++++++++++++++ gtk/x264_gtk_bitrate.c | 20 ++++++++++++++++++++ gtk/x264_gtk_bitrate.h | 20 ++++++++++++++++++++ gtk/x264_gtk_cqm.c | 20 ++++++++++++++++++++ gtk/x264_gtk_cqm.h | 20 ++++++++++++++++++++ gtk/x264_gtk_demuxers.h | 20 ++++++++++++++++++++ gtk/x264_gtk_encode.c | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_encode.c | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_encode.h | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_main_window.c | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_main_window.h | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_private.h | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_status_window.c | 20 ++++++++++++++++++++ gtk/x264_gtk_encode_status_window.h | 20 ++++++++++++++++++++ gtk/x264_gtk_enum.h | 20 ++++++++++++++++++++ gtk/x264_gtk_i18n.h | 20 ++++++++++++++++++++ gtk/x264_gtk_mb.c | 20 ++++++++++++++++++++ gtk/x264_gtk_mb.h | 20 ++++++++++++++++++++ gtk/x264_gtk_more.c | 20 ++++++++++++++++++++ gtk/x264_gtk_more.h | 20 ++++++++++++++++++++ gtk/x264_gtk_private.h | 20 ++++++++++++++++++++ gtk/x264_gtk_rc.c | 20 ++++++++++++++++++++ gtk/x264_gtk_rc.h | 20 ++++++++++++++++++++ matroska.c | 7 ++----- matroska.h | 7 ++----- muxers.c | 7 +++++-- muxers.h | 23 +++++++++++++++++++++++ tools/avc2avi.c | 6 +++--- tools/checkasm-a.asm | 4 ++-- tools/checkasm.c | 24 ++++++++++++++++++++++++ tools/xyuv.c | 7 ++----- x264.c | 8 ++++---- x264.h | 6 +++--- 122 files changed, 800 insertions(+), 298 deletions(-) commit 79bd5994122b7647b75de057991f3b480d402993 Author: Jason Garrett-Glaser Date: Wed Jul 2 20:59:24 2008 -0600 denoise_dct asm common/common.h | 4 +- common/quant.c | 19 +++++++++++++++++ common/quant.h | 2 + common/x86/quant-a.asm | 53 ++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/quant.h | 3 ++ encoder/analyse.c | 2 +- encoder/macroblock.c | 37 +++----------------------------- encoder/macroblock.h | 1 - tools/checkasm.c | 21 +++++++++++++++++++ 9 files changed, 105 insertions(+), 37 deletions(-) commit 65df9ebc10338d8aa50f0c9470d3180a424d2df7 Author: Loren Merritt Date: Wed Jul 2 20:55:10 2008 -0600 cosmetics in permutation macros SWAP can now take mmregs directly, rather than just their numbers common/x86/quant-a.asm | 98 ++++++++++++++++++------------------ common/x86/x86inc.asm | 132 ++++++++++++++++++++++------------------------- 2 files changed, 111 insertions(+), 119 deletions(-) commit 16b8f79bb6825053b6dd0eebb1d24c1bdf112fbb Author: Jason Garrett-Glaser 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 encoder/ratecontrol.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) commit 3440cf193fc13e558d2c6b98024d59e95a7b2774 Author: Loren Merritt 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. common/frame.c | 2 +- common/mc.c | 87 ++++++++++++---------- common/mc.h | 2 + common/x86/mc-a2.asm | 201 +++++++++++++++++++++++++++++++++++++++++++++++-- common/x86/mc-c.c | 12 +++ common/x86/x86inc.asm | 8 ++ tools/checkasm-a.asm | 8 +- tools/checkasm.c | 32 ++++++++ 8 files changed, 301 insertions(+), 51 deletions(-) commit 1c8f807054a0308482d53d4c58ba1d5f5d2ae263 Author: Jason Garrett-Glaser 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. encoder/analyse.c | 10 ++++---- encoder/macroblock.c | 56 ++++++++++++++++++++++++++++++------------------- encoder/macroblock.h | 3 ++ encoder/slicetype.c | 2 +- 4 files changed, 43 insertions(+), 28 deletions(-) commit ad1d7a4a585bc7f995ced5152557a4f5306275bf Author: Gabriel Bouvigne Date: Thu Jun 26 21:09:55 2008 -0600 some asm functions require aligned stack. disable these when compiling with msvc/icc. common/cpu.c | 5 +++++ common/cpu.h | 2 +- common/frame.c | 2 +- common/osdep.h | 6 ++++++ common/x86/mc-c.c | 13 ++++++++----- x264.h | 1 + 6 files changed, 22 insertions(+), 7 deletions(-) commit 2ca45934d79a62c1c04771c98eb3ee1d119cdd7a Author: Jason Garrett-Glaser 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. common/bs.h | 17 ++++++----------- common/cabac.c | 5 ----- common/x86/cabac-a.asm | 4 ---- encoder/encoder.c | 30 ++++++++++++++++++++++++++++++ 4 files changed, 36 insertions(+), 20 deletions(-) commit a55f1c31d0da2e0bf04916e7f13813c8e902cfd1 Author: Jason Garrett-Glaser 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 common/common.h | 3 +- common/frame.c | 14 ++-- common/macroblock.c | 166 ++++++++++++++++++++++++-------------------------- common/macroblock.h | 24 +++++++ common/predict.c | 18 ------ encoder/macroblock.c | 21 ++++--- 6 files changed, 124 insertions(+), 122 deletions(-) commit 2c597171d5126c3ccae7546f6699d6c4d8ec5e3a Author: Loren Merritt Date: Thu Jun 12 03:00:23 2008 -0600 mc_chroma_sse2/ssse3 common/x86/mc-a.asm | 416 +++++++++++++++++++++++++++++++++------------------ common/x86/mc-c.c | 8 + 2 files changed, 276 insertions(+), 148 deletions(-) commit cb29306fabf20ae4935906f18ed7869afcf837c3 Author: Loren Merritt Date: Thu Jun 12 08:43:41 2008 -0600 checkasm --bench=function_name tools/checkasm.c | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-) commit 22d3c0409deec7601292c56c7cd0a23427dbc107 Author: Loren Merritt Date: Thu Jun 12 01:39:22 2008 -0600 interleave psnr/ssim computation with reference frame filtering, to improve cache coherency common/common.h | 3 +++ common/pixel.c | 2 +- encoder/encoder.c | 51 +++++++++++++++++++++++++++++++++++---------------- tools/checkasm.c | 2 +- 4 files changed, 40 insertions(+), 18 deletions(-) commit 107553614c9ef5a94ba67bbc4361d709a8f91836 Author: Jason Garrett-Glaser 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. common/common.h | 8 +++--- common/macroblock.h | 32 +++++++++++++++++++++++++++ common/x86/util.h | 58 +++++++++++++++++++++++++++++++++++++++++++++++++- configure | 25 +++++++++++++++------ encoder/cavlc.c | 14 ++++++------ encoder/encoder.c | 8 +++++++ encoder/macroblock.h | 24 -------------------- 7 files changed, 126 insertions(+), 43 deletions(-) commit 63657b5a1fe05034846631377fbd584fd3d5def6 Author: Jason Garrett-Glaser Date: Sun Jun 15 11:51:36 2008 -0600 Use aligned memcpy for x264_me_t struct and cosmetics encoder/analyse.c | 96 +++++++++++++++++++++++++------------------------- encoder/me.h | 2 +- encoder/slicetype.c | 20 ++++------ 3 files changed, 57 insertions(+), 61 deletions(-) commit 23132cb6b0e18f3cf8e1f73a729ea65f1095dda0 Author: Jason Garrett-Glaser 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. common/cabac.h | 2 +- common/frame.c | 225 ++++++++++++++++++++++++-------------------------- common/macroblock.c | 33 +++++--- 3 files changed, 128 insertions(+), 132 deletions(-) commit cfaac5c2494bab44ba0b034aff448c4fb27beb1c Author: Jason Garrett-Glaser 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 common/common.h | 2 +- common/x86/util.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 11ae289c685bf901bddb121910c6c50f57625f98 Author: Jason Garrett-Glaser 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. common/common.h | 11 +++++++++++ common/x86/util.h | 31 +++++++++++++++++++++++++++++++ encoder/me.c | 13 +++++-------- 3 files changed, 47 insertions(+), 8 deletions(-) commit e098505c3329ebacdb479b40969fa22502e2091f Author: Jason Garrett-Glaser 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. encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 2389de25ff7fe6f84c9c885578c0fbaa6b656f4a Author: Jason Garrett-Glaser Date: Tue Jun 10 21:37:57 2008 -0600 Fix regression in r850 Bug resulted in rare incorrect chroma encoding encoder/cabac.c | 2 +- encoder/cavlc.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 3464b0e7b5c6df009c1959f73966b9666f4949d0 Author: Gabriel Bouvigne Date: Tue Jun 10 18:40:52 2008 -0600 Cosmetics in VBV handling common/frame.c | 38 -------------------------------------- common/frame.h | 3 --- common/osdep.h | 2 +- encoder/ratecontrol.c | 18 ++++++++++++------ 4 files changed, 13 insertions(+), 48 deletions(-) commit a95ecfdf6b5bf7b9ecb23901f68a3f6f89fa55b8 Author: Jason Garrett-Glaser Date: Tue Jun 10 18:34:46 2008 -0600 Tweaks and cosmetics in me.c Use write-combining for predictor checking and other tweaks. common/macroblock.c | 3 +++ encoder/me.c | 32 ++++++++++++++++++-------------- 2 files changed, 21 insertions(+), 14 deletions(-) commit c74a8e29d4ed7f0ca3887ccc99ab02a4661f4bed Author: Jason Garrett-Glaser 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. encoder/rdo.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 82ea3a45f80de8e18e41b6013ed8f54090203dbe Author: Jason Garrett-Glaser Date: Fri Jun 6 12:32:57 2008 -0600 Various cosmetic changes. common/common.h | 4 +- encoder/ratecontrol.c | 62 ++++++++++++++++++++++++++++++++---------------- 2 files changed, 43 insertions(+), 23 deletions(-) commit 8a74b3fdfd2004dc2788660ba7ace5aba32d013b Author: Jason Garrett-Glaser Date: Fri Jun 6 22:57:33 2008 -0600 avg_weight_sse2 common/x86/deblock-a.asm | 2 +- common/x86/mc-a.asm | 105 +++++++++++++++++++++++---------------------- common/x86/mc-c.c | 31 ++++++++++---- 3 files changed, 77 insertions(+), 61 deletions(-) commit 86c70b0fccc46752e03d3ed7fc5733dab31b5a41 Author: Loren Merritt 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). common/cpu.c | 123 +++++++++++++++++++++++++++++------------------ common/cpu.h | 7 ++- common/dct.c | 16 ++---- common/frame.c | 9 ++-- common/pixel.c | 55 +++++++++------------ common/x86/dct-a.asm | 9 ++-- common/x86/mc-a.asm | 11 +---- common/x86/mc-c.c | 25 +++------- common/x86/predict-c.c | 6 ++- encoder/encoder.c | 8 +++ tools/checkasm.c | 33 +++++++------ x264.h | 28 ++++++------ 12 files changed, 172 insertions(+), 158 deletions(-) commit 2998b17a64cb41ecf3389cc9f5a44c6f07620487 Author: Loren Merritt Date: Fri Jun 6 23:30:37 2008 -0600 enable ssse3 phadd satd on Penryn. common/cpu.c | 3 +++ common/pixel.c | 9 +++++++++ common/x86/pixel-a.asm | 47 ++++++++++++++++++++++++++++++++++------------- common/x86/pixel.h | 1 + tools/checkasm.c | 6 ++++++ x264.h | 1 + 6 files changed, 54 insertions(+), 13 deletions(-) commit 0591b7a64b6ed0043ca65781100cae6887db8a2f Author: Loren Merritt Date: Fri Jun 6 22:59:37 2008 -0600 benchmark most of the asm functions (checkasm --bench). Makefile | 3 +- tools/checkasm-32.asm | 73 --------- tools/checkasm-a.asm | 88 +++++++++++ tools/checkasm.c | 404 +++++++++++++++++++++++++++++++++++++++---------- 4 files changed, 413 insertions(+), 155 deletions(-) commit 100d067b75ef8b27c288917b3af763fe433af624 Author: Jason Garrett-Glaser Date: Thu Jun 5 11:32:05 2008 -0600 Cosmetic: fix C99-ism encoder/ratecontrol.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) commit c98aab086a2d8f99c53b501ec165c2a804d49725 Author: Jason Garrett-Glaser 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. encoder/ratecontrol.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) commit ea2648b34da352de8c2e52aa657c83bf28ec0f21 Author: Loren Merritt Date: Mon Jun 2 09:47:50 2008 -0600 cosmetics common/osdep.h | 2 +- common/ppc/pixel.h | 2 +- common/predict.c | 6 +++--- common/x86/mc-a.asm | 2 +- common/x86/mc-a2.asm | 36 ++++++++++++++++++------------------ common/x86/pixel.h | 2 +- encoder/analyse.c | 9 +-------- encoder/encoder.c | 2 +- tools/.cvsignore | 2 -- x264.h | 2 +- 10 files changed, 28 insertions(+), 37 deletions(-) commit 601b46ebb444c5e5e27fe7684e7507417a623747 Author: Loren Merritt Date: Mon Jun 2 09:40:49 2008 -0600 nasm compatible NX stack common/x86/x86inc.asm | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit c4c85baeb5f374e9e1ca9b32954d5a4974cef043 Author: Loren Merritt Date: Mon Jun 2 08:57:59 2008 -0600 CQP is incompatible with AQ encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ba3ac82d860cbd72e146e257d36c571c2d66acbc Author: Jason Garrett-Glaser Date: Sat May 24 13:10:21 2008 -0600 memzero_aligned_mmx common/mc.c | 12 +++++++++--- common/mc.h | 1 + common/x86/mc-a2.asm | 28 ++++++++++++++++++++++++++++ common/x86/mc-c.c | 4 ++++ encoder/me.c | 2 +- 5 files changed, 43 insertions(+), 4 deletions(-) commit 02a04f2d03e80be3f66bb76fd1bc775216b0d37c Author: BugMaster Date: Sat May 24 01:09:07 2008 -0600 binmode stdin on mingw, not just msvc common/osdep.h | 5 ++++- x264.c | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) commit f88d09450264d597e7b08f83993bed95ba1f7cfa Author: Jason Garrett-Glaser Date: Fri May 23 21:22:29 2008 -0600 omit redundant mc after non-rdo dct size decision, and in b-direct rdo common/common.h | 2 +- common/macroblock.c | 2 +- encoder/analyse.c | 24 +++++++++++++++++------- encoder/macroblock.c | 11 ++++++----- encoder/me.c | 2 +- 5 files changed, 26 insertions(+), 15 deletions(-) commit 9a9d39a568cf7a9486cc04014e22a4fc99fc0b7f Author: Jason Garrett-Glaser Date: Wed Apr 9 16:46:51 2008 -0600 allow fractional CRF values with AQ. encoder/ratecontrol.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) commit 26088fc4526d329a12296b862f10c85fb7801d2f Author: Noboru Asai Date: Mon Jun 2 09:12:29 2008 -0600 fix some uninitialized partitions in rdo encoder/analyse.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 7331ea4e381898421a1a908ed57f73126faacd36 Author: Gabriel Bouvigne 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. common/frame.c | 28 ++++++ common/frame.h | 3 + encoder/encoder.c | 1 + encoder/ratecontrol.c | 239 ++++++++++++++++++++++++++++++++++++++++++++----- encoder/ratecontrol.h | 2 + 5 files changed, 250 insertions(+), 23 deletions(-) commit c415d98820c96b8eb489736b1c9ed7c5927b077f Author: Alexander Strange 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). encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ce13bb6e8108657599433031df9c260c9f81b49d Author: Loren Merritt 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. doc/standards.txt | 10 ++++++++++ encoder/encoder.c | 3 ++- 2 files changed, 12 insertions(+), 1 deletions(-) commit 0903472f2e1bba9eeb6bc54f70747d037a5a6cf9 Author: Loren Merritt 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. configure | 15 +-------------- 1 files changed, 1 insertions(+), 14 deletions(-) commit d86d4bd394fa7ef671f1a914b45fc6517090aa9f Author: Loren Merritt Date: Sun May 18 08:33:34 2008 -0600 cosmetics in cabac encoder/cabac.c | 129 +++++++++++++++++++++--------------------------------- 1 files changed, 50 insertions(+), 79 deletions(-) commit bd6ce404c3c4c51b0133b8c1a3ebeeb4b60265c6 Author: Jason Garrett-Glaser Date: Sun May 18 07:14:28 2008 -0600 faster residual_write_cabac encoder/cabac.c | 96 ++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 60 insertions(+), 36 deletions(-) commit 5c257938de9e0017762395d63925a9747a0ff6e6 Author: Loren Merritt Date: Sun May 18 06:23:57 2008 -0600 change DEBUG_DUMP_FRAME to run-time --dump-yuv common/common.c | 2 ++ encoder/encoder.c | 36 +++++++++++------------------------- x264.c | 2 ++ x264.h | 1 + 4 files changed, 16 insertions(+), 25 deletions(-) commit a50d364ce947f9943458ca70ec6bf26f9e24475f Author: Loren Merritt 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 common/common.h | 27 +++++++++++++++------------ common/macroblock.c | 20 ++++---------------- common/x86/util.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ encoder/slicetype.c | 4 +--- 4 files changed, 64 insertions(+), 31 deletions(-) commit 6f74cfa72249651c71acbc83b473e581f202e18c Author: Loren Merritt Date: Sun Apr 20 03:18:19 2008 -0600 factor duplicated code out of deblock chroma mmx common/x86/deblock-a.asm | 68 ++++++++++++++++++++------------------------- 1 files changed, 30 insertions(+), 38 deletions(-) commit 1451b1285b37e54209c2216a7eab6f47ed2a0abd Author: Loren Merritt Date: Tue Apr 15 17:52:32 2008 -0600 deblock_luma_intra_mmx common/frame.c | 13 ++ common/x86/deblock-a.asm | 376 ++++++++++++++++++++++++++++++++++++++++------ tools/checkasm-32.asm | 5 +- 3 files changed, 349 insertions(+), 45 deletions(-) commit e11ef38d38d4c83c1788b9be53021239133e348f Author: vmrsss Date: Sat May 17 00:50:22 2008 -0600 write aspect ratio in mp4 muxers.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) commit 18a1d7eed0d0131d3e728d39d1c1cc81c519e1f7 Author: Jason Garrett-Glaser 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) encoder/cabac.c | 9 +++++++++ encoder/cavlc.c | 11 +++++++++++ 2 files changed, 20 insertions(+), 0 deletions(-) commit 911904cabc6f423ad47a057a0bcdf4e94d271736 Author: Jason Garrett-Glaser Date: Thu May 15 06:01:01 2008 -0600 explicit write combining, because gcc fails at optimizing consecutive memory accesses common/common.h | 6 +- common/macroblock.c | 215 ++++++++++++++++--------------------------------- common/macroblock.h | 55 ++++++++------ common/osdep.h | 3 + encoder/analyse.c | 149 ++++++++++++++++------------------ encoder/cabac.c | 4 +- encoder/cavlc.c | 6 +- encoder/macroblock.c | 10 +-- encoder/me.c | 6 +- encoder/me.h | 8 +- encoder/slicetype.c | 4 +- 11 files changed, 196 insertions(+), 270 deletions(-) commit b9073299fd9dbc116c0c47ddba925162fe0d1f83 Author: Jason Garrett-Glaser Date: Thu May 15 05:41:43 2008 -0600 force unroll macroblock_load_pic_pointers and a few other minor optimizations common/macroblock.c | 78 +++++++++++++++++++++++++------------------------- encoder/macroblock.c | 20 ++++--------- 2 files changed, 45 insertions(+), 53 deletions(-) commit 76c9f3dbcb15013efd54b9ee87be5ab32e1560a0 Author: Jason Garrett-Glaser Date: Thu May 15 05:14:53 2008 -0600 quant_2x2_dc_ssse3 common/quant.c | 1 + common/x86/quant-a.asm | 5 +++++ common/x86/quant.h | 1 + 3 files changed, 7 insertions(+), 0 deletions(-) commit fcee08ae4a37ed51ac09277805ec9e0b9d96cbb5 Author: Jason Garrett-Glaser Date: Sat May 17 00:47:31 2008 -0600 r836 borked lossless cabac nnz encoder/macroblock.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 9386865f979a21d2a1000b77ac13cc51f16d7fcd Author: Henry Bent Date: Wed May 7 19:49:14 2008 -0600 use elf instead of a.out on netbsd configure | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) commit ee0c7dcd7d3bd3fc33ebc910453c968c24c88ebf Author: Ning Xin Date: Wed May 7 17:18:44 2008 -0600 fix x264_realloc when not using libc realloc. common/common.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 5e103026a9c1661c3743a851b4fe928982bb0fb9 Author: Loren Merritt 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. common/x86/cpu-64.asm | 12 +-- common/x86/x86inc-64.asm | 231 ---------------------------------------------- common/x86/x86inc.asm | 43 +--------- 3 files changed, 2 insertions(+), 284 deletions(-) commit 97fc930ef25741c504f91b7929d46915cc3e245b Author: Loren Merritt Date: Mon May 5 16:25:19 2008 -0600 cosmetics: replace last instances of parm# asm macros with r# common/x86/cpu-64.asm | 8 +++--- common/x86/dct-64.asm | 64 ++++++++++++++++++++++++------------------------ 2 files changed, 36 insertions(+), 36 deletions(-) commit 1b75bd4cdea04d70491331743d7506980001ece5 Author: Loren Merritt Date: Mon Apr 28 03:12:29 2008 -0600 remove DEBUG_BENCHMARK encoder/encoder.c | 42 ------------------------------------------ 1 files changed, 0 insertions(+), 42 deletions(-) commit b55625d5952f8a9a163b4b93699bdafcb1c2cc29 Author: Jason Garrett-Glaser Date: Sun Apr 27 03:10:28 2008 -0600 faster probe_skip encoder/macroblock.c | 26 +++++++++++++------------- 1 files changed, 13 insertions(+), 13 deletions(-) commit 27c3071979593d059a0929ca7b0ad82a762626f6 Author: Loren Merritt Date: Tue Apr 22 17:16:25 2008 -0600 drop support for pre-SSE3 assemblers common/cpu.c | 2 -- common/dct.c | 2 +- common/pixel.c | 4 ---- common/quant.c | 4 +--- common/x86/dct-a.asm | 2 -- common/x86/mc-a.asm | 4 ---- common/x86/mc-a2.asm | 2 -- common/x86/mc-c.c | 14 -------------- common/x86/pixel-a.asm | 4 ---- common/x86/predict-c.c | 2 -- common/x86/quant-a.asm | 2 -- common/x86/sad-a.asm | 8 +------- configure | 6 +----- 13 files changed, 4 insertions(+), 52 deletions(-) commit 8ce08bee184f75c9d5ce1966e35de3d0eec1a916 Author: Loren Merritt 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 common/cpu.c | 19 ++++--------------- common/cpu.h | 4 +--- encoder/encoder.c | 8 ++++---- encoder/ratecontrol.c | 12 ++++++------ encoder/slicetype.c | 2 +- tools/checkasm.c | 2 +- 6 files changed, 17 insertions(+), 30 deletions(-) commit 45cc42cc3f5155a9bcbadaaa88c828359884c85b Author: Jason Garrett-Glaser Date: Sun Apr 27 02:37:37 2008 -0600 faster cabac_mb_cbp_luma ported from ffmpeg encoder/cabac.c | 49 +++++++------------------------------------------ 1 files changed, 7 insertions(+), 42 deletions(-) commit 5dae513218070a3aafc7c56b097bc7ff7ae58526 Author: Jason Garrett-Glaser 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 encoder/macroblock.c | 86 +++++++++++++++++++++----------------------------- 1 files changed, 36 insertions(+), 50 deletions(-) commit a9057b503939d763a9f17111c41672bfca8beb7e Author: Jason Garrett-Glaser Date: Fri Apr 25 20:43:57 2008 -0600 compute missing nnz count in subme7 cavlc encoder/cavlc.c | 20 ++++++++++++++------ 1 files changed, 14 insertions(+), 6 deletions(-) commit 5a562eb9e12ef535be3d8c956b477982707083dd Author: Jason Garrett-Glaser Date: Fri Apr 25 01:47:47 2008 -0600 remove a division in macroblock-level bookkeeping encoder/encoder.c | 25 ++++++++++++++----------- 1 files changed, 14 insertions(+), 11 deletions(-) commit 2b3d65e7c2389fc4201dafb69422550e15ef0d85 Author: Jason Garrett-Glaser 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 common/common.h | 3 +++ encoder/analyse.c | 3 +++ encoder/macroblock.c | 30 +++++++++++++++++------------- 3 files changed, 23 insertions(+), 13 deletions(-) commit 2f75bcc1b74ece41ae39134719bcdefc2a6a0265 Author: Loren Merritt Date: Thu Apr 24 05:17:04 2008 -0600 earlier termination in SEA if mvcost exceeds residual encoder/me.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-) commit 971301a7a1c164620b3e80bcd1e2517d053213c5 Author: Loren Merritt Date: Tue Apr 22 04:00:24 2008 -0600 remove void* arithmetic from r821 common/frame.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 5ca01b326a47615337a0eb6d4b25eaa53aa283bb Author: Guillaume Poirier 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) gtk/x264_gtk.c | 40 ++++++++++++------------ gtk/x264_gtk_bitrate.c | 14 ++++---- gtk/x264_gtk_bitrate.h | 2 +- gtk/x264_gtk_cqm.c | 58 +++++++++++++++++----------------- gtk/x264_gtk_cqm.h | 2 +- gtk/x264_gtk_encode_encode.c | 14 ++++---- gtk/x264_gtk_encode_main_window.c | 48 ++++++++++++++-------------- gtk/x264_gtk_encode_status_window.c | 18 +++++----- gtk/x264_gtk_i18n.h | 6 ++-- gtk/x264_gtk_mb.c | 20 ++++++------ gtk/x264_gtk_mb.h | 2 +- gtk/x264_gtk_more.c | 20 ++++++------ gtk/x264_gtk_more.h | 2 +- gtk/x264_gtk_rc.c | 12 +++--- gtk/x264_gtk_rc.h | 2 +- 15 files changed, 130 insertions(+), 130 deletions(-) commit ef36548b728491cb5d81c24e7f48c9f216845a3d Author: Guillaume Poirier 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 gtk/x264_gtk.c | 4 ++-- gtk/x264_gtk_encode_main_window.c | 10 +++++----- gtk/x264_gtk_encode_private.h | 2 +- gtk/x264_gtk_encode_status_window.c | 2 +- gtk/x264_gtk_private.h | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) commit ee95c7fb74179d78ebf6c0fbb71af58b3ab341b6 Author: Guillaume Poirier Date: Thu Apr 24 14:46:11 2008 +0200 more consistent include name (in line with other PPC includes) common/ppc/predict.h | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 29ae7d14bb675c082098ac6e2ec787a1cd559e23 Author: Guillaume Poirier 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 % common/bs.h | 6 ++---- common/cabac.h | 4 ++-- common/common.h | 4 ++-- common/cpu.h | 4 ++-- common/dct.h | 4 ++-- common/display.h | 4 ++-- common/frame.h | 4 ++-- common/macroblock.h | 4 ++-- common/mc.h | 4 ++-- common/osdep.h | 6 +++--- common/pixel.h | 4 ++-- common/ppc/dct.h | 4 ++-- common/ppc/mc.h | 4 ++-- common/ppc/pixel.h | 4 ++-- common/ppc/predict.h | 6 +++--- common/ppc/quant.h | 4 ++-- common/predict.h | 4 ++-- common/quant.h | 4 ++-- common/set.h | 4 ++-- common/sparc/pixel.h | 4 ++-- common/visualize.h | 4 ++-- common/x86/dct.h | 4 ++-- common/x86/mc.h | 4 ++-- common/x86/pixel.h | 4 ++-- common/x86/predict.h | 4 ++-- common/x86/quant.h | 4 ++-- encoder/analyse.h | 4 ++-- encoder/macroblock.h | 4 ++-- encoder/me.h | 4 ++-- encoder/ratecontrol.h | 4 ++-- encoder/set.h | 4 ++-- gtk/x264_gtk.h | 6 +++--- gtk/x264_gtk_bitrate.h | 6 +++--- gtk/x264_gtk_cqm.h | 6 +++--- gtk/x264_gtk_demuxers.h | 6 +++--- gtk/x264_gtk_encode_encode.h | 6 +++--- gtk/x264_gtk_encode_main_window.h | 6 +++--- gtk/x264_gtk_encode_private.h | 6 +++--- gtk/x264_gtk_encode_status_window.h | 6 +++--- gtk/x264_gtk_enum.h | 6 +++--- gtk/x264_gtk_i18n.h | 8 ++++---- gtk/x264_gtk_mb.h | 6 +++--- gtk/x264_gtk_more.h | 6 +++--- gtk/x264_gtk_private.h | 6 +++--- gtk/x264_gtk_rc.h | 6 +++--- matroska.h | 4 ++-- muxers.h | 4 ++-- x264.h | 4 ++-- 48 files changed, 113 insertions(+), 115 deletions(-) commit 138601d1df8c1101f74c2e3bcea66040a764314a Author: Jason Garrett-Glaser 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. encoder/ratecontrol.c | 82 +++++++++++++++++++++++------------------------- 1 files changed, 39 insertions(+), 43 deletions(-) commit 15f3190277ee18b110a1825a7a98e989756659e9 Author: Loren Merritt Date: Sun Apr 20 12:19:46 2008 -0600 checkasm cabac common/cabac.c | 4 +--- common/cabac.h | 9 ++++++++- common/x86/cabac-a.asm | 2 +- encoder/rdo.c | 1 + tools/checkasm.c | 33 ++++++++++++++++++++++++++++++++- 5 files changed, 43 insertions(+), 6 deletions(-) commit f892ee11a99c0b85e577e33bc1e695373b58584a Author: Loren Merritt Date: Sun Apr 20 02:39:31 2008 -0600 s/movdqa/movaps/g common/x86/x86inc.asm | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit d940f6e66f418e24daa16f93f649ba9a38b173ce Author: Loren Merritt Date: Sun Apr 20 18:25:53 2008 -0600 --asm to allow testing of different versions of asm without recompile common/common.c | 21 ++++++++++++++++++++- common/cpu.c | 19 +++++++++++++++++++ common/cpu.h | 5 +++++ common/osdep.h | 1 + encoder/encoder.c | 22 +++++++++------------- x264.c | 2 ++ 6 files changed, 56 insertions(+), 14 deletions(-) commit 9b52ed57a8897f50d193b4ddbefe9fd19d234098 Author: Loren Merritt Date: Sat Apr 12 01:40:28 2008 -0600 copy left neighbor pixels directly from previous mb instead of main plane common/macroblock.c | 24 +++++++++++++++++++++--- common/osdep.h | 2 ++ 2 files changed, 23 insertions(+), 3 deletions(-) commit 44361e9514344c4e4685bca45e8c55a28c3cd395 Author: Jason Garrett-Glaser Date: Wed Apr 9 16:30:34 2008 -0600 cacheline split workaround for mc_luma common/frame.c | 27 +++++----- common/frame.h | 2 +- common/x86/mc-a.asm | 126 +++++++++++++++++++++++++++++++++++++++++++++- common/x86/mc-c.c | 136 +++++++++++++++++++++++++++++++++++-------------- common/x86/sad-a.asm | 4 +- tools/checkasm.c | 3 +- 6 files changed, 240 insertions(+), 58 deletions(-) commit d50f9cbdc47cdb20d066fe19d616e95ef9560358 Author: Guillaume Poirier 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 % common/x86/cabac-a.asm | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 0414d78c3c44b3be7f3340d959aaaeb73e4b017a Author: Loren Merritt Date: Sun Apr 13 10:29:15 2008 -0600 more hpel fixes common/frame.c | 9 +++++---- common/x86/mc-c.c | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) commit d4b7d2bca9a333cd88583a035ede864c1368c66c Author: Gabriel Bouvigne Date: Thu Apr 10 08:59:19 2008 -0600 update msvc projectfile build/win32/libx264.vcproj | 29 ++++++++++++++++++++++++++++- 1 files changed, 28 insertions(+), 1 deletions(-) commit 69172761934ee2e531fd551d00ba696ad42029d4 Author: Loren Merritt Date: Fri Apr 11 18:48:30 2008 -0600 r810 borked hpel_filter_sse2 on unaligned buffers common/x86/mc-c.c | 1 + tools/checkasm.c | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) commit 761630d7f646d4ad3562e7ff55fa7c80f8dce039 Author: Loren Merritt Date: Thu Apr 10 03:17:53 2008 -0600 threads=auto on multicore now implies thread input, just like explicit thread numbers already did x264.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit c9a928bf0b3acf13287147137ea3ceee3c6c81b2 Author: Loren Merritt Date: Tue Apr 8 20:16:50 2008 -0600 dct4 sse2 common/dct.c | 7 +++ common/x86/dct-a.asm | 116 +++++++++++++++++++++++++++++++++++--------------- common/x86/dct.h | 10 +++-- 3 files changed, 95 insertions(+), 38 deletions(-) commit b32dacbaf2294607c31ee3658c85f44b8f40722a Author: Loren Merritt Date: Tue Apr 8 12:19:23 2008 -0600 faster x86_32 dct8 common/dct.c | 3 - common/x86/dct-32.asm | 706 ++++++++++++++++++++++--------------------------- common/x86/dct-a.asm | 11 +- 3 files changed, 327 insertions(+), 393 deletions(-) commit a7eec58b62c43f3417d7523a5e337f2f68602ec9 Author: Loren Merritt Date: Mon Apr 7 10:22:03 2008 -0600 macros to deal with macros that permute their arguments common/x86/dct-32.asm | 315 ++++++++++++++++++++++++------------------------ common/x86/dct-64.asm | 322 +++++++++++++++++++++++++------------------------ common/x86/dct-a.asm | 189 +++++++++++++---------------- common/x86/x86inc.asm | 100 +++++++++++++++ 4 files changed, 504 insertions(+), 422 deletions(-) commit 0feb9f1b088af1391603bee9da0b1f06b5fb45f6 Author: Loren Merritt Date: Mon Apr 7 08:24:40 2008 -0600 mmx cachesplit sad of non-square sizes checked height instead of width common/x86/sad-a.asm | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 9f0db01e173d7e98bbb711bed871b6320392f62b Author: Loren Merritt Date: Fri Apr 4 01:07:40 2008 -0600 sfence after nontemporal stores common/x86/mc-a2.asm | 5 +++++ common/x86/mc-c.c | 2 ++ 2 files changed, 7 insertions(+), 0 deletions(-) commit 2487cdf92f3050830fe2b7ffc4e04cf292823e9e Author: Loren Merritt Date: Wed Apr 2 11:22:43 2008 -0600 simplify hpel filter asm (move control flow to C) and add sse2, ssse3 versions common/x86/mc-a2.asm | 480 +++++++++++++++++++++++++++---------------------- common/x86/mc-c.c | 45 +++++- common/x86/x86inc.asm | 4 + tools/checkasm.c | 2 +- 4 files changed, 312 insertions(+), 219 deletions(-) commit 5cc926a4dad3b73da4458a54b194c926f91cacd3 Author: Loren Merritt Date: Thu Apr 3 20:46:36 2008 -0600 more mmx/xmm macros (mova, movu, movh) common/x86/deblock-a.asm | 62 +++++++++++++++++++++++----------------------- common/x86/quant-a.asm | 26 +++++++++--------- common/x86/x86inc.asm | 8 ++++- 3 files changed, 50 insertions(+), 46 deletions(-) commit 6cf65da995c454f5d9330a1f07718ec1734f8454 Author: Jason Garrett-Glaser 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 common/vlc.h | 20 -------------------- encoder/cavlc.c | 35 +++++++++++++++++++++++++++++------ 2 files changed, 29 insertions(+), 26 deletions(-) commit 08b5132ff6e6a8e986b6699987b49624e4efbef3 Author: Guillaume Poirier Date: Mon Mar 31 10:50:45 2008 +0200 fix shared libs on MacOSX based on a patch by İsmail Dönmez configure | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 457ce6a50ab44b28406d05fa290549a62a2452f4 Author: Loren Merritt Date: Mon Mar 31 02:27:53 2008 -0600 typo in r803 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit decfd7b9ce0df2d89d39cf002955bce65f02c1d9 Author: Loren Merritt Date: Sun Mar 30 18:08:28 2008 -0600 fix a crash on mp4 muxing with invalid params x264.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) commit dc4f40ce74c996a1e15021b82ab71ebcb8652d0b Author: Jason Garrett-Glaser 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 common/common.c | 9 ++++ encoder/analyse.c | 7 ++- encoder/encoder.c | 7 +++ encoder/ratecontrol.c | 110 +++++++++++++++++++++++++++++++++++++++++++++++- encoder/ratecontrol.h | 1 + x264.c | 10 ++++ x264.h | 8 +++- 7 files changed, 146 insertions(+), 6 deletions(-) commit ae3d8b1d6b15f4d2118438dc7d9338686490cf28 Author: Zuxy Meng Date: Sat Mar 29 18:04:23 2008 -0600 fix naming of .dll on mingw Makefile | 11 ++++++++--- configure | 9 ++++++++- 2 files changed, 16 insertions(+), 4 deletions(-) commit a09f8f5e3759331b4699ec50c98dea7ce20b748b Author: Loren Merritt Date: Sat Mar 29 17:53:36 2008 -0600 don't distinguish between mingw and cygwin configure | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit 73cfc9e5b8947e4d279a63da8f18253a4c066c89 Author: Jason Garrett-Glaser Date: Sat Mar 29 16:27:54 2008 -0600 remove a memset encoder/analyse.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) commit 32390823a9812bc646f6e6e8416b114b31a3028e Author: Loren Merritt Date: Sat Mar 29 16:27:08 2008 -0600 typo. don't evaluate rd pskip when p16x16 found ref>0. encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit bd0d9a568b826269ea131889181b57ed986699cd Author: Loren Merritt Date: Sat Mar 29 20:42:51 2008 -0600 r784 borked lossless dc zigzag encoder/macroblock.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) commit 17e5dac11adae8af7521c95a9dd1d70549a13b64 Author: Loren Merritt Date: Tue Mar 25 07:31:51 2008 -0600 fix an arithmetic overflow that disabled SEA threshold after finding a mv with SAD < mvcost. encoder/me.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 2f6fd93be1cbcd18dd131ba0d46d3ad0d3e5b72b Author: Guillaume Poirier 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 % common/ppc/mc.c | 21 ++++++++++++++++++++- 1 files changed, 20 insertions(+), 1 deletions(-) commit 5e0e058c72e6dcf0f432157b48c0b07566535fe6 Author: Loren Merritt Date: Tue Mar 25 00:59:50 2008 -0600 faster residual encoder/cabac.c | 14 +++++----- encoder/cavlc.c | 75 +++++++++++------------------------------------------- 2 files changed, 23 insertions(+), 66 deletions(-) commit 261873ec7737bd4e71fdce45608ef46b0cc0472d Author: Loren Merritt Date: Mon Mar 24 21:31:46 2008 -0600 nasm doesn't like align(nop) in structs common/x86/cabac-a.asm | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 4b18012311fe5e823495169ab9a911e1cb9b3907 Author: Loren Merritt Date: Mon Mar 24 19:25:19 2008 -0600 reduce the size of some cabac arrays encoder/rdo.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit e403fe9364ad1ea1cd8c3d5055759a538e97bb8b Author: Jason Garrett-Glaser Date: Mon Mar 24 19:21:24 2008 -0600 use cabac context transition table from trellis in normal residual coding too encoder/cabac.c | 26 ++++++++++++++++++-------- encoder/rdo.c | 13 ------------- 2 files changed, 18 insertions(+), 21 deletions(-) commit 6ae335530efb189b00fd6f3b1b7da5eefd856473 Author: Jason Garrett-Glaser Date: Mon Mar 24 19:12:07 2008 -0600 rearrange cabac struct to reduce code size common/cabac.h | 10 ++++---- common/x86/cabac-a.asm | 59 ++++++++++++++++++++++++++---------------------- encoder/rdo.c | 14 ++++++----- 3 files changed, 45 insertions(+), 38 deletions(-) commit 7255f6843c719b0d21c2c35b94eed39616075710 Author: Jason Garrett-Glaser Date: Mon Mar 24 03:25:25 2008 -0600 higher precision RD lambda improves quality at QP<=12. encoder/analyse.c | 20 +++++++++----------- encoder/rdo.c | 23 +++++++++++------------ 2 files changed, 20 insertions(+), 23 deletions(-) commit 1035c63eb9ef354670c3c16f23fd3ac2bb88ec19 Author: Loren Merritt Date: Mon Mar 24 01:56:31 2008 -0600 faster cabac_encode_ue_bypass common/cabac.c | 19 +++++++++++++++++++ common/cabac.h | 1 + encoder/cabac.c | 17 ----------------- encoder/rdo.c | 1 + 4 files changed, 21 insertions(+), 17 deletions(-) commit bf9bf7acf61da13d9cc45c35291f61e614d7414c Author: Loren Merritt 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. Makefile | 2 +- common/cabac.c | 6 +- common/x86/cabac-a.asm | 161 ++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/x86inc.asm | 68 ++++++++++---------- 4 files changed, 201 insertions(+), 36 deletions(-) commit 36879873dd9a741700474d80160e98f2d9e61e5c Author: Loren Merritt Date: Sun Mar 23 22:08:07 2008 -0600 cosmetics in cabac common/cabac.c | 174 ++++++++++++++++++++++---------------------------------- common/cabac.h | 14 ++-- 2 files changed, 75 insertions(+), 113 deletions(-) commit d4f9f60faf14bd1415f16dd419d1889324db3e1e Author: Loren Merritt Date: Sat Mar 22 20:25:06 2008 -0600 inline cabac_size_decision common/cabac.c | 62 ++++++++++++++++++++++++++++++++---------------------- common/cabac.h | 31 ++++++++++++++++++++++----- encoder/cabac.c | 10 +++++--- encoder/rdo.c | 1 - 4 files changed, 68 insertions(+), 36 deletions(-) commit aa5391aae3c8b7327532261d1345c0434ee65ad3 Author: Loren Merritt Date: Sat Mar 22 03:25:03 2008 -0600 cosmetics in DECLARE_ALIGNED common/cabac.h | 2 +- common/common.h | 30 +++++++++--------- common/macroblock.c | 2 +- common/osdep.h | 7 +++- common/ppc/deblock.c | 4 +- common/ppc/mc.c | 4 +- common/ppc/pixel.c | 78 ++++++++++++++++++++++++------------------------ common/x86/predict-c.c | 2 +- encoder/analyse.c | 26 ++++++++-------- encoder/macroblock.c | 28 ++++++++-------- encoder/me.c | 16 +++++----- encoder/me.h | 2 +- encoder/slicetype.c | 4 +- gtk/test.c | 2 - tools/checkasm.c | 42 +++++++++++++------------- 15 files changed, 125 insertions(+), 124 deletions(-) commit 192768df4d84ac176be0ed0cc5c759e30b5328df Author: Loren Merritt Date: Sat Mar 22 03:06:18 2008 -0600 don't distinguish between luma4x4 and luma4x4ac common/common.h | 8 ++------ common/dct.c | 45 --------------------------------------------- common/dct.h | 2 -- common/ppc/dct.c | 35 ----------------------------------- common/ppc/dct.h | 3 --- encoder/analyse.c | 2 +- encoder/cabac.c | 16 ++++++++-------- encoder/cavlc.c | 24 ++++++++++++------------ encoder/macroblock.c | 44 ++++++++++++++++++++++---------------------- tools/checkasm.c | 4 ---- 10 files changed, 45 insertions(+), 138 deletions(-) commit 36fe32ae368797be584657eed37350faa0e93e78 Author: Loren Merritt Date: Sat Mar 22 02:46:31 2008 -0600 faster lossless zigzag common/dct.c | 16 +++++++++++++++- common/x86/dct-a.asm | 41 +++++++++++++++++++++++++++++++++++++++++ common/x86/dct.h | 1 + 3 files changed, 57 insertions(+), 1 deletions(-) commit 170f57bf8c186427c3e160afb3db6c71e1aafabd Author: Loren Merritt Date: Sat Mar 22 03:14:33 2008 -0600 more alignment encoder/analyse.c | 7 ++++--- encoder/me.c | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) commit 9bdc256db55d93541de80e27e54d46b8e8c45cfe Author: Loren Merritt Date: Sat Mar 22 01:49:52 2008 -0600 add tesa and lossless to fprofile Makefile | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) commit 5a66f307ef2e71b2f1945a84f408a719ea4cc6a6 Author: Loren Merritt Date: Sat Mar 22 01:46:43 2008 -0600 cosmetics in residual_write encoder/cabac.c | 16 ++++++++-------- encoder/cavlc.c | 12 ++++++------ 2 files changed, 14 insertions(+), 14 deletions(-) commit 571dda602b20b5b461f83e8d07fd3a3d9652c52b Author: Loren Merritt Date: Fri Mar 21 23:24:33 2008 -0600 remove unused bitstream reader common/bs.h | 123 ------------------------------------------------------- common/common.h | 8 ---- 2 files changed, 0 insertions(+), 131 deletions(-) commit 5d47436a4dbe0aa14a9da43cc9a57cf5b421539e Author: Loren Merritt Date: Fri Mar 21 18:58:46 2008 -0600 cosmetics in quant asm common/x86/quant-a.asm | 104 +++++++++++++++++++++++------------------------- 1 files changed, 50 insertions(+), 54 deletions(-) commit afba69a247ee3ff4ae9781cb63093529175ec135 Author: Loren Merritt Date: Fri Mar 21 18:46:29 2008 -0600 special case dequant for flat matrix common/quant.c | 10 +++ common/x86/quant-a.asm | 178 +++++++++++++++++++++++++++++++++++------------- common/x86/quant.h | 4 + tools/checkasm.c | 7 ++ 4 files changed, 152 insertions(+), 47 deletions(-) commit 02e610262bac2645742cfaa40d018fd43f26e859 Author: Loren Merritt Date: Fri Mar 21 00:04:46 2008 -0600 faster dequant common/quant.c | 4 +- common/x86/deblock-a.asm | 28 ---------- common/x86/quant-a.asm | 127 ++++++++++++++++++++++++---------------------- common/x86/quant.h | 2 + common/x86/x86inc.asm | 28 ++++++++++ 5 files changed, 100 insertions(+), 89 deletions(-) commit e8448ff4a975b058524a0117fffa830e3f56a0e5 Author: Loren Merritt Date: Thu Mar 20 22:08:07 2008 -0600 simplify hpel_filter_c common/mc.c | 93 +++++++++++----------------------------------------------- 1 files changed, 18 insertions(+), 75 deletions(-) commit 32fb497fe346d3383937a05ee99a031c13a3ac4d Author: Loren Merritt 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 common/x86/mc-a.asm | 15 ++++++++++----- common/x86/mc-c.c | 2 ++ 2 files changed, 12 insertions(+), 5 deletions(-) commit adfab36d395dff335c5a34d050c84ac8e7e1b470 Author: Loren Merritt Date: Thu Mar 20 14:00:08 2008 -0600 new ssd_8x*_sse2 align ssd_16x*_sse2 unroll ssd_4x*_mmx common/pixel.c | 11 +++-- common/pixel.h | 2 + common/x86/pixel-a.asm | 99 +++++++++++++++++++++++++++++++++++------------ tools/checkasm.c | 14 +++--- 4 files changed, 89 insertions(+), 37 deletions(-) commit e1d815e15cc62b52ed67b4fd1538aaa238c70e97 Author: Manuel Date: Thu Mar 20 13:21:16 2008 -0600 update altivec zigzags common/ppc/dct.c | 56 +++++++++++------------------------------------------ common/ppc/dct.h | 8 +++--- 2 files changed, 16 insertions(+), 48 deletions(-) commit 2be14de6fc2ffa973b411f6ec022ab3292fd0772 Author: Loren Merritt Date: Thu Mar 20 10:41:50 2008 -0600 r768 borked cavlc common/common.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b6a966a3364a4d3788f4bd9023da07b869b5bbde Author: Loren Merritt Date: Thu Mar 20 00:52:11 2008 -0600 cosmetics in intra predict common/predict.c | 442 ++++++++++++++++++++++-------------------------------- 1 files changed, 181 insertions(+), 261 deletions(-) commit 67a130f53f26ac5ecf29ee4bd0ab442e0d87fc70 Author: Jason Garrett-Glaser Date: Thu Mar 20 00:31:42 2008 -0600 faster intra predict 8x8 hu/hd common/macroblock.h | 6 ++-- common/predict.c | 97 ++++++++++++++++++++++++++++++--------------------- 2 files changed, 60 insertions(+), 43 deletions(-) commit 3f48ce7e838aab6d0701150f93166132cb06c6a0 Author: Loren Merritt Date: Wed Mar 19 23:43:19 2008 -0600 reduce zigzag arrays from int to int16_t common/common.h | 14 +++++++------- common/dct.c | 44 ++++++++++++++++++++++---------------------- common/dct.h | 10 +++++----- common/x86/dct-32.asm | 32 -------------------------------- common/x86/dct-a.asm | 31 ++++++++++++++----------------- common/x86/dct.h | 3 +-- encoder/cabac.c | 2 +- encoder/cavlc.c | 2 +- encoder/macroblock.c | 6 +++--- encoder/macroblock.h | 2 +- tools/checkasm.c | 28 ++++++++++++++-------------- 11 files changed, 69 insertions(+), 105 deletions(-) commit 84452e50633eb7d98a2e5f55ff4c799b2bf30f32 Author: Loren Merritt Date: Wed Mar 19 23:42:20 2008 -0600 reduce the size of some arrays common/common.h | 12 ++++++------ common/macroblock.h | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) commit f46c3bc88be70eb4ab798cba5e0da75b13038ffc Author: Jason Garrett-Glaser 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 common/common.h | 12 ++++++++++++ encoder/analyse.c | 23 +++++++++++++++++++++++ encoder/macroblock.c | 20 ++++++++++++++++++-- 3 files changed, 53 insertions(+), 2 deletions(-) commit 123f29a18afc120d9c6ccca1c32e8054124051b2 Author: Loren Merritt Date: Wed Mar 19 14:03:34 2008 -0600 cosmetics in asm common/x86/mc-a.asm | 16 +++++++--------- common/x86/pixel-32.asm | 2 +- common/x86/x86inc-64.asm | 6 +++--- 3 files changed, 11 insertions(+), 13 deletions(-) commit 1df5f84baf226141548948d94c84a1f3b1792c0b Author: Jason Garrett-Glaser Date: Wed Mar 19 14:00:34 2008 -0600 satd_4x4_ssse3 common/pixel.c | 8 ++++---- common/x86/pixel-a.asm | 12 ++++++++---- 2 files changed, 12 insertions(+), 8 deletions(-) commit dcf2604a00d57c05a2def4551b75b8a08af024e3 Author: Jason Garrett-Glaser Date: Wed Mar 19 13:40:41 2008 -0600 get_ref_sse2 common/x86/mc-a.asm | 85 ++++++++++++++++++++++++++++++----- common/x86/mc-a2.asm | 8 ++-- common/x86/mc-c.c | 123 ++++++++++++++++++++++++++++++++------------------ 3 files changed, 157 insertions(+), 59 deletions(-) commit 09499759acc0adc246a63a72099fc85ca1746235 Author: Jason Garrett-Glaser 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. encoder/analyse.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) commit 1fc702f8fc5b7640c62f80a5574b15a9b01fdfb7 Author: Loren Merritt Date: Tue Mar 18 18:24:01 2008 -0600 remove remaining reference to clip1.h common/ppc/mc.c | 1 - common/ppc/predict.c | 1 - 2 files changed, 0 insertions(+), 2 deletions(-) commit 4c02055a87b79cf00da75456e8666d60fd1785d3 Author: Loren Merritt 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. common/x86/pixel-a.asm | 14 +++++--------- 1 files changed, 5 insertions(+), 9 deletions(-) commit 57741220cfb20e1628a1e671b83687ddaf2958fe Author: Gabriel Bouvigne Date: Mon Mar 17 15:44:40 2008 -0600 update msvc projectfile build/win32/libx264.vcproj | 241 +++++++++++++++++++++----------------------- 1 files changed, 116 insertions(+), 125 deletions(-) commit 018a6e0fefcedbe73afffff8dca310e396b6bda4 Author: Loren Merritt Date: Mon Mar 17 15:41:59 2008 -0600 missing #ifdef HAVE_SSE3 common/x86/predict-c.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 205d011e2e8418d7cf90fc58589238d36e941942 Author: Loren Merritt Date: Mon Mar 17 15:41:30 2008 -0600 don't define offsetof since it's standard common/common.h | 5 +---- 1 files changed, 1 insertions(+), 4 deletions(-) commit 4d9499b41be91645f27a7ca01e4a5a09d041ecbd Author: Loren Merritt Date: Mon Mar 17 01:23:35 2008 -0600 shut up gcc warning in offsetof common/common.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 2c8600ea161bdf2be733b01e17974fe75a4e31d3 Author: Håkan Hjort Date: Mon Mar 17 01:20:02 2008 -0600 increase alignment of mv arrays common/common.h | 10 +++++----- encoder/analyse.c | 24 ++++++++++-------------- encoder/me.h | 2 +- 3 files changed, 16 insertions(+), 20 deletions(-) commit 91991ba67aa9a7256b4bdf8d1d9be183ec2daa2b Author: Jason Garrett-Glaser Date: Sun Mar 16 23:58:04 2008 -0600 memcpy_aligned_sse2 common/cabac.h | 5 ++- common/macroblock.c | 2 +- common/mc.c | 1 + common/mc.h | 2 + common/x86/mc-a2.asm | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ common/x86/mc-c.c | 8 ++++++- encoder/rdo.c | 21 ++++++++++--------- 7 files changed, 78 insertions(+), 14 deletions(-) commit ede2a6e0d305647b82b5c240c981b19f96ba40c2 Author: Loren Merritt 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 Makefile | 1 + common/x86/mc-a.asm | 2 +- tools/checkasm-32.asm | 72 +++++++++++++++++++++++++++++++++++ tools/checkasm.c | 100 +++++++++++++++++++++++++++---------------------- 4 files changed, 129 insertions(+), 46 deletions(-) commit 357ab3381fbe85eca5d076c1ab5f6814d2a03215 Author: Loren Merritt Date: Sun Mar 16 22:28:20 2008 -0600 fix x86_32 ads which failed to preserve a register common/x86/pixel-a.asm | 18 ++++++++---------- common/x86/x86inc.asm | 2 ++ 2 files changed, 10 insertions(+), 10 deletions(-) commit 5862a17e25bc4eab46cb856b56e04f51814051db Author: Loren Merritt Date: Sun Mar 16 16:34:41 2008 -0600 fix some name mangling issues introduced by the merge common/x86/dct-a.asm | 8 ++++---- common/x86/pixel-a.asm | 6 ++++-- 2 files changed, 8 insertions(+), 6 deletions(-) commit dafc72cc87c40d4972292d8255781fea70299650 Author: Loren Merritt 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. common/clip1.h | 76 ------------------------------------------------ common/common.h | 5 +++ common/dct.c | 12 +------ common/mc.c | 7 ++-- common/pixel.c | 1 - common/predict.c | 1 - common/x86/predict-c.c | 1 - 7 files changed, 10 insertions(+), 93 deletions(-) commit c4680aceec03d3063cbefa5db7ab4404f32578d8 Author: Loren Merritt 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 .gitignore | 1 + Makefile | 37 +- common/amd64/amd64inc.asm | 314 -------- common/amd64/cpu-a.asm | 100 --- common/amd64/dct-a.asm | 520 ------------ common/amd64/deblock-a.asm | 475 ----------- common/amd64/mc-a.asm | 618 --------------- common/amd64/mc-a2.asm | 320 -------- common/amd64/pixel-a.asm | 1301 ------------------------------ common/amd64/pixel-sse2.asm | 1074 ------------------------- common/amd64/predict-a.asm | 545 ------------- common/amd64/quant-a.asm | 233 ------ common/cpu.c | 2 + common/dct.c | 4 +- common/frame.c | 13 +- common/i386/cpu-a.asm | 119 --- common/i386/dct-a.asm | 807 ------------------- common/i386/dct.h | 53 -- common/i386/deblock-a.asm | 503 ------------ common/i386/i386inc.asm | 151 ---- common/i386/mc-a.asm | 633 --------------- common/i386/mc-a2.asm | 327 -------- common/i386/mc-c.c | 174 ---- common/i386/mc.h | 32 - common/i386/pixel-a.asm | 1835 ------------------------------------------- common/i386/pixel-sse2.asm | 1052 ------------------------- common/i386/pixel.h | 98 --- common/i386/predict-a.asm | 629 --------------- common/i386/predict-c.c | 567 ------------- common/i386/predict.h | 32 - common/i386/quant-a.asm | 298 ------- common/i386/quant.h | 39 - common/mc.c | 8 +- common/pixel.c | 11 +- common/predict.c | 2 +- common/quant.c | 2 +- common/x86/cpu-32.asm | 90 +++ common/x86/cpu-64.asm | 60 ++ common/x86/dct-32.asm | 560 +++++++++++++ common/x86/dct-64.asm | 243 ++++++ common/x86/dct-a.asm | 295 +++++++ common/x86/dct.h | 52 ++ common/x86/deblock-a.asm | 620 +++++++++++++++ common/x86/mc-a.asm | 637 +++++++++++++++ common/x86/mc-a2.asm | 338 ++++++++ common/x86/mc-c.c | 179 +++++ common/x86/mc.h | 31 + common/x86/pixel-32.asm | 460 +++++++++++ common/x86/pixel-a.asm | 1711 ++++++++++++++++++++++++++++++++++++++++ common/x86/pixel.h | 103 +++ common/x86/predict-a.asm | 599 ++++++++++++++ common/x86/predict-c.c | 567 +++++++++++++ common/x86/predict.h | 31 + common/x86/quant-a.asm | 240 ++++++ common/x86/quant.h | 39 + common/x86/sad-a.asm | 974 +++++++++++++++++++++++ common/x86/x86inc-32.asm | 118 +++ common/x86/x86inc-64.asm | 286 +++++++ common/x86/x86inc.asm | 328 ++++++++ tools/checkasm.c | 104 ++- 60 files changed, 8666 insertions(+), 12928 deletions(-) commit 096b39036aad8d363b81e520ad13cee412b0e568 Author: Loren Merritt Date: Sun Mar 9 05:58:55 2008 -0600 git compatible version script version.sh | 21 ++++++++++++++------- 1 files changed, 14 insertions(+), 7 deletions(-) commit 397d1bf764246716772004fe7ac8583a82c2a8a5 Author: Loren Merritt Date: Sun Mar 2 17:53:01 2008 -0700 check for broken versions of yasm configure | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) commit 6e55e8a729d59130f479f22ea5d53852b1ae2e1f Author: Loren Merritt 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. encoder/analyse.c | 4 ++-- encoder/macroblock.c | 2 +- encoder/slicetype.c | 2 +- tools/checkasm.c | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) commit 233a760dc99fe8a6cc401b711ffb3a3c90f8a5fa Author: Loren Merritt Date: Sun Mar 2 16:12:57 2008 -0700 .gitignore .gitignore | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) commit 1cce7bbcecf5073b5624754d1c7cc0cdb8b65a6a Author: Loren Merritt 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 common/i386/dct-a.asm | 6 +++--- common/i386/deblock-a.asm | 22 +++++++++++----------- common/i386/i386inc.asm | 27 ++++++++++++--------------- common/i386/mc-a.asm | 8 ++++---- common/i386/mc-a2.asm | 6 +++--- common/i386/pixel-sse2.asm | 12 ++++++------ common/i386/predict-a.asm | 20 ++++++++++---------- common/i386/quant-a.asm | 2 +- 8 files changed, 50 insertions(+), 53 deletions(-) commit 01d7b8acc40243402d6d8feadecc1e4da0aa2b20 Author: Loren Merritt 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 common/amd64/predict-a.asm | 32 -------------------------------- common/i386/predict-c.c | 2 +- 2 files changed, 1 insertions(+), 33 deletions(-) commit bce7d0f272db32f741353672cc35e413c8581d41 Author: Loren Merritt 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 common/i386/mc-c.c | 40 +++++++++++++++------------ common/i386/mc.h | 3 +- common/i386/predict-c.c | 68 ++++++++++++++++++++++++++-------------------- common/i386/predict.h | 10 +++---- common/mc.c | 7 +--- common/predict.c | 30 +++------------------ 6 files changed, 71 insertions(+), 87 deletions(-) commit e4059f859e072ef5ac61c101897bcf67f76e27f1 Author: Loren Merritt 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 common/amd64/predict-a.asm | 109 +++++++++++++++++--- common/i386/predict-a.asm | 246 +++++++++++++++++++++++++++++++++++++++++--- common/i386/predict-c.c | 88 +++++++++------- common/i386/predict.h | 1 + common/predict.c | 8 ++- 5 files changed, 384 insertions(+), 68 deletions(-) commit c34e1098fec1b950f8265680daa6d3f98d361074 Author: Loren Merritt 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 common/amd64/predict-a.asm | 21 ++--- common/i386/dct-a.asm | 12 +-- common/i386/mc-a.asm | 26 +++--- common/i386/predict-a.asm | 192 ++++++++++++++++---------------------------- common/i386/quant-a.asm | 6 +- 5 files changed, 94 insertions(+), 163 deletions(-) commit 9da2facd2a45c20ff4a225fbbbcba0f3ad644457 Author: Loren Merritt 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 encoder/macroblock.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit c32cac21f5f634398ca7135a6f8e304c9ea528b4 Author: Loren Merritt 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 common/dct.c | 6 +- common/i386/dct-a.asm | 151 +++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 129 insertions(+), 28 deletions(-) commit 8f32196651ee0c8fa3659c84e78407602079e0f1 Author: Loren Merritt 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 tools/checkasm.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 56fca1c2a6a1338b28f4a1ba5cb3fbf2c6140974 Author: Loren Merritt 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 tools/checkasm.c | 59 ++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 42 insertions(+), 17 deletions(-) commit 641416d827085d80887a6a1dc21161c98616b7a0 Author: Loren Merritt 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 encoder/analyse.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit d4d76b9f2b3eea4fe1ec87baf3f7feed53fe27e1 Author: Loren Merritt 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 common/common.h | 12 ++++++------ common/frame.h | 3 ++- encoder/encoder.c | 13 ++++++------- encoder/ratecontrol.c | 40 ++++++++++++++++++++-------------------- 4 files changed, 34 insertions(+), 34 deletions(-) commit ebdc49ffafe04f28381acea368c4c4926c0dfe24 Author: Loren Merritt 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 encoder/set.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit efeb097a791e8d082f82b17378176bf954a43984 Author: Loren Merritt 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 Makefile | 2 +- common/common.c | 64 +-------- common/common.h | 2 - common/csp.c | 371 ----------------------------------------------------- common/csp.h | 38 ------ common/frame.c | 48 ++++--- common/frame.h | 2 +- encoder/encoder.c | 4 +- x264.h | 3 +- 9 files changed, 41 insertions(+), 493 deletions(-) commit c1940b923740ef2e75dade431bc47f0c633e5af7 Author: Loren Merritt 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 tools/checkasm.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) commit ea9eaa7086e4262405b3aff047da621b6edc8814 Author: Loren Merritt 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 encoder/me.c | 10 +--------- 1 files changed, 1 insertions(+), 9 deletions(-) commit a93d7bf14049affb0ef925ba8e0f7f919693bca9 Author: Loren Merritt 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 common/set.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) commit 6f9cb0d93cb51d19c7e50e03b2d08f570bbef087 Author: Loren Merritt 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 matroska.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit fa58b842b47a5e7fd3ac91d8141e800ecdbab0c7 Author: Loren Merritt 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 common/frame.c | 2 +- common/pixel.c | 47 +++++++++++++++++++++ common/pixel.h | 8 +++- encoder/analyse.c | 2 +- encoder/encoder.c | 16 +++++-- encoder/me.c | 118 +++++++++++++++++++++++++++++++++++++++++++++------- x264.c | 3 +- x264.h | 3 +- 8 files changed, 172 insertions(+), 27 deletions(-) commit 2c437ce15c167def5ff0b98759bed56000d782ca Author: Loren Merritt 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 encoder/cabac.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit c111a8e2cf2993551c859bfb8459409b0749294e Author: Loren Merritt 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 encoder/analyse.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 3ef36bcf151b4231b2853e770c4a1f208964f046 Author: Loren Merritt 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 encoder/analyse.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 47ea39dc0e5df989776f7d5a78cb9033fbd72947 Author: Loren Merritt 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 common/cabac.c | 41 ++++++++++++++++++----------------------- common/cabac.h | 4 ++-- encoder/cabac.c | 5 ++--- encoder/encoder.c | 16 ++++------------ encoder/rdo.c | 4 ++-- 5 files changed, 28 insertions(+), 42 deletions(-) commit 6cbea64acf3e6641600e7ac04789989ae61ceaf3 Author: Loren Merritt 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 common/macroblock.h | 70 ++++++++++++++++++++++++++------------------------ common/osdep.h | 2 + 2 files changed, 38 insertions(+), 34 deletions(-) commit 573314cce458b5689aa768a4667927b5affdf0f8 Author: Loren Merritt 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 configure | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) commit 41d021e339d1ace8bbce7b3bd2cc04eea7385589 Author: Loren Merritt 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 encoder/encoder.c | 2 +- encoder/set.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 5d3a62a22c15fc2a5a8e45a6ecf8e2745066a55b Author: Guillaume Poirier 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 common/cpu.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 85d88a4260abe6bd931e749a6e0a98cd37020b05 Author: Loren Merritt 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 common/amd64/deblock-a.asm | 4 +++- common/amd64/pixel-a.asm | 16 ++++++++++------ common/amd64/pixel-sse2.asm | 4 ++-- common/i386/pixel-sse2.asm | 4 ++-- common/mc.c | 2 +- 5 files changed, 18 insertions(+), 12 deletions(-) commit 810c096dcb7f9b571540200a32e89b31ee964cca Author: Loren Merritt 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 encoder/analyse.c | 2 +- encoder/me.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit fd9ab6cee508192fe53ffaa52d3d7586004808fa Author: Loren Merritt 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 common/amd64/pixel-a.asm | 228 +++++++++++++++++++++++++++++++++++++----- common/i386/pixel-a.asm | 246 ++++++++++++++++++++++++++++++++++++++-------- common/i386/pixel.h | 19 +++- common/pixel.c | 67 ++++++++----- common/pixel.h | 6 +- encoder/analyse.c | 17 +++- encoder/me.c | 54 +++++------ encoder/me.h | 2 + tools/checkasm.c | 21 +++-- 9 files changed, 519 insertions(+), 141 deletions(-) commit 9f38e6044c4e4a97af6af1dce6689a32603cf40f Author: Loren Merritt 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 encoder/me.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit eb978d2202e2b99bdb3c73659470c0a9a312255d Author: Guillaume Poirier 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 common/cpu.c | 2 +- common/osdep.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 96a59591e1190a3b4dbcbae79f9b150f09977427 Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 22 ++++++++++------------ common/i386/pixel-sse2.asm | 22 ++++++++++------------ 2 files changed, 20 insertions(+), 24 deletions(-) commit 22fbdf34f4b4fd6a7f7758792b63bb0db7f7c49e Author: Loren Merritt 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 common/common.h | 1 - common/macroblock.c | 42 ++++++++++++++++++++++++++++++------------ common/macroblock.h | 2 +- encoder/analyse.c | 11 ++--------- encoder/cabac.c | 2 +- encoder/cavlc.c | 2 +- 6 files changed, 35 insertions(+), 25 deletions(-) commit 0d0bbedf31c8c393909454a6035500564efbafda Author: Guillaume Poirier 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 tools/checkasm.c | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 61 insertions(+), 0 deletions(-) commit 9fb4e53f4cbf65d5386da7f3321ddcaf8f5250d3 Author: Guillaume Poirier 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 common/dct.c | 16 ++++++++ common/ppc/dct.c | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ common/ppc/dct.h | 6 +++ 3 files changed, 125 insertions(+), 0 deletions(-) commit 795c3c1c2a4f5d4d2ef9025583a21ab400439fa6 Author: Guillaume Poirier 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 Makefile | 3 +- common/ppc/ppccommon.h | 5 +++ common/ppc/predict.c | 90 ++++++++++++++++++++++++++++++++++++++++++++++++ common/ppc/predict.h | 28 +++++++++++++++ common/predict.c | 10 +++++ 5 files changed, 135 insertions(+), 1 deletions(-) commit fec04825ea98af0420fdf11cf0a2b5a268371590 Author: Loren Merritt 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 common/i386/i386inc.asm | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 2eb91cc12b9db4adb546f990f383265720a822ce Author: Loren Merritt 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 common/amd64/amd64inc.asm | 4 ++-- common/i386/i386inc.asm | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) commit b21b675b714735de723d7d2e5602e11f75644c41 Author: Loren Merritt 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit cda2dead4d316f2b1015a9cbb37765ad7eb57a13 Author: Loren Merritt 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 common/bs.h | 4 ++-- common/dct.h | 6 +++--- common/macroblock.h | 20 ++++++++++---------- common/pixel.h | 2 +- common/predict.h | 6 +++--- common/vlc.h | 4 ++-- encoder/macroblock.c | 2 +- encoder/rdo.c | 2 +- encoder/set.c | 2 +- 9 files changed, 24 insertions(+), 24 deletions(-) commit 4b199a95c2df54707186d3fab1b8c9511cfe0458 Author: Loren Merritt 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 encoder/me.c | 28 ++++++++++++++++++---------- 1 files changed, 18 insertions(+), 10 deletions(-) commit f72092d59eeb212bb6db98796c797b53d1f3d966 Author: Loren Merritt 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 common/frame.h | 1 + common/macroblock.c | 31 ++++++++++++++++++++----------- 2 files changed, 21 insertions(+), 11 deletions(-) commit c0b1b1af1cc30fe9ae7ad46e5c1ccd7640ceb889 Author: Loren Merritt 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 encoder/me.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) commit 3c9aac03ba992811e8cbddf26c76cb6de3cbdcdb Author: Loren Merritt 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 common/macroblock.c | 5 +---- 1 files changed, 1 insertions(+), 4 deletions(-) commit beeedbd05790c7205e046d8b36ee19b7fd3a07ea Author: Loren Merritt 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 configure | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit ebd03d46126b828de6cc30e7d45a6ec4f0caa1d1 Author: Guillaume Poirier 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 common/amd64/amd64inc.asm | 11 +++++++++++ common/amd64/dct-a.asm | 2 +- common/amd64/deblock-a.asm | 2 +- common/amd64/mc-a.asm | 3 +-- common/amd64/mc-a2.asm | 3 +-- common/amd64/pixel-sse2.asm | 2 +- common/amd64/predict-a.asm | 3 +-- common/amd64/quant-a.asm | 2 +- configure | 8 +++++++- 9 files changed, 25 insertions(+), 11 deletions(-) commit b5c805e343923f7d12c8bb09cd64682584dc9ca6 Author: Loren Merritt 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 Makefile | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) commit d4493c32b2d6f1eee5b7df0026a31562665bff07 Author: Guillaume Poirier 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 common/ppc/pixel.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 50 insertions(+), 0 deletions(-) commit a2db19e6ca89f40b2523f6964832c69369a3ee29 Author: Loren Merritt 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 encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 6d6092197676cf4949bff2a1e28a79aa1bbab1ea Author: Loren Merritt 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 common/amd64/amd64inc.asm | 9 + common/amd64/pixel-sse2.asm | 293 ++++++++++++++++++++++++++++---- common/frame.c | 6 + common/i386/i386inc.asm | 9 + common/i386/pixel-sse2.asm | 398 +++++++++++++++++++++++++++++++++++++++---- common/i386/pixel.h | 104 ++++------- common/pixel.c | 49 ++++++ tools/checkasm.c | 94 ++++++---- 8 files changed, 794 insertions(+), 168 deletions(-) commit 1dddea2512490c558b82888ccd7497800e5c7766 Author: Loren Merritt 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 common/cpu.c | 90 +++++++++++++++++++++++++++++++---------------------- encoder/encoder.c | 6 +++- x264.h | 5 ++- 3 files changed, 62 insertions(+), 39 deletions(-) commit 1cab251509f48fd605616c0c2d1c769552abbc71 Author: Loren Merritt 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 common/amd64/mc-a.asm | 48 +++++++++++++++++++---------------------- common/i386/mc-a.asm | 20 ++++++++-------- common/i386/mc-c.c | 8 +++--- common/macroblock.c | 56 ++++++++++++++++++++++++------------------------ common/mc.c | 18 +++++++------- common/mc.h | 6 ++-- common/ppc/mc.c | 24 ++++++++++---------- encoder/analyse.c | 50 ++++++++++++++++++++++--------------------- encoder/macroblock.c | 20 ++++++++-------- encoder/me.c | 20 ++++++++-------- encoder/slicetype.c | 4 +- tools/checkasm.c | 38 ++++++++++++++++++++++++-------- 12 files changed, 164 insertions(+), 148 deletions(-) commit 4611e5ca14ba407aa7aa8e00cfeedc822a504c3a Author: Loren Merritt 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 common/amd64/mc-a.asm | 258 ++++++++++++++++++++---------------- common/i386/mc-a.asm | 359 ++++++++++++++++++++++--------------------------- common/i386/mc-c.c | 53 +++----- 3 files changed, 327 insertions(+), 343 deletions(-) commit edf284268a60110e0ce0474f0b4e3fb772c6935f Author: Guillaume Poirier 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 common/ppc/pixel.c | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) commit b9eb9117a8f028ec5b727587c823a1c2ae83509e Author: Guillaume Poirier 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 common/ppc/mc.c | 222 ++++++++++++++++++++++++++++++++++++++++++++++++ common/ppc/ppccommon.h | 10 ++ common/ppc/quant.c | 10 -- 3 files changed, 232 insertions(+), 10 deletions(-) commit 370e10918eaab9cdfb101c8cadacbd8549434558 Author: Loren Merritt 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 common/pixel.c | 86 +++++++++++++++++++++----------------------------------- 1 files changed, 32 insertions(+), 54 deletions(-) commit a6ed1528c30883cb7ee36bc6046809095cae7a1c Author: Loren Merritt 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 common/amd64/pixel-a.asm | 38 -------------------------------------- common/i386/pixel-a.asm | 32 -------------------------------- common/i386/pixel.h | 4 ---- common/pixel.c | 4 ---- common/pixel.h | 6 ------ 5 files changed, 0 insertions(+), 84 deletions(-) commit 9f6f0b25d41263d3081a21d1d9bae853a1ec8329 Author: Loren Merritt 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 common/frame.c | 3 --- common/frame.h | 4 ++++ common/mc.c | 14 +++++++------- encoder/me.c | 2 +- 4 files changed, 12 insertions(+), 11 deletions(-) commit 5324ae5fc9eb5c318ad5e3136d3aca4dd4ae7831 Author: Loren Merritt 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 common/i386/mc-c.c | 3 +++ common/mc.c | 46 +++++++++++++--------------------------------- common/mc.h | 3 +++ 3 files changed, 19 insertions(+), 33 deletions(-) commit 131603a5579f5dc36388d7e1b6edf1594a2bb039 Author: Loren Merritt 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 common/frame.c | 14 ++++++-------- common/frame.h | 12 +++++++----- common/mc.c | 14 ++++++++------ encoder/encoder.c | 4 ++-- 4 files changed, 23 insertions(+), 21 deletions(-) commit a22fe12c4358ee3bbe205cf6dfded782eedd3886 Author: Guillaume Poirier 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 common/dct.c | 4 ++ common/ppc/dct.c | 94 +++++++++++++++++++++++++++++++++++++++++++++++- common/ppc/dct.h | 4 ++ common/ppc/ppccommon.h | 2 +- 4 files changed, 102 insertions(+), 2 deletions(-) commit ebf8b1ea0e217f05c9efede19c5cdab89ec13aab Author: Guillaume Poirier 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 common/ppc/quant.c | 133 ++++++++++++++++++++++++++++++++++++++++++++++++++++ common/ppc/quant.h | 3 + common/quant.c | 3 + 3 files changed, 139 insertions(+), 0 deletions(-) commit 1d22eba0d87412862692b2ce1e85c34b89c23a9b Author: Guillaume Poirier 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 common/ppc/quant.c | 135 ++++++++++++++++++++++++++++++++++------------------ common/ppc/quant.h | 7 ++- common/quant.c | 9 ++++ 3 files changed, 101 insertions(+), 50 deletions(-) commit 0fabcd46823bc8dd3f19d98f23452dba1a8b7cbc Author: Loren Merritt 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 encoder/me.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 7da80e549051583d23d8f503665c0fb660b695bb Author: Loren Merritt 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 encoder/me.c | 124 ++++++++++++++++++++++++---------------------------------- encoder/me.h | 9 ++++ 2 files changed, 60 insertions(+), 73 deletions(-) commit 35094bec4e0202cbdb710b98fa04ea24375531e0 Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 135 ++++++++++++++++++++++++++++++++++++++++++- common/pixel.c | 3 - 2 files changed, 133 insertions(+), 5 deletions(-) commit 673ce32a59310b5494049cce140e5420128331ed Author: Loren Merritt 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 common/common.h | 2 +- common/frame.c | 20 ++++++++-------- common/frame.h | 4 +- common/osdep.h | 63 +++++++++++++++++++++++++++++++--------------------- encoder/encoder.c | 6 ++-- muxers.c | 6 ++-- 6 files changed, 56 insertions(+), 45 deletions(-) commit 5c49545c0277a8da1c29809118a734c461116c54 Author: Loren Merritt 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 common/amd64/pixel-a.asm | 139 ++++++++++++++++++++++++++---------------- common/i386/pixel-a.asm | 149 ++++++++++++++++++++++++++++++---------------- 2 files changed, 183 insertions(+), 105 deletions(-) commit a6edfd669f97154571f203cfa69d634a639800ff Author: Loren Merritt 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 encoder/rdo.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 463437926e73b3d18542804cbef31f277d115cc2 Author: Loren Merritt 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 common/mc.c | 35 ++++++++++++++++++++--------------- encoder/encoder.c | 5 ----- 2 files changed, 20 insertions(+), 20 deletions(-) commit cde5f334121ba1cf6ae13174337ae49008c1f2a4 Author: Loren Merritt 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 common/common.h | 2 +- encoder/ratecontrol.c | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) commit d16a4da48b06671e85578ee022729bb2fb6f59c9 Author: Loren Merritt 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 encoder/ratecontrol.c | 2 ++ x264.h | 2 +- 2 files changed, 3 insertions(+), 1 deletions(-) commit 98494077449c4a66ed55cd5ee5a89b7c62e12dd0 Author: Loren Merritt 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 configure | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 759620535bccdb4d872fcc3b798eb6df68c672db Author: Loren Merritt 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 common/common.h | 2 +- common/osdep.h | 8 ++++---- muxers.c | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) commit 71af28517442b4388c031d1ce74fa5096beca9bf Author: Loren Merritt 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 configure | 14 ++++---------- 1 files changed, 4 insertions(+), 10 deletions(-) commit 393daac2d7578e0a9d7d541f25026f22f62d03bc Author: Loren Merritt 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 configure | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) commit 113800851647deafdacc9a35ee8a1a761f1c777d Author: Loïc Minier 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 config.sub | 1622 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure | 192 ++++---- 2 files changed, 1728 insertions(+), 86 deletions(-) commit 3d51a5ba7966542355f0e3904f6e8319b9ba55c2 Author: Loïc Minier 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 config.guess | 32 ++++++++++++++++++++++++-------- 1 files changed, 24 insertions(+), 8 deletions(-) commit 0ea7d1b2ecb6d744c0af674e7b3b8f85eabf3aaa Author: Loren Merritt 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 common/osdep.h | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) commit 85f2fc3252f0fae8031fa9e942577d121cb75cd1 Author: Loren Merritt 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 common/cabac.c | 3 - common/common.c | 2 - common/common.h | 72 ++------------------------------ common/cpu.c | 2 - common/csp.c | 3 - common/frame.c | 6 --- common/macroblock.c | 3 - common/mc.c | 3 - common/mdate.c | 8 +--- common/osdep.h | 108 +++++++++++++++++++++++++++++++++++++++++++++++++ common/pixel.c | 2 - common/set.c | 2 - common/visualize.c | 8 ---- encoder/analyse.c | 2 - encoder/cabac.c | 3 - encoder/cavlc.c | 3 - encoder/encoder.c | 2 - encoder/macroblock.c | 3 - encoder/me.c | 3 - encoder/ratecontrol.c | 15 ------- encoder/set.c | 2 - encoder/slicetype.c | 1 - matroska.c | 12 +----- muxers.c | 7 +--- muxers.h | 6 --- tools/checkasm.c | 2 - x264.c | 16 +------ 27 files changed, 120 insertions(+), 179 deletions(-) commit a18f3dab89e6786233c11723900f8b0126e1494d Author: Loren Merritt 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 common/common.c | 11 ++++- encoder/encoder.c | 8 ++- encoder/ratecontrol.c | 105 +++++++++++++++++++++++++++++++++++++++--------- encoder/set.c | 8 ++- x264.h | 12 ++++-- 5 files changed, 111 insertions(+), 33 deletions(-) commit d5ddf40b1ae1c267ea3f9e998d6ac1e3a4004e07 Author: Loren Merritt 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 common/common.h | 12 ++++++++---- common/cpu.c | 2 +- common/i386/mc-c.c | 5 ++--- common/mc.c | 9 +++------ configure | 2 +- encoder/me.c | 6 +++--- muxers.c | 42 +++++++++++++++--------------------------- x264.c | 5 +---- 8 files changed, 34 insertions(+), 49 deletions(-) commit ee62378f91c3cfcc028e771b8bc998b4490cc8a1 Author: Loren Merritt 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 encoder/analyse.c | 7 +++++-- encoder/encoder.c | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) commit 303175413b0f1f38d488c7decbce9d7ccb81f647 Author: Guillaume Poirier 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 Makefile | 2 +- common/frame.c | 13 ++ common/ppc/deblock.c | 304 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 318 insertions(+), 1 deletions(-) commit 9acd233b21bb1c0808b2f4c4c100511b3d6d45a1 Author: Loren Merritt 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 configure | 11 +++++------ encoder/encoder.c | 5 +++-- 2 files changed, 8 insertions(+), 8 deletions(-) commit 80090ccfb3493659451c21506d77dcacda6bcab2 Author: Loren Merritt 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 common/cpu.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit fedfacea656db5a327fba0c449fe70181539f876 Author: Loren Merritt 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 encoder/encoder.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) commit 17dd119d8275224ad7f830dcdf4a5458150fcd31 Author: Alex Izvorski 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 Makefile | 4 ++++ common/cpu.c | 6 +----- configure | 14 ++++++++------ 3 files changed, 13 insertions(+), 11 deletions(-) commit 26bed72be4941353b4c79eddf500ce39aaf75490 Author: Alex Izvorski 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 build/win32/libx264.vcproj | 28 ---------------------------- common/frame.c | 2 ++ encoder/analyse.c | 2 ++ extras/getopt.c | 16 +++++++++++++++- 4 files changed, 19 insertions(+), 29 deletions(-) commit a35548661f5f50c22516147b9b164f25d44a69db Author: Alex Izvorski 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 common/common.h | 7 ------- common/pixel.c | 6 ++++-- encoder/me.c | 4 +++- 3 files changed, 7 insertions(+), 10 deletions(-) commit ffa4e76d4573303271c768f6ec03c21f0f2f4f02 Author: Loren Merritt 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 common/common.c | 2 +- encoder/encoder.c | 2 +- x264.h | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) commit b5ef788a7c6d2c7ba2cdb664ffd5544603979495 Author: Loren Merritt 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 common/common.h | 1 + common/frame.c | 59 +++++++++++++++++++++++++++++++++++++++++--------- common/macroblock.c | 2 + 3 files changed, 51 insertions(+), 11 deletions(-) commit 08b4f6956135d54693b4e618f58fd7f68e654473 Author: Loren Merritt 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 encoder/encoder.c | 14 ++++---------- 1 files changed, 4 insertions(+), 10 deletions(-) commit fe85aca1c58ef4975aee8e6e32b4d57624960367 Author: Loren Merritt 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 common/cabac.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b3076aef6c40f10260ef7386e3f2e028997da5d5 Author: Loren Merritt 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 common/cabac.c | 190 +++++++++++++++++++--------------------------------- common/cabac.h | 18 ++--- encoder/cabac.c | 27 ++++---- encoder/encoder.c | 4 +- 4 files changed, 92 insertions(+), 147 deletions(-) commit 8300d3344b73612ec449a2c2ee259c654fef9d0a Author: Loren Merritt 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 common/common.h | 2 +- encoder/encoder.c | 1 - 2 files changed, 1 insertions(+), 2 deletions(-) commit 8ecf4b912011e9a097d570086553f4685d5dddc5 Author: Loren Merritt 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 common/amd64/quant-a.asm | 5 ++--- common/i386/quant-a.asm | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) commit c266480eb24e7886877f52436056e99fced02cdc Author: Loren Merritt 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 common/cabac.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) commit 2f66c11a4eeb17950b3aee18cc105572e860ec44 Author: Loren Merritt 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 encoder/cabac.c | 10 +++++++++- encoder/rdo.c | 29 +++++++++++++++++------------ 2 files changed, 26 insertions(+), 13 deletions(-) commit 3e7b136c8525f73f6e01be260adbfc15c34503d7 Author: Loren Merritt 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 common/cpu.h | 14 ++++++++++++++ common/i386/cpu-a.asm | 16 ++++++++++++++++ encoder/encoder.c | 6 ++---- 3 files changed, 32 insertions(+), 4 deletions(-) commit 84676d2eba9fc18d62e168b60d7d1118d1c232d3 Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 1 - common/i386/i386inc.asm | 4 +- common/i386/pixel-sse2.asm | 49 +++++++++++++++++++++++------------------- common/pixel.c | 4 ++- configure | 7 +++-- 5 files changed, 36 insertions(+), 29 deletions(-) commit 71c097b28e1405076f554d3b948885fd69c1774f Author: Loren Merritt 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 encoder/rdo.c | 46 ++++++++++++++++++++++++++++------------------ 1 files changed, 28 insertions(+), 18 deletions(-) commit 12681eea55239d21eb8ce0ca058c5d859afedc9f Author: Loren Merritt 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 common/set.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 10265a0c2a0b29e6252ad3be6fad1569e7a04339 Author: Loren Merritt 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 common/amd64/quant-a.asm | 425 +++++++--------------------------------------- common/common.h | 9 +- common/i386/quant-a.asm | 373 +++++++++++----------------------------- common/i386/quant.h | 44 +---- common/quant.c | 152 +++++------------ common/quant.h | 8 +- common/set.c | 53 +++++- common/set.h | 2 +- encoder/encoder.c | 16 ++- encoder/macroblock.c | 70 ++------ encoder/rdo.c | 10 +- tools/checkasm.c | 103 ++++-------- 12 files changed, 338 insertions(+), 927 deletions(-) commit b37ac36e8442dd8fd8f25933b6a0a119d471e8f7 Author: Loren Merritt 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 encoder/macroblock.c | 25 +++---------------------- 1 files changed, 3 insertions(+), 22 deletions(-) commit e3a07e098f96dfc2dbde8da6cad77ed012d4397e Author: Loren Merritt 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 common/amd64/amd64inc.asm | 2 + common/amd64/cpu-a.asm | 13 +---- common/amd64/dct-a.asm | 36 ++----------- common/amd64/deblock-a.asm | 24 ++------ common/amd64/mc-a.asm | 66 +++++------------------ common/amd64/mc-a2.asm | 10 +--- common/amd64/pixel-a.asm | 104 ++++++------------------------------- common/amd64/pixel-sse2.asm | 66 +++++------------------ common/amd64/predict-a.asm | 89 ++++++------------------------- common/amd64/quant-a.asm | 74 +++++++------------------- common/i386/cpu-a.asm | 13 +---- common/i386/dct-a.asm | 40 +++----------- common/i386/deblock-a.asm | 24 ++------ common/i386/i386inc.asm | 2 + common/i386/mc-a.asm | 64 +++++----------------- common/i386/mc-a2.asm | 10 +--- common/i386/pixel-a.asm | 121 ++++++++----------------------------------- common/i386/pixel-sse2.asm | 55 ++++--------------- common/i386/predict-a.asm | 66 +++++------------------- common/i386/quant-a.asm | 61 ++++++---------------- 20 files changed, 201 insertions(+), 739 deletions(-) commit 71943e8acbfdb85d944f2800e49bcb7902afaaf3 Author: Alex Izvorski 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 x264.h | 24 ++++++++++++------------ 1 files changed, 12 insertions(+), 12 deletions(-) commit dfb854775c7b52945a84ef756dc88a4ccb7c2d2c Author: Loren Merritt 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 common/amd64/amd64inc.asm | 10 ++++++ common/amd64/mc-a.asm | 51 +++++++++++++++++++++++++++------ common/i386/mc-a.asm | 68 ++++++++++++++++++++++++++++++++++++++------ common/i386/mc-c.c | 8 +++-- common/mc.h | 1 + common/ppc/mc.c | 9 ++++++ encoder/me.c | 20 ++++--------- 7 files changed, 130 insertions(+), 37 deletions(-) commit e63c3924ef2c9790aa6440fa11dddf1026862f23 Author: Christophe Mutricy 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 common/ppc/mc.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit dd7e21c6cba26298eac190abcb702b490bd98c5e Author: Loren Merritt 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 common/common.h | 8 ++++++++ configure | 2 +- x264.h | 13 ------------- 3 files changed, 9 insertions(+), 14 deletions(-) commit 87fdea89e007258c2d48156f14b883ef29c02831 Author: Loren Merritt 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 encoder/encoder.c | 6 +++--- x264.c | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) commit 8b37cc6aa5e23bf4a529b79745f73dedab1fa4ff Author: Loren Merritt 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 build/win32/libx264.dsp | 4 ++-- build/win32/libx264.vcproj | 6 +++--- build/win32/x264.dsp | 4 ++-- build/win32/x264.vcproj | 6 +++--- common/cpu.c | 3 +++ common/dct.c | 14 ++++++++------ common/frame.c | 4 ++-- common/mc.c | 8 +++----- common/pixel.c | 8 +++----- common/predict.c | 14 ++++++-------- common/quant.c | 6 +++--- configure | 4 ++-- tools/checkasm.c | 7 +++---- 13 files changed, 43 insertions(+), 45 deletions(-) commit 11ef32f432b8e055c30c99531e25320dbce8f656 Author: Sam Hocevar 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 common/ppc/quant.c | 14 ++++++++++++++ common/ppc/quant.h | 18 ------------------ configure | 1 - 3 files changed, 14 insertions(+), 19 deletions(-) commit 37ad2377b8781330d400985ce12a1ec61067a5e4 Author: Sam Hocevar 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 tools/checkasm.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) commit 8aef0e941d986f10427cc2d3a848162065bdef3a Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 117 +++++++++++++++++++++++++----------------- common/amd64/quant-a.asm | 90 ++++++++++++++++++++++++++++++++- common/cpu.c | 10 ++++ common/i386/pixel.h | 9 +++ common/i386/quant.h | 7 +++ common/pixel.c | 13 +++++ common/quant.c | 15 ++++++ configure | 20 +++++++ encoder/encoder.c | 1 + tools/checkasm.c | 17 +++++- x264.h | 2 + 11 files changed, 250 insertions(+), 51 deletions(-) commit 1980de9bba111561be5ad3dde37b6f7a29a80a4e Author: Sam Hocevar Date: Wed Mar 14 20:40:24 2007 +0000 * Use -maltivec when building dependencies, or 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 Makefile | 2 +- common/ppc/quant.h | 6 +++++- configure | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) commit e1a4ae9ef58f461aa8ca1e0a1f88140a61d03680 Author: Sam Hocevar 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 Makefile | 6 ++++-- common/cpu.c | 36 +++++++++++++++++++++++++++++++++++- configure | 5 +++-- 3 files changed, 42 insertions(+), 5 deletions(-) commit f81c3eafa27ad90a02c1d87a9f74b509199ddb63 Author: Loren Merritt 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 muxers.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) commit 62fc8a9c507166baaf104e69fd4c055d41fb0dce Author: Guillaume Poirier 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 common/ppc/dct.c | 8 ++++---- common/ppc/ppccommon.h | 13 +++++++------ 2 files changed, 11 insertions(+), 10 deletions(-) commit 89930744ed6921c5dfb0ffdfad2ca6059b2e6c6a Author: Loren Merritt 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 Makefile | 10 ++++++++-- tools/regression-test.pl | 14 ++++++-------- 2 files changed, 14 insertions(+), 10 deletions(-) commit 6e1bbd2ff961ee51d8a5bd566784f19fb194c028 Author: Alex Izvorski 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 Makefile | 13 ++- tools/regression-test.pl | 304 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 315 insertions(+), 2 deletions(-) commit 435b675bac7e89d34644affd69bf88a82ddc9242 Author: Alex Izvorski 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 Doxyfile | 269 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Makefile | 5 +- 2 files changed, 273 insertions(+), 1 deletions(-) commit dac2be0cc94b897749381135e248cd1844f58fda Author: Loren Merritt 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 encoder/encoder.c | 8 ++++++-- encoder/slicetype.c | 7 +++++-- 2 files changed, 11 insertions(+), 4 deletions(-) commit 49d16d48a132b3de8b80a59752e95dbe896e7477 Author: Loren Merritt 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 extras/getopt.c | 1448 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 1002 insertions(+), 446 deletions(-) commit 972172560df8efb3d2162938526b3a3c812710a4 Author: Guillaume Poirier 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 common/ppc/dct.c | 26 +++++++++++++------------- common/ppc/quant.c | 49 +++++++++++++++++++++++-------------------------- common/ppc/quant.h | 11 +++++++---- 3 files changed, 43 insertions(+), 43 deletions(-) commit c9cd0fce3fcdb83fee9a49987abaa9983b4d1cf4 Author: Loren Merritt 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 encoder/cavlc.c | 50 ++++++++++++++++++-------------------------------- 1 files changed, 18 insertions(+), 32 deletions(-) commit 4c949c31a111c461b0362409baaff4550b7f664f Author: Loren Merritt 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 encoder/macroblock.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit cf9e6c5c0ea4771da523d1a95517b2276cca6cf1 Author: Loren Merritt 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 encoder/macroblock.c | 22 +++++++++++----------- encoder/macroblock.h | 7 +++++-- 2 files changed, 16 insertions(+), 13 deletions(-) commit 285f98e197be56efde6b2c42832625193c432c54 Author: Christophe Mutricy 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 configure | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 0fe97f423591939454ac7d272fe5fb5dde837b3f Author: Eric Petit 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 Makefile | 2 +- configure | 17 +++++++++++++++-- 2 files changed, 16 insertions(+), 3 deletions(-) commit bbc68bea7c30988d9f59e2ac99f88f9188f65654 Author: Eric Petit 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 configure | 15 +++++++++++++++ 1 files changed, 15 insertions(+), 0 deletions(-) commit b630af6c4af3118453d91aae75d2e61c513f2010 Author: Loren Merritt 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 common/common.h | 4 ++-- encoder/encoder.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) commit 01e1db245d0c1c6119a8316994f2083c6096811a Author: Loren Merritt 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 common/common.h | 1 + common/frame.c | 16 +++++++--------- common/frame.h | 2 +- encoder/encoder.c | 5 ++--- 4 files changed, 11 insertions(+), 13 deletions(-) commit 34c6fb35ac799907caed6ad1cbbc287136c6b6c6 Author: Loren Merritt 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 encoder/encoder.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit dfe7bb017bface15c9ed47ab5924062300a79e5c Author: Loren Merritt 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ab3b6602d733c9382a17b9e20a4478efd7ae5994 Author: Loren Merritt 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 common/cpu.c | 10 ++++------ 1 files changed, 4 insertions(+), 6 deletions(-) commit cc753d6ba6634cfeee9c8b461bc996adf7e1aee6 Author: Loren Merritt 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 common/frame.c | 80 +++++++++++++++++++++++++++++++++++++ common/frame.h | 10 +++++ encoder/encoder.c | 114 +++++++++-------------------------------------------- 3 files changed, 109 insertions(+), 95 deletions(-) commit 87f1430384a1c61035a4ca595e5defecf4b64cb8 Author: Loren Merritt 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 common/common.h | 24 ++++++++++++++++-------- common/frame.c | 35 +++++++++++++++++++++++++++++++++++ common/frame.h | 5 +++++ configure | 41 +++++++++++++++++++++-------------------- encoder/analyse.c | 5 +---- encoder/encoder.c | 2 +- x264.c | 15 ++++++++++++++- 7 files changed, 93 insertions(+), 34 deletions(-) commit 7b4f6a1fd95c7e0ab479e116fe59e66e5d1fd107 Author: Loren Merritt 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 common/amd64/mc-a2.asm | 2 +- common/common.c | 17 +- common/common.h | 24 ++- common/frame.c | 68 ++++--- common/frame.h | 13 +- common/i386/mc-a2.asm | 2 +- common/macroblock.c | 47 ++++- common/mc.c | 31 ++-- doc/threads.txt | 70 ++++++ encoder/analyse.c | 83 ++++++- encoder/encoder.c | 572 ++++++++++++++++++++++++++++-------------------- encoder/me.c | 49 +++-- encoder/ratecontrol.c | 258 +++++++++++++--------- encoder/ratecontrol.h | 4 +- encoder/slicetype.c | 223 ++++++++++++------- x264.c | 11 +- x264.h | 5 +- 17 files changed, 977 insertions(+), 502 deletions(-) commit fa2c1e5430619c6011dfe2ffbebbd59557afa228 Author: Sam Hocevar 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 common/cpu.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) commit 167abec138939a7475b481c6cf4a3738601f279a Author: Sam Hocevar 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 configure | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) commit e8cc72c7acc75df584cece7da9176eb4be6c9d36 Author: Guillaume Poirier 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 common/dct.c | 3 + common/ppc/dct.c | 135 ++++++++++++++++++++++++++++++++++++++++++++++++ common/ppc/dct.h | 4 ++ common/ppc/pixel.c | 144 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 286 insertions(+), 0 deletions(-) commit 575b238cb5e5bdb18b5541456d6eb4781bcd36d5 Author: Eric Petit 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 common/i386/i386inc.asm | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 4659f518e453250783fd13bedda8a8560e8d32a5 Author: Loren Merritt 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 encoder/ratecontrol.c | 13 ++++++++++++- 1 files changed, 12 insertions(+), 1 deletions(-) commit c494e9c5e22d0fbe30deb7f2c1b932ac9fb449b5 Author: Eric Petit 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 AUTHORS | 8 + Makefile | 3 +- common/dct.c | 3 + common/ppc/dct.c | 336 ++++++++++++++++++++++------------------------- common/ppc/dct.h | 5 + common/ppc/pixel.c | 3 +- common/ppc/ppccommon.h | 28 ++++ common/ppc/quant.c | 187 +++++++++++++++++++++++++++ common/ppc/quant.h | 39 ++++++ common/quant.c | 24 +++- encoder/macroblock.c | 22 ++-- tools/checkasm.c | 9 +- 12 files changed, 468 insertions(+), 199 deletions(-) commit 41c111bc13badf2f7fa71165c94d4b528213a8cd Author: Loren Merritt 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 common/amd64/deblock-a.asm | 97 ++++++++++++++++++++------------------------ common/i386/deblock-a.asm | 92 +++++++++++++++++------------------------ 2 files changed, 82 insertions(+), 107 deletions(-) commit 6eeb78f6a8bc0541ea68fb84ba41c456e56a2589 Author: Loren Merritt 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 tools/checkasm.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 485172deeb75ca1eb88ac24b6ab6719b8a16825b Author: Loren Merritt 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 encoder/ratecontrol.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) commit a9d754a37787daccdd88e4d08ec95f9b9ae59a8c Author: Loren Merritt 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 common/common.c | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) commit ccac553deccf9646fdc53728f91caa988ee09176 Author: Loren Merritt 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 common/common.h | 1 + encoder/analyse.c | 4 ++-- encoder/macroblock.c | 7 +++---- encoder/rdo.c | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) commit 94a4aede9033614fa810ec88ca92dcd39822b544 Author: Loren Merritt 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 common/macroblock.h | 3 --- encoder/analyse.c | 49 +++++++++++++++++++++++++++++++++++++++++++++---- encoder/cabac.c | 17 +++++++++++++++++ encoder/cavlc.c | 18 ++++++++++++++++++ encoder/macroblock.c | 33 +++++++++++++++------------------ encoder/macroblock.h | 3 +++ encoder/rdo.c | 25 +++++++++++++++++++++++++ 7 files changed, 123 insertions(+), 25 deletions(-) commit e7a4aba997a82cfd5c1d5217d413513d52b6af3e Author: Loren Merritt 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 tools/avc2avi.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 41b85c4fa872df880352024aa2d707b1813a4258 Author: Loren Merritt 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 encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 197a94a8cfff879ef3691eb178b5b617bda03ffb Author: Loren Merritt 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 common/pixel.c | 6 + encoder/analyse.c | 2 +- encoder/slicetype.c | 465 ++++++++++++++++++++++++++++++++++++++++++ encoder/slicetype_decision.c | 465 ------------------------------------------ x264.c | 2 +- 5 files changed, 473 insertions(+), 467 deletions(-) commit 93b54ce1fbbbb191e69d8c6e33897037ba5bbfd1 Author: Loren Merritt 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 common/common.c | 6 +++--- encoder/encoder.c | 4 ++-- encoder/ratecontrol.c | 4 ++-- x264.c | 2 +- x264.h | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) commit 8d1ebe2eeb30a204b588502d69d361ee85187821 Author: Loren Merritt 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 common/amd64/mc-a.asm | 49 ++++++++++++++++++++++++++++++++++++++++ common/frame.c | 2 + common/i386/mc-a.asm | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc-c.c | 5 ++++ common/macroblock.c | 13 ++++++++++ common/macroblock.h | 2 + common/mc.c | 10 ++++++++ common/mc.h | 7 +++++ encoder/analyse.c | 4 +++ 9 files changed, 151 insertions(+), 0 deletions(-) commit 9fadbd7b82a1bd785e206dfef81af066c7470a2f Author: Loren Merritt 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 encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 4107178cc2998dd37cca106898e16e833a99b50e Author: Loren Merritt 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 build/win32/libx264.dsp | 121 ------ common/cabac.h | 7 +- decoder/decoder.c | 772 --------------------------------- decoder/macroblock.c | 1097 ----------------------------------------------- decoder/macroblock.h | 34 -- decoder/set.c | 262 ----------- decoder/set.h | 33 -- decoder/vlc.c | 236 ---------- decoder/vlc.h | 46 -- x264.c | 2 +- x264.h | 4 +- 11 files changed, 6 insertions(+), 2608 deletions(-) commit 9243c844dfc47d6dea825a0a92bd8a990d6c3cac Author: Loren Merritt 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 common/common.h | 1 + common/macroblock.c | 3 +++ encoder/analyse.c | 40 +++++++++++++++++----------------------- encoder/macroblock.c | 18 ++++++------------ 4 files changed, 27 insertions(+), 35 deletions(-) commit 0a453377cdac1aa50a4f21be0ddfba2a93719603 Author: Loren Merritt 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 common/amd64/mc-a.asm | 61 ++++++++++++++++++++++++++++++++++++------------- 1 files changed, 45 insertions(+), 16 deletions(-) commit 42bb1b494e19732fb510fb42f30bf5ae0a66dd71 Author: Loren Merritt 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 common/amd64/mc-a2.asm | 5 +++-- common/i386/mc-a2.asm | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) commit 43e4162f3026f964d0bcf4502afe13cdaaa53f4d Author: Loren Merritt 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 common/amd64/mc-a2.asm | 408 +++++++++++++++++----------------------- common/i386/mc-a2.asm | 489 +++++++++++++++++++----------------------------- common/mc.c | 23 +-- 3 files changed, 370 insertions(+), 550 deletions(-) commit c485e7e75bf24036c9438467ba854bd17122e277 Author: Loren Merritt 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 common/amd64/mc-a2.asm | 143 +++++++++++++++++++---------------------------- 1 files changed, 58 insertions(+), 85 deletions(-) commit 299d3ed4ee3c8e875a428bf872bfe791a7ccd687 Author: Loren Merritt 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 common/amd64/mc-a2.asm | 55 +++++++++++++++++++++++ common/csp.c | 113 +++++++++++++++++++++++------------------------ common/csp.h | 13 ++---- common/frame.c | 36 ++------------- common/i386/mc-a2.asm | 61 ++++++++++++++++++++++++++ common/i386/mc-c.c | 3 + common/mc.c | 13 ++++++ common/mc.h | 3 + x264.h | 1 + 9 files changed, 200 insertions(+), 98 deletions(-) commit 9f05a7fdfc08e0279a825dc851b61c61063564b3 Author: Loren Merritt 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 Makefile | 6 +- configure | 22 - vfw/build/cygwin/Makefile | 127 ----- vfw/build/win32/bin/x264vfw.inf | 91 ---- vfw/build/win32/x264vfw.dsp | 137 ----- vfw/build/win32/x264vfw.dsw | 29 - vfw/codec.c | 453 ---------------- vfw/config.c | 1098 --------------------------------------- vfw/driverproc.c | 220 -------- vfw/driverproc.def | 8 - vfw/installer/win.bmp | Bin 26494 -> 0 bytes vfw/installer/x264-conf.nsi | 114 ---- vfw/installer/x264vfw.ico | Bin 6966 -> 0 bytes vfw/resource.h | 113 ---- vfw/resource.rc | 314 ----------- vfw/w32api/vfw.h | 209 -------- vfw/x264.bmp | Bin 12366 -> 0 bytes vfw/x264vfw.h | 168 ------ 18 files changed, 1 insertions(+), 3108 deletions(-) commit aabb91c80b714e9a8e2bbdca8beaf5655e9e9540 Author: Loren Merritt 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 gtk/Makefile | 38 ++++++++++------- gtk/fr.po | 58 +++++++++++++------------- gtk/x264_gtk.c | 81 ++++++++++++++++++++++++++++++------- gtk/x264_gtk.h | 4 +- gtk/x264_gtk_bitrate.c | 13 +++--- gtk/x264_gtk_encode_encode.c | 2 +- gtk/x264_gtk_encode_main_window.c | 2 +- 7 files changed, 129 insertions(+), 69 deletions(-) commit 90a9219545cf073847160933d1c7d3e9b761e909 Author: Loren Merritt 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 common/common.c | 36 +++++++++++++++++++----------------- 1 files changed, 19 insertions(+), 17 deletions(-) commit cb8b5dad7dc99c13e591aaf74b84b406ea80b69e Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 274 +++++++++++++----------------------------- common/i386/pixel-sse2.asm | 202 +++++++++++--------------------- 2 files changed, 154 insertions(+), 322 deletions(-) commit 04834f596bb9bec1e8afd7ab7b1eee74ad13df0a Author: Loren Merritt 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 common/common.c | 64 ++++++++++++++++++++++++++++++++++++++++++++++-------- x264.c | 15 +++++++----- x264.h | 12 ++++++---- 3 files changed, 70 insertions(+), 21 deletions(-) commit 0cbf0fc27bd391509d788ebb2e06b930bf840925 Author: Loren Merritt 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 encoder/analyse.c | 12 ++++++------ encoder/slicetype_decision.c | 14 +++++++------- tools/checkasm.c | 20 ++++++++++---------- 3 files changed, 23 insertions(+), 23 deletions(-) commit 58e12b0e792596ae4eac95df4ae358ca664a6c20 Author: Loren Merritt 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 common/amd64/mc-a.asm | 71 ++++++++++++++++++++---------------------------- 1 files changed, 30 insertions(+), 41 deletions(-) commit 6de50f51151c29331040f8c24bf3697c063fe0dd Author: Loren Merritt 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 Makefile | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit f9cc941183c0b190d09e030a30c537259c3e4088 Author: Loren Merritt 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 common/common.c | 3 +++ encoder/encoder.c | 3 +++ encoder/set.c | 11 +++++------ x264.c | 6 ++++++ x264.h | 5 +++-- 5 files changed, 20 insertions(+), 8 deletions(-) commit 8f0864a9f5755a02158cbb96c215afee95846639 Author: Loren Merritt 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 common/common.c | 8 ++++++++ common/common.h | 3 +++ encoder/encoder.c | 4 ++++ encoder/macroblock.c | 17 ++++++++++++----- x264.c | 5 +++++ x264.h | 3 +++ 6 files changed, 35 insertions(+), 5 deletions(-) commit a7cd9cf8ba99e4703805d34eef494d47850f9b99 Author: Loren Merritt 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 common/amd64/dct-a.asm | 24 +++++++ common/common.h | 1 + common/dct.c | 145 +++++++++++++++++++++++++++++++++++++++++ common/dct.h | 11 +++ common/i386/dct-a.asm | 35 ++++++++++ common/i386/dct.h | 3 + encoder/encoder.c | 1 + encoder/macroblock.c | 168 ++++++------------------------------------------ x264.h | 2 +- 9 files changed, 241 insertions(+), 149 deletions(-) commit faec300a71cdb64e1bd27d393de51d2e3d1f5992 Author: Loren Merritt 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 common/cabac.c | 2 +- common/cabac.h | 3 +- common/common.c | 2 + common/common.h | 20 ++++-- common/dct.c | 14 ++++ common/dct.h | 18 +---- common/frame.c | 156 +++++++++++++++++++++++++++------------ common/frame.h | 9 +- common/macroblock.c | 200 +++++++++++++++++++++++++++++++------------------- common/macroblock.h | 21 ++++-- common/mc.c | 11 ++- encoder/analyse.c | 26 ++++--- encoder/cabac.c | 101 +++++++++++++++---------- encoder/cavlc.c | 54 ++++++++------ encoder/encoder.c | 79 ++++++++++++++++---- encoder/macroblock.c | 164 ++++++++++++++++++++++++++++++++--------- encoder/rdo.c | 17 +++-- encoder/set.c | 25 ++++-- x264.c | 2 + x264.h | 2 + 20 files changed, 620 insertions(+), 306 deletions(-) commit 3b7857057005ebecc9852ef56c9f725d26b94bc4 Author: Loren Merritt 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 encoder/ratecontrol.c | 43 ++++++++++++++++++++++++++++++------------- 1 files changed, 30 insertions(+), 13 deletions(-) commit 7960eaf2451a445078a3c55b1ade5efc1948e02f Author: Loren Merritt 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 common/common.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 1b93c2a5cccb6ad7aedfd2746c671dcfffe60795 Author: Sam Hocevar 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 Makefile | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 52b8a0530721abb276c286d95a7827da3529baa4 Author: Loren Merritt 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 common/common.h | 6 ++++-- common/pixel.c | 4 ++-- encoder/me.c | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) commit 7bfc7360d713aa651b71691a9fb85f34104573e4 Author: Loren Merritt 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 common/i386/predict-a.asm | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) commit 460699ffdfaf263faaebd720c82475d1fb949279 Author: Loren Merritt 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 common/quant.c | 32 +++++++++++++++++--------------- 1 files changed, 17 insertions(+), 15 deletions(-) commit 55c208edb7e3a3ad54c1c1412577003b1eb13a69 Author: Loren Merritt 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 common/cabac.c | 2 +- common/common.h | 2 +- common/macroblock.c | 4 ++-- common/predict.c | 2 +- common/quant.c | 4 ++-- encoder/analyse.c | 8 ++++---- encoder/encoder.c | 4 ++-- encoder/set.c | 2 +- encoder/slicetype_decision.c | 2 +- x264.h | 2 +- 10 files changed, 16 insertions(+), 16 deletions(-) commit 8850b6faaf55b83ed3aa86ff9fcb5e35c439b236 Author: Loren Merritt 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 common/amd64/pixel-a.asm | 84 ++++++++++++++++++++++++++++++++++++++ common/i386/pixel-a.asm | 100 ++++++++++++++++++++++++++++++++++++++++++++++ common/i386/pixel.h | 7 +++ common/pixel.c | 45 +++++++++++++++++++++ common/pixel.h | 5 ++ encoder/me.c | 80 ++++++++++++++---------------------- tools/checkasm.c | 21 +++++++++- 7 files changed, 292 insertions(+), 50 deletions(-) commit f8652aab3dda281aa446ead0674d7e1f1c6d6e74 Author: Loren Merritt 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 common/frame.c | 2 +- common/mc.c | 28 +++++++++++-------- encoder/me.c | 83 +++++++++++++++++++++++++++++++++++++------------------ 3 files changed, 73 insertions(+), 40 deletions(-) commit a020d6ec4933d9f431be5bad429289b87efabe17 Author: Sam Hocevar 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 configure | 69 ++++++++++++++++++++++++++---------------------------------- 1 files changed, 30 insertions(+), 39 deletions(-) commit 477c5bfb641d0c662a98a3474c6a2a441476b5a1 Author: Sam Hocevar 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 config.guess | 1500 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 1500 insertions(+), 0 deletions(-) commit 4a5a03bbba8a8100d84bf5c30709eec133dda282 Author: Loren Merritt 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 73657d88d1e1371d684eea805fb88c008e44e96b Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) commit 1808700e26023fccfabec9e65ee7e4fb18ae57f2 Author: Steve Lhomme 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 common/common.h | 5 +++++ common/pixel.c | 5 ++--- 2 files changed, 7 insertions(+), 3 deletions(-) commit f78c224c21e991b55deb637d35b30b06a78d78da Author: Loren Merritt 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 common/macroblock.c | 2 +- encoder/analyse.c | 8 ++++---- encoder/encoder.c | 41 +++++++++++++++++++++++++++++------------ 3 files changed, 34 insertions(+), 17 deletions(-) commit 7760f1b2e78360542e31eb55db81e84dcb4f95ac Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 180 +++++++++++++++++++++++++++++++++++-------- common/common.c | 3 + common/common.h | 1 + common/i386/pixel-a.asm | 64 +++++++++++++++ common/i386/pixel-sse2.asm | 169 ++++++++++++++++++++++++++++++++++++---- common/i386/pixel.h | 6 ++ common/pixel.c | 83 ++++++++++++++++++++ common/pixel.h | 7 ++ encoder/encoder.c | 76 +++++++++++++------ tools/checkasm.c | 16 ++++ x264.c | 3 +- x264.h | 5 +- 12 files changed, 540 insertions(+), 73 deletions(-) commit 127e2fbf0a338549b00f6a3022ce1d2bab1d2acb Author: Loren Merritt 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 configure | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) commit dc5d530e13e0aa38218feb7c6c1fc4b75c0b7261 Author: Loren Merritt 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 common/common.h | 10 +++++----- common/frame.c | 4 ++-- common/macroblock.c | 10 ---------- common/macroblock.h | 8 +++++--- encoder/analyse.c | 4 ++-- encoder/encoder.c | 7 +++---- encoder/macroblock.c | 10 +++++----- encoder/ratecontrol.c | 12 ++---------- 8 files changed, 24 insertions(+), 41 deletions(-) commit 12bd065367f7aa0a4efc550dd595142d783a9525 Author: Loren Merritt 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 Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b3f15918ac03a0fc3b6fe1a8311fabedf5fa6b53 Author: Loren Merritt 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 x264.c | 413 +++++++++++++++++++++++++++++++--------------------------------- 1 files changed, 199 insertions(+), 214 deletions(-) commit 64a8b781013148bd351c2a45fdcb6a9aaf26ff4a Author: Loren Merritt 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 x264.c | 31 +++++++++++++++---------------- 1 files changed, 15 insertions(+), 16 deletions(-) commit de41ef2605bf1d5ded851888438a55a6bf66c42a Author: Loren Merritt 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 x264.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 1ff80a23db8912967238d1d9d4df2aebeeafbd1a Author: Eric Petit 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 common/cpu.c | 26 ++++++++++---------------- 1 files changed, 10 insertions(+), 16 deletions(-) commit 3493a54ddfd504fdd993c98a321916f98b96b09d Author: Eric Petit 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 common/cpu.c | 39 ++++++++++++++++++++++++++++++++------- 1 files changed, 32 insertions(+), 7 deletions(-) commit 86ec16c126168adbb6f615159e26065b4b0000a7 Author: Eric Petit 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 encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit eeebca20ad854271fab898f306f1657887ca6588 Author: Loren Merritt 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 encoder/ratecontrol.c | 35 ++++++++++++++++++----------------- 1 files changed, 18 insertions(+), 17 deletions(-) commit 9e9a869aa7dc3c39a883a5a5886c0bbd82e8b95c Author: Loren Merritt 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 Makefile | 2 +- common/common.c | 7 ++++++- common/cpu.c | 31 +++++++++++++++++++++++++++++++ common/cpu.h | 1 + encoder/encoder.c | 2 ++ 5 files changed, 41 insertions(+), 2 deletions(-) commit 0b07708cdab6c2f54673930c10d2908c53e19120 Author: Loren Merritt 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 common/common.c | 333 ++++++++++++++++++++++++++++++++ x264.c | 574 ++++++++++--------------------------------------------- x264.h | 17 ++- 3 files changed, 447 insertions(+), 477 deletions(-) commit 99b8471e5032bfab1f81cb04fb350ee6fa878561 Author: Loren Merritt 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 encoder/ratecontrol.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit adc4b4f85e3682bd4868df21babcea725c919bef Author: Loren Merritt 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 common/common.h | 12 ++++++------ common/set.c | 39 ++++++++++++++++++++++++++++++++++++++- common/set.h | 1 + encoder/encoder.c | 1 + 4 files changed, 46 insertions(+), 7 deletions(-) commit 75d6edb847722b1058914a2effcc6d47c5b7971a Author: Loren Merritt 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 Makefile | 12 +++- configure | 18 ++++++ gtk/Makefile | 55 ++++++++++++++---- gtk/fr.po | 112 +++++++++++++++++++---------------- gtk/test.c | 3 +- gtk/x264_gtk.c | 20 +++++- gtk/x264_gtk.h | 1 + gtk/x264_gtk_encode_status_window.c | 7 ++- gtk/x264_gtk_more.c | 8 +++ gtk/x264_gtk_private.h | 1 + 10 files changed, 167 insertions(+), 70 deletions(-) commit 4b2556f688c482e2cbda025a5468bb4853810f89 Author: Loren Merritt 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 x264.c | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 51 insertions(+), 6 deletions(-) commit b8692db2efa98c719332979f6dc8fc39af8f1eff Author: Loren Merritt 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 common/common.c | 16 ++++++++-------- encoder/analyse.c | 2 +- encoder/encoder.c | 24 +++++++++++++++--------- encoder/ratecontrol.c | 34 ++++++++++++++++++---------------- encoder/set.c | 4 ++-- vfw/codec.c | 5 +++-- x264.c | 4 +++- x264.h | 9 +++++++-- 8 files changed, 57 insertions(+), 41 deletions(-) commit 4e7bd4a1f038aeb538bfd07fc2d5ac67c041a0e9 Author: Loren Merritt 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 Makefile | 4 +- common/amd64/dct-a.asm | 58 ++++++++++++++++++++- common/i386/dct-a.asm | 118 ++++++++++++++++++++++++++++++++++++----- common/i386/dct-c.c | 135 ------------------------------------------------ 4 files changed, 161 insertions(+), 154 deletions(-) commit 637470c0dbbadf4b0d8b01c6c2179a4305f2b203 Author: Loren Merritt 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 configure | 5 +++++ encoder/ratecontrol.c | 5 ++++- 2 files changed, 9 insertions(+), 1 deletions(-) commit c6213d2fbb3b9a1a23c7cbe023080e98ee8e35a6 Author: Loren Merritt 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 common/amd64/mc-a.asm | 69 ++++++++++++++++++++++++++++++++++++++++++------ common/i386/mc-a.asm | 22 ++++++++++++--- common/mc.c | 23 +--------------- common/mc.h | 2 + common/ppc/mc.c | 41 +---------------------------- tools/checkasm.c | 10 +++++-- 6 files changed, 88 insertions(+), 79 deletions(-) commit eff6a5e204a9d9789b44d1ebf3de510f0f6d4334 Author: Måns Rullgård 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 Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 360853117fccdd082a6654c34c2c7dc2577f10cd Author: Loren Merritt 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 gtk/Makefile | 152 +++++-- gtk/fr.po | 895 +++++++++++++++++++++++++++++++++++ gtk/test.c | 17 +- gtk/x264_gtk.c | 425 ++++++++++++----- gtk/x264_gtk.h | 29 +- gtk/x264_gtk_bitrate.c | 81 +++- gtk/x264_gtk_cqm.c | 471 ++++++++++++++++++ gtk/x264_gtk_cqm.h | 8 + gtk/x264_gtk_encode.c | 11 + gtk/x264_gtk_encode_encode.c | 31 +- gtk/x264_gtk_encode_main_window.c | 142 ++++-- gtk/x264_gtk_encode_status_window.c | 41 +- gtk/x264_gtk_enum.h | 31 +- gtk/x264_gtk_i18n.h | 24 + gtk/x264_gtk_mb.c | 208 +++++++-- gtk/x264_gtk_more.c | 276 +++++++++--- gtk/x264_gtk_private.h | 37 ++- gtk/x264_gtk_rc.c | 215 +++++++-- 18 files changed, 2658 insertions(+), 436 deletions(-) commit 918c7ef4540f8741ecc23d74f227abd594986fba Author: Loren Merritt 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 vfw/installer/x264-conf.nsi | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b5d08311537cf047b1720243f866264abc5150d3 Author: Eric Petit 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 encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 91bbfb98c003715a0a44c31053c6e361b5262995 Author: Loren Merritt 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 common/common.h | 10 ++++++++++ common/frame.c | 45 ++++++++++++++++++++++++--------------------- common/macroblock.c | 25 ++++++++++++++----------- common/macroblock.h | 2 +- encoder/encoder.c | 7 ++++++- 5 files changed, 55 insertions(+), 34 deletions(-) commit 0ac281dc97ac8c0b85165062d5f25227c9e0142f Author: Loren Merritt 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 Makefile | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit c9155d3e9fbe646e2504c09b5b751f7279900522 Author: Loren Merritt 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 encoder/cavlc.c | 2 +- encoder/encoder.c | 2 +- encoder/ratecontrol.c | 24 ++++++++++++------------ encoder/slicetype_decision.c | 4 ++-- 4 files changed, 16 insertions(+), 16 deletions(-) commit ae4b97a2530da93b750ac6b525941d408294a216 Author: Loren Merritt 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 encoder/slicetype_decision.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit c832ac1af21e82f7418077c6e61d13819420fd61 Author: Loren Merritt 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 doc/regression_test.txt | 25 +++++++++++++++++++++++++ encoder/encoder.c | 38 +++++++++++++++++++++++++++++++++----- 2 files changed, 58 insertions(+), 5 deletions(-) commit 361b283acbcc2d4b1ff8171ac2945449936e5b93 Author: Loren Merritt 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 encoder/encoder.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit 1ca108eb75a947ad86dc4ab88ecf6e69bd22d358 Author: Loren Merritt 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 encoder/encoder.c | 2 +- encoder/set.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) commit de1af4c2e5528fae5918ddf00d6ae09a68ea2222 Author: Loren Merritt 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 common/macroblock.h | 26 +++++++++++++------------- 1 files changed, 13 insertions(+), 13 deletions(-) commit 7022fe85d84db4a5a95a7b4ac699423277638881 Author: Loren Merritt 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 encoder/encoder.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) commit 0d88274d5d833030ee3f54dfd09ef039f341da01 Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 159 +++---------------- common/amd64/predict-a.asm | 380 +++++++++++-------------------------------- common/i386/pixel.h | 5 +- common/i386/predict-a.asm | 265 ++++++++++++++++++++---------- common/i386/predict-c.c | 217 +++++++------------------ common/macroblock.h | 18 ++ common/pixel.h | 2 +- common/predict.c | 153 ++++++++++------- common/predict.h | 5 +- encoder/analyse.c | 13 +- encoder/macroblock.c | 4 +- tools/checkasm.c | 47 ++++-- 12 files changed, 505 insertions(+), 763 deletions(-) commit 3de28cd5878a8be64e1db80ff2453e79acb0040d Author: Loren Merritt 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 common/amd64/pixel-a.asm | 370 ++++++++++++++++++++++++ common/amd64/pixel-sse2.asm | 215 ++++++++++++++- common/i386/pixel-a.asm | 649 ++++++++++++++++++++++++++++++++++++++++-- common/i386/pixel.h | 7 + common/i386/predict-c.c | 54 +++- common/pixel.c | 5 + common/pixel.h | 7 + encoder/analyse.c | 128 +++++++-- encoder/slicetype_decision.c | 24 ++- tools/checkasm.c | 40 +++ 10 files changed, 1427 insertions(+), 72 deletions(-) commit e63f25b44ed1bfd2ccd0ff1e7f1f453c6ba08179 Author: Loren Merritt 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 encoder/encoder.c | 6 ++++-- x264.c | 9 ++++++++- x264.h | 4 +++- 3 files changed, 15 insertions(+), 4 deletions(-) commit 609deaf54ad74816ba061c7022172986694049c9 Author: Loren Merritt 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 common/frame.c | 2 +- encoder/ratecontrol.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit f5bdc82806070eb101f3c6ab9a5370c4788d7597 Author: Loren Merritt 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 encoder/ratecontrol.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit f51297f19065e4ab34179e6e1d785b28fb3ad6be Author: Eric Petit 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit e7141289a2f8d07168d19fc751bb302a9c32a79e Author: Eric Petit 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 common/ppc/pixel.c | 186 ++++++++++++++++++++++++++-------------------------- 1 files changed, 93 insertions(+), 93 deletions(-) commit f3323f8478176852ff8e974217cb59227bbb693e Author: Eric Petit 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 common/ppc/pixel.c | 143 ++++++++++++++++++++++++--------------------------- 1 files changed, 67 insertions(+), 76 deletions(-) commit c1f64a50b7563b737c8938ed796f46d3bad354a4 Author: Loren Merritt 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 common/i386/pixel-a.asm | 28 ++++++++++++++-------------- encoder/analyse.c | 9 ++++----- 2 files changed, 18 insertions(+), 19 deletions(-) commit 8aa294381e5e7725a9ae01ce84d1a8f4ac86a8eb Author: Loren Merritt 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 encoder/analyse.c | 886 +++++++++++++++++++++++++---------------------------- encoder/me.c | 106 ++++--- encoder/me.h | 19 ++ 3 files changed, 496 insertions(+), 515 deletions(-) commit eb3d83c0a32636674f59bbd7f8fedd430f1e4c2c Author: Sam Hocevar 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 common/ppc/pixel.c | 56 ++++++++++++++++++++++++++-------------------------- 1 files changed, 28 insertions(+), 28 deletions(-) commit 17b90bf3c3f6a2c5711b68be39df784204b425b8 Author: Sam Hocevar 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 35a5a4f121667717bfd783d3dcbb6e79fc7c8668 Author: Loren Merritt 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 encoder/me.c | 77 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 60 insertions(+), 17 deletions(-) commit 6b577361fbab9d785787eba3e16a63a23d84be28 Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 109 +++++++++++++++++++++++ common/i386/pixel-a.asm | 202 +++++++++++++++++++++++++++++++++++++++---- common/i386/pixel.h | 6 ++ common/pixel.c | 12 +++- tools/checkasm.c | 1 + 5 files changed, 312 insertions(+), 18 deletions(-) commit af751ac37f6397567696ba7eb2479f72ea2c2004 Author: Loren Merritt 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 encoder/macroblock.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 2735ae7056413fb6d4461618269b971e8ae45915 Author: Loren Merritt 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 Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 656b0698c90b7c3b3365416391b6d3706d1afb0d Author: Loren Merritt 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 Makefile | 4 +- build/win32/libx264.dsp | 157 ++++++++++- build/win32/libx264.vcproj | 155 +++++++++--- build/win32/x264.dsp | 20 ++- build/win32/x264.sln | 35 +++ build/win32/x264.vcproj | 15 +- common/frame.h | 2 - common/i386/predict-c.c | 614 ++++++++++++++++++++++++++++++++++++++++++++ common/i386/predict.c | 614 -------------------------------------------- encoder/ratecontrol.c | 1 - encoder/rdo.c | 2 +- 11 files changed, 948 insertions(+), 671 deletions(-) commit 2f95856be50ec7c744ad4d65408846d3dce75491 Author: Loren Merritt 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 common/common.c | 2 + encoder/macroblock.c | 81 +++++++++++++++++++++++++++----------------------- x264.c | 6 ++++ x264.h | 3 +- 4 files changed, 54 insertions(+), 38 deletions(-) commit 9a6815d3cb06e48888bdd1d804ae9eb72adf71bb Author: Eric Petit 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 common/ppc/pixel.c | 1036 +++++++++++++++++++++++++++++++++++++++++++++++++++- configure | 2 +- 2 files changed, 1020 insertions(+), 18 deletions(-) commit 97ab2190599297ab0edaa62b8a7027117ca74ed5 Author: Loren Merritt 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 common/cabac.c | 12 ++++-------- encoder/cabac.c | 26 +++++++++----------------- 2 files changed, 13 insertions(+), 25 deletions(-) commit 1927b27504ebee226b5eb1a51461b35e72a6d542 Author: Eric Petit 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 common/dct.c | 2 - common/ppc/dct.c | 252 +++++++++++++++++++++++++----------------------------- common/ppc/dct.h | 6 +- 3 files changed, 118 insertions(+), 142 deletions(-) commit d0a556549b9ae59c3a30b6c1b0280e6857350da3 Author: Eric Petit 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 common/ppc/mc.c | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) commit 71f11146131d1804311d86535a6aa7d0ff777501 Author: Loren Merritt 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 common/frame.c | 40 ++++++++++++++++++---------------------- 1 files changed, 18 insertions(+), 22 deletions(-) commit d2ab724f262f831a320ba75b81092bc182bca695 Author: Loren Merritt 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 common/amd64/pixel-a.asm | 96 ++++++++++++++++------------------ common/i386/pixel-a.asm | 130 +++++++++++++++++++++------------------------- 2 files changed, 105 insertions(+), 121 deletions(-) commit a23a3678b474450876ac297c979bb2ad27afe6f4 Author: Loren Merritt 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 common/amd64/pixel-a.asm | 479 ++++++++++++-------------------------------- common/i386/pixel-a.asm | 414 +++++++++++--------------------------- common/i386/pixel-sse2.asm | 16 +- 3 files changed, 250 insertions(+), 659 deletions(-) commit b3ad52d4860127a9b7348923671b595b98cb4d09 Author: Loren Merritt 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 configure | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) commit c293b80b3b57789bbac663f0eac0ee26c1bd8eec Author: Loren Merritt 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 common/i386/dct-a.asm | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit ae82d2423aa1d54eb367ca292262bc6bd3dec134 Author: Loren Merritt 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 common/amd64/amd64inc.asm | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 283d57ed95a22f104e4f22a6119e2aaeeca39833 Author: Loren Merritt 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 encoder/me.c | 66 +++++++++++++++++++++++++++++++-------------------------- 1 files changed, 36 insertions(+), 30 deletions(-) commit 0f4c0eb836912fcbd2376c920a9dd7bf438f4e43 Author: Loren Merritt 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 encoder/me.c | 141 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 73 insertions(+), 68 deletions(-) commit 8947b51f35151f821c3718b01c1e93d517d814b5 Author: Loren Merritt 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 common/amd64/pixel-a.asm | 220 +++++++++++++++++++++++++++++++++++++++ common/i386/pixel-a.asm | 243 ++++++++++++++++++++++++++++++++++++++++++++ common/i386/pixel-sse2.asm | 156 ++++++++++++++++++++++++++++ common/i386/pixel.h | 20 ++++ common/pixel.c | 169 +++++++++++++++++------------- common/pixel.h | 6 + common/ppc/pixel.c | 30 ++++++ encoder/me.c | 216 ++++++++++++++++++++++----------------- tools/checkasm.c | 30 ++++++ 9 files changed, 922 insertions(+), 168 deletions(-) commit bddf5f03ff621a8fdbcc9925453573600984b27d Author: Sam Hocevar 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ac4249d20d47f75ca9aebb04c4b329c2d497100c Author: Måns Rullgård 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 Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 85ab23ceca033df09e17d650647cba3d4995f9e8 Author: Felix Paul Kühne 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 muxers.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 540ed9aafdf7577cf51914676dfc010952c76052 Author: Loren Merritt 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 gtk/Makefile | 5 +++-- gtk/x264_gtk_demuxers.h | 1 + gtk/x264_gtk_encode_encode.c | 34 ++++++++++++++++++++-------------- gtk/x264_gtk_encode_main_window.c | 33 +++++++++++++++++++++++++-------- 4 files changed, 49 insertions(+), 24 deletions(-) commit 5fe3e77f3d9f20286feb1432a63d2d6652dc8777 Author: Loren Merritt 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 gtk/x264_gtk_demuxers.h | 17 ++++ gtk/x264_gtk_encode_encode.c | 17 ++-- gtk/x264_gtk_encode_main_window.c | 173 +++++++++++++++++++++++++++---------- gtk/x264_gtk_encode_private.h | 33 ++++---- 4 files changed, 170 insertions(+), 70 deletions(-) commit a84899e0b4fd16d49cb7085a275cd7bb1ce9f67c Author: Loren Merritt 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 common/common.c | 21 ++++++ common/common.h | 2 + encoder/encoder.c | 12 +--- muxers.c | 200 +++++++++++++++++++++++++++++++++++++++++++++++++++++ muxers.h | 5 ++ x264.c | 15 ++++- 6 files changed, 243 insertions(+), 12 deletions(-) commit e510c09889d83c5d7e85eca83036af36f1284b87 Author: Loren Merritt 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 Makefile | 3 ++- configure | 2 ++ gtk/Makefile | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) commit 845feff6507dc682944a8c733f8ee1c8a4da6f09 Author: Loren Merritt 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 configure | 12 ++- gtk/Makefile | 41 +++++--- gtk/x264.ico | Bin 0 -> 2238 bytes gtk/x264_gtk_bitrate.c | 1 - gtk/x264_gtk_encode_encode.c | 72 ++++++++++--- gtk/x264_gtk_encode_main_window.c | 197 +++++++++++++++++++++++++++++++---- gtk/x264_gtk_encode_private.h | 5 +- gtk/x264_gtk_encode_status_window.c | 6 +- gtk/x264gtk.rc | 46 ++++++++ 9 files changed, 321 insertions(+), 59 deletions(-) commit fc34d38657b89418cb68576889c647a4aa5e8108 Author: Loren Merritt 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 AUTHORS | 4 + gtk/Makefile | 79 ++++ gtk/test.c | 53 +++ gtk/x264.png | Bin 0 -> 7178 bytes gtk/x264_gtk.c | 869 +++++++++++++++++++++++++++++++++++ gtk/x264_gtk.h | 93 ++++ gtk/x264_gtk_bitrate.c | 187 ++++++++ gtk/x264_gtk_bitrate.h | 8 + gtk/x264_gtk_encode.c | 16 + gtk/x264_gtk_encode_encode.c | 250 ++++++++++ gtk/x264_gtk_encode_encode.h | 8 + gtk/x264_gtk_encode_main_window.c | 461 +++++++++++++++++++ gtk/x264_gtk_encode_main_window.h | 8 + gtk/x264_gtk_encode_private.h | 42 ++ gtk/x264_gtk_encode_status_window.c | 161 +++++++ gtk/x264_gtk_encode_status_window.h | 8 + gtk/x264_gtk_enum.h | 50 ++ gtk/x264_gtk_mb.c | 130 ++++++ gtk/x264_gtk_mb.h | 8 + gtk/x264_gtk_more.c | 343 ++++++++++++++ gtk/x264_gtk_more.h | 8 + gtk/x264_gtk_private.h | 146 ++++++ gtk/x264_gtk_rc.c | 208 +++++++++ gtk/x264_gtk_rc.h | 8 + 24 files changed, 3148 insertions(+), 0 deletions(-) commit 50aadebc2de139f2003314bfbeea7d7ce1680901 Author: Loren Merritt 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 common/common.h | 3 ++- encoder/analyse.c | 4 ++-- encoder/encoder.c | 3 +-- encoder/ratecontrol.c | 1 + muxers.c | 2 +- 5 files changed, 7 insertions(+), 6 deletions(-) commit 5b6c5effb4c1864b692213cafef9c85e3623573c Author: Loren Merritt 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 common/amd64/amd64inc.asm | 1 + common/amd64/dct-a.asm | 141 +++++++++++++++++---------------------------- common/dct.c | 76 ++++++++++++------------ common/dct.h | 23 ++++--- common/i386/dct-a.asm | 67 ++++++++------------- common/i386/dct-c.c | 95 +++++++++++++++--------------- common/i386/dct.h | 28 +++++----- common/i386/i386inc.asm | 1 + encoder/macroblock.c | 46 +++++++-------- tools/checkasm.c | 8 +- 10 files changed, 217 insertions(+), 269 deletions(-) commit da9158b3ec035e8261e6fe2c5fd77e073425ed08 Author: Sam Hocevar 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 7c013538206535c3abd70eb56a00bed0dccb43c5 Author: Loren Merritt 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 muxers.c | 11 ++++++++--- x264.c | 6 ------ 2 files changed, 8 insertions(+), 9 deletions(-) commit 3b66f690bd8a7d1417cedf98aec0df2702338bb2 Author: Loren Merritt 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 common/macroblock.c | 125 +++++++++++++++--------------- common/macroblock.h | 1 + encoder/analyse.c | 170 +++++++++++++++++++++++++++++++++++++++- encoder/cabac.c | 162 +++++++++++++++++++++++++++++---------- encoder/cavlc.c | 211 ++++++++++++++++++++++++++++++++++---------------- encoder/encoder.c | 3 +- encoder/macroblock.c | 85 ++++++++++++++++++++ encoder/macroblock.h | 2 + encoder/me.c | 96 +++++++++++++++++++++++ encoder/me.h | 2 + encoder/rdo.c | 86 ++++++++++++++++++++ x264.c | 2 +- 12 files changed, 772 insertions(+), 173 deletions(-) commit 48633d2afd50d9f15b83e6639024c382dd958c76 Author: Loren Merritt 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 encoder/cabac.c | 78 ++++++++++++++++++------------------------------------ 1 files changed, 26 insertions(+), 52 deletions(-) commit 50f40fd2a3b63ef89e8f94085ef2ed971a408468 Author: Loren Merritt 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 muxers.h | 6 ------ x264.c | 11 +++++++++-- 2 files changed, 9 insertions(+), 8 deletions(-) commit 36c25b664e28e4e15ce49242af6ac306eb6f7cca Author: Loren Merritt 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 common/common.h | 21 ++++++ configure | 2 +- encoder/encoder.c | 24 +------- muxers.c | 176 ++++++++++++++++++++++++++++++++++++++++++----------- muxers.h | 26 +++++++- x264.c | 29 +++++++-- 6 files changed, 210 insertions(+), 68 deletions(-) commit c20906a56b2f17a89b7ba4afc87e78202447e7fb Author: Måns Rullgård 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 9c61b0cbd68304b8f2860dc2d7df401ad6839b81 Author: Loren Merritt 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 common/dct.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit fdb64099b4da93ffa70af98aad85cc7c6fc564d0 Author: Loren Merritt 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 common/amd64/dct-a.asm | 24 ++++++++++++------------ common/amd64/mc-a.asm | 24 ++++++++++++------------ common/amd64/mc-a2.asm | 5 +---- common/amd64/pixel-a.asm | 30 +++++++++++++++--------------- common/dct.c | 22 ++++++++++------------ common/i386/dct-a.asm | 24 ++++++++++++------------ common/i386/dct-c.c | 40 ++++++++++++++++++++-------------------- common/i386/dct.h | 16 ++++++++-------- common/i386/mc-a.asm | 24 ++++++++++++------------ common/i386/mc-a2.asm | 8 ++------ common/i386/mc-c.c | 22 +++++++++++----------- common/i386/pixel-a.asm | 30 +++++++++++++++--------------- common/i386/pixel.h | 14 +++++++------- common/pixel.c | 27 +++++++++++++++------------ 14 files changed, 152 insertions(+), 158 deletions(-) commit abffd18fe30bcc0daa344a7dcedab30ddc3e97f6 Author: Loren Merritt 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 common/i386/mc-c.c | 112 ++++++++++++++++++--------------------------------- common/mc.c | 41 ++++++------------- 2 files changed, 53 insertions(+), 100 deletions(-) commit 9eaa83d4c97cfceaeb6491ae8e7a74c0bd6f397b Author: Loren Merritt 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 encoder/analyse.c | 11 ++++------- 1 files changed, 4 insertions(+), 7 deletions(-) commit 926212b3f0ff67ffc8ea2e3a7b299c016a00404c Author: Loren Merritt 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 Makefile | 10 ++++++++-- configure | 24 ++++++++++++++++++++---- 2 files changed, 28 insertions(+), 6 deletions(-) commit 8f79dcc217245ebdc4aba8be505526c7277c6d3c Author: Loren Merritt 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 encoder/cabac.c | 2 +- encoder/cavlc.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) commit 78f414d5646e018254339a9a5db08bdf69de6551 Author: Loren Merritt 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 encoder/ratecontrol.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit d8e790ca7c0a524ea0aa01bf0d9020530e3dba9a Author: Loren Merritt 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 common/common.h | 8 +- common/frame.c | 19 ++- common/frame.h | 10 +- encoder/cavlc.c | 16 ++- encoder/encoder.c | 19 ++-- encoder/ratecontrol.c | 291 ++++++++++++++++++++++++++++++++++++++---- encoder/ratecontrol.h | 1 + encoder/slicetype_decision.c | 116 +++++++++++++---- 8 files changed, 401 insertions(+), 79 deletions(-) commit 79389771d6bc84a886b754bba995e7d9ac8b48d4 Author: Loren Merritt 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 common/amd64/dct-a.asm | 78 ++++++-------- common/dct.c | 87 +++++++++------- common/i386/dct-a.asm | 271 ++++++++++++++---------------------------------- common/i386/dct-c.c | 37 ++++--- common/i386/dct.h | 8 +- common/macroblock.h | 13 ++- encoder/macroblock.c | 4 +- encoder/set.c | 15 +++ 8 files changed, 207 insertions(+), 306 deletions(-) commit ce9b3336d66cff23019d43656baf425491702727 Author: Loren Merritt 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 common/dct.c | 4 ++-- common/i386/dct-c.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) commit 9331f05948dfcd42461a8aa8b6f0994e594dc74a Author: Loren Merritt 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 Makefile | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-) commit 058c3be5405df19bb0f029956c54251d626ca0f0 Author: Loren Merritt 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 Makefile | 8 +- muxers.c | 698 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ muxers.h | 38 ++++ x264.c | 705 +------------------------------------------------------------- 4 files changed, 742 insertions(+), 707 deletions(-) commit a34eec24d5caed8b43f2d1ecf7a0f36b9fe60189 Author: Loren Merritt 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 common/common.h | 6 +++--- encoder/macroblock.c | 19 ++++++------------- 2 files changed, 9 insertions(+), 16 deletions(-) commit afbbaf9b0229751fe545e1ac8b8f1ca68228d56a Author: Loren Merritt 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 encoder/analyse.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 9773268370492490235dee06d46e091f563626d7 Author: Loren Merritt 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 common/common.h | 7 +++++++ common/macroblock.c | 25 ++++++++++++++++++++++++- common/macroblock.h | 10 ++++++---- encoder/analyse.c | 30 ++++++++++++++++++++++++++---- encoder/encoder.c | 35 ++++++++++++++++++++++++++++++++++- encoder/ratecontrol.c | 40 ++++++++++++++++++++++++++++++---------- x264.c | 2 +- x264.h | 5 +++-- 8 files changed, 131 insertions(+), 23 deletions(-) commit 126ccb3360e4c9b92ced4c995e618e4129be97a2 Author: Loren Merritt 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 common/common.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 39c6d0824e23a3e6e769812968082026a9df61f8 Author: Loren Merritt 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 TODO | 64 ---------------------------------------------------------------- 1 files changed, 0 insertions(+), 64 deletions(-) commit 918a791bb4ed544368cd7389147ab9e18fb6f8d4 Author: Loren Merritt 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 common/amd64/predict-a.asm | 479 +++++++++++++++++++++++++++++++++++++++----- common/i386/predict-a.asm | 56 +++--- common/i386/predict.c | 371 +++++++++++++++++++++++++++++++++- common/i386/predict.h | 2 + common/predict.c | 85 ++++---- tools/checkasm.c | 6 +- 6 files changed, 867 insertions(+), 132 deletions(-) commit 469b4e5032b8183dd04c8cb6f22e9724146bb2f5 Author: Loren Merritt 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 encoder/analyse.c | 14 +++++++++----- 1 files changed, 9 insertions(+), 5 deletions(-) commit 4fe3aff6fd991a72b8a80b2157092678b13db433 Author: Sam Hocevar 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 common/i386/i386inc.asm | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-) commit 4139febfe8acad10fb759b9d5a8992ed8cad6234 Author: Sam Hocevar 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 common/i386/dct-a.asm | 24 ++++++++++++------------ common/i386/deblock-a.asm | 20 ++++++++++---------- common/i386/i386inc.asm | 23 ++++++++++++++++------- common/i386/mc-a.asm | 12 ++++++------ common/i386/mc-a2.asm | 16 ++++++++-------- common/i386/pixel-sse2.asm | 2 +- common/i386/predict-a.asm | 12 ++++++------ common/i386/quant-a.asm | 2 +- 8 files changed, 60 insertions(+), 51 deletions(-) commit 059410eda5d125c166b5ba050e3ca8152e84a2c7 Author: Sam Hocevar 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 configure | 17 ++++++++++------- 1 files changed, 10 insertions(+), 7 deletions(-) commit b5fda5741bf36e3f03cf0ebac90ddd9dce4f6420 Author: Sam Hocevar 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 common/i386/dct-a.asm | 6 +----- common/i386/deblock-a.asm | 2 +- common/i386/i386inc.asm | 12 ++++++++++++ common/i386/mc-a.asm | 6 +----- common/i386/mc-a2.asm | 2 +- common/i386/pixel-sse2.asm | 6 +----- common/i386/predict-a.asm | 2 +- common/i386/quant-a.asm | 2 +- 8 files changed, 19 insertions(+), 19 deletions(-) commit 17683d75b1dae07e8dfc901883231b41e73fe8cd Author: Sam Hocevar 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 common/i386/i386inc.asm | 4 ++-- configure | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) commit 3723deea1601ba0dbda44ce09f77d6e1019226ac Author: Sam Hocevar 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 common/i386/i386inc.asm | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit 70c140345c62ecb13ffa1af412f1e8f9f10567d2 Author: Loren Merritt 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 encoder/analyse.c | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-) commit 3bd4ade21dcbf30287f3a350c25bda26ea667d22 Author: Loren Merritt 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 common/amd64/amd64inc.asm | 1 + common/amd64/predict-a.asm | 180 ++++++++++++++--------------------------- common/i386/i386inc.asm | 1 + common/i386/predict-a.asm | 118 +++++++++++---------------- common/i386/predict.c | 50 ++++++------ common/predict.c | 76 +++++++++--------- common/predict.h | 4 +- encoder/analyse.c | 14 ++-- encoder/macroblock.c | 18 ++--- encoder/slicetype_decision.c | 2 +- tools/checkasm.c | 4 +- 11 files changed, 195 insertions(+), 273 deletions(-) commit 4ecb5f8ed11073fd4e6a4673a1275c430478aefc Author: Loren Merritt 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 common/i386/predict.c | 66 +++++----- common/predict.c | 330 ++++++++++++++++++++++++------------------------ tools/checkasm.c | 4 +- 3 files changed, 200 insertions(+), 200 deletions(-) commit 8f05dffc4574c40557a5a161b18c4e6037aeec48 Author: Loren Merritt 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 common/common.h | 8 ++- common/macroblock.c | 58 +++++++++++++++----- encoder/analyse.c | 86 +++++++++++++--------------- encoder/macroblock.c | 125 +++++++++++++++++++++--------------------- encoder/me.c | 16 +++--- encoder/rdo.c | 12 ++-- encoder/slicetype_decision.c | 20 ++++-- 7 files changed, 181 insertions(+), 144 deletions(-) commit 388658234c05e9b282569be052a5977d6cc9e812 Author: Loren Merritt 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 common/amd64/mc-a.asm | 94 ++++++++++++++++++++++++------------------------ common/i386/mc-a.asm | 32 ++++++++-------- common/i386/mc-c.c | 10 ++++-- common/mc.c | 13 +++++++ common/mc.h | 3 ++ 5 files changed, 86 insertions(+), 66 deletions(-) commit 34cbb9170c3b9daeae91ef4aa2a48c2ec9bdfbc8 Author: Loren Merritt 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 encoder/slicetype_decision.c | 11 +++++------ 1 files changed, 5 insertions(+), 6 deletions(-) commit bca81cae09973cd349382d8612ad6aaf412444b4 Author: Loren Merritt 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 encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit e5ed306c33a9b03d083660bb521758c76bdf36bd Author: Sam Hocevar 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 encoder/ratecontrol.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 14b26394bd35f6ab03c6d4b7424ddea893a5bfa1 Author: Loren Merritt 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 encoder/cabac.c | 21 +++++++++++++-------- 1 files changed, 13 insertions(+), 8 deletions(-) commit 5fbca87deb6e3a79b9d3b6b31ea85fc79e49534f Author: Loren Merritt 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 encoder/ratecontrol.c | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) commit 12b778b8f4e8501cf06ba3513fc0e824d4a87ac1 Author: Loren Merritt 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 encoder/analyse.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) commit 14f3cc06834e207b37222d93b7c6aea47b17524d Author: Loren Merritt 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 common/common.h | 6 +--- common/macroblock.c | 75 +++++++++++++++++++++++++++++++++++++------------- encoder/analyse.c | 7 +---- encoder/encoder.c | 3 -- encoder/rdo.c | 17 +++++++---- 5 files changed, 68 insertions(+), 40 deletions(-) commit 476a0f93c9aa42a39c3518f891e024ef41b1056e Author: Loren Merritt 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 x264.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 8dfd87aeef4c1523d60684ca6c1368007a24aad4 Author: Loren Merritt 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 vfw/config.c | 7 +------ 1 files changed, 1 insertions(+), 6 deletions(-) commit d53108a30cd1b1284c59eb9e8bdfac157a3ddb37 Author: Loren Merritt 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 encoder/slicetype_decision.c | 23 +++++++++++++++-------- 1 files changed, 15 insertions(+), 8 deletions(-) commit eb32d28463ab8433fba16851d4796d041b8de39f Author: Loren Merritt 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 configure | 2 +- vfw/config.c | 142 +++++++++++++++++++++++++++++-------------------------- vfw/resource.h | 6 +- vfw/resource.rc | 107 ++++++++++++++++++++--------------------- 4 files changed, 132 insertions(+), 125 deletions(-) commit 60e848749dbcb8a44709675ea391f5c28a8a8c1f Author: Loren Merritt 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 vfw/codec.c | 13 ++++- vfw/config.c | 62 ++++++++++++++++++++-- vfw/resource.h | 155 ++++++++++++++++++++++++++++--------------------------- vfw/resource.rc | 49 ++++++++++++++---- vfw/x264vfw.h | 5 ++- 5 files changed, 192 insertions(+), 92 deletions(-) commit 681b394485671f977a1a19d2279ace4c22eb0177 Author: Loren Merritt 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 Makefile | 2 +- common/amd64/predict-a.asm | 319 +++++++++++++++++++++++++++++++++++++++++++- common/amd64/predict.c | 175 ------------------------ common/i386/predict-a.asm | 26 ++--- common/i386/predict.c | 127 ++++++++++++++++-- 5 files changed, 437 insertions(+), 212 deletions(-) commit e1d852d2947dfaac201dfb7149070ed341caa64f Author: Loren Merritt 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 common/amd64/quant-a.asm | 38 +--------------- common/i386/quant-a.asm | 28 +----------- common/quant.c | 2 +- tools/checkasm.c | 114 ++++++++++++++++++++++++++++++++++++++++------ 4 files changed, 102 insertions(+), 80 deletions(-) commit fed2847ca9c4b9f8240be78145681d12ea85e1e9 Author: Loren Merritt 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 encoder/slicetype_decision.c | 20 +------------------- 1 files changed, 1 insertions(+), 19 deletions(-) commit f959a749aec65753e77a0b5566adb18d6a9af87f Author: Loren Merritt 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 common/i386/mc-a2.asm | 17 ++++++----------- 1 files changed, 6 insertions(+), 11 deletions(-) commit 7125f9174c8d32f66bf9264c2b986dd1c03f4a27 Author: Sam Hocevar 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 configure | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) commit 5d5c5cc213fb25a1fd151af80ab0a4fb614dd32c Author: Sam Hocevar 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 common/i386/i386inc.asm | 35 ++++++++++++++++++++++++++--------- 1 files changed, 26 insertions(+), 9 deletions(-) commit 78d31c22dcc1c42d6b2009b52ba758958dd1bff4 Author: Sam Hocevar 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 configure | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) commit dc454eab263d463d2eeecf627aae31a10a5d080c Author: Sam Hocevar 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 common/amd64/amd64inc.asm | 8 ++++ common/i386/dct-a.asm | 33 +++++++++-------- common/i386/deblock-a.asm | 32 ++++++++-------- common/i386/i386inc.asm | 55 +++++++++++++++++++++++------ common/i386/mc-a.asm | 50 +++++++++++++------------- common/i386/mc-a2.asm | 65 +++++++++++++++++----------------- common/i386/pixel-sse2.asm | 2 +- common/i386/predict-a.asm | 84 ++++++++++++++++++++++---------------------- common/i386/quant-a.asm | 12 +++--- 9 files changed, 192 insertions(+), 149 deletions(-) commit ac9da5dbb4447c64bf9b82e849f4ae233c4413d3 Author: Sam Hocevar 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 tools/checkasm.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) commit bb21f3a920ffefe84a77933c060775b2089a9c6c Author: Loren Merritt 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 common/amd64/mc-a.asm | 16 +++++++--------- common/i386/mc-a.asm | 26 ++++++++++++-------------- common/i386/mc.h | 7 +++---- common/mc.c | 8 ++++---- 4 files changed, 26 insertions(+), 31 deletions(-) commit 80b669bbc73e92944954cadc612650ba08b80358 Author: Sam Hocevar 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 common/i386/mc-a2.asm | 27 +++++++++++++++++---------- 1 files changed, 17 insertions(+), 10 deletions(-) commit eea893893af7ae49cd9cab333279f0323302db81 Author: Sam Hocevar 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 Makefile | 2 + build/win32/libx264.vcproj | 3 ++ common/i386/cpu-a.asm | 9 +----- common/i386/dct-a.asm | 45 +++++++++++++++++-------------- common/i386/deblock-a.asm | 52 ++++++++++++++++++++----------------- common/i386/i386inc.asm | 62 ++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc-a.asm | 28 ++++++++++---------- common/i386/mc-a2.asm | 47 +++++++++++++++++--------------- common/i386/pixel-a.asm | 9 +----- common/i386/pixel-sse2.asm | 14 +++------- common/i386/predict-a.asm | 45 ++++++++++++++++++++----------- common/i386/quant-a.asm | 19 ++++++------- 12 files changed, 203 insertions(+), 132 deletions(-) commit 97f05071bb3aed659785ec10ccd6824020dfaef8 Author: Loren Merritt 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 encoder/ratecontrol.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 19d07afabccda339852d7d49d3d5b11d538181f3 Author: Loren Merritt 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 common/amd64/predict.c | 6 +- common/i386/predict-a.asm | 336 ++++++++++++++++++++++++++++++++++++++++++++- common/i386/predict.c | 112 +++++++++++++++- common/i386/predict.h | 1 + common/predict.c | 32 ++--- tools/checkasm.c | 10 +- 6 files changed, 470 insertions(+), 27 deletions(-) commit d2dada763c6114b6245c6b468dfc2287123d12c5 Author: Loren Merritt 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 Makefile | 2 +- common/amd64/predict.c | 171 +++++++++++++++++++++ common/i386/predict-a.asm | 37 +---- common/i386/predict.c | 367 +-------------------------------------------- common/i386/predict.h | 1 - common/predict.c | 337 ++++++++++++++++++----------------------- tools/checkasm.c | 56 +++++++ 7 files changed, 383 insertions(+), 588 deletions(-) commit 791495e3d82b982ffa086593956bb96da45973e2 Author: Loren Merritt 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 x264.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit ce237ab663525259ce64423341ce6893309cee88 Author: Loren Merritt 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 encoder/slicetype_decision.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit f116707e12e1ba980c8cf6a091f3290ba4d75af4 Author: Loren Merritt 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 AUTHORS | 94 +++++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 73 insertions(+), 21 deletions(-) commit 8b498e443950c642fd5f6c1406636f4ab5def27e Author: Loren Merritt 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 encoder/ratecontrol.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit e3b1f110b9eb2286e481febf29a015256a48c576 Author: Loren Merritt 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 encoder/slicetype_decision.c | 37 +++++++++++++++++++------------------ 1 files changed, 19 insertions(+), 18 deletions(-) commit 6da9fc956cdafd6dde4c334568c18bd7bef292c1 Author: Loren Merritt 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 common/common.c | 7 +++++-- encoder/ratecontrol.c | 9 ++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) commit be6cce52d13fc6424e6244bfce03f67894c15d1e Author: Måns Rullgård 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 AUTHORS | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 273dc626b8b4f7cfe166be728038d9d3e9fd1fb7 Author: Måns Rullgård 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 encoder/set.c | 4 +--- x264.h | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) commit d125e4373da6f5e50d2e4ab73aab2d97732212c5 Author: Loren Merritt 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 encoder/me.c | 145 ++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 126 insertions(+), 19 deletions(-) commit a373f2aef22a54c8d597156429ff7f0ad41f1c9e Author: Loren Merritt 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 common/common.h | 4 ++++ encoder/analyse.c | 22 +++++++++++++--------- encoder/me.c | 16 ++++++++-------- encoder/slicetype_decision.c | 4 ++++ 4 files changed, 29 insertions(+), 17 deletions(-) commit 61b57afb7b614ab09a0508c4c53ca411f4f675f8 Author: Loren Merritt 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 common/common.h | 6 ++++++ common/predict.c | 10 +++++----- encoder/eval.c | 1 + 3 files changed, 12 insertions(+), 5 deletions(-) commit 271c1947a599ccdc3a509260da2d5cd6699148d7 Author: Loren Merritt 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 common/cabac.c | 1 - common/common.c | 1 - common/common.h | 1 + common/cpu.c | 10 +--------- common/csp.c | 1 - common/dct.c | 10 ---------- common/display-x11.c | 1 - common/frame.c | 1 - common/i386/mc-c.c | 12 +----------- common/macroblock.c | 1 - common/mc.c | 13 +------------ common/mdate.c | 1 - common/pixel.c | 10 +--------- common/predict.c | 10 +--------- encoder/analyse.c | 1 - encoder/cabac.c | 1 - encoder/cavlc.c | 1 - encoder/encoder.c | 1 - encoder/eval.c | 1 - encoder/macroblock.c | 1 - encoder/me.c | 1 - encoder/ratecontrol.c | 1 - encoder/set.c | 8 -------- encoder/slicetype_decision.c | 1 - 24 files changed, 6 insertions(+), 84 deletions(-) commit 7fb7e61b6247d9571fe7244f03231adbcc1d7e75 Author: Sam Hocevar 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 1d82beb4c26d82d068e84265344e078854907c1e Author: Eric Petit 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 Makefile | 5 ----- common/cpu.c | 6 ------ configure | 6 +++--- 3 files changed, 3 insertions(+), 14 deletions(-) commit 096c4eb70a5b3cc5aebda44e62b4d3dd83edbc9c Author: Eric Petit 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 Makefile | 5 +++++ common/cpu.c | 6 ++++++ configure | 6 +++++- 3 files changed, 16 insertions(+), 1 deletions(-) commit 743ad5971608e491bd1d70a31e9bfdc496301eef Author: Loren Merritt 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 Makefile | 3 --- configure | 18 +++++++++++++----- matroska.c | 3 +++ version.sh | 4 ++-- x264.c | 15 +++++++++------ 5 files changed, 27 insertions(+), 16 deletions(-) commit 0abf15d29e904339fb9f606e83e01c9265e54b15 Author: Loren Merritt 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 common/common.h | 6 ++++ common/dct.h | 17 ++++++++++++ encoder/analyse.c | 2 + encoder/encoder.c | 4 +++ encoder/macroblock.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++ encoder/macroblock.h | 3 ++ x264.c | 7 +++++ x264.h | 1 + 8 files changed, 110 insertions(+), 0 deletions(-) commit 6bf39eaa780ef0877b7d6fe8497df9a38d4baa3d Author: Loren Merritt 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 common/amd64/pixel-a.asm | 62 +++++++++++++++++++++++++++++++ common/i386/pixel-a.asm | 64 ++++++++++++++++++++++++++++++++ common/i386/pixel.h | 4 ++ common/pixel.c | 4 ++ common/pixel.h | 6 +++ encoder/me.c | 90 ++++++++++++++++++++++++++++++++++----------- 6 files changed, 208 insertions(+), 22 deletions(-) commit 73a45ef20dec4dc709e029f175eb20ae8eb099b9 Author: Loren Merritt 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 x264.c | 13 +++++++------ 1 files changed, 7 insertions(+), 6 deletions(-) commit d3c2f10353e8409932f05be20c11f4eae09974c1 Author: Loren Merritt 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 encoder/rdo.c | 9 ++++----- 1 files changed, 4 insertions(+), 5 deletions(-) commit 28c0f2419db96278a14d126de3859a67d31d0a84 Author: Loren Merritt 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 encoder/encoder.c | 17 +++++++++++++++++ encoder/ratecontrol.c | 8 +++++++- 2 files changed, 24 insertions(+), 1 deletions(-) commit bf1e4d1faba2eff0f54029ccf4d98ce9ef09a757 Author: Loren Merritt 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 encoder/set.c | 22 ++++++++-------------- 1 files changed, 8 insertions(+), 14 deletions(-) commit 7091b47e853fb45ae2d9432ea7ffe085efa31936 Author: Loren Merritt 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 encoder/set.c | 26 +++++++++++++++++++++----- x264.c | 4 ++-- 2 files changed, 23 insertions(+), 7 deletions(-) commit a977f764240cb9139c2152448bb85dd89260639f Author: Loren Merritt 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 encoder/cabac.c | 12 ++++++------ encoder/me.c | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) commit 2fa8f84b6e108222735c2895b6419ed8c29ef031 Author: Loren Merritt 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 common/common.c | 5 +- encoder/analyse.c | 32 +++++++++++++++ encoder/me.c | 109 +++++++++++++++++++++++++++++++++++++++++++++++++++++ encoder/me.h | 1 + x264.c | 8 +++- x264.h | 3 +- 6 files changed, 154 insertions(+), 4 deletions(-) commit 684d2d58a5e60bec5bd45834e1c87b4b150c4244 Author: Loren Merritt 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 x264.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 25b40141a3d6569bfdc58a94d3004a89211029d6 Author: Loren Merritt 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 common/common.h | 1 + common/frame.c | 8 +++++++- common/frame.h | 3 ++- common/macroblock.c | 8 ++++++++ common/mc.c | 24 ++++++++++++++++++++++++ encoder/analyse.c | 43 ++++++++++++++++++++++--------------------- encoder/me.c | 27 ++++++++++++++++++++++++--- encoder/me.h | 1 + 8 files changed, 89 insertions(+), 26 deletions(-) commit a9607af8a776bb00aa463fa926fb4e4661eff1e4 Author: Eric Petit 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 configure | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit b914f8081539c243a7a3f5a15a11145e06466da9 Author: Loren Merritt 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 encoder/analyse.c | 35 +++++++++++++++++++++++++++-------- 1 files changed, 27 insertions(+), 8 deletions(-) commit cc3308878925bf33c0e2707c9177dd345ed238a5 Author: Loren Merritt 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 Makefile | 4 +- configure | 103 ++++++++++++++++++++++++++++++++++++++++++++++------------- version.sh | 6 ++-- 3 files changed, 85 insertions(+), 28 deletions(-) commit 38fcbfbeb53d402f9431f18709aee37987dcf318 Author: Loren Merritt 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 common/common.c | 1 + encoder/analyse.c | 2 +- encoder/encoder.c | 1 + x264.c | 6 ++++++ x264.h | 3 ++- 5 files changed, 11 insertions(+), 2 deletions(-) commit 5ce628fa0413b7d87e87619a65a9e1cabe5cd5be Author: Loren Merritt 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 Makefile | 6 +++--- configure | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) commit f03dbfd42d110e982323f78aac131024e0687590 Author: Loren Merritt 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 x264.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 8443f260777556ebd6132f6448d406c769194e23 Author: Loren Merritt 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 encoder/me.c | 21 ++++++++++++--------- 1 files changed, 12 insertions(+), 9 deletions(-) commit 8f0d66cc0973cfb8360fad55b22248fe620def34 Author: Loren Merritt 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 Makefile | 13 +++++++------ version.sh | 4 ++-- 2 files changed, 9 insertions(+), 8 deletions(-) commit 6826cf2faf2692b0bb37780148a89b0e58826f6b Author: Loren Merritt 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 common/common.c | 1 + configure | 4 +++- version.sh | 4 ++++ 3 files changed, 8 insertions(+), 1 deletions(-) commit 8e44d938b225c0a4dabad257b471335fdd0fe18d Author: Loren Merritt 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 Makefile | 28 +++++++++++++++++++++++++++- configure | 6 +++++- 2 files changed, 32 insertions(+), 2 deletions(-) commit 71b75efe735e76d8d6ec4b51cd09b477dc0908cc Author: Loren Merritt 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 x264.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit bdddcf97476ae25a8bd80339090c399b59b8c2f3 Author: Loren Merritt 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 encoder/encoder.c | 2 +- x264.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) commit 8c7611c14281f5d597262aa66771f0b9b50366a8 Author: Loren Merritt 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 Makefile | 11 +++++++++-- configure | 26 +++++++++++++++++++++----- 2 files changed, 30 insertions(+), 7 deletions(-) commit 78d2f605d0293484d50d58b74489700b65cc0472 Author: Loren Merritt 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 common/common.c | 75 +++++++++++++++++++++++++++++++++++++++++++++++++ common/common.h | 4 ++ encoder/encoder.c | 10 +++++- encoder/ratecontrol.c | 47 ++++++++++++++++++++++++++++-- encoder/set.c | 19 ++++++++---- encoder/set.h | 2 +- 6 files changed, 143 insertions(+), 14 deletions(-) commit c010ba1dde8fb861417e30c0d4316c6cb33064dd Author: Loren Merritt 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 common/common.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit 05e6cf0516ff5646c841fa66d96be5e0264b0daa Author: Loren Merritt 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 encoder/macroblock.c | 35 +++++++++++++++++++++++++++++------ 1 files changed, 29 insertions(+), 6 deletions(-) commit bc478923aefe1e4aa5e0201b2214f1ed8ad8f719 Author: Loren Merritt 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 encoder/encoder.c | 2 ++ encoder/ratecontrol.c | 12 ++++++++++++ encoder/ratecontrol.h | 1 + 3 files changed, 15 insertions(+), 0 deletions(-) commit 528cbd1f16cd20b3ee8bbfd5b5edf6634a7f4634 Author: Loren Merritt 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 encoder/me.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 429e0603017630feb239e22de3eb279ee02932c9 Author: Loren Merritt 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 encoder/analyse.c | 93 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 63 insertions(+), 30 deletions(-) commit 6fe92323b2e007e3a31714fb5b090b732fc24e62 Author: Loren Merritt 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 encoder/analyse.c | 158 ++++++++++++++++++++++++++++++++++++++++++++--------- x264.c | 6 ++ x264.h | 1 + 3 files changed, 138 insertions(+), 27 deletions(-) commit 322c42ad8ca9ac3d4755e62fadb29c3ef7a4ecf5 Author: Sam Hocevar 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 common/amd64/quant-a.asm | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit ffd008ebdd6ebbf6f83dbf08315f3765a072261a Author: Sam Hocevar 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 configure | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 9187a8f84ba24b2825487971ce94db404303393d Author: Loren Merritt 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 encoder/analyse.c | 2 +- encoder/macroblock.c | 15 ++++----------- 2 files changed, 5 insertions(+), 12 deletions(-) commit d18bbd3b2e28958b9e153b62033a7f66f6fea0ec Author: Loren Merritt 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 common/amd64/quant-a.asm | 143 +++++++++++++++++++++++++++++++++++++++++++- common/i386/quant-a.asm | 149 +++++++++++++++++++++++++++++++++++++++++++++- common/i386/quant.h | 3 + common/macroblock.c | 126 --------------------------------------- common/macroblock.h | 5 -- common/quant.c | 137 ++++++++++++++++++++++++++++++++++++++++++ common/quant.h | 6 ++ encoder/macroblock.c | 12 ++-- tools/checkasm.c | 38 +++++++++++- 9 files changed, 476 insertions(+), 143 deletions(-) commit d447c2d3db71e0b422ed9330ac26410ba9f90622 Author: Loren Merritt 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 encoder/set.c | 2 +- x264.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) commit 87e5994706c76bd628c7e23f0dca95f05e922a7c Author: Loren Merritt 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 common/common.c | 2 +- encoder/encoder.c | 19 +++++++++++++++++- encoder/ratecontrol.c | 2 + encoder/set.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ encoder/set.h | 1 + x264.h | 20 ++++++++++++++++++- 6 files changed, 92 insertions(+), 3 deletions(-) commit 1e80b69b3717e019f6cbab071582f9812b85fa4d Author: Loren Merritt 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 encoder/analyse.c | 4 ++++ encoder/rdo.c | 4 +--- 2 files changed, 5 insertions(+), 3 deletions(-) commit 5c43fb3b66b5ccf4ae0c4bd63599bf3f64d4557e Author: Loren Merritt 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 common/cabac.c | 12 ++ common/cabac.h | 2 + common/common.h | 3 + common/dct.h | 48 ++++++++ common/set.c | 9 ++ encoder/analyse.c | 4 +- encoder/cabac.c | 32 +++--- encoder/encoder.c | 5 +- encoder/macroblock.c | 48 ++++++-- encoder/macroblock.h | 7 + encoder/rdo.c | 308 ++++++++++++++++++++++++++++++++++++++++++++++++++ x264.c | 11 ++- x264.h | 3 +- 13 files changed, 460 insertions(+), 32 deletions(-) commit 3f1ed7cee623b64fd66fc60db62275df23177966 Author: Loren Merritt 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 common/common.h | 26 +++++++++++++++----------- common/dct.c | 2 +- common/i386/dct-c.c | 1 - encoder/encoder.c | 20 ++++---------------- 4 files changed, 20 insertions(+), 29 deletions(-) commit 662e56b59eee5ddc15e5fb8c53c7cd49bcc39eeb Author: Loren Merritt 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 encoder/me.c | 17 +++++++++++------ 1 files changed, 11 insertions(+), 6 deletions(-) commit 2107a4f7204f0a764830b562e86d50f2b979a0b8 Author: Loren Merritt 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 encoder/me.c | 201 ++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 117 insertions(+), 84 deletions(-) commit 01c05a79022c2349ddba2f3e101f8a1d26500906 Author: Loren Merritt 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 x264.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit db67b818250aa75680df5ff15ff58418e850d321 Author: Loren Merritt 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 encoder/cabac.c | 76 ++++++++++++++++--------------------------------------- 1 files changed, 22 insertions(+), 54 deletions(-) commit 89d2c6a13fc2c864191af2ad86d07dee69a6c75b Author: Loren Merritt 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 common/common.h | 1 - common/frame.c | 34 +++++++++++++++++----------------- encoder/me.c | 4 ++-- 3 files changed, 19 insertions(+), 20 deletions(-) commit d13a18680572b8ae1075f9a2d53bf57b51eab6ec Author: Loren Merritt 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 common/amd64/dct-a.asm | 631 ++++++++++++++++-------------------------------- common/dct.c | 18 ++- common/i386/dct-c.c | 36 +++- common/i386/dct.h | 6 + 4 files changed, 263 insertions(+), 428 deletions(-) commit 08e19ed8f28e5bb1fdd951eb2bab04c0248f9af1 Author: Loren Merritt 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 encoder/ratecontrol.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 9617e25c2ea08d029decb106fa7cf51a13a03706 Author: Loren Merritt 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 x264.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) commit d484bce60eb3405b2d1bc666a61120dea6bbe294 Author: Loren Merritt 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 doc/ratecontrol.txt | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 44 insertions(+), 0 deletions(-) commit 5aced82614a4be3106eec04ba983d122e9e7f668 Author: Loren Merritt 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 doc/dct.txt | 111 ----------------------------------------------------------- 1 files changed, 0 insertions(+), 111 deletions(-) commit b179e4740f7624ea1be4db0682a658fe6822a9e8 Author: Loren Merritt 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 encoder/set.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 108f197cb62a9f29b0b671e2eceafd8ccc4ded21 Author: Loren Merritt 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 encoder/macroblock.c | 33 +++++---------------------------- 1 files changed, 5 insertions(+), 28 deletions(-) commit fa01979f7260543c845d0823d4a7c0774bcf5a16 Author: Loren Merritt 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 encoder/ratecontrol.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 8d857c5601be89dc32d995c519c096805249f77f Author: Loren Merritt 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 common/macroblock.h | 10 ++++++++++ encoder/cabac.c | 34 ++++++++++++++++------------------ 2 files changed, 26 insertions(+), 18 deletions(-) commit c636f90355a1855b0b2576d79d34541c063daee5 Author: Loren Merritt 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 common/cabac.c | 214 ++++++++++++++++++++++---------------------------------- common/cabac.h | 16 +---- 2 files changed, 85 insertions(+), 145 deletions(-) commit 5167ebb2bcfdd525d47abc91329d3588feab0b5f Author: Loren Merritt 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 common/cabac.c | 59 ----------------------------------------------------- common/cabac.h | 5 ---- encoder/encoder.c | 22 +------------------ 3 files changed, 1 insertions(+), 85 deletions(-) commit 817ef1468a80b20a76b4c12af44e3b85339880d5 Author: Eric Petit 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 common/frame.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) commit 109ae085288c0068e2f40bfffd41070bd25dfa8b Author: Loren Merritt 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 Makefile | 6 +- common/amd64/deblock-a.asm | 494 +++++++++++++++++++++++++++++++++++++++ common/common.h | 1 + common/frame.c | 547 ++++++++++++++++++-------------------------- common/frame.h | 18 ++ common/i386/deblock-a.asm | 527 ++++++++++++++++++++++++++++++++++++++++++ encoder/encoder.c | 1 + tools/checkasm.c | 63 +++++ 8 files changed, 1326 insertions(+), 331 deletions(-) commit 166601503800e00a33d88eb488da744a486ecb77 Author: Loren Merritt 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 encoder/encoder.c | 1 + encoder/ratecontrol.c | 56 ++++++++++++++++++++++++++++++++++++++++-------- vfw/codec.c | 2 + vfw/x264vfw.h | 2 + x264.c | 12 ++++++---- x264.h | 3 +- 6 files changed, 60 insertions(+), 16 deletions(-) commit 75832019417943ed6a68b99bd75f5ef7efe1d998 Author: Loren Merritt 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 Makefile | 4 +- testing/checkasm.c | 418 -------- testing/edge-detec.c | 2733 ----------------------------------------------- testing/macroblock-dz.c | 2266 --------------------------------------- tools/checkasm.c | 418 ++++++++ 5 files changed, 421 insertions(+), 5418 deletions(-) commit 6347263823e0fce26593fe36d812ba95931ebcb0 Author: Loren Merritt 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 common/set.h | 6 + encoder/set.c | 7 - testing/checkasm.c | 392 +++++++++++++++++++++++++++++----------------------- 3 files changed, 228 insertions(+), 177 deletions(-) commit 57900a1b0caa43372433b7bca25b26d764fadaff Author: Loren Merritt 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 common/amd64/pixel-sse2.asm | 44 +++++++++++++++++++++--------------------- 1 files changed, 22 insertions(+), 22 deletions(-) commit 360eb55eda428cba8d6d4e411ff87e0d5dedbf05 Author: Loren Merritt 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 Makefile | 2 + build/win32/libx264.vcproj | 1623 +++++++++++++++++++++++++++++++++++++++++++ build/win32/x264.vcproj | 242 +++++++ common/amd64/amd64inc.asm | 266 +++++++ common/amd64/cpu-a.asm | 54 +- common/amd64/dct-a.asm | 199 +++--- common/amd64/mc-a.asm | 356 ++++------ common/amd64/mc-a2.asm | 120 ++-- common/amd64/pixel-a.asm | 242 +++---- common/amd64/pixel-sse2.asm | 78 +-- common/amd64/predict-a.asm | 89 +-- common/amd64/quant-a.asm | 125 ++-- x264.h | 1 + 13 files changed, 2707 insertions(+), 690 deletions(-) commit 6d969739baac6b9f7e9bcb44c3b7dbc21890dd1b Author: Loren Merritt 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 build/cygwin/Makefile | 132 ------------------------------------------------- 1 files changed, 0 insertions(+), 132 deletions(-) commit 0ddc9d5524a48882ac804948775fd7a35b3a07da Author: Loren Merritt 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 common/common.c | 1 + encoder/encoder.c | 7 +++++-- encoder/ratecontrol.c | 34 +++++++++++++++++++++++++++------- x264.c | 6 ++++++ x264.h | 5 +++-- 5 files changed, 42 insertions(+), 11 deletions(-) commit 06f1dafd17e9ebb1cd9d271fd72eb0c04e2337bc Author: Eric Petit 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 configure | 40 ++++++++++++++++++++++++---------------- 1 files changed, 24 insertions(+), 16 deletions(-) commit 2ac5fe040b35546a7d7bc0b463fd4a9cb268ff3b Author: Loren Merritt 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 common/bs.h | 47 -- common/cpu.c | 94 ---- common/i386/dct-c.c | 225 ---------- common/i386/mc-c.c | 993 ------------------------------------------ common/i386/predict.c | 33 -- common/mc.c | 136 ------ common/set.h | 17 - encoder/encoder.c | 37 -- encoder/macroblock.c | 102 ----- encoder/ratecontrol.c | 16 - encoder/set.c | 76 ---- encoder/slicetype_decision.c | 101 +---- extras/getopt.c | 8 - vfw/driverproc.c | 16 - x264.c | 140 ------ x264.h | 16 - 16 files changed, 25 insertions(+), 2032 deletions(-) commit 1647e6d6e147b3e2072b4f36b1ed27df0715ff0d Author: Loren Merritt 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 common/bs.h | 59 ++++++++++++++++++++++++----------------------------------- 1 files changed, 24 insertions(+), 35 deletions(-) commit b659ca6f53df6f7b1b423112ef0f95e7eb166ef5 Author: Loren Merritt 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 common/bs.h | 1 + common/cabac.c | 23 ++++++++++++++++++++--- common/cabac.h | 3 +++ common/common.h | 1 + encoder/cabac.c | 42 +++++++++++++++++++++++++----------------- encoder/cavlc.c | 17 ++++++++++++++--- encoder/rdo.c | 43 +++++++++++++++++++++++++++++++++++-------- 7 files changed, 99 insertions(+), 31 deletions(-) commit 48c2e935e3638a38c988b11204ff52a85bf48fc9 Author: Loren Merritt 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 encoder/analyse.c | 32 +++++++------- encoder/me.c | 130 +++++++++++++++++++++++++++++++--------------------- 2 files changed, 93 insertions(+), 69 deletions(-) commit a8ac858b06ddca09acd98c35456b1008412cbe94 Author: Loren Merritt 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 vfw/codec.c | 3 +++ vfw/config.c | 8 +++++++- vfw/resource.h | 1 + vfw/resource.rc | 21 +++++++++++---------- vfw/x264vfw.h | 1 + 5 files changed, 23 insertions(+), 11 deletions(-) commit d69837d312aa09c020416008c26f7008783d8c7f Author: Loren Merritt 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 common/frame.c | 28 ++++++++++++++++++++++++++++ common/frame.h | 1 + common/pixel.c | 37 +++++++++++++++++++++++++++++++++++++ common/pixel.h | 1 + encoder/encoder.c | 46 +++++++++++++++++----------------------------- encoder/set.c | 30 ++++++++++-------------------- 6 files changed, 94 insertions(+), 49 deletions(-) commit 67f2a4791ca35a019dd645818c2c95f2b88c936e Author: Loren Merritt 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 vfw/codec.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 0bde6ae12b9eda914fa51da95bef8beae09ea8f0 Author: Loren Merritt 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 common/amd64/dct-a.asm | 2 -- common/amd64/mc-a.asm | 4 ---- common/amd64/mc-a2.asm | 1 - common/i386/dct-a.asm | 2 -- common/i386/mc-a.asm | 4 ---- common/i386/mc-a2.asm | 1 - 6 files changed, 0 insertions(+), 14 deletions(-) commit 015ac5865c81ee94125493aca28d0ccbc0f639b4 Author: Loren Merritt 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 vfw/codec.c | 10 +- vfw/config.c | 520 +++++++++++++++++++++++++++++----------------------------- 2 files changed, 265 insertions(+), 265 deletions(-) commit 54d413b9ad22244599489a0c50e99fafa07b89a1 Author: Loren Merritt 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 vfw/config.c | 15 ++++--- vfw/resource.rc | 133 ++++++++++++++++++++++++++++--------------------------- 2 files changed, 76 insertions(+), 72 deletions(-) commit a75462ead66beb222aae1efe1958848c26dc4be6 Author: Loren Merritt 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 common/common.h | 3 ++ common/frame.c | 20 +---------- common/macroblock.c | 76 ------------------------------------------ common/macroblock.h | 26 ++++++++++++++ common/predict.c | 1 - common/visualize.c | 1 - encoder/analyse.c | 8 ---- encoder/cabac.c | 16 --------- encoder/cavlc.c | 16 --------- encoder/macroblock.c | 26 -------------- encoder/ratecontrol.c | 1 - encoder/set.c | 1 - encoder/slicetype_decision.c | 1 - 13 files changed, 30 insertions(+), 166 deletions(-) commit 1c6ccbf543ac7725e46f94bdb24fa6784d315962 Author: Loren Merritt 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 common/cabac.c | 6 ------ common/cabac.h | 2 -- encoder/encoder.c | 15 ++++++++++++--- 3 files changed, 12 insertions(+), 11 deletions(-) commit acee2d5168a39f301b7cda1d4effe943e321e1f8 Author: Loren Merritt 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 common/common.h | 1 + common/frame.c | 19 ++++++++++++------- encoder/encoder.c | 5 ++++- 3 files changed, 17 insertions(+), 8 deletions(-) commit 938c52d2a7285c5872eea2f5d165a1b26699b349 Author: Loren Merritt 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 common/common.h | 3 +++ common/macroblock.c | 11 +++++++---- encoder/analyse.c | 11 +++-------- encoder/cabac.c | 10 ++++++---- encoder/cavlc.c | 8 ++++---- encoder/encoder.c | 7 ++++--- encoder/macroblock.c | 19 ------------------- 7 files changed, 27 insertions(+), 42 deletions(-) commit a0012bf38d366b1b97e571fe27c665139f3c631c Author: Loren Merritt 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 encoder/analyse.c | 264 +++++++++++++++++++++++++++++++++++++++------------- encoder/me.c | 7 +- encoder/me.h | 2 + x264.c | 6 + x264.h | 13 +-- 5 files changed, 217 insertions(+), 75 deletions(-) commit 68592115c77b8fcd091b32f2d39d8e129a95bbef Author: Loren Merritt 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 x264.c | 46 ++++++++++++++-------------------------------- x264.h | 3 +++ 2 files changed, 17 insertions(+), 32 deletions(-) commit 4b925a1cfbdd6613449b70283cd6f80adbeb1f27 Author: Loren Merritt 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 common/common.c | 7 ++ common/set.h | 15 +++++ doc/vui.txt | 178 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ encoder/set.c | 69 +++++++++++++++++++--- x264.c | 100 +++++++++++++++++++++++++++++-- x264.h | 12 ++++- 6 files changed, 367 insertions(+), 14 deletions(-) commit aebad793a69d175b139da28aafff6dbfec81d7c1 Author: Sam Hocevar 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 common/amd64/mc-a.asm | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit db80497dd2e8bb0cd02c45d73ca74294b0671b61 Author: Loren Merritt 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 common/macroblock.c | 80 +++++++++++++++++++++++++++++++------------------- common/macroblock.h | 2 +- encoder/analyse.c | 4 +- 3 files changed, 52 insertions(+), 34 deletions(-) commit 7e165477fb69bc107e3fcfdac3e2cb53541870f6 Author: Loren Merritt 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 encoder/cabac.c | 115 +++++++++++++++++++----------------------------------- 1 files changed, 41 insertions(+), 74 deletions(-) commit 4c8ccfe6de4a44cd46bcaf1fc17ae90bfe34d958 Author: Loren Merritt 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 encoder/encoder.c | 1 + encoder/ratecontrol.c | 13 ++----------- matroska.h | 2 +- x264.c | 22 +++++++++++----------- x264.h | 12 ++++++------ 5 files changed, 21 insertions(+), 29 deletions(-) commit ce3a422466b4df055f5b67116483eee20676939c Author: Loren Merritt 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 x264.c | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) commit cb88eb7bf7756e25123cdfffdbdc49abc169ef33 Author: Loren Merritt 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 common/common.h | 4 ++ common/macroblock.h | 4 ++ encoder/encoder.c | 91 +++++++++++++++++++++++++++++++++++++++++---------- x264.c | 4 +- 4 files changed, 83 insertions(+), 20 deletions(-) commit bab1d61dd306199747dd8f949bde2a49b20c6f70 Author: Loren Merritt 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 encoder/encoder.c | 5 +---- 1 files changed, 1 insertions(+), 4 deletions(-) commit 31a36aa8621c7bd0264b87421e8d0a490d7c45f5 Author: Loren Merritt 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 common/i386/mc-a.asm | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 458e63cadb0c6295273fd85def3aca0098a309e3 Author: Loren Merritt 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 common/amd64/mc-a.asm | 96 +++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc-a.asm | 103 +++++++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc-c.c | 45 +++++++++++++++++++++ 3 files changed, 244 insertions(+), 0 deletions(-) commit 3112619429c0cf781817867f0d124c882740d66f Author: Loren Merritt 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 common/amd64/mc-a.asm | 32 ++++++++---- common/i386/mc-a.asm | 29 ++++++----- common/i386/mc-c.c | 1 + common/macroblock.c | 12 ++-- common/mc.c | 105 ++++++++++++++++++++++++++++++++++++++++++ common/mc.h | 3 + common/pixel.c | 105 ------------------------------------------ common/pixel.h | 4 -- encoder/analyse.c | 8 ++-- encoder/slicetype_decision.c | 2 +- 10 files changed, 157 insertions(+), 144 deletions(-) commit 82d5e6faa6aa8ca8888481019513782ef9701240 Author: Loren Merritt 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 common/macroblock.c | 4 ++-- encoder/encoder.c | 12 +++++------- encoder/set.c | 4 +++- 3 files changed, 10 insertions(+), 10 deletions(-) commit 4223e3874f7268d9ea36f32a2150c3a123881f4b Author: Loren Merritt 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 encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 2a3417b0fe4a806480e49a6dd13ab8d625b03466 Author: Sam Hocevar 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 common/amd64/dct-a.asm | 31 +++++++++++++++++++------------ common/amd64/mc-a.asm | 10 ++++++++-- common/amd64/mc-a2.asm | 30 ++++++++++++++++++------------ common/amd64/pixel-sse2.asm | 8 +++++++- 4 files changed, 52 insertions(+), 27 deletions(-) commit 77997bffd6fdb3727c31f787767aafa11bc62266 Author: Sam Hocevar 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 common/amd64/mc-a.asm | 14 ++++---------- 1 files changed, 4 insertions(+), 10 deletions(-) commit b2e9af98bf5f44363f3877baf7bfa6cce4d64805 Author: Sam Hocevar 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 configure | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 1b16298a215393dc741fabb0e7212c0b0ee53846 Author: Loren Merritt 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 vfw/config.c | 1033 +++++++++++++++++++++++++++---------------------------- vfw/resource.h | 20 +- vfw/resource.rc | 398 ++++++++++------------ vfw/x264.bmp | Bin 0 -> 12366 bytes vfw/x264vfw.h | 8 +- 5 files changed, 713 insertions(+), 746 deletions(-) commit 35f641710900a39ea208860befc9cfe35043f7cd Author: Loren Merritt 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 configure | 2 +- x264.c | 66 ++++++++++++++++++++++++++++++------------------------------ 2 files changed, 34 insertions(+), 34 deletions(-) commit cfebeac1a475f4a2ee57e5dd3cd1ff0c560f38db Author: Loren Merritt 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 common/amd64/quant-a.asm | 422 ++++++++++++++++++++++++++++++++-------------- common/i386/quant-a.asm | 422 ++++++++++++++++++++++++++++++++-------------- common/i386/quant.h | 53 ++++++ common/quant.c | 96 +++++++---- 4 files changed, 700 insertions(+), 293 deletions(-) commit 49ac5e2f921ef940701e31ca7e6246e44480783b Author: Loren Merritt 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 common/amd64/pixel-a.asm | 578 ++++++++++++++++++---------------------------- common/i386/pixel-a.asm | 543 ++++++++++++++++++------------------------- 2 files changed, 443 insertions(+), 678 deletions(-) commit 76192dcb1cc7720a1e633ba6b0fbdb2fbacbe9bb Author: Loren Merritt 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 encoder/analyse.c | 24 +++++++++++------------- encoder/macroblock.c | 4 ++++ 2 files changed, 15 insertions(+), 13 deletions(-) commit 690a02b1c9132bfecc88068de757e6b0e5ef7b84 Author: Steve Lhomme 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 x264.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) commit 8a5de70e926c334bcf422d21e8995b7be6ecf496 Author: Sam Hocevar 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 configure | 20 +++++++++++++++++++- 1 files changed, 19 insertions(+), 1 deletions(-) commit c4ffed4986fe4706c0c5c2b514ce95668f0b8393 Author: Loren Merritt 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 Makefile | 7 +- common/amd64/quant-a.asm | 219 ++++++++++++++++++++++++++++++++++++++++++++++ common/common.h | 2 + common/i386/quant-a.asm | 219 ++++++++++++++++++++++++++++++++++++++++++++++ common/quant.c | 111 +++++++++++++++++++++++ common/quant.h | 36 ++++++++ encoder/encoder.c | 1 + encoder/macroblock.c | 95 ++++++--------------- 8 files changed, 618 insertions(+), 72 deletions(-) commit 16f423a00ee91f692d441a31fa99394543995582 Author: Loren Merritt 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 Makefile | 6 +- common/amd64/pixel-sse2.asm | 516 +++++++++++++++++++++++++++++++++++++++++ common/i386/pixel-sse2.asm | 533 +++++++++++++++++++++++++++++++++++++++++++ common/i386/pixel.h | 12 + common/pixel.c | 22 ++ 5 files changed, 1087 insertions(+), 2 deletions(-) commit 6db6362c9d558d0acea9be1975344d217f453ab9 Author: Loren Merritt 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 common/i386/dct-a.asm | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) commit 2d05702f88d1058b2ecd3945cd01269eb86829bb Author: Loren Merritt 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 common/amd64/dct-a.asm | 420 +++++++++++++++++++++++++++++++++++++++++++++- common/dct.c | 6 + common/i386/dct-a.asm | 437 +++++++++++++++++++++++++++++++++++++++++++++++- common/i386/dct-c.c | 42 +++++ common/i386/dct.h | 6 + 5 files changed, 898 insertions(+), 13 deletions(-) commit 2e5b0b93384f8d48e32b26beb6badb8a3236c29b Author: Eric Petit 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 x264.h | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) commit 2a6e7a685391f4ae465c79111583c91fb26cb5a8 Author: Eric Petit 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 x264.h | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) commit 0403fed87a9cea867afa55d45500f6396c326659 Author: Loren Merritt 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 vfw/resource.rc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 48af1d03ed42e14b51f5e9c6986bd910aaab5b7a Author: Loren Merritt 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 x264.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 796da8ed7e5ab52eb64d232c89e7e38bfa77215c Author: Loren Merritt 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 common/macroblock.c | 14 +++++++++++--- x264.h | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) commit 1459ac0dbca3f1f31557d9d8bb8911cb980aad6b Author: Laurent Aimar 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 matroska.c | 249 ++++++++++++++++++++++++++++++------------------------------ matroska.h | 2 +- x264.c | 28 +++++--- 3 files changed, 143 insertions(+), 136 deletions(-) commit 47673d940a290207345bb13f08c371aa435e92a2 Author: Laurent Aimar 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 tools/xyuv.c | 232 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 210 insertions(+), 22 deletions(-) commit d9218cb35688033a78f936e963a4ca3572cfdb29 Author: Eric Petit 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 Makefile | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 205910672b5686174b7d6f0a1960d53cd4bd9f9b Author: Loren Merritt 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 encoder/analyse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d945b153baa4a81cb40a92e4c09b0e2f16081408 Author: Laurent Aimar 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 Makefile | 8 +- matroska.c | 525 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ matroska.h | 44 +++++ x264.c | 246 ++++++++++++++++++++++++++++ 4 files changed, 819 insertions(+), 4 deletions(-) commit 5552052c55d550b48cb43d33cb3655ea53e4a273 Author: Laurent Aimar 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 common/pixel.c | 5 +- common/sparc/pixel.asm | 939 +++++++++++++++++++++++++++++++++++++++++++++++- common/sparc/pixel.h | 3 + 3 files changed, 945 insertions(+), 2 deletions(-) commit d2715116f9ef8d96d78e81010eda7fdee83cc212 Author: Laurent Aimar 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 encoder/analyse.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit f52a280836003583a11b93883e68ac23881355ac Author: Laurent Aimar 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 configure | 4 ++++ encoder/ratecontrol.c | 2 +- 2 files changed, 5 insertions(+), 1 deletions(-) commit 300e93ef08f5b389da3942474da8ec6fb9c62fda Author: Laurent Aimar 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 Makefile | 6 ++ common/pixel.c | 6 ++ common/sparc/pixel.asm | 150 ++++++++++++++++++++++++++++++++++++++++++++++++ common/sparc/pixel.h | 29 +++++++++ configure | 9 +++- 5 files changed, 199 insertions(+), 1 deletions(-) commit 1a0920f5c5c482d18dcbc775a542cb1529d019d0 Author: Loren Merritt 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 encoder/analyse.c | 60 ++++++++++++++++++++++++++++------------------------ 1 files changed, 32 insertions(+), 28 deletions(-) commit 0f34713af75421dcf3db067511d26d08ebe36134 Author: Loren Merritt 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 common/amd64/pixel-a.asm | 44 ++++++++++++++++---------------------------- common/i386/pixel-a.asm | 18 +++++++----------- 2 files changed, 23 insertions(+), 39 deletions(-) commit 86a01ef552f00fcc3225776bd41d7ebfb6507d0b Author: Eric Petit 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 encoder/encoder.c | 16 +++++++++------- 1 files changed, 9 insertions(+), 7 deletions(-) commit da60272bf0c4b65128d673daef4d4d7c09c13ae3 Author: Laurent Aimar 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 Makefile | 7 +++++++ configure | 11 +++++++++++ encoder/ratecontrol.c | 2 +- extras/getopt.c | 4 ++++ 4 files changed, 23 insertions(+), 1 deletions(-) commit 95c407157830f714c4914ceaeb850bebd198d14b Author: Laurent Aimar 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 common/i386/pixel-a.asm | 30 +++++++++++------------------- 1 files changed, 11 insertions(+), 19 deletions(-) commit 90793358d78f5ad79aef3cc09ea80d5ea81bb53b Author: Loren Merritt 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 tools/q_matrix_jvt.cfg | 68 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 68 insertions(+), 0 deletions(-) commit 7b1b45e8a6fc3e36447b7626617978dd7c9d5958 Author: Loren Merritt 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 common/common.c | 31 +++++++++++++++++++++ common/common.h | 3 ++ common/set.c | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++ common/set.h | 1 + encoder/encoder.c | 7 +++++ x264.c | 7 +++++ x264.h | 3 +- 7 files changed, 127 insertions(+), 1 deletions(-) commit 7a77a1e7295b99a418c4fad2a5ab91f0dc896115 Author: Loren Merritt 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 encoder/encoder.c | 4 +++- x264.c | 4 ++++ 2 files changed, 7 insertions(+), 1 deletions(-) commit ca8ead2eb1ac51d9784af6fe7a6a3df1fbf10ada Author: Loren Merritt 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 tools/avc2avi.c | 29 ++++++++++++++++++++++++++++- x264.h | 2 +- 2 files changed, 29 insertions(+), 2 deletions(-) commit 1ab01bbc01bc482e9891fe843e1ddd14b7625540 Author: Loren Merritt 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 Makefile | 2 +- common/common.c | 8 ++++ common/common.h | 5 ++ common/macroblock.c | 114 ++++++++++++++++++++++++++++---------------------- common/macroblock.h | 21 +++++++-- common/set.c | 107 ++++++++++++++++++++++++++++++++++++++++++++++ common/set.h | 67 +++++++++++++++++++++++++++++ encoder/encoder.c | 6 +++ encoder/macroblock.c | 114 +++++++++++++------------------------------------- encoder/set.c | 78 +++++++++++++++++++++++++++++++--- x264.c | 109 +++++++++++++++++++++++++++++++++++++++++++++++ x264.h | 10 ++++ 12 files changed, 495 insertions(+), 146 deletions(-) commit 2c4b31daae223b688feb4a6fdef36fce3b1bc6f0 Author: Loren Merritt 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 vfw/resource.rc | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 396133936510d57bc2054dd1c1d3d92fa0eb5495 Author: Loren Merritt 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 common/common.h | 1 + common/pixel.h | 1 + common/set.h | 3 ++ encoder/analyse.c | 39 ++++++++++++------------ encoder/encoder.c | 18 +++++++++++ encoder/macroblock.c | 66 ++++++++++++++++++++++++++++++++++++++++-- encoder/me.c | 12 ++++---- encoder/set.c | 7 +++- encoder/slicetype_decision.c | 4 +- x264.c | 2 +- x264.h | 2 +- 11 files changed, 121 insertions(+), 34 deletions(-) commit 2f9a70c0a5b257eb1413601df191556547f307d5 Author: Loren Merritt 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 vfw/config.c | 25 ++++++++++++++++++------- 1 files changed, 18 insertions(+), 7 deletions(-) commit 15ecd54fc67e75ccd380a7e36720f1a0c2514f94 Author: Loren Merritt 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 common/cabac.h | 4 + common/common.h | 1 + common/macroblock.c | 2 +- encoder/analyse.c | 491 +++++++++++++++++++++++++++++++++----------------- encoder/cabac.c | 384 ++++++++++++++++++++------------------- encoder/cavlc.c | 4 +- encoder/encoder.c | 4 +- encoder/macroblock.c | 37 ++--- encoder/macroblock.h | 2 +- encoder/me.c | 3 +- encoder/rdo.c | 62 +++++++ x264.c | 3 +- x264.h | 2 +- 13 files changed, 610 insertions(+), 389 deletions(-) commit 41c37d9e05416a71c2499f788ea268032da0a6c4 Author: Loren Merritt 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 vfw/codec.c | 18 +++-- vfw/config.c | 217 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- vfw/resource.h | 20 +++++- vfw/resource.rc | 217 +++++++++++++++++++++++++++++++++++++------------------ vfw/x264vfw.h | 13 ++++ 5 files changed, 399 insertions(+), 86 deletions(-) commit a296ffcc5aa892d5281a9e6b2b4e863dd94e0b69 Author: Loren Merritt 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 vfw/codec.c | 9 +++++++-- vfw/config.c | 26 ++++++++++++++++++++++++++ vfw/resource.h | 6 +++++- vfw/resource.rc | 30 +++++++++++++++++++----------- vfw/x264vfw.h | 5 +++++ 5 files changed, 62 insertions(+), 14 deletions(-) commit 7832f017704235b31c7a33b54a06ab196c1dcc4a Author: Loren Merritt 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 vfw/codec.c | 2 ++ vfw/config.c | 15 +++++++++++++++ vfw/resource.h | 4 +++- vfw/resource.rc | 14 ++++++++------ vfw/x264vfw.h | 1 + 5 files changed, 29 insertions(+), 7 deletions(-) commit 8c6e66479e66da8a9a79eacfec9fc2ff39a24464 Author: Loren Merritt 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 encoder/encoder.c | 15 ++++++++------- 1 files changed, 8 insertions(+), 7 deletions(-) commit 96813e36dc54e1e9866dad24a8c0cc7a748f0d4a Author: Loren Merritt 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 vfw/build/cygwin/Makefile | 13 +++++ vfw/driverproc.def | 2 +- vfw/installer/win.bmp | Bin 0 -> 26494 bytes vfw/installer/x264-conf.nsi | 114 +++++++++++++++++++++++++++++++++++++++++++ vfw/installer/x264vfw.ico | Bin 0 -> 6966 bytes 5 files changed, 128 insertions(+), 1 deletions(-) commit 8025723ee4a1c99e3e833ce963d05e5eb8c74606 Author: Loren Merritt 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 common/common.h | 2 ++ encoder/encoder.c | 40 ++++++++++++++++++++++++++-------------- 2 files changed, 28 insertions(+), 14 deletions(-) commit 26aa962acdc90204f7c915be91ead00ebcc5f30d Author: Loren Merritt 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 common/common.c | 2 +- encoder/set.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit c4f5de5230b584189c57db18f68d73f19d653d00 Author: Loren Merritt 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 common/cabac.c | 6 +++--- encoder/encoder.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) commit 2b5a6b2bd914a9d3ff9c304062c93f28c58ff532 Author: Loren Merritt 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 encoder/cabac.c | 133 ++++++++++++++----------------------------------------- 1 files changed, 34 insertions(+), 99 deletions(-) commit 916136c96d49961ff944b6ef2feeedfc7a90af98 Author: Loren Merritt 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 encoder/analyse.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 8614594835ce25879c0d01ca88625ea444d577f2 Author: Loren Merritt 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 common/common.c | 3 +- common/common.h | 6 ++- common/dct.c | 34 ++++++++--------- common/macroblock.c | 21 ++++++----- common/macroblock.h | 7 +++- common/pixel.c | 97 ++++++++++++++++++++++++++++++++++++++++++++++--- common/pixel.h | 11 +++--- common/predict.c | 38 ++++++++++---------- encoder/analyse.c | 39 +++++++++++++++++++- encoder/cabac.c | 10 ++--- encoder/cavlc.c | 58 +++++++++++++---------------- encoder/encoder.c | 15 ++++---- encoder/macroblock.c | 23 ++++++------ encoder/me.c | 2 +- encoder/ratecontrol.c | 10 +++-- x264.c | 17 ++++++--- 16 files changed, 259 insertions(+), 132 deletions(-) commit 6bf1398b824c013184548277eb8f2dbccd4d6fc5 Author: Eric Petit 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 configure | 5 +---- encoder/encoder.c | 6 ++++++ 2 files changed, 7 insertions(+), 4 deletions(-) commit 46a487299946e8a2130c3629bfaac1252ff068c4 Author: Loren Merritt 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 common/dct.c | 175 +++++++++++++++++++++++++++------------------------------- 1 files changed, 82 insertions(+), 93 deletions(-) commit 398a6bf064d7ce46b0cb0edc66323473009d5e06 Author: Loren Merritt 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 common/common.h | 4 ++-- common/set.h | 10 +++++++--- encoder/set.c | 4 ++++ 3 files changed, 13 insertions(+), 5 deletions(-) commit 1729616639eada4977171af3611f3040113f1f01 Author: Loren Merritt 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 encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 1ab45c8f7411f7b4453ddff66919910e823ed33b Author: Loren Merritt 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 common/amd64/predict-a.asm | 6 +- common/cabac.c | 91 +++++++++- common/cabac.h | 3 +- common/common.c | 2 +- common/common.h | 18 ++- common/dct.c | 140 ++++++++++++++- common/dct.h | 5 + common/frame.c | 30 +++- common/i386/predict-a.asm | 6 +- common/i386/predict.c | 30 ++-- common/i386/predict.h | 2 +- common/macroblock.c | 169 ++++++++++++++++-- common/macroblock.h | 64 ++++--- common/predict.c | 293 +++++++++++++++++++++++++++-- common/predict.h | 28 +++- common/set.h | 9 +- common/visualize.c | 31 ++-- encoder/analyse.c | 179 ++++++++++++------ encoder/cabac.c | 123 +++++++------ encoder/cavlc.c | 29 +++- encoder/encoder.c | 46 +++--- encoder/macroblock.c | 420 +++++++++++++++++++++++++----------------- encoder/macroblock.h | 21 ++ encoder/set.c | 29 +++- encoder/slicetype_decision.c | 2 +- x264.h | 9 +- 26 files changed, 1349 insertions(+), 436 deletions(-) commit e46db68534f54a52c9df7595d8bd8fd4c8b21b53 Author: Loren Merritt 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 common/common.h | 2 ++ common/macroblock.c | 40 +++++++++++++++++++++++++--------------- encoder/analyse.c | 31 ++++++++++++++----------------- 3 files changed, 41 insertions(+), 32 deletions(-) commit 7f988086c20dc28cafdec793af7900fcb477a25a Author: Loren Merritt 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 common/macroblock.c | 25 ++++++++++--------------- encoder/encoder.c | 34 ++++++++++++++++++---------------- 2 files changed, 28 insertions(+), 31 deletions(-) commit b1f4d5b12789e6d608288b71ebefa59acf4fba86 Author: Måns Rullgård 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 Makefile | 9 ++++----- configure | 27 +++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 5 deletions(-) commit c77e709785fab74313a6c443c4f2f00fb9a86b70 Author: Loren Merritt 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 configure | 4 ++-- vfw/build/cygwin/Makefile | 7 +------ 2 files changed, 3 insertions(+), 8 deletions(-) commit e85db920bb31a699b38c057f51a3eb68bb1b719d Author: Eric Petit 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 configure | 11 ++++++++--- encoder/encoder.c | 7 +++++++ 2 files changed, 15 insertions(+), 3 deletions(-) commit 10851d0e11e90e814c37695aa244f113b21415f2 Author: Loren Merritt 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 common/common.c | 1 + common/common.h | 14 ++++- common/macroblock.c | 39 +++++------- common/macroblock.h | 1 + configure | 12 ++++ encoder/analyse.c | 4 +- encoder/cabac.c | 42 ++++++------ encoder/encoder.c | 177 ++++++++++++++++++++++++++++++++------------------ x264.c | 6 ++ x264.h | 3 +- 10 files changed, 187 insertions(+), 112 deletions(-) commit 36f6321d4dd1b87331bec691ba1bdd3c6ec19b22 Author: Loren Merritt 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 encoder/ratecontrol.c | 83 +++++++++++++++++++++++++++++++++++------------- x264.c | 26 +--------------- x264.h | 3 +- 3 files changed, 63 insertions(+), 49 deletions(-) commit 470e1b284f31e294119c7bc457a762488b34dd60 Author: Loren Merritt 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 encoder/encoder.c | 11 ++-- encoder/me.c | 174 +++++++++++++++++++++++++++++++++++-------------- encoder/ratecontrol.c | 4 + x264.c | 17 +++-- x264.h | 5 +- 5 files changed, 147 insertions(+), 64 deletions(-) commit c8b1a477d2d145698b065d7c20cd10be2f75e94d Author: Loren Merritt 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 common/common.c | 1 + encoder/ratecontrol.c | 62 +++++++++++++++++++++++++++++++++++++++++-------- x264.c | 48 ++++++++++++++++++++++++++++++++++++- x264.h | 14 +++++++++- 4 files changed, 111 insertions(+), 14 deletions(-) commit 0072b802fb9205be3606f45ec9cc6f5111c3ec3e Author: Loren Merritt 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 common/macroblock.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 7c02f091422b68fa01d48645eb2f04bbf409fb79 Author: Loren Merritt 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 encoder/encoder.c | 88 ++++++++++++++++++++++++++++++++++------------------ x264.h | 6 +++- 2 files changed, 62 insertions(+), 32 deletions(-) commit 7fef6efa884a0fdad75181564a916ac94f81e3b3 Author: Eric Petit 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 Makefile | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 809c516abe16bf051beb9d053d673a26906aa43c Author: Eric Petit 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 Makefile | 2 +- common/dct.c | 11 ++ common/ppc/dct.c | 274 ++++++++++++++++++++++++++++++++++++++++++++++++ common/ppc/dct.h | 34 ++++++ common/ppc/pixel.c | 107 +------------------- common/ppc/ppccommon.h | 152 ++++++++++++++++++++++++--- 6 files changed, 456 insertions(+), 124 deletions(-) commit f025abc9c0006c0a67d112afc6daff78c4fa7aad Author: Eric Petit 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 configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 04ded39b9ba4e8f0b983efcc056292f25d544b9f Author: Eric Petit 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 common/ppc/mc.c | 12 ++++++------ common/ppc/pixel.c | 44 ++++++++++++++++++++++---------------------- common/ppc/ppccommon.h | 12 ++++++------ 3 files changed, 34 insertions(+), 34 deletions(-) commit 94829ef6e277315e635df05d669848b5216f00d3 Author: Loren Merritt 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 common/visualize.c | 103 +++++++++++++++++++++++++++------------------------- 1 files changed, 54 insertions(+), 49 deletions(-) commit 4d5c7a033fbe7e7b168381a9fa15e8c2eb1a6a2f Author: Eric Petit 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 common/ppc/pixel.c | 664 +++++++++++++++++++++++++++++++++++++++++------- common/ppc/ppccommon.h | 64 ----- 2 files changed, 571 insertions(+), 157 deletions(-) commit e0bd8066395df74d5f2edc851c048512a0fed4ba Author: Loren Merritt 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 common/common.c | 1 - x264.c | 149 +++++++++++++++++++++++++++++-------------------------- x264.h | 1 - 3 files changed, 78 insertions(+), 73 deletions(-) commit 036494a60f7850c1613c5084fe9a11c7821cb5a7 Author: Loren Merritt 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 Makefile | 5 + common/common.h | 4 + common/display-x11.c | 231 +++++++++++++++++++++++++++++++++++ common/display.h | 38 ++++++ common/visualize.c | 324 ++++++++++++++++++++++++++++++++++++++++++++++++++ common/visualize.h | 33 +++++ configure | 9 ++ encoder/encoder.c | 22 ++++ x264.c | 13 ++ x264.h | 1 + 10 files changed, 680 insertions(+), 0 deletions(-) commit 31c91bd71f1cc7fd0988892657a3574dc534f628 Author: Loren Merritt 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 common/frame.c | 2 +- common/mc.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletions(-) commit 92ea0c5c30a74408e931227765009ef8aaee1542 Author: Loren Merritt 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 common/amd64/mc-a2.asm | 125 +++++++++++++++++++----------------------------- 1 files changed, 50 insertions(+), 75 deletions(-) commit d926e41d04312639d762d79af3867d61ce340591 Author: Eric Petit 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 common/ppc/mc.c | 771 ++++++++++-------------------------------------- common/ppc/pixel.c | 211 ++++++++------ common/ppc/ppccommon.h | 304 ++++++++------------ 3 files changed, 397 insertions(+), 889 deletions(-) commit aecc6ab057616f32eb0643b36db2d5b04d7a07ea Author: Loren Merritt 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 common/common.c | 11 +- common/common.h | 3 + encoder/analyse.c | 1 + encoder/encoder.c | 6 +- encoder/me.c | 3 +- encoder/ratecontrol.c | 639 ++++++++++++++++++++++-------------------- encoder/slicetype_decision.c | 100 +++++-- vfw/codec.c | 10 +- vfw/config.c | 8 +- x264.c | 48 ++-- x264.h | 11 +- 11 files changed, 455 insertions(+), 385 deletions(-) commit 540fba7a1404909074eb08e76b98d7f9d36fd5e9 Author: Loren Merritt 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 encoder/me.c | 41 +++++++++++++++++++++++------------------ 1 files changed, 23 insertions(+), 18 deletions(-) commit dcb0aebebeb197c75fc5f0f49185f6afb6fd90ec Author: Loren Merritt 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 common/i386/mc-a2.asm | 43 ++++++++++++++++++------------------------- 1 files changed, 18 insertions(+), 25 deletions(-) commit 22a567bbe57fec9cf4beacca7517cc6d9139e091 Author: Loren Merritt 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 common/i386/mc-a2.asm | 168 ++++++++++++++++++++++--------------------------- 1 files changed, 75 insertions(+), 93 deletions(-) commit ca4a34dfe0e6d93ce7598dd18c3c6af8c611d7e5 Author: Loren Merritt 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 encoder/ratecontrol.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) commit ab2cdf4b804f9e97a112fa4be96c1306522746e4 Author: Loren Merritt 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 build/win32/libx264.dsp | 77 +++++++++++++++++++++++++++++++++++++++++++++++ common/common.h | 1 + encoder/set.c | 4 ++- vfw/config.c | 7 ++++- x264.c | 4 ++- 5 files changed, 90 insertions(+), 3 deletions(-) commit e0a640413f484d1db034a9ecbd0fa472204f273a Author: Loren Merritt 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 Makefile | 2 +- common/amd64/dct-c.c | 299 ------------- common/amd64/dct.h | 38 -- common/amd64/mc-c.c | 1161 ------------------------------------------------ common/amd64/mc.h | 34 -- common/amd64/pixel.h | 51 --- common/amd64/predict.c | 444 ------------------ common/amd64/predict.h | 31 -- common/cabac.c | 4 +- common/frame.c | 2 +- common/i386/mc-c.c | 33 +- common/i386/predict.c | 2 +- common/mc.c | 37 +- 13 files changed, 32 insertions(+), 2106 deletions(-) commit d2ad6a20941a4f25b69c88d136e7450d10b035be Author: Loren Merritt 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 encoder/set.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 7229a11c2fe117e0511cd76fa264baf25be92a5f Author: Loren Merritt 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 x264.c | 19 ++++++------------- 1 files changed, 6 insertions(+), 13 deletions(-) commit 9b44391701779bfb0d291592d1d81c70bcf6c116 Author: Loren Merritt 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 encoder/encoder.c | 5 +++-- encoder/set.c | 14 +++++--------- 2 files changed, 8 insertions(+), 11 deletions(-) commit 41f9b8134c332599555bb44c3d0b8e94af44ebf9 Author: Loren Merritt 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 Makefile | 9 + common/amd64/cpu-a.asm | 62 +++---- common/amd64/dct-a.asm | 103 +++++------ common/amd64/mc-a.asm | 451 +++++++++++++++++++++----------------------- common/amd64/mc-a2.asm | 249 +++++++++++-------------- common/amd64/pixel-a.asm | 396 +++++++++++++++++++++----------------- common/amd64/predict-a.asm | 111 +++++------- common/cpu.c | 2 +- configure | 3 + 9 files changed, 675 insertions(+), 711 deletions(-) commit 413d8fa90917044e0ffaffb7009ccbc8059c61b0 Author: Loren Merritt 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 common/amd64/cpu-a.asm | 117 +++++ common/amd64/dct-a.asm | 313 ++++++++++++ common/amd64/dct-c.c | 299 ++++++++++++ common/amd64/dct.h | 38 ++ common/amd64/mc-a.asm | 489 +++++++++++++++++++ common/amd64/mc-a2.asm | 402 +++++++++++++++ common/amd64/mc-c.c | 1161 ++++++++++++++++++++++++++++++++++++++++++++ common/amd64/mc.h | 34 ++ common/amd64/pixel-a.asm | 811 +++++++++++++++++++++++++++++++ common/amd64/pixel.h | 51 ++ common/amd64/predict-a.asm | 141 ++++++ common/amd64/predict.c | 444 +++++++++++++++++ common/amd64/predict.h | 31 ++ 13 files changed, 4331 insertions(+), 0 deletions(-) commit 7d35ba6bf080610d8f144f4270e961c69ba14f1c Author: Loren Merritt 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 common/common.c | 2 ++ encoder/encoder.c | 8 ++++++++ encoder/me.c | 46 ++++++++++++++++++++++++++++++---------------- x264.c | 29 +++++++++++++++++++++++++++++ x264.h | 7 ++++++- 5 files changed, 75 insertions(+), 17 deletions(-) commit 0c641421898f5c3087d52abcfd35ab617d101010 Author: Loren Merritt 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 Makefile | 9 +++++---- configure | 22 +++++++++++++++++----- vfw/build/cygwin/Makefile | 2 +- 3 files changed, 23 insertions(+), 10 deletions(-) commit 1519835f0fa218993ed031a2247ec88eb5906dd7 Author: Loren Merritt 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 x264.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit da4c0384503bd7b2fa7752ef2045e5060e5df0cd Author: Loren Merritt 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 x264.c | 44 +++++++++++++++++++++++++++++++++----------- 1 files changed, 33 insertions(+), 11 deletions(-) commit a61378bea90edd13a0e9b907917f7645e9266750 Author: Loren Merritt 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 Makefile | 9 ++++++--- configure | 18 +++++++++++++++++- vfw/build/cygwin/Makefile | 7 +++---- 3 files changed, 26 insertions(+), 8 deletions(-) commit c6f3d17ffa67ad27f126bf579a08a443023ad0d3 Author: Eric Petit 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 x264.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 74eecd32358de0799a1b9bad041ebb6550002769 Author: Loren Merritt 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 x264.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 78ca42c56ec53e153fef1b2a1a612191c840d797 Author: Loren Merritt 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 x264.c | 18 +++++++++--------- 1 files changed, 9 insertions(+), 9 deletions(-) commit e06dfd4ac1cd0c80525f2dfbacbce28c543770fc Author: Loren Merritt 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 Makefile | 3 ++- encoder/encoder.c | 10 ++-------- 2 files changed, 4 insertions(+), 9 deletions(-) commit 29facf8bf218a7c7c47ca48c8b7abb6672d6544e Author: Laurent Aimar 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 x264.c | 17 ++++++++++------- 1 files changed, 10 insertions(+), 7 deletions(-) commit 1014aa4e4fa0097e98754afbcf68245a14480710 Author: Eric Petit 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 common/ppc/mc.c | 29 ++-- common/ppc/pixel.c | 41 +++--- common/ppc/ppccommon.h | 336 ++++++++++++++++++++++++++++-------------------- 3 files changed, 230 insertions(+), 176 deletions(-) commit 77404162c8588abc9b720b88e20fac34dfe31139 Author: Loren Merritt 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 x264.c | 157 ++++++++++++++++++++++++++++++++++------------------------------ 1 files changed, 83 insertions(+), 74 deletions(-) commit fe905276b25c8aa202379d0b5c0115d7b5b631c8 Author: Eric Petit 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 common/ppc/mc.c | 118 ++++++++++++++++++++++++++---- common/ppc/pixel.c | 49 ++++++------- common/ppc/ppccommon.h | 188 ++++++++++++++++++++++++++++++------------------ configure | 1 + testing/checkasm.c | 10 ++-- 5 files changed, 251 insertions(+), 115 deletions(-) commit a1b9531707b835e6934cadfb78249149f6351d7e Author: Loren Merritt 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 configure | 29 ++++++++++++++++++++--------- 1 files changed, 20 insertions(+), 9 deletions(-) commit 35d85ca65d77f4013cfc37b2dd76b9ef87db144d Author: Eric Petit 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 testing/checkasm.c | 86 +++++++++++++++++++++++++++++++-------------------- 1 files changed, 52 insertions(+), 34 deletions(-) commit c0abfd39627fcb3e2f6c9aed7ebbed7dfda9230e Author: Loren Merritt 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 Makefile | 2 +- configure | 57 ++++++++- x264.c | 436 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------- 3 files changed, 442 insertions(+), 53 deletions(-) commit e1b747ff05b28ee786425d48be53376c620a1cdc Author: Eric Petit 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 configure | 6 ++++++ version.sh | 8 +++++--- 2 files changed, 11 insertions(+), 3 deletions(-) commit b7c3b444753d5ddce3b87249c96a207c85301075 Author: Eric Petit 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 Makefile | 2 +- configure | 2 +- encoder/ratecontrol.c | 3 --- testing/checkasm.c | 4 ++++ 4 files changed, 6 insertions(+), 5 deletions(-) commit ecbf942b1e46e1a4df0e8fd87db538342d968059 Author: Måns Rullgård 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 configure | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 7d9ac7c215bc0b77c538d100c92498e847e1cfa8 Author: Eric Petit 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 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 .cvsignore | 3 -- Jamfile | 88 ------------------------------------------------------------ Makefile | 82 +++++++++++--------------------------------------------- configure | 73 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 89 insertions(+), 157 deletions(-) commit b12cb05a8fee91c50dc3d1d3c2569a801cc1a5e3 Author: Loren Merritt 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 Makefile | 2 +- build/cygwin/Makefile | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit 90a6fd3e4e8685f990c7f9fe05c8718e77c0e080 Author: Måns Rullgård 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 encoder/encoder.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit e103917aa0cbb702ba09c2507565398d7f129c2e Author: Måns Rullgård 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 common/common.c | 2 ++ common/common.h | 2 +- encoder/encoder.c | 17 +++++++++++++++++ x264.c | 6 ++++++ x264.h | 4 +++- 5 files changed, 29 insertions(+), 2 deletions(-) commit d4663a41a4bb0c67eb861046ed2917111257883f Author: Loren Merritt 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 vfw/build/cygwin/Makefile | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 990e58b646629a2937e76794b97892d7806a932e Author: Loren Merritt 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 tools/countquant_x264.pl | 52 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 52 insertions(+), 0 deletions(-) commit b780e711dd0a1e97535c690f84e9726eefa95c2c Author: Loren Merritt 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 Makefile | 7 +++++-- build/cygwin/Makefile | 8 +++++++- encoder/set.c | 5 +++-- version.sh | 6 ++++++ vfw/config.c | 3 ++- x264.c | 7 ++++--- 6 files changed, 27 insertions(+), 9 deletions(-) commit ea9308c6b3bfc891a2dcebe1dc89e0c301c57066 Author: Måns Rullgård 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 encoder/encoder.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 6dcb0e4b6d827b9c79f402ff91049b2830b8a743 Author: Loren Merritt 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 Makefile | 6 ++++++ build/cygwin/Makefile | 6 ++++++ 2 files changed, 12 insertions(+), 0 deletions(-) commit 11de51977d28b9ff242aa137f9c270b0f1b3f465 Author: Loren Merritt 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 encoder/encoder.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit de97a12a8b976acad6afdbeda54e4bfbdd9bf8b5 Author: Loren Merritt 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 x264.c | 73 ++++++++++++++++++++++++++++++++++++++------------------------- 1 files changed, 44 insertions(+), 29 deletions(-) commit 0df24cf995faf3169fe15d808e4fff00c18ad7dc Author: Loren Merritt 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 Makefile | 3 +- build/cygwin/Makefile | 3 +- common/i386/mc-a2.asm | 402 +++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc-c.c | 5 + common/i386/predict-a.asm | 141 ++++++++++++++++ common/i386/predict.c | 14 ++- common/mc.c | 65 +++++--- 7 files changed, 608 insertions(+), 25 deletions(-) commit 48c34d0bffd57ba7c73f20bd6c892b4b06131140 Author: Loren Merritt 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 encoder/slicetype_decision.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit a1c2c04693de8fe2d7712249c06c7a6406d0b422 Author: Loren Merritt 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 x264.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) commit ac93ce1bb01701ddc0faa79eeb1079288b6e3543 Author: Loren Merritt 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 x264.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) commit 04557605de60718c172ce6d1fc26b30d6fd2ee8b Author: Loren Merritt 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 Makefile | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit bf7f679c793a2db2580e00f87eb3bed45b47a805 Author: Loren Merritt 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 encoder/analyse.c | 35 +++++++++++++++++++++++++++++++---- 1 files changed, 31 insertions(+), 4 deletions(-) commit ee5b2be9406eb8b9b11180f406febc944fd8845d Author: Måns Rullgård 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 encoder/encoder.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 94086b8bb5885f76093e74b5a5b0f4d4db287c95 Author: Eric Petit 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 Makefile | 73 ++++++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 55 insertions(+), 18 deletions(-) commit cb6a40f00d1f5f14b9c14974309b43955a0b83ed Author: Loren Merritt 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 encoder/analyse.c | 77 ++++++++++++++++++++++++++--------------------------- encoder/me.c | 4 +- encoder/me.h | 2 + x264.c | 10 +++--- 4 files changed, 47 insertions(+), 46 deletions(-) commit 79fa69451ad4552c2dd84fcd3c5e75da136af17f Author: Loren Merritt 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 common/common.c | 1 + common/common.h | 1 + encoder/analyse.c | 215 ++++++++++++++++++++++------------------- encoder/me.c | 94 +++++++++++------- encoder/me.h | 6 +- encoder/slicetype_decision.c | 22 +++-- x264.c | 5 + x264.h | 3 +- 8 files changed, 199 insertions(+), 148 deletions(-) commit abbd6c56da04a9e10d10a4bd158104826e8fc81a Author: Loren Merritt 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 common/i386/mc-a.asm | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc.h | 4 ++ common/mc.c | 25 ++++++++++++- 3 files changed, 123 insertions(+), 1 deletions(-) commit 553b8295bac6b6fd9d91e591bca1299923f0fc96 Author: Loren Merritt 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 encoder/encoder.c | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) commit 70da43b22cd394160c4358a33330446bc104c78e Author: Eric Petit 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 Jamfile | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit e72f431c685731663d2824aa768218927490e704 Author: Loren Merritt 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 encoder/encoder.c | 23 +++++++++-------------- 1 files changed, 9 insertions(+), 14 deletions(-) commit be2f0e088810860ab760d8d362a9450aaf917a29 Author: Loren Merritt 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 vfw/codec.c | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) commit 73522c84014f240abe7ee70c6e98657b08f97b44 Author: Loren Merritt 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 common/i386/pixel-a.asm | 292 ++++++++++++++++++++++++++++++++--------------- common/i386/pixel.h | 8 ++ common/pixel.c | 48 ++++++++ common/pixel.h | 2 + encoder/ratecontrol.c | 1 + x264.c | 1 + 6 files changed, 259 insertions(+), 93 deletions(-) commit c68f34e555e22f4687d985ade6d81ea87cc73f29 Author: Loren Merritt 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 vfw/codec.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-) commit fd527e3760074a19637c503d0f828d97b7c079fd Author: Måns Rullgård 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 encoder/encoder.c | 4 +--- encoder/ratecontrol.c | 19 +++++++++++++++---- encoder/ratecontrol.h | 2 +- 3 files changed, 17 insertions(+), 8 deletions(-) commit a2245645c8b3948de32f2c27f8cb0acb86e4d2d4 Author: Loren Merritt 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 common/set.h | 9 +++++++++ encoder/encoder.c | 1 + encoder/set.c | 26 +++++++++++++++++++++++++- 3 files changed, 35 insertions(+), 1 deletions(-) commit 29dee22af6b6174f54bb621f1038c0604a42d21e Author: Loren Merritt 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 build/cygwin/Makefile | 2 +- x264.c | 249 +++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 221 insertions(+), 30 deletions(-) commit 79ebb19964a115ab8de21fe1e90162ff9954b283 Author: Loren Merritt 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 common/common.c | 1 + encoder/encoder.c | 1 + encoder/set.c | 2 +- x264.c | 7 +++++++ x264.h | 4 +++- 5 files changed, 13 insertions(+), 2 deletions(-) commit 2fc52995de23f963e67ac408dc247ee3bf68c952 Author: Måns Rullgård 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 encoder/encoder.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 99b10e79b55520264a29ae4b82d67cd60005faab Author: Måns Rullgård 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 Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 9f97e90ef5f3df22a560c10ad49a658041c88629 Author: Loren Merritt 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 vfw/codec.c | 7 +++- vfw/config.c | 36 ++++++++++++++++-------- vfw/resource.h | 6 ++-- vfw/resource.rc | 81 ++++++++++++++++++++++++++++--------------------------- vfw/x264vfw.h | 6 +++- 5 files changed, 77 insertions(+), 59 deletions(-) commit 4fbdc5c1ee77497e6455cd72a895383fb99a77fe Author: Loren Merritt 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 common/macroblock.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) commit 1f735a32c9626b86b608c9604170b3f4c4549159 Author: Loren Merritt 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 common/common.h | 14 +++++++------- common/macroblock.c | 14 +++++++------- encoder/encoder.c | 9 +++++---- 3 files changed, 19 insertions(+), 18 deletions(-) commit c90534d6c85664c7a161cbe70a7928cb65f19e18 Author: Loren Merritt 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 common/common.h | 2 +- encoder/encoder.c | 8 ++------ encoder/slicetype_decision.c | 4 ---- 3 files changed, 3 insertions(+), 11 deletions(-) commit d0bd44f769543e81280a5a97bbe985c6dfd86cf1 Author: Loren Merritt 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 tools/avc2avi.c | 28 +++++++++++++++++++--------- 1 files changed, 19 insertions(+), 9 deletions(-) commit f01e3d5f2bffe3a033ecbaa608be6b4f3aca9c60 Author: Loren Merritt 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 common/common.h | 4 ++-- encoder/encoder.c | 2 +- encoder/ratecontrol.c | 2 +- vfw/config.c | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) commit c47bb1ffbe630609fda9bd7c9488bae7f0078a4e Author: Loren Merritt 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 encoder/encoder.c | 2 +- encoder/set.c | 2 +- x264.c | 2 +- x264.h | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) commit 91536acdb42ec9615a50f5b9f3af34b6c6408049 Author: Loren Merritt 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 common/common.c | 5 +- common/common.h | 20 +++++- common/frame.c | 3 + common/frame.h | 3 + common/macroblock.c | 55 +++++++++++---- encoder/analyse.c | 5 +- encoder/cabac.c | 2 +- encoder/encoder.c | 164 ++++++++++++++++++++++++++++++------------ encoder/ratecontrol.c | 30 +++++--- encoder/set.c | 4 +- encoder/slicetype_decision.c | 16 +++-- x264.c | 7 ++ x264.h | 8 ++- 13 files changed, 235 insertions(+), 87 deletions(-) commit 9591b0383829c707791b7797a68a79008349e198 Author: Loren Merritt 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 x264.c | 33 +++++++++++---------------------- 1 files changed, 11 insertions(+), 22 deletions(-) commit 4337ee8de793cb5c6f0dee3b0a851041466fec7e Author: Eric Petit 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 encoder/ratecontrol.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 4b2ba852564a05a651f9312651cc402043089648 Author: Loren Merritt 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 encoder/analyse.c | 7 ++++--- encoder/me.c | 2 -- 2 files changed, 4 insertions(+), 5 deletions(-) commit ccf61cef868c38bb71d746fcc03f583d93fd3e4c Author: Loren Merritt 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 common/frame.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b04a2601088a855361169a3eb5236e8b998f7e70 Author: Loren Merritt 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 vfw/codec.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit d05adbc7f35e461879f1559a095b82b7253d78cd Author: Loren Merritt 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 common/common.h | 2 +- encoder/encoder.c | 25 ++++++++++++++----------- encoder/ratecontrol.c | 8 ++++---- encoder/set.c | 10 ---------- 4 files changed, 19 insertions(+), 26 deletions(-) commit d836d8f9b7ae3962ac0f5a325f43ca9d6a87a7ff Author: Loren Merritt 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 common/frame.c | 124 +++++++++++++------------------------------------------- 1 files changed, 29 insertions(+), 95 deletions(-) commit 067f22c153eaf19e1ba5ec35deef96a8fb3eae4e Author: Loren Merritt Date: Thu Feb 24 13:09:55 2005 +0000 Altivec functions for MC using the cached halfpel planes. Patch by Fredrik Pettersson . git-svn-id: svn://svn.videolan.org/x264/trunk@142 df754926-b1dd-0310-bc7b-ec298dee348c common/mc.c | 2 - common/ppc/mc.c | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- common/ppc/mc.h | 2 +- 3 files changed, 111 insertions(+), 5 deletions(-) commit 323b54ffa0bbcfe82b02cb0d204e9ba5121264fd Author: Loren Merritt 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 common/macroblock.c | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) commit 92f6f36f1d58fd9809263aba16ddeb78ec2ee47d Author: Loren Merritt 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 encoder/analyse.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) commit c2b0c8a0e11ef079e82789f79d54c30c9b2364ae Author: Loren Merritt 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 encoder/analyse.c | 2 +- encoder/analyse.h | 2 +- encoder/encoder.c | 60 +------ encoder/slicetype_decision.c | 409 ++++++++++++++++++++++++++++++++++++++++++ encoder/voptype_decision.c | 345 ----------------------------------- 5 files changed, 415 insertions(+), 403 deletions(-) commit 24a6672ecaa6bccc65c4043248c1787e3161062c Author: Loren Merritt 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 encoder/voptype_decision.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 68c13530b5ffc28325aee408f4cd19ab7da06715 Author: Loren Merritt 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 common/common.c | 2 + common/common.h | 26 ++++ common/frame.c | 50 ++++++- common/frame.h | 14 ++- common/macroblock.c | 16 -- common/mc.c | 37 +++++ encoder/analyse.c | 4 + encoder/analyse.h | 1 + encoder/encoder.c | 49 +++++-- encoder/me.c | 12 +- encoder/voptype_decision.c | 343 ++++++++++++++++++++++++++++++++++++++++++++ vfw/codec.c | 2 +- x264.c | 15 ++- x264.h | 6 +- 14 files changed, 531 insertions(+), 46 deletions(-) commit e2efb4b7d5885112a32b5b710958fe9fa5458bbf Author: Loren Merritt 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 common/common.h | 2 +- encoder/encoder.c | 13 +++++++++++++ encoder/set.c | 26 ++++++++++++++++++++++++++ encoder/set.h | 1 + 4 files changed, 41 insertions(+), 1 deletions(-) commit 3ada9c0514d0d785dec7de1f5d092fbda7a629cb Author: Loren Merritt 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 vfw/codec.c | 2 ++ vfw/config.c | 5 +++++ 2 files changed, 7 insertions(+), 0 deletions(-) commit 834eac288ff5e8d40a1a751d61a59d77d67c0537 Author: Loren Merritt 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 common/clip1.h | 5 +++ common/common.h | 3 ++ common/macroblock.c | 78 ++++++++++++++++++++++++++++++++++++++------------ common/macroblock.h | 2 + common/pixel.c | 70 +++++++++++++++++++++++++++++++++++++++++++++ common/pixel.h | 7 ++++- encoder/analyse.c | 29 ++++++++++++------ encoder/encoder.c | 3 ++ encoder/set.c | 2 +- x264.c | 7 ++++- x264.h | 6 ++-- 11 files changed, 177 insertions(+), 35 deletions(-) commit 47706e75fdf80b0c0011e2d697e5e181060a08fe Author: Loren Merritt 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 x264.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d7443f67331e392b580564f815a34c5762f71f03 Author: Loren Merritt 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 . git-svn-id: svn://svn.videolan.org/x264/trunk@132 df754926-b1dd-0310-bc7b-ec298dee348c common/common.c | 2 ++ encoder/set.c | 6 ++---- x264.c | 6 ++++++ x264.h | 1 + 4 files changed, 11 insertions(+), 4 deletions(-) commit 15450dbe916e971793989dc44762e1bda23ca153 Author: Loren Merritt 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 encoder/ratecontrol.c | 27 +++++++++++++-------------- 1 files changed, 13 insertions(+), 14 deletions(-) commit b1f47ea51c7057ebc0d8938a224662cc6fe23c80 Author: Loren Merritt 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 encoder/encoder.c | 4 +++- encoder/ratecontrol.c | 30 +++++++++++++++++++----------- 2 files changed, 22 insertions(+), 12 deletions(-) commit 0606b3ac325a3cb3fd1fe648d9a6468ab731f7d5 Author: Loren Merritt 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 common/common.c | 2 +- encoder/ratecontrol.c | 62 ++++++++++++++++++++++++++---------------------- x264.h | 2 +- 3 files changed, 36 insertions(+), 30 deletions(-) commit 3b2116cdd0aceff59036a17c6f9aa32592de4851 Author: Loren Merritt 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 build/win32/libx264.dsp | 1575 +++++++++++++++++++++++------------------------ build/win32/x264.dsp | 188 +++--- common/common.h | 4 + vfw/codec.c | 1 - 4 files changed, 879 insertions(+), 889 deletions(-) commit d688918e861714e23f8fa7bdaaa6bf47ffec0395 Author: Loren Merritt 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 common/common.c | 1 + encoder/analyse.c | 92 +++++++++++++++++++++++++++++++++------------------- encoder/me.c | 29 +++++++++++------ encoder/me.h | 5 ++- x264.h | 4 ++- 5 files changed, 84 insertions(+), 47 deletions(-) commit ac411e297aaaec200b33b6dab082e12c55c3b7ef Author: Loren Merritt 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 common/frame.c | 37 ++++++++++++++++++++++--------------- 1 files changed, 22 insertions(+), 15 deletions(-) commit 50a924885b78abc24dba59bb6717095bcde15d1b Author: Loren Merritt 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 common/macroblock.c | 36 ++++++------------------------------ common/pixel.h | 8 ++++++++ 2 files changed, 14 insertions(+), 30 deletions(-) commit b2d78b5c7a423a75f0cb555173d92011b4accc44 Author: Loren Merritt 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 encoder/analyse.c | 37 ++++++++++++++++++++++++++++--------- encoder/me.c | 19 +++++++++++-------- 2 files changed, 39 insertions(+), 17 deletions(-) commit 46141bf206dc672c3ab2b50850df702305ecb8ff Author: Loren Merritt 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 common/common.h | 4 +- common/frame.c | 56 +++++++++++++++++++++ common/frame.h | 7 ++- common/i386/mc-c.c | 132 +++++++++++++++++++++++++++++++++++++++++++++++-- common/i386/mc.h | 4 +- common/macroblock.c | 38 +++++++------- common/mc.c | 128 ++++++++++++++++++++++++++++++++++++++++++++++-- common/mc.h | 22 +++++--- encoder/analyse.c | 98 +++++++++++++++++++++++++----------- encoder/encoder.c | 8 +++- encoder/macroblock.c | 12 ++-- encoder/me.c | 10 ++-- encoder/me.h | 2 +- encoder/ratecontrol.c | 4 +- 14 files changed, 441 insertions(+), 84 deletions(-) commit d81fa19a0af848bd97b2250e1405b5fac54820b1 Author: Loren Merritt 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 encoder/encoder.c | 6 +++--- encoder/ratecontrol.c | 22 +++++++++++++++++++++- 2 files changed, 24 insertions(+), 4 deletions(-) commit dc270b76915975ab1ea6e16992aa79e96e6801f7 Author: Loren Merritt 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 vfw/codec.c | 34 +++++++++++++++++++++++++- vfw/config.c | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ vfw/resource.h | 7 ++++- vfw/resource.rc | 9 +++++++ vfw/x264vfw.h | 4 +++ 5 files changed, 123 insertions(+), 3 deletions(-) commit ef4d1fa4a99a23420708083c66e882d7cfd21d9f Author: Loren Merritt 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 encoder/analyse.c | 8 +++----- encoder/encoder.c | 2 +- encoder/me.c | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) commit 6f298b9d889536c5dc14fc08faa95447a322a1cd Author: Loren Merritt 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 common/bs.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ca4ae5219a95e05e80e707ce6828b79276e1f795 Author: Loren Merritt 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 vfw/resource.rc | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) commit 85c92e1be46a3fa90e81121a03bfb8479e87a2da Author: Loren Merritt 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 vfw/codec.c | 88 ++++++++++++++++++++++++++++++++++++++++++++++----------- vfw/config.c | 8 ++-- 2 files changed, 75 insertions(+), 21 deletions(-) commit 70ce7a4be261f638a614918ed0e822b7f60d8269 Author: Loren Merritt 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 encoder/encoder.c | 2 +- encoder/ratecontrol.c | 8 +++++--- vfw/config.c | 12 ++++++------ vfw/resource.rc | 8 ++++---- 4 files changed, 16 insertions(+), 14 deletions(-) commit 2796ba0138a59efa32357f9dc708eefe01c55882 Author: Loren Merritt 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 common/common.h | 5 ++++- encoder/analyse.c | 12 ++++++++---- encoder/me.c | 16 ++++++++-------- 3 files changed, 20 insertions(+), 13 deletions(-) commit 33140d0984c7415ed0441858022e777794934550 Author: Loren Merritt 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 encoder/me.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit 917924591931e63df4458eb90d5d8bce4bff035d Author: Loren Merritt 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 encoder/cabac.c | 124 ++++++++++++++++-------------------------------------- 1 files changed, 37 insertions(+), 87 deletions(-) commit 7927c9ec8c4991040728d64893490c8ecb3d9b44 Author: Loren Merritt 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 encoder/analyse.c | 26 -------------------------- encoder/me.c | 12 ++++++++---- encoder/me.h | 2 -- 3 files changed, 8 insertions(+), 32 deletions(-) commit 5b750c35db61a4d26e8801c175da422d11748aad Author: Eric Petit 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 encoder/encoder.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 3f098e9644a31f17490f05d0ecea08e6443aa110 Author: Loren Merritt 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 encoder/set.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit bccb009f9fa67797da6cd3da742ad9a27266b12b Author: Loren Merritt 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 common/common.h | 4 ++++ common/macroblock.c | 22 ++++++++-------------- encoder/analyse.c | 10 ++++++++++ encoder/macroblock.c | 16 ++++++---------- 4 files changed, 28 insertions(+), 24 deletions(-) commit c16119a2ccf2dff2328628dd9ded4681f5502c38 Author: Loren Merritt 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 common/macroblock.c | 4 ++++ encoder/macroblock.c | 19 ++++++------------- 2 files changed, 10 insertions(+), 13 deletions(-) commit 6558c8322f175e3970c8a2f351dd7f8f66e130d2 Author: Loren Merritt 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 vfw/config.c | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) commit 084175d95978011c837e4363616f5cac5794bc07 Author: Loren Merritt 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 vfw/config.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 79f73aa2f5a5a6d16dadbc10c7ae9647fae76a29 Author: Loren Merritt 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 vfw/codec.c | 5 ++- vfw/config.c | 61 ++++++++++++++++++++++++++++++++++++++++++++++-------- vfw/resource.h | 5 +++- vfw/resource.rc | 42 +++++++++++++++++++++---------------- vfw/x264vfw.h | 1 + 5 files changed, 84 insertions(+), 30 deletions(-) commit 0292410a8da029c45625c9f8670c9bf16c828c12 Author: Loren Merritt 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 build/cygwin/Makefile | 7 ++++++- vfw/build/cygwin/Makefile | 3 +++ 2 files changed, 9 insertions(+), 1 deletions(-) commit 66ee02bdb20e5fe43f3dabbaa10e61d49a945a03 Author: Loren Merritt 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 encoder/analyse.c | 81 +++++++++++++++++++++++++++++++++++++++++++++------- encoder/me.c | 4 ++- 2 files changed, 73 insertions(+), 12 deletions(-) commit 37c0a244e49e607855a55a06b4b911eaadbc4604 Author: Loren Merritt 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 . git-svn-id: svn://svn.videolan.org/x264/trunk@102 df754926-b1dd-0310-bc7b-ec298dee348c vfw/codec.c | 1 + vfw/config.c | 37 ++++++++++++++++++------- vfw/resource.h | 3 +- vfw/resource.rc | 79 ++++++++++++++++++++++++++++--------------------------- vfw/x264vfw.h | 1 + 5 files changed, 70 insertions(+), 51 deletions(-) commit c80d310f2af65750dafc3decdab6c1df2cbbc5e3 Author: Loren Merritt Date: Mon Jan 17 04:29:24 2005 +0000 VfW: Support ip_factor and pb_factor, some cleanups. patch by Riccardo Stievano git-svn-id: svn://svn.videolan.org/x264/trunk@101 df754926-b1dd-0310-bc7b-ec298dee348c vfw/codec.c | 4 +++- vfw/config.c | 48 +++++++++++++++++++++++++++++++++++++++--------- vfw/resource.h | 10 ++++++---- vfw/resource.rc | 27 +++++++++++++++------------ vfw/x264vfw.h | 3 +++ 5 files changed, 66 insertions(+), 26 deletions(-) commit 19ed02568e95f69e2dd33f9b8d8cd1ff900f268b Author: Loren Merritt 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 encoder/encoder.c | 30 +++++++++++++++--------------- 1 files changed, 15 insertions(+), 15 deletions(-) commit 4394c4d549caac00dedfeacffa14857839365f04 Author: Loren Merritt 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 encoder/analyse.c | 8 ++++---- encoder/cabac.c | 4 ++-- encoder/cavlc.c | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) commit 04bb83346e4c7ba29c4f6b0c5e376ebde81a899b Author: Loren Merritt 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 encoder/ratecontrol.c | 27 ++++++++++++++++++++++----- 1 files changed, 22 insertions(+), 5 deletions(-) commit 7b46f42d142f790ecf053f952ce024b467eac762 Author: Loren Merritt 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 . git-svn-id: svn://svn.videolan.org/x264/trunk@97 df754926-b1dd-0310-bc7b-ec298dee348c vfw/codec.c | 23 ++++++++++++++++++----- vfw/config.c | 13 +++++++++---- vfw/resource.h | 3 ++- vfw/resource.rc | 8 +++++--- vfw/x264vfw.h | 2 ++ 5 files changed, 36 insertions(+), 13 deletions(-) commit 177e211333d91a06ec2df3ac87c12336812d32e6 Author: Loren Merritt 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 vfw/codec.c | 9 ++++----- vfw/config.c | 10 +++++----- vfw/resource.rc | 12 ++++++------ 3 files changed, 15 insertions(+), 16 deletions(-) commit b80ed7030d5979bfa2da92a2584078c7f844f28f Author: Måns Rullgård Date: Thu Jan 13 18:18:05 2005 +0000 From Riccardo Stievano : 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 vfw/codec.c | 4 ++-- vfw/config.c | 12 ++++++------ vfw/resource.rc | 10 +++++----- vfw/x264vfw.h | 4 ++-- 4 files changed, 15 insertions(+), 15 deletions(-) commit 0a7090477d28a3f708a7b1edb89845e10b71191d Author: Loren Merritt 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 common/common.h | 2 +- encoder/encoder.c | 62 +++++++++++++++++++++++++---------------------- encoder/ratecontrol.c | 63 ++++++++++++++++++++++++++++--------------------- 3 files changed, 70 insertions(+), 57 deletions(-) commit 648328088b1c4bfb3afcbc92b6711cb7b7b5e068 Author: Loren Merritt 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 common/common.c | 4 +- common/common.h | 3 +- encoder/encoder.c | 145 +++++++++++++++++++++++++------------------------ encoder/ratecontrol.c | 2 +- encoder/set.c | 2 +- x264.c | 16 +++--- x264.h | 6 +- 7 files changed, 91 insertions(+), 87 deletions(-) commit 5b13c839df14fdd8b94724230ec2e92cba3164a1 Author: Loren Merritt 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 vfw/resource.rc | 19 ++++--------------- 1 files changed, 4 insertions(+), 15 deletions(-) commit 8379464a55722872e63cb6b2120e81ed5ac80781 Author: Loren Merritt 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 encoder/encoder.c | 2 + encoder/ratecontrol.c | 95 ++++++++++++++++++++++++++++++------------------ 2 files changed, 61 insertions(+), 36 deletions(-) commit 0af83ad2ddca90ba0a4066d67513a32798395ce6 Author: Loren Merritt 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 encoder/analyse.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) commit 5ccb93c1a78a8dfeb1953426b89494f6f5d36fec Author: Loren Merritt 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 vfw/build/win32/x264vfw.dsp | 272 ++++++++++++++++++++++--------------------- vfw/codec.c | 65 ++++++++--- vfw/config.c | 190 +++++++++++++++++++++++++++--- vfw/driverproc.c | 16 ++- vfw/resource.h | 19 +++- vfw/resource.rc | 110 +++++++++++++----- vfw/x264vfw.h | 29 +++++- 7 files changed, 492 insertions(+), 209 deletions(-) commit fc2e7ba68bfcb5b22f510839b6f0b3da333671fd Author: Loren Merritt 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 common/macroblock.c | 17 +++++++++++++++-- common/macroblock.h | 2 +- encoder/analyse.c | 18 ++++++++++++++++-- 3 files changed, 32 insertions(+), 5 deletions(-) commit 7fc5f99d43b5c2498b368e6f5c1620f591bd2a45 Author: Loren Merritt 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 encoder/ratecontrol.c | 18 +++++++----------- 1 files changed, 7 insertions(+), 11 deletions(-) commit 094266b31789338c7a6b91f96aa2fc8c1bd72f94 Author: Loren Merritt 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 common/common.c | 2 +- encoder/encoder.c | 2 +- x264.h | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) commit 3a11b25d31f7eac4ccc4252b5525a6554c6d22ba Author: Loren Merritt 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 encoder/encoder.c | 4 ---- 1 files changed, 0 insertions(+), 4 deletions(-) commit 0ad06e691819f2a2a05f673b50afe8b676d48f44 Author: Loren Merritt 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 Makefile | 7 ++++++- TODO | 12 ++++++------ x264.c | 4 ++-- 3 files changed, 14 insertions(+), 9 deletions(-) commit 53295729673187df0ab1143c08fae578b5447376 Author: Loren Merritt 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 encoder/encoder.c | 231 +++++++++++++++++++++++++++---------------------- encoder/ratecontrol.c | 11 ++- 2 files changed, 133 insertions(+), 109 deletions(-) commit b1d946cd95c7b4d3ab618b9bbb0191949a49ad4c Author: Loren Merritt 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 Makefile | 3 ++- Makefile.cygwin | 53 ----------------------------------------------------- 2 files changed, 2 insertions(+), 54 deletions(-) commit 456e8fdc5d5a20ad14a41e83db21b9aa5529c476 Author: Loren Merritt 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 common/common.c | 2 +- x264.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) commit 007c6f71c2b0d2868dfc46edaf24a5c27eceab47 Author: Loren Merritt 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 Jamfile | 4 ++-- common/common.h | 2 +- common/cpu.c | 2 +- common/i386/dct-c.c | 2 +- common/i386/mc-c.c | 4 ++-- common/i386/predict.c | 2 +- common/mc.c | 2 +- common/pixel.c | 2 +- common/ppc/mc.c | 4 ++-- common/ppc/pixel.c | 2 +- decoder/decoder.c | 6 +++--- decoder/macroblock.c | 4 ++-- decoder/set.c | 2 +- decoder/vlc.c | 4 ++-- encoder/analyse.c | 4 ++-- encoder/cabac.c | 2 +- encoder/cavlc.c | 4 ++-- encoder/encoder.c | 4 ++-- encoder/macroblock.c | 2 +- encoder/macroblock.h | 2 +- encoder/me.c | 2 +- encoder/ratecontrol.c | 6 +++--- encoder/set.c | 6 +++--- 23 files changed, 37 insertions(+), 37 deletions(-) commit b42bd7463a00b65f1e2d5e2c10ff374531e997f6 Author: Loren Merritt 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 Makefile | 2 +- Makefile.cygwin | 2 +- build/cygwin/Makefile | 2 +- build/win32/libx264.dsp | 26 +- common/i386/cpu-a.asm | 117 ++++++++ common/i386/cpu.asm | 117 -------- common/i386/dct-a.asm | 313 +++++++++++++++++++++ common/i386/dct.asm | 313 --------------------- common/i386/mc-a.asm | 394 ++++++++++++++++++++++++++ common/i386/mc.asm | 394 -------------------------- common/i386/pixel-a.asm | 705 +++++++++++++++++++++++++++++++++++++++++++++++ common/i386/pixel.asm | 705 ----------------------------------------------- 12 files changed, 1545 insertions(+), 1545 deletions(-) commit dabd095c2a59ec95f83428555a329049e4ab165f Author: Loren Merritt 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 common/common.c | 6 ++-- x264.c | 102 +++++++++++++++++++++++++++++++++++++------------------ 2 files changed, 72 insertions(+), 36 deletions(-) commit fc1380db831cab2d90a8a116848d9263bd83b871 Author: Loren Merritt 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 encoder/analyse.c | 11 +++- encoder/me.c | 152 ++++++++++++++++++++++++++++++---------------------- encoder/me.h | 5 ++- 3 files changed, 100 insertions(+), 68 deletions(-) commit ab0c769d9813d82f9d7d6f82cce289ae2e466db8 Author: Loren Merritt 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 encoder/set.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit e33ed4c9fc447b7e4bc057e85f9ee83b07b714e1 Author: Loren Merritt 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 x264.c | 21 ++++++++++++++++++++- 1 files changed, 20 insertions(+), 1 deletions(-) commit d5322b4e055d3710ea48a1d3cb336b5264a9621e Author: Loren Merritt 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 common/common.h | 11 ++---- common/frame.c | 18 +++++++++ common/frame.h | 6 +++ common/macroblock.c | 96 ++++++++++++++++++++++---------------------------- common/macroblock.h | 5 +-- encoder/encoder.c | 8 +--- 6 files changed, 74 insertions(+), 70 deletions(-) commit 9df283c3b29afdcb20387997b09893e450075976 Author: Loren Merritt 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 encoder/analyse.c | 15 ++++++++++++--- 1 files changed, 12 insertions(+), 3 deletions(-) commit 4e5e3770a6b2366676232fe5f335f572f6cdefcb Author: Loren Merritt 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 encoder/analyse.c | 433 +++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 334 insertions(+), 99 deletions(-) commit efbf4ad58c26c6a609a43a2b636ce50e1272f101 Author: Loren Merritt 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 common/macroblock.c | 35 ++++++++++++++++++----------------- 1 files changed, 18 insertions(+), 17 deletions(-) commit 457eaa93110fa95c393794d85bde7943b2d325bd Author: Loren Merritt Date: Wed Dec 22 20:52:13 2004 +0000 option '--frames' limits number of frames to encode. patch by Tuukka Toivonen git-svn-id: svn://svn.videolan.org/x264/trunk@70 df754926-b1dd-0310-bc7b-ec298dee348c common/common.c | 1 + x264.c | 9 +++++++++ x264.h | 1 + 3 files changed, 11 insertions(+), 0 deletions(-) commit dfbbcec847ddb9b9bbc4549671c6ce7533a7c098 Author: Loren Merritt 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 encoder/cavlc.c | 57 ++++++++++++------------------------------------------ 1 files changed, 13 insertions(+), 44 deletions(-) commit 199ff7406b76dc1c10b756053398bf8a834bcf5c Author: Loren Merritt 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 common/common.c | 5 +- common/common.h | 18 +++- common/macroblock.c | 333 ++++++++++++++++++++++++++++++++++++++++++++++++- common/macroblock.h | 42 ++++++- encoder/analyse.c | 257 ++++++++++++++++++++++++++++++++++---- encoder/cabac.c | 94 ++++++++++---- encoder/cavlc.c | 159 ++++++++++++++--------- encoder/encoder.c | 12 ++- encoder/macroblock.c | 96 +++++++++----- encoder/macroblock.h | 7 +- encoder/ratecontrol.c | 2 +- encoder/set.c | 3 +- x264.h | 8 +- 13 files changed, 868 insertions(+), 168 deletions(-) commit b6954ba2bba2f4fc002e8be4f57d7f3b43871c33 Author: Loren Merritt 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 Jamfile | 14 +- Makefile | 12 +- Makefile.cygwin | 10 +- build/cygwin/Makefile | 10 +- build/win32/libx264.dsp | 86 ++-- build/win32/x264.dsp | 4 +- common/bs.h | 423 +++++++++++++++++++ common/cabac.c | 1044 +++++++++++++++++++++++++++++++++++++++++++++ common/cabac.h | 78 ++++ common/clip1.h | 71 +++ common/common.c | 364 ++++++++++++++++ common/common.h | 390 +++++++++++++++++ common/cpu.c | 247 +++++++++++ common/cpu.h | 32 ++ common/csp.c | 378 +++++++++++++++++ common/csp.h | 43 ++ common/dct.c | 294 +++++++++++++ common/dct.h | 49 +++ common/frame.c | 702 +++++++++++++++++++++++++++++++ common/frame.h | 57 +++ common/i386/cpu.asm | 117 +++++ common/i386/dct-c.c | 299 +++++++++++++ common/i386/dct.asm | 313 ++++++++++++++ common/i386/dct.h | 38 ++ common/i386/mc-c.c | 1032 +++++++++++++++++++++++++++++++++++++++++++++ common/i386/mc.asm | 394 +++++++++++++++++ common/i386/mc.h | 30 ++ common/i386/pixel.asm | 705 +++++++++++++++++++++++++++++++ common/i386/pixel.h | 43 ++ common/i386/predict.c | 434 +++++++++++++++++++ common/i386/predict.h | 31 ++ common/macroblock.c | 1075 +++++++++++++++++++++++++++++++++++++++++++++++ common/macroblock.h | 209 +++++++++ common/mc.c | 326 ++++++++++++++ common/mc.h | 45 ++ common/mdate.c | 52 +++ common/pixel.c | 233 ++++++++++ common/pixel.h | 62 +++ common/ppc/mc.c | 686 ++++++++++++++++++++++++++++++ common/ppc/mc.h | 29 ++ common/ppc/pixel.c | 220 ++++++++++ common/ppc/pixel.h | 29 ++ common/ppc/ppccommon.h | 158 +++++++ common/predict.c | 702 +++++++++++++++++++++++++++++++ common/predict.h | 92 ++++ common/set.h | 129 ++++++ common/vlc.h | 914 ++++++++++++++++++++++++++++++++++++++++ core/bs.h | 423 ------------------- core/cabac.c | 1044 --------------------------------------------- core/cabac.h | 78 ---- core/clip1.h | 71 --- core/common.c | 364 ---------------- core/common.h | 390 ----------------- core/cpu.c | 247 ----------- core/cpu.h | 32 -- core/csp.c | 378 ----------------- core/csp.h | 43 -- core/dct.c | 294 ------------- core/dct.h | 49 --- core/frame.c | 702 ------------------------------- core/frame.h | 57 --- core/i386/cpu.asm | 117 ----- core/i386/dct-c.c | 299 ------------- core/i386/dct.asm | 313 -------------- core/i386/dct.h | 38 -- core/i386/mc-c.c | 1032 --------------------------------------------- core/i386/mc.asm | 394 ----------------- core/i386/mc.h | 30 -- core/i386/pixel.asm | 705 ------------------------------- core/i386/pixel.h | 43 -- core/i386/predict.c | 434 ------------------- core/i386/predict.h | 31 -- core/macroblock.c | 1075 ----------------------------------------------- core/macroblock.h | 209 --------- core/mc.c | 326 -------------- core/mc.h | 45 -- core/mdate.c | 52 --- core/pixel.c | 233 ---------- core/pixel.h | 62 --- core/ppc/mc.c | 686 ------------------------------ core/ppc/mc.h | 29 -- core/ppc/pixel.c | 220 ---------- core/ppc/pixel.h | 29 -- core/ppc/ppccommon.h | 158 ------- core/predict.c | 702 ------------------------------- core/predict.h | 92 ---- core/set.h | 129 ------ core/vlc.h | 914 ---------------------------------------- decoder/decoder.c | 6 +- decoder/macroblock.c | 4 +- decoder/set.c | 2 +- decoder/vlc.c | 4 +- encoder/analyse.c | 4 +- encoder/cabac.c | 2 +- encoder/cavlc.c | 4 +- encoder/encoder.c | 4 +- encoder/macroblock.c | 2 +- encoder/macroblock.h | 2 +- encoder/me.c | 2 +- encoder/ratecontrol.c | 6 +- encoder/set.c | 4 +- testing/checkasm.c | 10 +- testing/macroblock-dz.c | 4 +- tools/avc2avi.c | 2 +- x264.c | 2 +- 105 files changed, 12669 insertions(+), 12669 deletions(-) commit da49faec0719a3e774177356c66a4b41ddd0b10c Author: Loren Merritt 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 core/common.h | 3 + encoder/encoder.c | 212 +++++++++++++++++++++++-------------------------- encoder/ratecontrol.c | 10 ++- 3 files changed, 112 insertions(+), 113 deletions(-) commit bc0a1e9b79d725680418be2bf7cf584a739ca47b Author: Loren Merritt 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 encoder/ratecontrol.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit 25b542c01b85c6da7bea789fc60f1f22d7281488 Author: Loren Merritt 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 core/common.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 0f65f519a8539602e08fd87d9c21b0b3f34a80d8 Author: Loren Merritt 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 core/common.h | 3 +- core/macroblock.c | 46 +++++++++++++++++++++++- core/macroblock.h | 11 ++++-- encoder/analyse.c | 103 +++++++++++++++++++---------------------------------- encoder/me.c | 27 ++++++++------ encoder/me.h | 5 +-- 6 files changed, 108 insertions(+), 87 deletions(-) commit 2489b6a66d960d46db325a15314ac82fc9f3ed1a Author: Laurent Aimar 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 encoder/analyse.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 71f820d76b4a38b4ed73a12a8aeb93589b18527a Author: Loren Merritt 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 core/common.c | 7 ++- core/common.h | 17 ++----- encoder/encoder.c | 11 +++-- encoder/ratecontrol.c | 111 ++++++++++++++++++++++++++++++------------------- x264.c | 13 +++++- x264.h | 3 +- 6 files changed, 97 insertions(+), 65 deletions(-) commit 7972ae1f284b1130abb6cc4f3fe963dcb0ee48c8 Author: Loren Merritt 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 encoder/ratecontrol.c | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 deletions(-) commit 30c6a09063e499f47077edab206fd79992914ef7 Author: Måns Rullgård Date: Thu Nov 11 12:37:24 2004 +0000 #include git-svn-id: svn://svn.videolan.org/x264/trunk@59 df754926-b1dd-0310-bc7b-ec298dee348c x264.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit a0b32b7cc24d59826f311dcd2e64945a80803dc2 Author: Loren Merritt 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 encoder/encoder.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit bdf9b10610bf0141ede5812a70d889f7b557560d Author: Loren Merritt 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 encoder/cabac.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit e917887b2e16e5d00d67fa8da7cd828a456fd75d Author: Eric Petit 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 Makefile | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit 851989ac7c839ee2bf42c74a6fd90b5eb78f0a69 Author: Eric Petit 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 Makefile | 43 ++++++++++++++++++++++++------------------- core/common.c | 7 +++++-- 2 files changed, 29 insertions(+), 21 deletions(-) commit 57554925f4075d00708be958853d5b2e9a9f6487 Author: Måns Rullgård 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 ) git-svn-id: svn://svn.videolan.org/x264/trunk@54 df754926-b1dd-0310-bc7b-ec298dee348c encoder/ratecontrol.c | 69 +++++++++++++++++++++++++----------------------- 1 files changed, 36 insertions(+), 33 deletions(-) commit c9a501a467f06277ed72ba5e222ba00b018364eb Author: Måns Rullgård Date: Mon Oct 25 09:40:23 2004 +0000 Oops, changing those types messed up some vprintf's. fixed. (Loren Merrit ) git-svn-id: svn://svn.videolan.org/x264/trunk@53 df754926-b1dd-0310-bc7b-ec298dee348c encoder/encoder.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) commit 46d0385cdd96b8d0753016bb255108a3adb3ba86 Author: Måns Rullgård 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 ) git-svn-id: svn://svn.videolan.org/x264/trunk@52 df754926-b1dd-0310-bc7b-ec298dee348c core/common.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 3f7206dc5bfb84ff4e1fb494d9ecf09e98baa937 Author: Måns Rullgård 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 Jamfile | 6 +++++- Makefile | 1 + encoder/ratecontrol.c | 3 +++ 3 files changed, 9 insertions(+), 1 deletions(-) commit 48937c64c13904973f83495b64afdf4223f647f5 Author: Laurent Aimar 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 encoder/ratecontrol.c | 23 +++++++++++++---------- 1 files changed, 13 insertions(+), 10 deletions(-) commit e3ae8a7d1a3953c0f261cba6e1b161cfc7f1b0d6 Author: Laurent Aimar 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 core/common.c | 1 + core/common.h | 4 ++++ encoder/analyse.c | 19 +++++++++++++------ encoder/encoder.c | 37 +++++++++++++++++++++++++------------ x264.c | 8 +++++++- x264.h | 3 ++- 6 files changed, 52 insertions(+), 20 deletions(-) commit 79a2bb78b970e55e92bb4a74ff5f88dc6d0a6851 Author: Laurent Aimar 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 encoder/ratecontrol.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 48e288644ed493a77b5935e90010973a4e15faf6 Author: Laurent Aimar 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 core/common.c | 1 + encoder/analyse.c | 39 ++++++------------ encoder/encoder.c | 5 ++ encoder/me.c | 115 ++++++++++++++++++++++++++++------------------------ x264.c | 6 +++ x264.h | 2 + 6 files changed, 88 insertions(+), 80 deletions(-) commit f9bd35a32d8de87c67749c1628ea7693a2b83460 Author: Laurent Aimar 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 x264.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) commit 8c6f6fa0db394e65fa9b4272deec859c9cb67aac Author: Laurent Aimar 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 encoder/ratecontrol.c | 13 ++++--------- 1 files changed, 4 insertions(+), 9 deletions(-) commit d46df39630925245993e3ecde07adce618d3c30a Author: Laurent Aimar 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 x264.c | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) commit cba0cd394dfd87f82daa4b621dd9b701fca5bb9f Author: Laurent Aimar 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 encoder/eval.c | 254 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 254 insertions(+), 0 deletions(-) commit 8a5aa764ab46fd04dd60acfa3a6641742c4b0daa Author: Laurent Aimar 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 AUTHORS | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 58b7012e219b64752168084fa028e76792b6f42a Author: Laurent Aimar 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 Makefile | 2 +- build/cygwin/Makefile | 2 +- build/win32/libx264.dsp | 15 +++++++++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) commit 9116d300befee74c92ff3ac9fe7625a57dafab48 Author: Laurent Aimar Date: Sat Aug 28 22:14:26 2004 +0000 * all: 2pass patch by Loren Merritt "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 Jamfile | 2 +- core/common.c | 30 ++- core/common.h | 2 + core/frame.c | 2 + core/frame.h | 1 + encoder/encoder.c | 37 +++- encoder/ratecontrol.c | 577 +++++++++++++++++++++++++++++++++++++++++++++++-- encoder/ratecontrol.h | 1 + x264.c | 60 ++++- x264.h | 42 +++-- 10 files changed, 689 insertions(+), 65 deletions(-) commit 67b673006c7b13a3435e89ccf0a83ebbdd23937c Author: Laurent Aimar 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 core/common.h | 17 ++++++++++++++++ encoder/cabac.c | 11 ++++++++++ encoder/cavlc.c | 10 +++++++++ encoder/encoder.c | 54 +++++++++++++++++++++++++++++++--------------------- 4 files changed, 70 insertions(+), 22 deletions(-) commit 0a7d38ca3a65133af46a438d00ff25948a78019a Author: Laurent Aimar 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 core/ppc/mc.c | 1 + core/ppc/pixel.c | 1 + 2 files changed, 2 insertions(+), 0 deletions(-) commit 63e5a5c8865f76d9fb0af10ee238fdb1bea1178c Author: Måns Rullgård 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 encoder/ratecontrol.c | 58 +++++++++++++++++++++++------------------------- 1 files changed, 28 insertions(+), 30 deletions(-) commit f246a87fa64a4febe10a17e983f1b656d7914625 Author: Laurent Aimar 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 encoder/encoder.c | 26 +++++++++++++------------- 1 files changed, 13 insertions(+), 13 deletions(-) commit dab6f065ffd7ab2ecc591ef22e0d556a3516a48f Author: Laurent Aimar 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 core/frame.c | 4 ++-- core/macroblock.c | 2 +- encoder/encoder.c | 42 ++++++++++++++++++++++++++++++++++++++++++ encoder/set.c | 41 ++++------------------------------------- 4 files changed, 49 insertions(+), 40 deletions(-) commit f53a7ae05c5f348baf1322d6d233aba899287df0 Author: Laurent Aimar 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 core/common.c | 3 +- encoder/encoder.c | 220 +++++++++++++++++++++++++++++------------------------ x264.h | 2 + 3 files changed, 124 insertions(+), 101 deletions(-) commit 72eced43c35ecce69b422c2da228ae044430c038 Author: Laurent Aimar Date: Tue Aug 17 20:03:46 2004 +0000 * encoder/encoder.c: kb/s with k=1000 (more consistant). Patch by Loren Merritt git-svn-id: svn://svn.videolan.org/x264/trunk@33 df754926-b1dd-0310-bc7b-ec298dee348c encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit a01315f4e71b38b63ca08f9453b3409bf4f044b8 Author: Laurent Aimar 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 core/common.c | 56 +++++++++++++++++++++++++++++++++++++++++++------- core/common.h | 14 ++++++++++++ core/cpu.c | 1 + core/dct.c | 1 + core/i386/dct-c.c | 1 + core/i386/mc-c.c | 1 + core/i386/predict.c | 1 + core/mc.c | 1 + core/pixel.c | 1 + core/predict.c | 1 + encoder/encoder.c | 9 ++++++++ encoder/set.c | 1 + x264.h | 13 +++++++++++ 13 files changed, 93 insertions(+), 8 deletions(-) commit 5ffe5a90e7553c20f40dcb1ae372579a941280cb Author: Eric Petit 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 encoder/ratecontrol.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 348de7f684821ffbb5e8a3a52969986de00c89c8 Author: Eric Petit 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 core/ppc/mc.c | 2 +- core/ppc/ppccommon.h | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) commit 2885471d5ea17e4e84b9e2551d8c1e2049bb3d7f Author: Måns Rullgård 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 AUTHORS | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit ed61d8ee02dabbfc7c667ee4711e5c9cd95f2032 Author: Måns Rullgård 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 encoder/set.c | 77 +++++++++++++++++++++++++++++---------------------------- 1 files changed, 39 insertions(+), 38 deletions(-) commit 6b20e508a7f7110b4c951fbdc4a971cc5c14494d Author: Måns Rullgård 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 core/common.c | 3 +- core/set.h | 8 ++++- encoder/encoder.c | 3 +- encoder/ratecontrol.c | 7 ++++- encoder/set.c | 81 +++++++++++++++++++++++++++++++------------------ x264.c | 1 - x264.h | 3 +- 7 files changed, 70 insertions(+), 36 deletions(-) commit 2b3cd6c669b64046a54b32577946bc262360d8ae Author: Måns Rullgård 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 Makefile | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) commit 444615252b766c95c3dcbb11327c379101929468 Author: Måns Rullgård 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 encoder/ratecontrol.c | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) commit 78292e08d9e9770b1c74766368670eeeb3f02e3e Author: Måns Rullgård 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 encoder/ratecontrol.c | 54 ++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 42 insertions(+), 12 deletions(-) commit 374baca15e0ce069cadd4c32633f915b6f8294b0 Author: Laurent Aimar 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 encoder/encoder.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 07a0494bd1b2c1ec05866d09bf84d0564d6e5080 Author: Laurent Aimar Date: Sun Aug 8 21:36:41 2004 +0000 ratecontrol: patch by Loren Merritt "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 encoder/ratecontrol.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 249259d03700724183b879cd504a172d9c2d35f6 Author: Laurent Aimar Date: Sun Aug 8 19:15:10 2004 +0000 * ratecontrol: patch by Måns Rullgård "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 encoder/ratecontrol.c | 24 ++++++++++++++++-------- 1 files changed, 16 insertions(+), 8 deletions(-) commit e96703d73226f61149e2c815a03f8443a620ffff Author: Laurent Aimar 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 encoder/encoder.c | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 deletions(-) commit 11e1b0c27fdd2213007fdb91f40d0fc2a1c11569 Author: Laurent Aimar Date: Sun Aug 8 14:23:50 2004 +0000 * all: Change the way PSNR is computed (based on a patch by Loren Merritt 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 core/common.h | 10 +++- encoder/encoder.c | 127 ++++++++++++++++++++++++++++++++++------------------- 2 files changed, 88 insertions(+), 49 deletions(-) commit 9168b245fb9b7e84e4c55faba839b89a4b54a48b Author: Laurent Aimar 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 x264.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 20c19c4b3a001c9e02775fdba040725a438db795 Author: Laurent Aimar Date: Fri Aug 6 18:06:09 2004 +0000 * all: Patch from Måns Rullgård "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 AUTHORS | 5 + core/common.c | 9 ++ core/common.h | 4 + encoder/analyse.c | 4 +- encoder/encoder.c | 110 +++++++++++++++---- encoder/ratecontrol.c | 285 ++++++++++++++++++++++++++++++++++++++++++------- encoder/ratecontrol.h | 28 +---- x264.c | 51 +++++++++- x264.h | 12 ++- 9 files changed, 421 insertions(+), 87 deletions(-) commit 30a244d00365a81999c82bdd3dd8beb0d036d36a Author: Eric Petit 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 core/ppc/ppccommon.h | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit b0495a99ee0b65b03be7d6961ddb70ef7e38dcf0 Author: Eric Petit 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 Jamfile | 11 ++++++++++- core/cabac.c | 2 +- core/common.c | 1 - core/common.h | 4 ++++ core/cpu.c | 6 +++++- core/csp.c | 1 - core/dct.c | 6 +++++- core/frame.c | 1 - core/i386/dct-c.c | 6 +++++- core/i386/mc-c.c | 6 +++++- core/i386/predict.c | 6 +++++- core/macroblock.c | 1 - core/mc.c | 6 +++++- core/mdate.c | 6 +++++- core/pixel.c | 6 +++++- core/predict.c | 6 +++++- encoder/analyse.c | 1 - encoder/cabac.c | 1 - encoder/cavlc.c | 1 - encoder/encoder.c | 1 - encoder/macroblock.c | 1 - encoder/me.c | 1 - encoder/ratecontrol.c | 1 - encoder/set.c | 6 +++++- x264.c | 3 +-- 25 files changed, 66 insertions(+), 25 deletions(-) commit bf06e99e9b054a3f671a6f3f0c62d9b204057b0b Author: Eric Petit 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 Jamfile | 27 +++++++++++++++++---------- Makefile | 2 +- core/cpu.c | 15 ++++++++++++--- core/mc.c | 4 ++-- core/pixel.c | 4 ++-- core/ppc/mc.c | 4 ++++ core/ppc/pixel.c | 4 ++++ testing/checkasm.c | 6 +++--- 8 files changed, 45 insertions(+), 21 deletions(-) commit 86ca49033ad85660dc88f82ab721263f4d29290e Author: Laurent Aimar 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 core/dct.c | 37 +++++++++++++++++++------------------ core/i386/dct.asm | 20 ++++++++++---------- core/macroblock.c | 3 +++ encoder/analyse.c | 17 +++++++++++------ encoder/encoder.c | 2 +- encoder/macroblock.c | 12 ++++++++++-- 6 files changed, 54 insertions(+), 37 deletions(-) commit 55eb54c7e47a8f98f4382a953e03ee414972c36f Author: Laurent Aimar 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 core/i386/cpu.asm | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit a8703c8933f51715c25118eb83487072a548934e Author: Laurent Aimar 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 Jamfile | 2 +- core/i386/mc-c.c | 399 +++++++++++++++++++++++++++++++----------------------- core/i386/mc.asm | 125 +++++++++++++---- core/i386/mc.h | 1 + core/mc.c | 9 +- 5 files changed, 333 insertions(+), 203 deletions(-) commit 02713c2401b471fb3bfa4541e8b867dfd06628cc Author: Min Chen 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 Makefile | 5 +- Makefile.cygwin | 7 ++- build/cygwin/Makefile | 12 ++++- core/i386/mc-c.c | 63 +++++++++++++++++------------ core/i386/mc.asm | 106 +++++++++++++++++++++++++++++++++++++++++++++++- 5 files changed, 155 insertions(+), 38 deletions(-) commit 77bce7d16d8a2fc12aff32997def2f966975617c Author: Min Chen 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 build/win32/libx264.dsp | 63 +++++++++++++++++++++++++++++++++++++--------- core/i386/mc-c.c | 10 ++++++- core/i386/mc.asm | 46 +++++++++++++++++++++++++++++++++- 3 files changed, 104 insertions(+), 15 deletions(-) commit c7631faf30ef78cc254a7ad8a7552e65824507d8 Author: Min Chen 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 testing/checkasm.c | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) commit 8d3d88be0fe3a22ea39861321eed015efb454359 Author: Min Chen 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 build/cygwin/Makefile | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) commit b2e2e34b3415cb9429475c1b828dcb2c36855308 Author: Laurent Aimar 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 build/cygwin/Makefile | 6 +++--- core/i386/mc-c.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) commit 4fb5f9aa45f1a71fd718eaabd0992b8086887fa0 Author: VideoLAN 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 TODO | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit a511bbecc348964c9de501a954c08f1b3bd4644d Author: Laurent Aimar 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 vfw/driverproc.def | 8 +++ vfw/resource.rc | 174 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 182 insertions(+), 0 deletions(-) commit 166ed2dd0b3ef0a89f64371e78c70a1b8f874ddd Author: Laurent Aimar 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 core/i386/mc-c.c | 11 ++++++++--- 1 files changed, 8 insertions(+), 3 deletions(-) commit 602c87d5a3fb75cf7404bae08ecc3d5bc5ab1372 Author: Laurent Aimar 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 vfw/w32api/vfw.h | 209 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 209 insertions(+), 0 deletions(-) commit 5dc0aae2f900064d1f58579929a2285ab289a436 Author: Laurent Aimar 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 .cvsignore | 3 + AUTHORS | 35 + COPYING | 340 +++++ Jamfile | 67 + Makefile | 58 + Makefile.cygwin | 52 + TODO | 65 + build/cygwin/Makefile | 102 ++ build/win32/libx264.dsp | 742 +++++++++++ build/win32/x264.dsp | 94 ++ build/win32/x264.dsw | 44 + core/bs.h | 423 ++++++ core/cabac.c | 1044 +++++++++++++++ core/cabac.h | 78 ++ core/clip1.h | 71 + core/common.c | 300 +++++ core/common.h | 344 +++++ core/cpu.c | 233 ++++ core/cpu.h | 32 + core/csp.c | 379 ++++++ core/csp.h | 43 + core/dct.c | 288 ++++ core/dct.h | 49 + core/frame.c | 701 ++++++++++ core/frame.h | 56 + core/i386/cpu.asm | 111 ++ core/i386/dct-c.c | 294 +++++ core/i386/dct.asm | 313 +++++ core/i386/dct.h | 38 + core/i386/mc-c.c | 940 ++++++++++++++ core/i386/mc.asm | 187 +++ core/i386/mc.h | 29 + core/i386/pixel.asm | 705 ++++++++++ core/i386/pixel.h | 43 + core/i386/predict.c | 429 ++++++ core/i386/predict.h | 31 + core/macroblock.c | 1029 +++++++++++++++ core/macroblock.h | 204 +++ core/mc.c | 320 +++++ core/mc.h | 45 + core/mdate.c | 48 + core/pixel.c | 228 ++++ core/pixel.h | 62 + core/ppc/mc.c | 681 ++++++++++ core/ppc/mc.h | 29 + core/ppc/pixel.c | 215 +++ core/ppc/pixel.h | 29 + core/ppc/ppccommon.h | 158 +++ core/predict.c | 697 ++++++++++ core/predict.h | 92 ++ core/set.h | 123 ++ core/vlc.h | 914 +++++++++++++ decoder/decoder.c | 772 +++++++++++ decoder/macroblock.c | 1097 ++++++++++++++++ decoder/macroblock.h | 34 + decoder/set.c | 262 ++++ decoder/set.h | 33 + decoder/vlc.c | 236 ++++ decoder/vlc.h | 46 + doc/dct.txt | 111 ++ encoder/analyse.c | 1224 ++++++++++++++++++ encoder/analyse.h | 29 + encoder/cabac.c | 1195 +++++++++++++++++ encoder/cavlc.c | 688 ++++++++++ encoder/encoder.c | 1235 ++++++++++++++++++ encoder/macroblock.c | 859 ++++++++++++ encoder/macroblock.h | 38 + encoder/me.c | 194 +++ encoder/me.h | 52 + encoder/ratecontrol.c | 96 ++ encoder/ratecontrol.h | 52 + encoder/set.c | 382 ++++++ encoder/set.h | 32 + extras/getopt.c | 503 +++++++ extras/getopt.h | 179 +++ extras/stdint.h | 186 +++ testing/checkasm.c | 347 +++++ testing/edge-detec.c | 2733 +++++++++++++++++++++++++++++++++++++++ testing/macroblock-dz.c | 2266 ++++++++++++++++++++++++++++++++ tools/.cvsignore | 2 + tools/Jamfile | 9 + tools/avc2avi.c | 820 ++++++++++++ tools/x264-rd.sh | 32 + tools/xyuv.c | 607 +++++++++ vfw/build/cygwin/Makefile | 117 ++ vfw/build/win32/bin/x264vfw.inf | 91 ++ vfw/build/win32/x264vfw.dsp | 135 ++ vfw/build/win32/x264vfw.dsw | 29 + vfw/codec.c | 276 ++++ vfw/config.c | 443 +++++++ vfw/driverproc.c | 234 ++++ vfw/resource.h | 52 + vfw/x264vfw.h | 103 ++ x264.c | 558 ++++++++ x264.h | 249 ++++ 95 files changed, 32275 insertions(+), 0 deletions(-)