-> i.d.R. wird anstatt der RevisionsNummer eher das Datum verwendet. (intern immer ein SHA-1 Key, aber die kann man so schlecht lesen ;))
War der Vorteil von SVN nicht gerade, dass es eindeutige Revisionsnummern gibt? :hm:
-> i.d.R. wird anstatt der RevisionsNummer eher das Datum verwendet. (intern immer ein SHA-1 Key, aber die kann man so schlecht lesen ;))
War der Vorteil von SVN nicht gerade, dass es eindeutige Revisionsnummern gibt? :hm:
An der Eindeutigkeit ändert sich ja nichts,...
k.A. warum die auf GIT umgestiegen sind, hab wenn bis dato i.d.R. auch immer nur mit SVN und CVS zu tun.
Mittlerweile sind r747/r748 Builds verfügbar:
Display MoreGeneral thread:
http://forum.doom9.org/showthread.php?t=130364x264_aq_var.48.diff
http://forum.doom9.org/showthread.php?t=132760
x264.gaussian.cplxblur.01.diff
Dark Shikari: - gaussian cplxblur: gives a tiny improvement in 2pass ratecontrol
x264_me-prepass_DeathTheSheep.01.diff
http://forum.doom9.org/showthread.php?p=1093523
x264_2pass_vbv.6.diff
http://thread.gmane.org/gmane.comp.vid…3093/focus=3550
x264_hrd_pulldown.04_interlace.diff
- HRD and pulldown for HD compatibility, updated patch for interlacing
http://forum.doom9.org/showthread.php?p=1047919#post1047919Link to x264 patches collected: http://files.x264.nl/x264_patches/
Mittlerweile sind wieder einige neue Revisionen herausgekommen.
r743: cosmetics in dsp init
r744: remove x86_64 predict_8x8_ddl_mmxext because sse2 is faster even on amd
r745: pic macros now keep track of which register holds the GOT, so variable access doesn't have to care
r746: .gitignore
r747: increase the alignment of the i8x8 edge cache, needed for sse2 intra prediction.
patch by Alexander Strange.
r748: check for broken versions of yasm
r749: git compatible version script
r750: merge x86_32 and x86_64 asm, with macros to abstract calling convention and register names
r751: remove x264_mc_clip1.
it's wrong for sufficiently perverse inputs, and clip_uint8 is faster anyway.
r752: fix some name mangling issues introduced by the merge
r753: fix x86_32 ads which failed to preserve a register
r754: checkasm check whether callee-saved regs are correctly saved
x86_32 only for now since x86_64 varargs are annoying
r755: memcpy_aligned_sse2
r756: increase alignment of mv arrays
r757: shut up gcc warning in offsetof
r758: don't define offsetof since it's standard
r759: missing #ifdef HAVE_SSE3
r760: update msvc projectfile
r761: fix name mangling again.
apparently it's not just a convention, dll build fails if you try to export a non-prefixed name.
r762: remove remaining reference to clip1.h
r763: 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.
Kommen die Builds mit AQ-Patch jetzt von bob0r? Sharktooth verlinkt diese direkt in seinem Thread.
r764: get_ref_sse2
r765: satd_4x4_ssse3
r766: cosmetics in asm
r767: 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
r768: reduce the size of some arrays
r769: reduce zigzag arrays from int to int16_t
r770: faster intra predict 8x8 hu/hd
r771: cosmetics in intra predict[INDENT] r768-r771 haben einen Bug beim CALVC Encoding. Ist beim r772 wieder gefixt.
[/INDENT]r772: r768 borked cabac
VAQ 1.0 wurde *offiziell* veröffentlicht:
Commit:http://git.videolan.org/?p=x264.git;a=…ab71ebcb8652d0b
Build: http://mirror01.x264.nl/x264/revision808/
Changelog: http://mirror01.x264.nl/x264/changelog.txt
Die Optionen sind --aq-mode und --aq-strength, wobei der Standardwert für letztere auf 1.0 geändert wurde (entspricht 0.5 in VAQ v0.48)
Quotecommit dc4f40ce74c996a1e15021b82ab71ebcb8652d0b
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sun Mar 30 17:58:41 2008 -0600variance-based psy adaptive quantization
new options: --aq-mode --aq-strength
AQ is enabled by default
--aq-mode <integer> How AQ distributes bits
- 0: Disabled
- 1: Avoid moving bits between frames
- 2: Move bits between frame
Correct
VAQ 2.0 ist als Alpha-Version zu ersten Tests verfügbar:
http://forum.doom9.org/showthread.php?p=1119759#post1119759
HAR HAR HAR, wie cool endliche AQ im offiziellen Sourcecode.
QuoteThe code is extremely ugly and the diff won't work on any recent revision of x264. Anyone who publicly distributes builds of this with any intent other than to experiment is crazy.
Cu Selur
Mittlerweile sind wir bei (durchgezählt!?) Revision 886. Im Changelog sind die Revisionsnummern ja nicht mehr zu finden, allerdings findet man eine erfreuliche Vielzahl an Einträgen, die auf Geschwindigkeitsoptimierungen hinweisen, insbesondere für den PC. Auch scheint es Patches zu geben, die psychovisuelle Effekte für HD-Material ausnutzen.
__
Jetzt hängen die Revisionen wieder im Changelog hinter der Prüfsumme.
Sharktooth meldet r901:
http://x264.nl/x264/changelog.txt
QuoteDisplay Morecommit 58d7d06f919fa38d4c62acaec1858be6d77f4bab r901
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sun Jul 6 12:59:15 2008 -0600Various 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[][][] arraycommit a9af9425820cfba99ae4b378c33c4fee4e99b2ce r900
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sun Jul 6 11:15:19 2008 -0600Resolve floating point exception with frame_init_lowres mmx
In some cases, the mmx version of frame_init_lowres could leave the FPU uninitialized for use in ratecontrol, resulting in floating point exceptions.
Since frame_init_lowres is such a time-consuming function, an emms was just put at the end, since it costs almost nothing compared to the total time of frame_init_lowres.commit f8428ed08f6fdb1f7a66be1b2ddc4213792fc49c r899
Author: Eric Petit <eric.petit@lapsus.org>
Date: Fri Jul 4 11:31:32 2008 +0200Update my email address
commit 6b3087c7b5ac20dd8631eb8e3566c8bceee4643a r898
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Jul 3 20:05:00 2008 -0600Update 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 cosmeticscommit 79bd5994122b7647b75de057991f3b480d402993 r897
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Jul 2 20:59:24 2008 -0600denoise_dct asm
commit 65df9ebc10338d8aa50f0c9470d3180a424d2df7 r896
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Jul 2 20:55:10 2008 -0600cosmetics in permutation macros
SWAP can now take mmregs directly, rather than just their numberscommit 16b8f79bb6825053b6dd0eebb1d24c1bdf112fbb r895
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Jul 2 10:43:57 2008 -0600Fix bug in adaptive quantization
In some cases adaptive quantization did not correctly calculate the variance.
Bug reported by MasterNobodycommit 3440cf193fc13e558d2c6b98024d59e95a7b2774 r894
Author: Loren Merritt <pengvado@akuvian.org>
Date: Sun Jun 29 00:00:03 2008 -0600lowres_init asm
rounding is changed for asm convenience. this makes the c version slower, but there's no way around that if all the implementations are to have the same results.commit 1c8f807054a0308482d53d4c58ba1d5f5d2ae263 r893
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Jul 1 23:42:39 2008 -0600Optimizations and cosmetics in macroblock.c
If an i4x4 dct block has no coefficients, don't bother with dequant/zigzag/idct. Not useful for larger sizes because the odds of an empty block are much lower.
Cosmetics in i16x16 to be more consistent with other similar functions.
Add an SSD threshold for chroma in probe_skip to improve speed and minimize time spent on chroma skip analysis.
Rename lambda arrays to lambda_tab for consistency.commit ad1d7a4a585bc7f995ced5152557a4f5306275bf r892
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date: Thu Jun 26 21:09:55 2008 -0600some asm functions require aligned stack. disable these when compiling with msvc/icc.
commit 2ca45934d79a62c1c04771c98eb3ee1d119cdd7a r891
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Jun 24 15:27:41 2008 -0600Move bitstream end check to macroblock level
Additionally, instead of silently truncating the frame upon reaching the end of the buffer, reallocate a larger buffer instead.commit a55f1c31d0da2e0bf04916e7f13813c8e902cfd1 r890
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Jun 24 12:23:50 2008 -0600Convert 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.ccommit 2c597171d5126c3ccae7546f6699d6c4d8ec5e3a r889
Author: Loren Merritt <pengvado@akuvian.org>
Date: Thu Jun 12 03:00:23 2008 -0600mc_chroma_sse2/ssse3
commit cb29306fabf20ae4935906f18ed7869afcf837c3 r888
Author: Loren Merritt <pengvado@akuvian.org>
Date: Thu Jun 12 08:43:41 2008 -0600checkasm --bench=function_name
commit 22d3c0409deec7601292c56c7cd0a23427dbc107 r887
Author: Loren Merritt <pengvado@akuvian.org>
Date: Thu Jun 12 01:39:22 2008 -0600interleave psnr/ssim computation with reference frame filtering, to improve cache coherency
Sehr schöne Zusammenfassung und Beschreibung der letzten Änderungen im git von Dark Sharkiri in seinem Blog:
QuoteDisplay MoreFiled under: bitstream, bugs, chroma, development, memory management, skip, speed, summary, variable-length coding, x264 :: I haven’t written a post here for quite some time, so I figured I’d get back into the swing of things with an update on some recent revisions. Further information can be found on the official git repository page.
r891: Instead of checking for the end of the bitstream on every single write, check before encoding each macroblock–and instead of silently truncating the frame upon reaching the end of the malloced memory, reallocate with more room. (patch by me)
r892: A patch by Gabriel for compilation on MSVC and other crappy compiles that don’t maintain mod16 stack alignment–disable all functions that require these on such platforms. This results in a visible CPU flag (”slow_mod4_stack”) to warn the user that their build is crippled.
r893: Various micro-optimizations by me, along with a very cool little idea that saves quite a bit of time in probe_skip. The idea here is that the probe_skip function *almost never* terminates during the chroma check, but you can’t skip it completely, since if you choose to skip a block before looking at the chroma, and it turned out there was significant detail there that you ignored, there might be noticeable artifacting as a result. The solution was to do a quick Sum of Squared Differences (SSD) check before doing the actual probe_skip on each chroma plane; if low enough, skip the check. Even an incredibly low threshold was sufficient for skipping the check nearly half the time yet never changing the results.
r894: Assembly for the lowres interpolation filter used for frametype decision–drastically increases its speed. The C was modified in order to match the assembly version, which had slightly different rounding. I originally wrote an MMX, SSE2, SSE3, and SSSE3 version of this patch, but Loren found an even faster method of doing it and rewrote most of it from scratch before committing it.
r895: Fix a bug in adaptive quantization stemming from the original implementation. One subtle issue with this patch is that on win32, GCC incorrectly puts arrays of all zeroes into .bss even when told to align them–despite the fact that .bss is only labeled as 4-byte aligned. This causes a crash, of course. We resolved this with an ugly hack–tack a “1″ onto the end of the array to stop GCC from putting it in .bss.
r896: Improve the permutation macros for easier use throughout x264’s assembly. (patch by Loren)
r897: Port the noise reduction assembly from libavcodec and improve it. Speed up the C version too. The SSSE3 assembly is roughly 25 times faster than the original C code. (patch by me with help from Loren and Holger)
r898-r899: Update the copyright headers across x264. (patch by me)
r900: Fix a subtle bug in Loren’s frame_init_lowres patch; in some cases the FPU might not be re-initialized with “emms” after running frame_init_lowres, so an emms was added just in case.
r901: Lots of mini-optimizations, one by holger, the rest by me.
r902: Considerable cleanup of the SSD assembly functions to simplify the code. (patch by Loren)
r903: A complete rewrite of the bitstream functions from the ground up. This vastly faster bitstream writer uses 32-bit and 64-bit instead of 8-bit chunks. This eliminates the need for any loop in bitstream writing. The 32-bit writer is quite similar to ffmpeg’s 32-bit writer. The 64-bit writer uses a particularly ingenious system whereby the writer only writes 32 bits at a time, but keeps up to 64 bits in a storage chunk–this means that any variable-length code can be written unconditionally to the chunk, since there’s always at least 32 bits of space left: the write to the bitstream is done afterwards. Because of this, the 64-bit bitstream writer only needs a single if statement in its write function; not even an else. (patch by me with help from Loren)
r904: The golomb functions were far more complicated than necessary–with the new bitstream writer changes many of the special cases were no longer useful speed-wise. Additionally, many of the branches were not necessary in most calls to those functions. (patch by Loren with some changes by me)
r905: When a large static table is stuck in a .h file, its duplicated in every single C file that includes and uses it. This is a waste of memory–its better to declare it once in a C file and use “extern” to address it from other locations. This diff de-duplicates VLC tables and additionally reduces them from using 16-bit to using 8-bit codes, since none of the VLC codes have more than 8 significant bits. (patch by Loren, change to 8-bit by me)
r906: Add support for PCM macroblocks. This type of macroblock is *completely* uncompressed and bypasses the CABAC entropy coder. As such, each PCM block is always 384 bytes. The advantage of this is that sometimes, given the current state of the CABAC encoder, at very low QPs (0-5) and in lossless mode, its possible that a block will exceed 384 bytes in size–so PCM would have been a better option. When rate-distortion optimization is enabled, PCM is considered as a possible option by x264. (patch by me)
revision 910 ist da
Revision 915 auf x264.nl:
QuoteDisplay Morecommit 14046ae09f91272751f3df4d70fb0268321ee557 r915
Author: Loren Merritt <pengvado@akuvian.org>
Date: Tue Jul 15 20:16:16 2008 -0600autodetect level based on resolution/bitrate/refs/etc, rather than defaulting to L5.1
if vbv is not enabled (and especially in crf/cqp), we have to guess max bitrate, so we might underestimate the required level.commit fee2f2ce3cda8e39cc4c123afa726933b6b9b877 r914
Author: Loren Merritt <pengvado@akuvian.org>
Date: Thu Jul 17 20:25:03 2008 -0600fix bs_write_ue_big for values >= 0x10000.
(no immediate effect, since nothing writes such values yet)commit 64848ffdfa740f03948d6860c1d49adc6c5b4f7c r913
Author: BugMaster <BugMaster@narod.ru>
Date: Wed Jul 16 11:54:51 2008 -0600Fix lossless mode borked in r901
commit 9c5e557c5544690b22f61614fae9b516c7e53ba1 r912
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sat Jul 12 14:37:58 2008 -0600Relax QPfile restrictions
Allow a QPfile to contain fewer frames than the total number of frames in the video and have ratecontrol fill in the rest.
Patch by kemuri9.commit 8a440db9296cf374b0599313aa5876c22c98524b r911
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sat Jul 12 14:10:38 2008 -0600Limit MVrange correctly in interlaced mode
Bug report by Sigma Designs, Inc.commit 0976ead3dd6641d88de51dbbdfd82f8d3079a458 r910
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Fri Jul 11 22:53:27 2008 -0600Fix bug with PCM and adaptive quantization
In rare cases CABAC desync could occur, causing bitstream corruptioncommit 21ee1224f2d939ec716627b4db43d3023f18415c r909
Author: BugMaster <BugMaster@narod.ru>
Date: Fri Jul 11 16:00:02 2008 -0600Fix memory leak upon x264 closing
Doesn't affect the CLI, but potentially important for programs which call x264 as a shared library.commit 8cd5d60fcc23edcbdb97a190d8ac926db4161eb1 r908
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Fri Jul 11 15:45:54 2008 -0600Fix compilation on PPC systems (borked in r903)
Bigendian systems didn't have endian_fix32 definedcommit 7f67bb47de843974fd01f090c5ac99c99cd8f1f1 r907
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Fri Jul 11 14:16:18 2008 -0600Add 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.
Gestern noch r922, heute schon r928 auf http://x264.nl erhältlich.
QuoteDisplay Morecommit 4816918fb7526aed96d9cd94c294b4f708a5f266 r928
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Jul 30 22:35:20 2008 -0600cosmetics: merge x86inc*.asm
commit d1fe0938e588fd2fb37fe4b6fc97d458ae6944a5 r927
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Jul 30 15:29:46 2008 -0600Add missing x264util.asm
commit e5eeedc50570a564c3bd00eeabd857feff324158 r926
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Jul 30 15:28:21 2008 -0600Basic sanity checking of qpmax/qpmin options
commit 9e864aa0f819db25bf97ff8881041ba3e4d911f3 r925
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Jul 30 14:42:29 2008 -0600Fix regression in r922
set the chroma DC coefficients to zero for residual coding in qpel-rd
fix C99ismcommit c51c761fdfed0b72e75754311d9eadb457306e84 r924
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date: Tue Jul 29 21:36:01 2008 -0600Refactor asm macros part 2: DCT
commit 90b30e6ef1780e9199b584b783689c82f7c7ec72 r923
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date: Tue Jul 29 21:26:58 2008 -0600Refactor asm macros part 1: DCT
commit 4e7f5cb0b486a616660e39e32efdd4700b3b379a r922
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Jul 29 17:08:38 2008 -0600Improve 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 usefulcommit c761eb0b9f2c032503bed86118d57d618cfefece r921
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Jul 29 13:42:41 2008 -0600Fix a few more minor memleaks
commit 8c8acae0e483b8b048bee3cae8d5539cfbeb0a0c r920
Author: Loren Merritt <pengvado@akuvian.org>
Date: Fri Jul 25 18:14:31 2008 -0600stats summary: print distribution of numbers of consecutive B-frames
commit cf466eb47e1cd82d3e2114cefdf2f2d16950ae77 r919
Author: Loic Le Loarer <lll+vlc@m4x.org>
Date: Fri Jul 25 16:08:32 2008 -0600add interlacing to the list of stuff checked by x264_validate_levels
commit 91fe97b6c7655fdf3109fb0d1a6404bb36d7a6cd r918
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Jul 24 07:58:50 2008 -0600Fix C99-ism in r907
commit 244f9bef20341d230501dbe7e09a80004d0c0dbb r917
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Jul 17 18:17:22 2008 -0600Faster temporal predictor calculation
Split into a separate commit because this changes rounding, and thus changes output slightly.commit aa0e6277769b3fedb77d1cb8efa43f9c957646c0 r916
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Jul 17 07:55:24 2008 -0600Align lowres planes for improved cacheline split performance
Revision 940 auf x264.nl
QuoteDisplay Morecommit 2cdc944ab6b231b98e326ff0526c6bd9b69faa99 r940
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Aug 20 13:28:15 2008 -0400Cleanups in macroblock_cache_save/load
A bit more loop unrolling, and moving some constant code to the global init functioncommit bae10fe0da35b61883bc2bfa8514396633136093 r939
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Aug 19 14:18:24 2008 -0600Deblocking code cleanup and cosmetics
Convert the style of the deblocking code to the standard x264 style
Eliminate some trailing whitespacecommit 9881ffdf482017798ab0067f4f894ab53c18e626 r938
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Mon Aug 18 23:03:37 2008 -06004% faster deblock: special-case macroblock edges
Along with a bit of related code reorganization and macroificationcommit d994e0bca73aab306eb41f84483b9e1a36feb9c7 r937
Author: David Pethes <imcold@centrum.sk>
Date: Sat Aug 16 09:43:26 2008 -0600Add dedicated variance function instead of using SAD+SSD
Faster variance calculationcommit 7c35ae4abafb8babf1d5456f967920a38d5b572f r936
Author: Loren Merritt <pengvado@akuvian.org>
Date: Fri Aug 15 03:04:28 2008 -06006% faster deblock: remove some clips, earlier termiantion on low qps.
commit c6456de1be0008836e9891446cc924f773863cea r935
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Aug 14 19:31:42 2008 -0600Faster deblocking
Early termination for bS=0, alpha=0, beta=0
Refactoring, various other optimizations
About 30% faster deblocking overall.commit fd1de69b8054ef718b52f5ae1520267a5e5402e8 r934
Author: Loren Merritt <pengvado@akuvian.org>
Date: Sat Aug 2 08:19:50 2008 -0600asm cosmetics
commit 4b24e98d58ae597ab832852f76ea2795080fa4fc r933
Author: Daniel Vergien <daniel.vergien@rrz.uni-hamburg.de>
Date: Wed Aug 6 08:10:53 2008 -0600yet another posix-emulating define on solaris
commit ad47d25fe0d6fc4e852f219477e80cbc2cc381ce r932
Author: Gabriel Bouvigne <gabriel.bouvigne@joost.com>
Date: Wed Aug 6 07:45:05 2008 -0600update msvc projectfile
commit 26600fe260969e371766f261b53d34c904526259 r931
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Aug 6 07:34:42 2008 -0600drop support for msvc6
commit 91d865c17da30a27cf934179d30eb8efaa25e5d0 r930
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sat Aug 9 09:36:04 2008 -0600Prevent VBV from lowering quantizer too much
This code seemed to act up unexpectedly sometimes, creating a situation where in 1-pass VBV mode, a frame's quantizer would drop all the way to qpmin and then shoot back upwards to qpmax, causing serious visual issues.
This change may decrease bitrate in VBV mode, but that is preferable to the artifacting produced by this code.commit 245833c3f6c6f247a097b49fbc452d2ddce93b10 r929
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sat Aug 9 09:34:37 2008 -0600Improve subme7 at low QPs and add subme7 support in lossless mode
Und Revision 950:
QuoteDisplay Morecommit 3c3dc3cde75e72b7c212a9a9ddd623ef8a617e41 r950
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Aug 26 14:51:29 2008 -0400Activate trellis in p8x8 qpel RD
Also clean up macroblock.c with some refactoring
Note that this change significantly reduces subme7+trellis2 performance, but improves quality.
Issue originally reported by Alex_W.commit 60c4f7e359a9de86f79f04039a84b3736a38ef55 r949
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date: Mon Aug 25 10:50:45 2008 -0400Improve VBV accuracy
Don't use the previous frame's row SATD as a predictor if it is too different from this frame's row SATD.commit 9d4d168bb484c2a27e9f4b8f5eb360a00a1cf426 r948
Author: Guillaume Poirier <gpoirier@macbook-pro-de-guillaume-poirier.local>
Date: Fri Aug 22 21:05:37 2008 +0200improve generation of Darwin libraries
Patch by vmrsss %vmrsss A gmail P com%commit af82aae3649ba73b4d6bf380fb58ba00527d44d7 r947
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Aug 21 21:23:08 2008 -0400Fix compilation in gcc 3.4.x (issue in r946)
Due to a bug in gcc 3.4.x, in certain cases of inlining, the array_non_zero_int_mmx inline asssembly is miscompiled and causes a crash with --subme 7 --8x8dct.
This minor hack fixes this issue.commit e3a06225cea141b6eef8fface6ee2be5fdf2abec r946
Author: Loic Le Loarer <lll+vlc@m4x.org>
Date: Thu Aug 21 04:19:24 2008 -0600shut up various gcc warnings
commit 82efeea14c5fd03a6ed9c0b8eaa594e5d9407fce r945
Author: Loren Merritt <pengvado@akuvian.org>
Date: Thu Aug 21 04:15:49 2008 -0600fix a crash with invalid args and --thread-input (introduced in r921)
commit 36caec420e52767e61d49b84fe3bc0748d2f461c r944
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Aug 20 05:36:32 2008 -0600drop support for x86_32 PIC.
commit bff4dbace4256478381c66e4e58cdb4fb3d800cb r943
Author: Loren Merritt <pengvado@akuvian.org>
Date: Tue Aug 19 01:55:57 2008 -0600use permute macros in satd
move some more shared macros to x264util.asmcommit fd5cc6d0a007a4d9c2b8e09215854d2c742fb07f r942
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Aug 20 20:32:13 2008 -0600cosmetics
commit ae8da3e5c85562d1018b9f85c601884022f070a3 r941
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Aug 20 19:00:52 2008 -0600r940 broke threads
Bugfix für VBV in r951:
Quotecommit 445d87ec5188aa7f6303e0dcf1c943b80ed6c933 r951
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Aug 27 13:14:36 2008 -0400Fix some uses of uninitialized row_satd values in VBV
Resolves some issues with QP51 in I-frames with scenecut
Quotecommit 3727f2b46abd4821c4deea415eeafa42da898eb0 r953
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Aug 20 20:56:56 2008 -0600remove the distinction between itex and ptex
(changes 2pass statsfile format)commit 088631894e19e9a761f80c952e78f1a10f450506 r952
Author: Loren Merritt <pengvado@akuvian.org>
Date: Wed Aug 20 20:51:39 2008 -0600hardcode the ratecontrol equation, and remove the rceq option
'remove the rceq option' ... WHY?!?
hier was Dark Shikari dazu meinte:
Quote1. The ratecontrol has been heavily modified since its original code was borrowed from ffmpeg, and may not react in the same way to a modified ratecontrol equation.
2. FFmpeg was passing x264 either a NULL rceq, or a broken one, and since they refused to fix it, the only way to resolve it was to completely remove support, forcing them to fix it.
*gig* zu geil *gig*
Hier ist wohl noch einiges nachzuholen
QuoteDisplay Morecommit b4b64837d7bb6714f710cb1f2ef85f87f77da739 r983
Author: Loren Merritt <pengvado@akuvian.org>
Date: Sat Sep 20 12:31:10 2008 -0600r980 borked weighted bime
commit cc0fd8ab09eacaa78941169cbf52123333a8fe2e r982
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sat Sep 20 01:39:16 2008 -0700Disable I_PCM with psy-RD
psy-RD seems to put the PCM threshold a bit lower than it should be, so PCM is now disabled under psy-RD.
commit 9e319ff18553055b288c61397b6cff80766a536b r981
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Fri Sep 19 09:21:34 2008 -0700Merge avg and avg_weight
avg_weight no longer has to be special-cased in the code; faster weightb
commit b4cb6ef372d451d231bf884f551670577f3195d4 r980
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 17 21:25:05 2008 -0700Rewrite avg/avg_weight to take two source pointers
This allows the use of get_ref instead of mc_luma almost everywhere for bipred
commit 6d4af8d257162ac8881a0f96d9552eb928328d95 r979
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 17 00:33:37 2008 -0700Use low-resolution lookahead motion vectors as an extra predictor
Improves quality considerably (0-5%) in 1pass/CRF mode, especially with lower --me values and complex motion.
Reverses the order of lowres lookahead search to improve the usefulness of the extra predictors.
commit dcb123f72958af61b1803103246cc61e2528c5cb r978
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Sep 16 22:44:10 2008 -0700Add missing free() for f_qp_offset in frame.c
commit 2042a196655aae035d1ef8164c4d4f46ce83dbee r977
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date: Tue Sep 16 01:54:37 2008 -0700Correct misprediction of bitrate in threaded mode
Improves bitrate accuracy in cases with large numbers of threads.
Loosely based on a patch by BugMaster.
commit 7eaff1792dd1064ff607fec47d0d7d91fdc62641 r976
Author: Gabriel Bouvigne <bouvigne@mp3-tech.org>
Date: Tue Sep 16 01:53:02 2008 -0700Fix a case in which VBV underflows can occur
Fix a potential case where a frame might be initially allocated too low a QP, which would then have to be raised a low during row-based ratecontrol.
In some cases, this could even produce VBV underflows in 2pass mode.
commit 90220ef752a8f2de2f7d53bb266e64ba803bb09b r975
Author: Panagiotis Issaris <takis@issaris.org>
Date: Mon Sep 15 20:47:50 2008 +0200Use correct format specifier for uint64_t
commit a92bbc2325942d2ceab2ab043727f5943a33bd64 r974
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Sep 16 00:31:26 2008 -0700Cache motion vectors in lowres lookahead
This vastly speeds up b-adapt 2, especially at large bframes values.
This changes output because now MV prediction in lookahead only uses L0/L1 MVs, not bidir. This isn't a problem, since the bidir prediction wasn't really correct to begin with, so the change in output is neither positive nor negative.
This also allowed the removal of some unnecessary memsets, which should also give a small speed boost.
Finally, this allows the use of the lowres motion vectors for predictors in some future patch.
commit f4736691f1052fbe32288a5fd87abce672c7b32f r973
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Mon Sep 15 12:22:48 2008 -0700Fix regression in b-adapt patch: encoder_open failed for multipass encodes without bframes.
commit cbdaeb04ec128db18fcdb7480d81785fa7f4f371 r972
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Mon Sep 15 10:53:29 2008 -0700Stop SAR in y4m input from overriding --sar on commandline
commit ead885761b88312acf2b7b2b93f35632b8b5b518 r971
Author: Loren Merritt <pengvado@akuvian.org>
Date: Mon Sep 15 02:24:12 2008 -0600hadamard_ac for psy-rd
c version is 1.7x faster than satd+sa8d+sad
ssse3 version is 2.3x faster than satd+sa8d+sad
commit abe641635e9dc1209af4e201f9308edd33fe3096 r970
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sun Sep 14 21:36:45 2008 -0700Psychovisually optimized rate-distortion optimization and trellis
The latter, psy-trellis, is disabled by default and is reserved as experimental; your mileage may vary.
Default subme is raised to 6 so that psy RD is on by default.
commit 9818865c1f5eccbc04fb51f062cb1b3abff02db0 r969
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sun Sep 14 18:18:15 2008 -0700Add optional more optimal B-frame decision method
This method (--b-adapt 2) uses a Viterbi algorithm somewhat similar to that used in trellis quantization.
Note that it is not fully optimized and is very slow with large --bframes values.
It also takes into account weightb, which should improve fade detection.
Additionally, changes were made to cache lowres intra results for each frame to avoid recalculating them. This should improve performance in both B-frame decision methods.
This can also be done for motion vectors, which will dramatically improve b-adapt 2 performance when it is complete.
This patch also reads b_adapt and scenecut settings from the first pass so that the x264 header information in the output file will have correct information (since frametype decision is only done on the first pass).
commit 173b40c276ee187de31ef630fd207a62de1b2cc7 r968
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Sat Sep 13 14:03:12 2008 -0700Move adaptive quantization to before ratecontrol, eliminate qcomp bias
This change improves VBV accuracy and improves bit distribution in CRF and 2pass.
Instead of being applied after ratecontrol, AQ becomes part of the complexity measure that ratecontrol uses.
This allows for modularity for changes to AQ; a new AQ algorithm can be introduced simply by introducing a new aq_mode and a corresponding if in adaptive_quant_frame.
This also allows quantizer field smoothing, since quantizers are calculated beofrehand rather during encoding.
Since there is no more reason for it, aq_mode 1 is removed. The new mode 1 is in a sense a merger of the old modes 1 and 2.
WARNING: This change redefines CRF when using AQ, so output bitrate for a given CRF may be significantly different from before this change!
commit 869d5e4146a669f73d8a5ca07b3c04235fda0514 r967
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Sep 9 23:51:17 2008 -0700Fix crash when using b-adapt at resolutions 32x32 or below.
Original patch by BugMaster, but was mostly rewritten in order to make b-adapt actually *work* at such resolutions, not merely stop crashing.
commit bb11e37f87fe53633f531bd3b9d331f987852ed3 r966
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Sep 9 23:12:20 2008 -0700Add title-bar progress indicator under WIN32
Also add bitrate-so-far output when piping data to x264 (total frames not known)
Patch mostly by recover from Doom9.
commit 3d2983da7bbdbcfa08b12252ab71b0bf19a9ce26 r965
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Fri Sep 5 23:14:23 2008 -0700Revert part of r963
In some rare (but significant) cases, the optimized nal_encode algorithm gave incorrect results.
commit e48a952cb74741fbf13d0ec352906dc2f3a61e4b r964
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Sep 4 20:13:38 2008 -0700Predict 4x4_DC asm
Also remove 5-year-old unnecessary #define that reduced speed unnecessarily under MSVC-compiled builds
commit d21665d886638b08862e41bc68ea62472a646ca1 r963
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Thu Sep 4 00:43:54 2008 -0700Faster NAL unit encoding and remove unused nal_decode
Small speedup at very high bitrates
commit e0d7f9e53f847909574b603a3e725dddb8154574 r962
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 3 22:12:23 2008 -0700CAVLC cleanup and optimizations
Also move some small functions in macroblock.c to a .h file so they can be inlined.
commit 954117a7127fbf50540891f9c97ebe7c607be736 r961
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 3 21:43:06 2008 -0700Faster avg_weight assembly
Unrolling the loop a bit improves performance
commit f4d733a90136fe28b9a9a4c7efdce71c0446aeb5 r960
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 3 15:35:22 2008 -0700Faster H asm intra prediction functions
Take advantage of the H prediction method invented for merged intra SAD and apply it to regular prediction, too.
commit b0c599be2502bbb97266a5e7a971d7dc485e2596 r959
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 3 15:32:16 2008 -0700Add merged SAD for i16x16 analysis
Roughly 30% faster i16x16 analysis under subme=1
commit f6229465eb1307ab7250c8faa350887b7b03598c r958
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Wed Sep 3 15:15:17 2008 -0700Add sad_aligned for faster subme=1 mbcmp
Distinguish between unaligned and aligned uses of mbcmp
SAD_aligned, for MMX SADs, uses non-cacheline SADs.
commit 7ce0f2c74ef4890138dddd13c41163baf5df3ac6 r957
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Tue Sep 2 11:49:55 2008 -0700Improve progress indicator
Show average bitrate so far during encoding
Decrease update interval for longer encodes (max of 10 frames encoded between updates)
commit 7b71d586bce87181a4978ee3f8eb775b0481f6d4 r956
Author: Jason Garrett-Glaser <darkshikari@gmail.com>
Date: Mon Sep 1 10:35:41 2008 -0700Fix speed regression in r951
Row SATDs are only necessary in VBV mode, so don't need to be checked if VBV is off.
commit d4265bb3976dea84ae582cc8d96fe69a72d2332d r955
Author: Holger Lubitz <hal@duncan.ol.sub.de>
Date: Sun Aug 31 20:55:50 2008 -0600zigzag asm
commit 6b33ca95bf3dfb67014655de4d28304beb34bb61 r954
Author: Guillaume Poirier <gpoirier@mplayerhq.hu>
Date: Sun Aug 31 21:46:31 2008 +0200fix SOFLAGS used when building gtk frontend
patch by Markus Kanet %darkvision A gmx P eu%
Quotelibx264 SVN-r983 + Gruntster's Alignment-Fix:
http://www.mediafire.com/?j1jmn0hzdm2Compiled with MinGW GCC 4.3.2-tdm-1 (fprofiled). Tested with Avidemux 2.4.3 r4376. Modified to enable "--b-adapt 2" in Avidemux.
Avidemux r4376+ is highly recommended, because of major bugfixes regarding the flushing of video encoders.
x264.983.modified.exe - Alternate Download
Patches used:
x264_hrd_pulldown.09_interlace.diff
gcc 3.4.5 fprofiled build with -march=pentium2.
Apologies for the recent absence--cleaning out the water loop was worth it though.
Ja - seit build 979 sehr buggy die Sache .
Ja - seit build 979 sehr buggy die Sache .
Begründung? Bei mir läuft r983 ziemlich stabil
Sorry mein Fehler . Hatte die 979 noch nicht updatet - daher dachte ich das die weiteren auch noch buggy sind . Die 983 scheint auch besser zu gehen bei mir .
Don’t have an account yet? Register yourself now and be a part of our community!