Parent Directory
|
Revision Log
added 1.1 changelog + updated 1.0 one
# Ed.Gomez: This ChangeLog is generated from a personal tree maintained # under the arch revision control tool. That's why dates may be skewed. I # also removed all my email adresses from the output because they are not # relevant. 2004-07-10 17:27:06 GMT patch-43 Summary: Small mem leak in vfw. Revision: xvidcore--stable--1.0--patch-43 From sysKin: * Free zones. modified files: vfw/src/codec.c 2004-07-10 16:55:53 GMT patch-42 Summary: Fix wrong matrix reading logic. Revision: xvidcore--stable--1.0--patch-42 From sysKin: * Fix a problem reading quantization matrix. modified files: src/bitstream/bitstream.c 2004-06-26 21:26:35 GMT patch-41 Summary: low delay guessing (il)logic fix. Revision: xvidcore--stable--1.0--patch-41 From sysKin: * bframes were decoded wrong when trying to guess low_delay flag as specified in the standard when vol_control_parameters aren't available. modified files: src/decoder.c 2004-06-13 19:15:05 GMT patch-40 Summary: Small memory error in ia32 cpuid function. Revision: xvidcore--stable--1.0--patch-40 From ed.gomez: * Valgrind detected a write to suspicious stack space. To avoid any false reporting, added an explicit stack space allocation. modified files: src/utils/x86_asm/cpuid.asm ######################################################################### # 1.0.1 (Bitstream Version 35) ######################################################################### 2004-06-05 22:55:56 GMT patch-39 Summary: Marking 1.0.1 release Revision: xvidcore--stable--1.0--patch-39 Marking 1.0.1 release modified files: ChangeLog TODO build/generic/configure.in src/xvid.c src/xvid.h 2004-06-02 20:58:38 GMT patch-38 Summary: DC clipping bug for real Revision: xvidcore--stable--1.0--patch-38 From ed.gomez: * patch-25 was supposed to fix a DC clipping bug. However i added the additional clipping code in the wrong place. But at least, my fix didn't cause any trouble, it was just noop. This patch should really fix this very "unlikely bug" (i just want to remind the reader that this bug isn't easy to trigger, and eg: my test sequences don't trigger it at all) BS version incremented: 35 modified files: src/decoder.c src/motion/estimation_rd_based.c src/prediction/mbprediction.c src/prediction/mbprediction.h src/xvid.h 2004-05-31 21:11:49 GMT patch-37 Summary: time fixes to decoder. Revision: xvidcore--stable--1.0--patch-37 From ed.gomez: * timestamps were badly computed by teh decoder in some corner cases (1fps). This bug revealed that, timestamps were indeed wrong as expected, but that bvop blocks in direct mode (vectors interpolated) were somewhat compensated with wrong vectors in these same corner cases. modified files: src/bitstream/bitstream.c src/decoder.c src/decoder.h 2004-05-30 09:36:13 GMT patch-36 Summary: Wrong license header. Revision: xvidcore--stable--1.0--patch-36 From ed.gomez: * Pascal did agree a plain GPL migration long ago, but this file remained GPL+location restriction. modified files: src/image/reduced.c 2004-05-29 09:02:25 GMT patch-35 Summary: More missing va_end() calls. Revision: xvidcore--stable--1.0--patch-35 From pete: * portab.h is plenty of missing calls to va_end(). modified files: src/portab.h 2004-05-28 21:28:21 GMT patch-34 Summary: FPS=1 problem in decoder. Revision: xvidcore--stable--1.0--patch-34 From ed.gomez: * patch-24 did fix bad behavior in encoder, so at least, compliant streams were generated but the decoder was still doing the maths a wrong way. Apply same logic to decoder. Thanks to the patch-24 bug reporter for this followup. modified files: src/bitstream/bitstream.c 2004-05-27 20:04:01 GMT patch-33 Summary: Nasty typo in pvop vector lambdas. Revision: xvidcore--stable--1.0--patch-33 From sysKin: * s/+/*/ in the lambda value array for vectors in the pvop estimation module. modified files: src/motion/estimation_pvop.c 2004-05-26 13:23:38 GMT patch-32 Summary: Bits/Bytes confusion in the VFW frontend. Revision: xvidcore--stable--1.0--patch-32 From sysKin: * confusion between the kilo, in kilobits (1000) and the kilo in kilobytes (1024, should be named KiB anyway) * biSizeImage is in bytes, not bits according to the Win32 API. modified files: vfw/src/codec.c vfw/src/config.c 2004-05-26 09:28:31 GMT patch-31 Summary: Close variable argument list. Revision: xvidcore--stable--1.0--patch-31 From ed.gomez: * Close the variable argument list as specified by the ANSI C standard. Reported by Carsten <list4darav at gmx dot de> on xvid-devel. modified files: src/image/font.c 2004-05-26 09:00:26 GMT patch-30 Summary: ICM compatibility for VFW Revision: xvidcore--stable--1.0--patch-30 From sysKin: * Makes the VFW frontend compatible with ICM applications (Ooo, MS Office... etc). Reported on IRC. modified files: vfw/src/config.c vfw/src/driverproc.c 2004-05-26 08:58:56 GMT patch-29 Summary: Small trellis bug Revision: xvidcore--stable--1.0--patch-29 From sysKin: * Last coeff wasn't summed. Reported by Jean Marc. modified files: src/utils/mbtransquant.c 2004-05-26 08:46:45 GMT patch-28 Summary: Small bug in bframe ME. Revision: xvidcore--stable--1.0--patch-28 From sysKin: * Small bug in bframe ME. modified files: src/motion/estimation_bvop.c ######################################################################### # 1.0.0 final (Bitstream Version 34) ######################################################################### 2004-05-08 22:26:06 GMT patch-27 Summary: Marking 1.0.0 final Revision: xvidcore--stable--1.0--patch-27 From ed.gomez: * Marking 1.0.0 final \o/ modified files: ChangeLog build/generic/configure.in src/xvid.h 2004-05-06 17:56:52 GMT patch-26 Summary: Small mismatch in hint<->widget in VFW Revision: xvidcore--stable--1.0--patch-26 From sysKin: * Small mismatch in hint<->widget. modified files: vfw/src/resource.rc 2004-05-02 22:40:50 GMT patch-25 Summary: DC prediction fix. Revision: xvidcore--stable--1.0--patch-25 From ed.gomez: * DC predictors weren't clipped to the [-2048, 2047] range. BS version increased to 33 Thanks to jnorish on our forums to point out the problem. modified files: src/bitstream/bitstream.c src/decoder.c src/motion/estimation_rd_based.c src/prediction/mbprediction.c src/prediction/mbprediction.h src/xvid.h 2004-05-02 10:30:29 GMT patch-24 Summary: Possible VOL header corruption. Revision: xvidcore--stable--1.0--patch-24 From ed.gomez: * The VOL header could be corrupted when passing fincr=fbase=1 which happens for fps=1 sequences. BS version bumped up to 32 Original report: http://www.xvid.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=2026&highlight= modified files: src/bitstream/bitstream.c src/xvid.h 2004-04-30 23:10:19 GMT patch-23 Summary: Some very light Unix build system changes Revision: xvidcore--stable--1.0--patch-23 To prepare testing framework merging. From ed.gomez: * Some typos * Copyright updates (it's 2004 since a few months ;-) * Added some checking to bootstrap.sh * Added m4 AC_PREREQ macro to configure.in modified files: build/generic/Makefile build/generic/bootstrap.sh build/generic/configure.in 2004-04-20 19:40:29 GMT patch-22 Summary: Small visual fix. Revision: xvidcore--stable--1.0--patch-22 From sysKin: * Small visual fix modified files: vfw/src/config.c 2004-04-20 19:38:24 GMT patch-21 Summary: Fix crash in decoder for non IFrame 1st frame. Revision: xvidcore--stable--1.0--patch-21 From sysKin: * Fixed the crash caused by non IFrame 1st frame. modified files: src/decoder.c 2004-04-18 16:21:50 GMT patch-20 Summary: Typo Revision: xvidcore--stable--1.0--patch-20 Typo modified files: vfw/src/resource.rc 2004-04-17 17:04:20 GMT patch-19 Summary: vfw opens audio file in shared access mode Revision: xvidcore--stable--1.0--patch-19 vfw opens audio file in shared access mode modified files: vfw/src/config.c 2004-04-15 22:39:12 GMT patch-18 Summary: Tiny xvid_decraw cleaning Revision: xvidcore--stable--1.0--patch-18 Tiny xvid_decraw cleaning modified files: examples/xvid_decraw.c 2004-04-15 19:14:31 GMT patch-17 Summary: Tiny minor fixes for msvc. Revision: xvidcore--stable--1.0--patch-17 From pete: * Missing arch endianness define in project files. * Add a textual warning about win32 console EOF misreading. * Prevent a SIGFPE when no frames were decoded. modified files: build/win32/xvid_decraw.dsp build/win32/xvid_encraw.dsp examples/xvid_decraw.c 2004-04-14 22:41:07 GMT patch-16 Summary: Fixed missing 1st frame in dshow output. Revision: xvidcore--stable--1.0--patch-16 From sysKin: * decoder flags were overwritten, this was preventing from outputing the first frame immediatly. modified files: dshow/src/CXvidDecoder.cpp 2004-04-14 22:39:17 GMT patch-15 Summary: Ressource leaking in dshow. Revision: xvidcore--stable--1.0--patch-15 From sysKin: * Same kind of ressource leaking as in vfw. Same cure. modified files: dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h 2004-04-14 19:45:23 GMT patch-14 Summary: Fixed small bug in trellis code. Revision: xvidcore--stable--1.0--patch-14 From ed.gomez (spotted by jean marc): * Trellis optimization was computing the sum |coeffs| wrongly because the Compute_sum function wasn't doing zigzag scanning and stopped at last non zero coeffs in linear scanning... The trivial fix could have been to pass the zigzag to the compute sum function so it could have done its job right. But... Why computing stuff that is already known in the upper layer ? I removed the compute sum function, and just pass the original sum value in trellis function parameters, just in case we have to return it again because trellis failed optimizing the block coeffs. This fix the bug and saves cycles :-) (but should not be noticeable) modified files: src/utils/mbtransquant.c src/xvid.h 2004-04-12 12:06:12 GMT patch-13 Summary: Don't do SAD and RD based searches for qp. Revision: xvidcore--stable--1.0--patch-13 From sysKin: * MakeGoodFlags function wasn't disabling SAD based search when using RD. This was causing slowdown for no gain at all. This patch should speed up encoding in qp mode. modified files: src/motion/estimation_pvop.c 2004-04-12 12:01:19 GMT patch-12 Summary: 3dnow functions proper separation. Revision: xvidcore--stable--1.0--patch-12 From pete (thx to a forum report): * Separate correctly pure 3dnow functions and 3dnow+mmxext functions. This fix "Illegal instruction" crash on old k6-2 CPUs. modified files: src/xvid.c 2004-04-12 11:57:20 GMT patch-11 Summary: Better MV clipping code. Revision: xvidcore--stable--1.0--patch-11 From sysKin: * Better MV clipping. DivX 5 generates out of range vectors and clipping them directly borks the decoding of other MVs for which out of range MVs were predictors. So it's just better to clip them for the block decoding and keep an unclipped version for predictions. modified files: src/decoder.c 2004-04-08 20:34:54 GMT patch-10 Summary: PGM support back in xvid_decraw. Revision: xvidcore--stable--1.0--patch-10 From ed.gomez: * pgm/pnm format added back to xvid_decraw + pgm/pnm formats are now default for yv12/i420/rgb24 pixel format. + tga is default for rgb16/32 + use option -f to choose tga, or pnm/pgm modified files: examples/xvid_decraw.c 2004-04-07 22:30:15 GMT patch-9 Summary: 3DNow Ext functions use MMXEXT opcodes. Revision: xvidcore--stable--1.0--patch-9 From Soltius (XviD Forum): * Most of 3dnow extension functions do use MMXEXT opcodes, so classify these functions as 3dnowext+mmxext. Avoids K6-2 boxes to crash with an invalid instruction error reported by the host OS. PS: original bug report http://www.xvid.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=1656 modified files: src/xvid.c 2004-04-07 22:01:54 GMT patch-8 Summary: RGB 16bit output fix. Revision: xvidcore--stable--1.0--patch-8 From ScarletteTout (XviD Forum): * Fix RGB 16bit output in C functions. From ed.gomez: * Replaced PGM output by TGA output so it's easy to implement RGB 16/24/32 and greyscale bitmaps support in a single format. (pgm could have supported RGB 24 and Greyscale only) * Added colorspace choice to xvid_decraw Use option -c csp, where csp is either rgb16, rgb24, rgb32, yv12 or i420 Defaults to i420. PS: original bug report http://www.xvid.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=1960&highlight= modified files: examples/xvid_decraw.c src/image/colorspace.c ######################################################################### # 1.0.0 RC4 (Bitstream Version 30) ######################################################################### 2004-04-04 20:21:38 GMT patch-7 Summary: DShow widget hiding. Revision: xvidcore--stable--1.0--patch-7 From Michael: * No need to keep widget visibles if they won't be in 1.0.0. modified files: dshow/src/xvid.ax.rc 2004-04-04 20:17:52 GMT patch-6 Summary: Compiler quirk in portab.h Revision: xvidcore--stable--1.0--patch-6 From Michael: * The VC.NET workaround was causing trouble. Inversed the test. modified files: src/portab.h 2004-04-04 14:19:10 GMT patch-5 Summary: Marking RC4 Revision: xvidcore--stable--1.0--patch-5 Marking RC4 modified files: ChangeLog build/generic/configure.in src/xvid.h 2004-04-04 14:07:00 GMT patch-4 Summary: Frame dropping disabling for bframes. Revision: xvidcore--stable--1.0--patch-4 From sysKin & Pete: * Disable frame dropping with bframes enabled. These two options do not play fine together. modified files: src/encoder.c 2004-04-04 14:05:50 GMT patch-3 Summary: Dead code removal. Revision: xvidcore--stable--1.0--patch-3 From sysKin: * FrameCodeP was always called with contanst parameters. Removed these parameters and associated dead code. modified files: src/encoder.c 2004-04-04 14:03:42 GMT patch-2 Summary: Typo in ME fast comparison. Revision: xvidcore--stable--1.0--patch-2 From sysKin: * Small typo in Fast ME code. modified files: src/motion/estimation_common.c 2004-04-02 23:58:19 GMT patch-1 Summary: VFW Resource leak fix (try #2) Revision: xvidcore--stable--1.0--patch-1 From Suiryc on IRC: * both encoder and decoder ending functions were calling the dll freeing code. This was an error as the first function called would unbind core function for the second called one. Thus xvidcore could not release buffers. modified files: vfw/src/codec.c vfw/src/driverproc.c 2004-04-02 20:33:02 GMT base-0 Summary: tag of ed.gomez@free.fr--2004-1/xvidcore--devapi4--1.0--patch-53 Revision: xvidcore--stable--1.0--base-0 (automatically generated log message) 2004-03-31 19:32:47 GMT patch-53 Summary: Ressources leaking in VFW. Revision: xvidcore--devapi4--1.0--patch-53 From sysKin: * Storing ressources in global vars is making multithreaded/instanced apps leaking lot of memory. Moved these vars to codec struct. Thanks to dalox <fdalleau at hymatom d0t fr> to spot and fix the bug. modified files: vfw/src/codec.c vfw/src/codec.h vfw/src/driverproc.c 2004-03-31 19:28:51 GMT patch-52 Summary: Fix to bad NVOP+bframe interaction. Revision: xvidcore--devapi4--1.0--patch-52 From syskin: * When generating a NVOP, it interferes with bframe flushing and packing. modified files: src/encoder.c 2004-03-31 19:24:42 GMT patch-51 Summary: Fix GMC 2 warp point. Revision: xvidcore--devapi4--1.0--patch-51 From Skal: * Fix 2 warp points GMC. modified files: src/motion/gmc.c 2004-03-31 19:18:46 GMT patch-50 Summary: Added intra quant testing. Revision: xvidcore--devapi4--1.0--patch-50 From Skal: * Added intra quant testing to xvid_bench modified files: examples/xvid_bench.c 2004-03-31 19:07:55 GMT patch-49 Summary: input width/height check Revision: xvidcore--devapi4--1.0--patch-49 From Skal: * Input width and height aren't checked and this can cause crash. modified files: src/encoder.c 2004-03-28 01:02:21 GMT patch-48 Summary: $ CVS expansion removed Revision: xvidcore--devapi4--1.0--patch-48 $ CVS expansion removed modified files: dshow/src/Configure.cpp dshow/src/config.c examples/xvid_encraw.c 2004-03-28 00:45:23 GMT patch-47 Summary: Allow bigger frames Revision: xvidcore--devapi4--1.0--patch-47 Allow bigger frames modified files: examples/xvid_encraw.c 2004-03-28 00:41:54 GMT patch-46 Summary: Fix in postproc header Revision: xvidcore--devapi4--1.0--patch-46 Fix in postproc header modified files: src/image/postprocessing.h 2004-03-28 00:33:02 GMT patch-45 Summary: Fixed xvidvfw build on real mingw+msys systems Revision: xvidcore--devapi4--1.0--patch-45 Fixed xvidvfw build on real mingw+msys systems modified files: vfw/bin/Makefile 2004-03-15 21:48:48 GMT patch-44 Summary: VFW updates. Revision: xvidcore--devapi4--1.0--patch-44 VFW updates. modified files: vfw/src/config.c vfw/src/resource.rc 2004-03-15 21:44:17 GMT patch-43 Summary: GMC bugfix. Revision: xvidcore--devapi4--1.0--patch-43 From skal: * GMC bugfixes. modified files: src/motion/gmc.c 2004-03-15 21:41:18 GMT patch-42 Summary: Buffer overrun fix in post proc. Revision: xvidcore--devapi4--1.0--patch-42 From sysKin: * Fixed buffer overrun in postproc code. modified files: src/image/postprocessing.c src/image/postprocessing.h 2004-03-15 21:33:22 GMT patch-41 Summary: Forgotten files. Revision: xvidcore--devapi4--1.0--patch-41 Me: * Sorry i missed these file additions. Important for the packages as i build them from the tla archive. new files: dshow/src/.arch-ids/Configure.cpp.id dshow/src/.arch-ids/config.c.id dshow/src/.arch-ids/config.h.id dshow/src/.arch-ids/debug.h.id dshow/src/Configure.cpp dshow/src/config.c dshow/src/config.h dshow/src/debug.h 2004-03-03 21:01:09 GMT patch-40 Summary: MV clipping in decoder. Revision: xvidcore--devapi4--1.0--patch-40 From sysKin: * clip MVs to valid ranges. modified files: src/decoder.c src/decoder.h ######################################################################### # 1.0.0 RC3 (Bistream Version 29) ######################################################################### 2004-02-29 13:17:10 GMT patch-39 Summary: Marking 1.0.0 RC3 Revision: xvidcore--devapi4--1.0--patch-39 * Marking RC3 modified files: ChangeLog build/generic/configure.in src/xvid.h 2004-02-29 13:08:38 GMT patch-38 Summary: Win32 project fixes for xvid_encraw and xvid_decraw. Revision: xvidcore--devapi4--1.0--patch-38 From sysKin: * xvid_dec/encraw were linking against libxvidcore.lib. Now they link against xvidcore.dll.a NB: xvid_bench is left as is though it doesn't link. This program requires access to internal functions which aren't available through the dll link lib. No good solution exists for MSVC to build both a dll+its link lib+static lib. modified files: build/win32/xvid_decraw.dsp build/win32/xvid_encraw.dsp 2004-02-29 12:56:36 GMT patch-37 Summary: DShow updates Revision: xvidcore--devapi4--1.0--patch-37 Bunch of DShow updates modified files: dshow/src/CXvidDecoder.cpp dshow/src/resource.h dshow/src/xvid.ax.rc 2004-02-29 12:55:41 GMT patch-36 Summary: VFW updates. Revision: xvidcore--devapi4--1.0--patch-36 * Bunch of VFW frontends updates. modified files: vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/resource.rc vfw/src/status.c vfw/vfw.dsp 2004-02-29 12:49:24 GMT patch-35 Summary: Artefact workaround in bframes. Revision: xvidcore--devapi4--1.0--patch-35 From sysKin: * Workaround for some artefacts appearing in bframes. modified files: src/motion/estimation_bvop.c 2004-02-29 12:46:13 GMT patch-34 Summary: Decoder buffer overflow fix. Revision: xvidcore--devapi4--1.0--patch-34 From sysKin: * Avoids buffer overflow when reading the last align byte. Our bitstream do 4 byte reading because of some platform contraints (ARM) and can cause buffer overflow reads. modified files: src/decoder.c 2004-02-29 11:53:47 GMT patch-33 Summary: Compatibility decoding for old bitstreams. Revision: xvidcore--devapi4--1.0--patch-33 From syskin: * old core versions used in dev-api-3 distributed by nearly all win32 bin builders used to have a edging bug. So when this information is known, workaround the bug. modified files: src/decoder.c src/encoder.c src/image/image.c src/image/image.h ######################################################################### # 1.0.0 RC2 (Bistream Version 28) ######################################################################### 2004-02-08 01:06:40 GMT patch-32 Summary: Marking RC2 Revision: xvidcore--devapi4--1.0--patch-32 Marking RC2 modified files: ChangeLog build/generic/configure.in 2004-02-07 13:54:24 GMT patch-31 Summary: Win32 project outputs dll lib for linking. Revision: xvidcore--devapi4--1.0--patch-31 From pete: * output a lib to link against the dll (xvidcore.dll.a). modified files: build/win32/libxvidcore.dsp 2004-02-07 13:51:01 GMT patch-30 Summary: DShow update. Revision: xvidcore--devapi4--1.0--patch-30 From pete: * cmd line driving From sysKin(?): * bugfixes related to video flipping * bugfix for the 'crash at the end" bug modified files: TODO dshow/dshow.dsp dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h dshow/src/xvid.ax.def 2004-02-07 13:47:45 GMT patch-29 Summary: VFW updates Revision: xvidcore--devapi4--1.0--patch-29 Sorry feeling lazy about splitting this patch... From peter: * bitrate calculator From sysKin: * WMP9 bugfix modified files: TODO vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/resource.h vfw/src/resource.rc 2004-02-07 13:43:26 GMT patch-28 Summary: Implicit overflow tuning for 2nd pass. Revision: xvidcore--devapi4--1.0--patch-28 From sysKin: * When doing a bigger 2nd pass, the overflow loop must be more aggressive else no bonus bits are reinjected. So we can auto tune the overlow values in that case. modified files: src/plugins/plugin_2pass2.c 2004-02-07 13:38:33 GMT patch-27 Summary: GMC+interlaced bugfix in decoder. Revision: xvidcore--devapi4--1.0--patch-27 From sysKin: * GMC+interlaced bugfix in decoder. modified files: src/decoder.c 2004-02-07 13:35:16 GMT patch-26 Summary: Reverted patch-23 Revision: xvidcore--devapi4--1.0--patch-26 From christoph: * reverted patch-23, old code was right. * Important typo for the YVYU csp (passing the y plane instead of u). modified files: src/image/image.c src/xvid.h 2004-01-31 11:20:36 GMT patch-25 Summary: DShow support for more mpeg4 fourccs. Revision: xvidcore--devapi4--1.0--patch-25 From sysKin: * Added support for the MP4V fourcc. modified files: dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h dshow/src/resource.h dshow/src/xvid.ax.rc 2004-01-31 11:12:38 GMT patch-24 Summary: DivX decoder compatibility Revision: xvidcore--devapi4--1.0--patch-24 From sysKin: * DivX decoder compatibility improved for packed bitstreams. It should now detect them and play them fine. modified files: src/bitstream/bitstream.c 2004-01-31 11:10:26 GMT patch-23 Summary: YV12/I420 confusion fixed. Revision: xvidcore--devapi4--1.0--patch-23 From christoph: * I420/YV12 were swapped since ... ages. * CSP_USER renamed to CSP_PLANAR modified files: src/encoder.c src/image/image.c src/xvid.h 2004-01-31 10:53:20 GMT patch-22 Summary: Arch separation for mem transfer functions Revision: xvidcore--devapi4--1.0--patch-22 Arch separation for mem transfer functions modified files: src/utils/mem_transfer.h 2004-01-27 14:47:08 GMT patch-21 Summary: Write to registry Flip video flag in dshow Revision: xvidcore--devapi4--1.0--patch-21 From sysKin: * The flip video flag is now saved in registry. * Changed internal flags name convention (use n prefix for all now) modified files: dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp 2004-01-27 14:42:52 GMT patch-20 Summary: Added bitrate calc to VFW Revision: xvidcore--devapi4--1.0--patch-20 From Pete: * Added bitrate calculator. * Changed up a few function calls to static type. modified files: vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/src/resource.h vfw/src/resource.rc vfw/vfw.dsp 2004-01-27 14:29:49 GMT patch-19 Summary: Bugfix in decoder Revision: xvidcore--devapi4--1.0--patch-19 From sysKin: * when stats are not used, don't write to the stats pointer. modified files: src/decoder.c ######################################################################### # 1.0.0 RC1 (Bistream Version 26) ######################################################################### 2004-01-25 16:01:06 GMT patch-18 Summary: Marking RC1 Revision: xvidcore--devapi4--1.0--patch-18 Marking RC1 modified files: ChangeLog build/generic/configure.in src/xvid.h 2004-01-25 15:37:57 GMT patch-17 Summary: VFW update (again²) Revision: xvidcore--devapi4--1.0--patch-17 From sysKin: * Added Constant Quant encoding. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/resource.rc 2004-01-25 15:35:38 GMT patch-16 Summary: Missing MB quants for PP. Revision: xvidcore--devapi4--1.0--patch-16 From sysKin: * MB Quants are used by the PP code, so don't forget to update them even if the block is skipped or not coded. modified files: src/decoder.c 2004-01-23 13:25:52 GMT patch-15 Summary: VFW update (again) Revision: xvidcore--devapi4--1.0--patch-15 From sysKin: * Status window updates. * Big resource.h cleanup, it seems msvc isn't able to do it automatically. modified files: vfw/src/resource.h vfw/src/resource.rc vfw/src/status.c 2004-01-23 11:17:20 GMT patch-14 Summary: VFW gcc warnings Revision: xvidcore--devapi4--1.0--patch-14 VFW gcc warnings modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h 2004-01-22 20:54:53 GMT patch-13 Summary: DShow updates. Revision: xvidcore--devapi4--1.0--patch-13 From sysKin: * Fixed registry params type. Bool cannot be used or something weird happens when writing to registry * Defaults set to what the Reset widget sets. modified files: dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp 2004-01-22 20:35:27 GMT patch-12 Summary: VFW updates. Revision: xvidcore--devapi4--1.0--patch-12 From sysKin: * GUI improvements. * Stats fixing. * Automatic config clear upon installation. * Added postprocessing options in there too. modified files: vfw/bin/xvid.inf vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/src/resource.h vfw/src/resource.rc vfw/src/status.c vfw/src/status.h 2004-01-22 20:28:54 GMT patch-11 Summary: Minor updates to text files Revision: xvidcore--devapi4--1.0--patch-11 Minor updates to text files modified files: AUTHORS TODO 2004-01-22 20:27:10 GMT patch-10 Summary: 2pass plugin changes. Revision: xvidcore--devapi4--1.0--patch-10 From sysKin: * Disabled QPel during first pass as well. * Fix a mistaking condition when enabling largers 2nd passes. From ed.gomez: * Fix the fix logic. The previous fix enclosed a condition it should not have touched. So i removed the mistaking condition, which was wrong anyway as stated in the comment, and got back the sane condition test. modified files: src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c 2004-01-17 13:03:11 GMT patch-9 Summary: Unitialized pointers during plugin creation. Revision: xvidcore--devapi4--1.0--patch-9 From sysKin: - plugins which do not require private data were leaving the param2 unitialized. Just init it to NULL. This bug wasn't causing any trouble anyway... modified files: src/plugins/plugin_dump.c src/plugins/plugin_psnr.c vfw/src/codec.c 2004-01-17 01:09:01 GMT patch-8 Summary: DShow forwwards AR information. Revision: xvidcore--devapi4--1.0--patch-8 From syskin(?): - forward AR information to DShow framework. - grayed some widgets. modified files: dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h dshow/src/xvid.ax.rc 2004-01-07 13:50:29 GMT patch-7 Summary: Scaled zones fix. Revision: xvidcore--devapi4--1.0--patch-7 From sysKin (ideas from Koepi iirc): * Fix scaled zones computing prescaled data and so on instead of guessing everything with a global zone weight factor. modified files: src/plugins/plugin_2pass2.c 2004-01-06 01:06:39 GMT patch-6 Summary: Tab->Spaces in header only Revision: xvidcore--devapi4--1.0--patch-6 Tab->Spaces in header only modified files: src/xvid.h 2004-01-04 18:35:35 GMT patch-5 Summary: Typo fixed Revision: xvidcore--devapi4--1.0--patch-5 Typo fixed modified files: build/generic/configure.in 2004-01-04 13:40:51 GMT patch-4 Summary: VFW safer code. Revision: xvidcore--devapi4--1.0--patch-4 From sysKin: * Protects some parts of the code depending on a previous xvidcore opening. Avoids resources leaking. modified files: vfw/src/codec.c vfw/src/driverproc.c 2004-01-04 13:33:28 GMT patch-3 Summary: Fixes VC debug target name Revision: xvidcore--devapi4--1.0--patch-3 Fixes VC debug target name modified files: vfw/vfw.dsp 2004-01-02 23:10:56 GMT patch-2 Summary: Win32 linking policy revised. Revision: xvidcore--devapi4--1.0--patch-2 Finnaly Win32 linking policy is to separate all XviD components: - xvidcore.dll exports XviD API - xvidvfw.dll links against xvidcore DLL - xviddshow.dll links against xvidcore DLL From sysKin: * Changed DShow linking policy in VS project file. * Changed VFW linking policy in VS project file. * Added runtime xvidcore.dll loading in DShow and VFW. * Installs xvidcore.dll along side with xvidvfw.dll. From ed.gomez: * Changed libxvidcore.dll mingw32/cygwin target name to xvidcore.dll in the configure script. * Changed xvid.dll VFW target name to xvidvfw.dll in the generic Makefile. PS: unlike CVS, i reverted back to MS build tools in VS project files modified files: build/generic/configure.in build/win32/libxvidcore.dsp dshow/dshow.dsp dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h vfw/bin/Makefile vfw/bin/sources.inc vfw/bin/xvid.inf vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/vfw.dsp 2004-01-02 22:02:07 GMT patch-1 Summary: Better seeking in dshow Revision: xvidcore--devapi4--1.0--patch-1 From Michael: * Better DShow seeking. modified files: dshow/src/CXvidDecoder.cpp 2004-01-02 12:28:39 GMT base-0 Summary: tag of ed.gomez@free.fr--2003-1/xvidcore--devapi4--1.0--patch-162 Revision: xvidcore--devapi4--1.0--base-0 Archive cycling... ######################################################################### # 1.0.0 beta3 (Bistream Version 25) ######################################################################### 2003-12-26 22:21:35 GMT patch-162 Summary: Marking 1.0.0 beta3 Revision: xvidcore--devapi4--1.0--patch-162 Marking beta3 modified files: ChangeLog TODO build/generic/configure.in src/xvid.h 2003-12-25 20:57:52 GMT patch-161 Summary: Thread safe PP. Revision: xvidcore--devapi4--1.0--patch-161 From Michael: * Thread safe PP, context is now stored in DECODER struct. modified files: src/decoder.c src/decoder.h src/image/postprocessing.c src/image/postprocessing.h 2003-12-25 20:49:36 GMT patch-160 Summary: Added Turbo option to VFW GUI Revision: xvidcore--devapi4--1.0--patch-160 From Michael: * Added turbo mode that enables all fast ME flags. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/resource.h vfw/src/resource.rc 2003-12-25 20:46:16 GMT patch-159 Summary: Cartoon mode usage written to stream. Revision: xvidcore--devapi4--1.0--patch-159 From Michael: * @encoding: write cartoon usage in the version user data. * @decoding: detect cartoon flag appended to version string and force FILM PP disabling. modified files: src/bitstream/bitstream.c src/bitstream/bitstream.h src/decoder.c src/decoder.h src/encoder.c 2003-12-21 13:34:03 GMT patch-158 Summary: Removed unused var in VFW GUI Revision: xvidcore--devapi4--1.0--patch-158 Removed unused var in VFW GUI modified files: vfw/src/config.c 2003-12-21 13:32:52 GMT patch-157 Summary: Two pass small update Revision: xvidcore--devapi4--1.0--patch-157 from syskin: * allow second pass to be bigger than 1st one (not tested, the quant mapping formula may not be adapted for this usage, so take this change as experimental, and prefer doing second pass still smaller than 1st one) * let ivops benefit from positive overflow. from me: * set frame type in quant zones (was a buglet) modified files: src/plugins/plugin_2pass2.c 2003-12-20 22:28:07 GMT patch-156 Summary: New VFW defaults Revision: xvidcore--devapi4--1.0--patch-156 From michael: * new VFW default values modified files: vfw/src/config.c 2003-12-20 22:12:38 GMT patch-155 Summary: Added ARGB colorspace. Revision: xvidcore--devapi4--1.0--patch-155 Christoph Nägeli naegelic(at)ee{dot}ethz<dot>ch asked me to add C support for ARGB colorspace. He provided the encoding part, and i extended the original patch in order to have full support for ARGB both for encoding and decoding (though it's C only, read *slow*). modified files: src/image/colorspace.c src/image/colorspace.h src/image/image.c src/xvid.c src/xvid.h 2003-12-20 21:29:37 GMT patch-154 Summary: Added 2pass1 comment about fast 1st pass. Revision: xvidcore--devapi4--1.0--patch-154 Just added a comment on fast 1st pass, so it explains why we do it that way and why some things are left aside. modified files: src/plugins/plugin_2pass1.c 2003-12-20 20:03:51 GMT patch-153 Summary: Win32 VC6 wrong libc linking. Revision: xvidcore--devapi4--1.0--patch-153 From sysKin: * Changed single thread libc linking to multithreaded version. modified files: vfw/vfw.dsp 2003-12-20 15:28:53 GMT patch-152 Summary: VOL flags updating -- take #2 Revision: xvidcore--devapi4--1.0--patch-152 From sysKin: * VOL flags updates fix take #2 modified files: src/encoder.c 2003-12-20 15:10:30 GMT patch-151 Summary: Fast ME tunings. Revision: xvidcore--devapi4--1.0--patch-151 From michael: * fast refinement for 8x8 blocks * more reliable behavior for all fast ME decisions modified files: src/motion/estimation_bvop.c src/motion/estimation_pvop.c src/xvid.h 2003-12-20 14:59:58 GMT patch-150 Summary: VFW AR revamping -- take #2 Revision: xvidcore--devapi4--1.0--patch-150 From sysKin: * more AR revamping modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/resource.h vfw/src/resource.rc 2003-12-20 14:57:40 GMT patch-149 Summary: Unbuffured IO for 1st pass stat files Revision: xvidcore--devapi4--1.0--patch-149 Unbuffured IO for 1st pass stat files modified files: src/plugins/plugin_2pass1.c 2003-12-18 17:44:07 GMT patch-148 Summary: Forgotten bit of patch-141 Revision: xvidcore--devapi4--1.0--patch-148 Damn i forgot to merge the 1st pass changes... so lame, i tested the original patch but not the merged one. modified files: src/plugins/plugin_2pass1.c 2003-12-18 14:45:39 GMT patch-147 Summary: More postprocessing. Revision: xvidcore--devapi4--1.0--patch-147 From michael: * added film noise effect. * moved postproc initialization to decoder initialization. * added support for this postproc filter into DShow. modified files: dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp dshow/src/resource.h dshow/src/xvid.ax.rc src/decoder.c src/image/postprocessing.c src/image/postprocessing.h src/xvid.c src/xvid.h 2003-12-18 14:38:19 GMT patch-146 Summary: BFrames ME speed up flags. Revision: xvidcore--devapi4--1.0--patch-146 From michael: * Added 3 ME flags to skip some bvop ME steps and thus speed up ME for bvops (at the expense of quality loss). - skip delta search - fast interpolate mode - early stop modified files: src/motion/estimation.h src/motion/estimation_bvop.c src/motion/estimation_common.c src/motion/estimation_pvop.c src/xvid.h 2003-12-18 14:11:01 GMT patch-145 Summary: VFW defaults changed Revision: xvidcore--devapi4--1.0--patch-145 From michael: * disabled DXN profiles. Better not say we are compatible to avoid problems with DXN. Mostly because of VBV lacking. * Changed overflow defaults to 5/5/5 with new 2pass code. modified files: vfw/src/config.c 2003-12-17 16:45:59 GMT patch-144 Summary: Forgotten bit for AR support in VFW Revision: xvidcore--devapi4--1.0--patch-144 Koepi might have forgotten to send me this change: * added resource id to the resource header modified files: vfw/src/resource.h 2003-12-17 15:11:37 GMT patch-143 Summary: Lower starting quantizer for CBR encoding Revision: xvidcore--devapi4--1.0--patch-143 From christoph: * Lower starting quantizer for CBR encodings. modified files: src/plugins/plugin_single.c 2003-12-17 15:04:33 GMT patch-142 Summary: Small xvid_encraw updates Revision: xvidcore--devapi4--1.0--patch-142 From christoph: * set upper frame size limit to 4096 pixels * GME refinement flag set where it belongs to. modified files: examples/xvid_encraw.c 2003-12-17 15:01:52 GMT patch-141 Summary: Two pass update. Revision: xvidcore--devapi4--1.0--patch-141 This patch improves the two pass code, quantizer distribution is smoother and results seem to be better. * Two pass now scales only a specific part of the frame length. This required changing the stats file format (added a header+MV length field) and the xvid_plg_data_t structure (binary compatible). * Overflow improvement and degradation set to 10% instead of 60% Assymetric values may help... * Some cleanup work done on the encoder part of the API header. NB: plg data struct will be cleaned up before 1.0 so if you rely on it please read the header file to know which part will disappear. modified files: src/encoder.c src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c src/xvid.h 2003-12-17 13:53:34 GMT patch-140 Summary: VOL flags fix. Revision: xvidcore--devapi4--1.0--patch-140 From sysKin: * VOL flags updated as they should modified files: src/encoder.c 2003-12-17 11:07:15 GMT patch-139 Summary: VFW GUI Update. Revision: xvidcore--devapi4--1.0--patch-139 From Koepi: * typo in GMC description * Added AR widget (experimental) modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/resource.rc 2003-12-14 12:44:36 GMT patch-138 Summary: Fix PP crash Revision: xvidcore--devapi4--1.0--patch-138 Fix PP crash modified files: src/decoder.c 2003-12-14 12:43:21 GMT patch-137 Summary: Texture bit counting for bframes Revision: xvidcore--devapi4--1.0--patch-137 Texture bit counting for bframes modified files: src/bitstream/mbcoding.c 2003-12-12 23:58:18 GMT patch-136 Summary: SSE2 code enabled. Revision: xvidcore--devapi4--1.0--patch-136 * SSE2 code enabled by default (only sane ones, _no_ idct) * Aligned data in xvid_bench to avoid crashes with SSE2 code because of unaligned read accesses. modified files: examples/xvid_bench.c src/xvid.c 2003-12-12 22:50:33 GMT patch-135 Summary: DShow update. Revision: xvidcore--devapi4--1.0--patch-135 From michael (from nic): * Dshow updates (colorspace etc...) * Deblocking option. modified files: dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h dshow/src/resource.h dshow/src/xvid.ax.rc 2003-12-12 14:18:13 GMT patch-134 Summary: Added missing postproc init Revision: xvidcore--devapi4--1.0--patch-134 Added missing postproc init modified files: src/xvid.c 2003-12-12 14:16:29 GMT patch-133 Summary: YUV space clarifications and fix. Revision: xvidcore--devapi4--1.0--patch-133 From christoph: * Put some comments * fixed UV swapping in USER case. modified files: src/image/image.c 2003-12-12 14:01:52 GMT patch-132 Summary: Default compilation flags change. Revision: xvidcore--devapi4--1.0--patch-132 from christoph: - -fgcse was causing trouble on Suse9 gcc - -01->-02 modified files: build/generic/configure.in 2003-12-12 13:43:35 GMT patch-131 Summary: Pixel Aspect Ratio support improvement. Revision: xvidcore--devapi4--1.0--patch-131 * 1:1 VGA is default now (old behavior) * When passed EXT PAR type, we now (try to) sanityse the par_width/par_height value: - make it positive - using 0 (typical memset reseting) defaults to 1 - simplify the PAR (using gcd) - then range it in [1..255] (can be lossy) * Specify valid range in API header Bitstream version bumped to 24. PS: this patch supersedes sysKin's one in CVS. modified files: src/encoder.c src/xvid.h 2003-12-10 22:57:50 GMT patch-130 Summary: xvid_decraw cmdline changes. Revision: xvidcore--devapi4--1.0--patch-130 * -nframes -> -frames (why did i put a 'n' there ?) * -save changed its meaning, it now controls per frame Elementary Stream saving. * -o string is now independent from -save. So now it's possible to save both a ES file per frame + a ES file for the sequence. modified files: examples/xvid_encraw.c 2003-12-10 15:08:20 GMT patch-129 Summary: Decoder bugfixes. Revision: xvidcore--devapi4--1.0--patch-129 From syskin: * bvops MBs were going banana from time to time because they were referencing wrong future ref MBs. * decoder now informs the client app about bvop lag, returning XVID_TYPE_NOTHING, up to the client app to display (or not) the bvop lag frame (black with error message). Fixing previous patch a bit: * added $Id: ChangeLog-1.0,v 1.2 2004-07-10 17:40:42 edgomez Exp $ fields * Fixed copyright modified files: dshow/src/CXvidDecoder.cpp src/decoder.c src/image/postprocessing.c src/image/postprocessing.h 2003-12-10 14:53:58 GMT patch-128 Summary: Deblocking code. Revision: xvidcore--devapi4--1.0--patch-128 Patch from michael: * added deblocking code Merge work: * Added postprocessing.[ch] to project files * added #include "image/postprocessing.h" directive in decoder.c * new lines missing (gcc is so pedantic) NB: slice rendering + postprocessing is impossible. Slice rendering is somewhat abandoned. new files: src/image/.arch-ids/postprocessing.c.id src/image/.arch-ids/postprocessing.h.id src/image/postprocessing.c src/image/postprocessing.h modified files: build/generic/sources.inc build/win32/libxvidcore.dsp src/decoder.c src/xvid.h 2003-12-08 18:33:26 GMT patch-127 Summary: Don't read out of bounds Revision: xvidcore--devapi4--1.0--patch-127 Don't read out of bounds modified files: src/plugins/plugin_2pass2.c 2003-12-08 18:31:41 GMT patch-126 Summary: Macroblock structure cleanup Revision: xvidcore--devapi4--1.0--patch-126 Macroblock structure cleanup modified files: src/global.h 2003-12-07 15:09:41 GMT patch-125 Summary: Small fixes. Revision: xvidcore--devapi4--1.0--patch-125 From gruel: * xvid.h: Minor color space correction. From sysKin: * codec.c: Zones fix modified files: src/xvid.h vfw/src/codec.c 2003-12-07 14:57:14 GMT patch-124 Summary: HUGE file handling in twopass. Revision: xvidcore--devapi4--1.0--patch-124 Because of a lacking cast, two pass did not handle well some very large target size (bitrate mode is not affected). It should now be safe specifying target sizes up to 2^31kB which represents 2TB. Someone using XviD in studios ? ;-) modified files: src/plugins/plugin_2pass2.c ######################################################################### # 1.0.0 beta2 (Bitstream Version 23) ######################################################################### 2003-12-05 14:43:53 GMT patch-123 Summary: Marking 1.0.0 Beta2 Revision: xvidcore--devapi4--1.0--patch-123 Marking 1.0.0 Beta2 modified files: ChangeLog TODO build/generic/configure.in 2003-12-05 14:35:22 GMT patch-122 Summary: Cap quants correctly (the best we can at least) Revision: xvidcore--devapi4--1.0--patch-122 Cap quants correctly (the best we can at least) modified files: src/plugins/plugin_single.c 2003-12-05 14:33:48 GMT patch-121 Summary: Small glitch Revision: xvidcore--devapi4--1.0--patch-121 Small glitch modified files: src/motion/vop_type_decision.c 2003-12-05 14:06:19 GMT patch-120 Summary: KFthresholding changes. Revision: xvidcore--devapi4--1.0--patch-120 As user reports proved, the logic behind the min_key_interval was 1/ misleading because the parameter is kfthreshold indeed and not a minimum keyframe interval 2/ the formula was a bit too aggressive (removing 20% of bitrate per frame until distance to next iframe was 1) I posted a RFC to try to settle a decision on what behavior this setting should have. We have still have no clear answer so i prefer just fixing the misleading name right now and wait for a common position about its behavior later. Libraries are *binary* compatible, but *source code* compatibility is broken (rename rc_2pass2_t->min_key_interval to kfthreshold). This is probably the last API change. NB: fixes a type problem during scaling parameter computing which was causing insane pb_iboost_tax_ratio values. modified files: src/plugins/plugin_2pass2.c src/xvid.h vfw/src/codec.c vfw/src/config.c vfw/src/config.h 2003-12-05 00:20:28 GMT patch-119 Summary: ivop decision tuning. Revision: xvidcore--devapi4--1.0--patch-119 ivop decision tuning from sysKin. modified files: src/motion/vop_type_decision.c 2003-12-03 18:55:29 GMT patch-118 Summary: VOSH header always written. Revision: xvidcore--devapi4--1.0--patch-118 * profile is set to sane default value in BitstreamWriteVolHeaders * VOSH is now always written (note that the ending code is never written) * doubled variable removed from bvop estimation file. bitstream version set to 23 Version 22 was used in CVS by a fix from michael for VOSH, it was just lacking the sane default value setting when profile is 0x00 from user. 0x00 is a reserved profile ID in the spec so it wasn't making much sense to write 0x00. modified files: src/bitstream/bitstream.c src/motion/estimation_bvop.c src/xvid.h 2003-12-03 15:29:30 GMT patch-117 Summary: VFW GUI fixes. Revision: xvidcore--devapi4--1.0--patch-117 min key was misleading because it was legacy code from dev-api-3. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/resource.rc 2003-12-03 15:22:25 GMT patch-116 Summary: ME fixes. Revision: xvidcore--devapi4--1.0--patch-116 From syskin: - small typo in chroma sad reset - code tweaking + adv diamond search used intead of mainsearch + and some other stuff - thresholds tuned. modified files: src/motion/estimation.h src/motion/estimation_bvop.c src/motion/estimation_pvop.c 2003-12-01 11:17:20 GMT patch-115 Summary: Small changes and interlacing bugfix. Revision: xvidcore--devapi4--1.0--patch-115 * Interlacing bugfix, code got swapped in a very old patch (back in March) * xvid_encraw forces VOSH writing. * VFW GUI fixes. modified files: examples/Makefile examples/xvid_encraw.c src/utils/mbtransquant.c vfw/src/config.c vfw/src/resource.rc 2003-11-30 15:47:41 GMT patch-114 Summary: Thread safe MPEG4 quantization functions + xvid_bench update Revision: xvidcore--devapi4--1.0--patch-114 * Thread safe MPEG4 quantization functions. Cleaned up version of patch provided by Michael - fixed compiling problems on gcc - added const qualifiers every where it was possible to help C compiler optimization. - added the mpeg_quant_matrices param to all ASM function prototype in comments (even if it's not used, that shows we do it deliberatly) - forces m[intra][0][0] = 8, otherwise XviD could write invalid streams. * Added real CRC computing in xvid_bench.c modified files: TODO examples/xvid_bench.c src/bitstream/bitstream.c src/decoder.c src/decoder.h src/encoder.c src/encoder.h src/motion/estimation.h src/motion/estimation_pvop.c src/motion/estimation_rd_based.c src/quant/quant.h src/quant/quant_h263.c src/quant/quant_matrix.c src/quant/quant_matrix.h src/quant/quant_mpeg.c src/quant/x86_asm/quantize_h263_3dne.asm src/quant/x86_asm/quantize_h263_mmx.asm src/quant/x86_asm/quantize_mpeg_mmx.asm src/quant/x86_asm/quantize_mpeg_xmm.asm src/utils/mbtransquant.c src/xvid.c 2003-11-29 18:10:25 GMT patch-113 Summary: Fixed csp asm rules for real? Revision: xvidcore--devapi4--1.0--patch-113 Fixed csp asm rules for real? modified files: build/win32/libxvidcore.dsp 2003-11-29 17:58:09 GMT patch-112 Summary: TODO/ChangeLog updated Revision: xvidcore--devapi4--1.0--patch-112 TODO/ChangeLog updated modified files: ChangeLog TODO ######################################################################### # 1.0.0 beta1 (Bitstream Version 21) ######################################################################### 2003-11-29 17:21:08 GMT patch-111 Summary: First beta marking Revision: xvidcore--devapi4--1.0--patch-111 First beta marking modified files: build/generic/configure.in src/xvid.c src/xvid.h 2003-11-29 16:59:14 GMT patch-110 Summary: Catching up with CVS. Revision: xvidcore--devapi4--1.0--patch-110 Changes from sysKin: * dquant optimization. * CBR fix modified files: src/encoder.c src/plugins/plugin_single.c 2003-11-24 22:05:38 GMT patch-109 Summary: Big level handling in trellis. Revision: xvidcore--devapi4--1.0--patch-109 Trellis was treating big levels exactly the same way as lower ones. In some cases, trellis was doing wild optimizations favoring a 0 because the distortion introduced by that big coeff change was acceptable. But visually this could result in some nasty blocks with wrong chroma information or similar brutal changes in other planes as well. Skal added big levels handling where trellis just tries to minimize the cost varying the run value only. No level modification is done anymore. modified files: TODO src/utils/mbtransquant.c 2003-11-23 16:42:55 GMT patch-108 Summary: Trellis for MPEG. Revision: xvidcore--devapi4--1.0--patch-108 * Added trellis support for MPEg quantization type. * Changed RD fixed point precision, should help avoiding overflow (see the constant TL_SHIFT) NB: we still have some problems when trellis optimizes DC for big DC values. modified files: src/utils/mbtransquant.c 2003-11-22 00:53:59 GMT patch-107 Summary: Win32 lib project fix (bis) Revision: xvidcore--devapi4--1.0--patch-107 * nasm >= 0.98.37 support in project file got reverted in a previous patch, push it back. Nota bene /O3 changed to /O2 for proper compilation with msvc compiler (everyone is not supposed to compile stuff with icc) * TODO update. modified files: TODO build/win32/libxvidcore.dsp 2003-11-19 21:26:34 GMT patch-106 Summary: updated bench crc Revision: xvidcore--devapi4--1.0--patch-106 updated bench crc modified files: examples/xvid_bench.c 2003-11-19 16:00:00 GMT patch-105 Summary: Lumimasking fixes. Revision: xvidcore--devapi4--1.0--patch-105 from sysKin: * New plugin hook entry XVID_PLG_FRAME that happens inside FrameCodeIPB when both type and quant are known. Added hook handling in all plugins. * Fixed lumimasking. from me: * small reverse commit in pvop estimation fixed. modified files: src/bitstream/bitstream.c src/bitstream/bitstream.h src/encoder.c src/motion/estimation_pvop.c src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c src/plugins/plugin_dump.c src/plugins/plugin_lumimasking.c src/plugins/plugin_psnr.c src/plugins/plugin_single.c src/xvid.h 2003-11-19 15:37:16 GMT patch-104 Summary: Removed indirections from SearchData structure. Revision: xvidcore--devapi4--1.0--patch-104 Patch from sysKin: * removed indirections in SearchData structure. CheckCandidate functions don't use a const SearchData pointer anymore, but they should be a bit faster because of the less numerous indirections. modified files: src/motion/estimation.h src/motion/estimation_bvop.c src/motion/estimation_common.c src/motion/estimation_gmc.c src/motion/estimation_pvop.c src/motion/estimation_rd_based.c src/motion/vop_type_decision.c 2003-11-19 15:33:55 GMT patch-103 Summary: Formula error in twopass code. Revision: xvidcore--devapi4--1.0--patch-103 The reversing bframe formula in 2pass 2 was not right. This was in fact a test code i used when i was maintaining the code on its own branch. I should not have commited it :\ Fixed :-) modified files: src/plugins/plugin_2pass2.c 2003-11-18 21:41:08 GMT patch-102 Summary: Another problem with mis/unitialized reads. Revision: xvidcore--devapi4--1.0--patch-102 Michael introduced a fast subpel refine that uses a (iMinSAD2, currentQMV2) couple of data. The problem is that he plugged this in CheckCandidate16_qpel that is used outside this context, thus a if statement was traversed with garbage data in the standard subpel case. For perfection sake, using a iMinSAD=256*4096 value collects correct data even if it will not be used in the normal subpel case. modified files: src/motion/estimation_pvop.c 2003-11-16 17:29:39 GMT patch-101 Summary: The MEanalysis patch assumed bvops were always used Revision: xvidcore--devapi4--1.0--patch-101 The MEanalysis patch assumed bvops were always used modified files: src/encoder.c 2003-11-16 15:12:15 GMT patch-100 Summary: MEanalysis using wrong mvs + bframe search using wrong mvs Revision: xvidcore--devapi4--1.0--patch-100 Valgrind reported lot of unitialized reads. These unitialized reads helped sysKin finding three bugs: - ZeroMacroblock did not reset the cbp field. So for some skipped blocks, a test was done on the cbp value... - MEanalysis was using wrong mvs from the current bvop (unitialized or just wrong in current context). That's because in devapi3, bframes used to share the same mvs array wheras now, it's one array a bvop. - Collocated skipped MBs for a bvop didn't reset mvs[0] and b_mvs[0]. modified files: src/encoder.c src/motion/estimation_bvop.c src/motion/motion.h src/motion/motion_inlines.h src/motion/vop_type_decision.c 2003-11-15 15:21:09 GMT patch-99 Summary: Small fixes Revision: xvidcore--devapi4--1.0--patch-99 Small fixes modified files: src/encoder.c src/motion/vop_type_decision.c 2003-11-15 15:02:47 GMT patch-98 Summary: DShow update + libxvidcore project file update Revision: xvidcore--devapi4--1.0--patch-98 From peter: * DShow now links against libxvidcore.lib * Some updates to the libxvidcore project file modified files: TODO build/win32/libxvidcore.dsp dshow/dshow.dsp dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h 2003-11-15 01:51:28 GMT patch-97 Summary: Small updates to doc files Revision: xvidcore--devapi4--1.0--patch-97 Small updates to doc files modified files: AUTHORS CodingStyle TODO doc/INSTALL doc/README renamed files: .arch-ids/authors.txt.id ==> .arch-ids/AUTHORS.id .arch-ids/todo.txt.id ==> .arch-ids/TODO.id authors.txt ==> AUTHORS todo.txt ==> TODO 2003-11-14 11:23:55 GMT patch-96 Summary: Updated ChangeLog Revision: xvidcore--devapi4--1.0--patch-96 Updated ChangeLog modified files: ChangeLog 2003-11-13 23:09:34 GMT patch-95 Summary: 8x8 16bit Block SSE optimization. Revision: xvidcore--devapi4--1.0--patch-95 MMXed the calculation of SSE for 8x8 16bit blocks. This helps quite a lot VHQ=4 mode. My tests show with trellis:chroma_me: - ~20% speed improvement for vhq=4. - at least 5% when using vhq=1. Of course this speedup vanishes if more CPU intensive features are used. CruNcher who used gmc/qpel, noticed "only" a ~5% speed improvement. NB: i'm of course talking about overall speed improvement. Such a small patch for such a big improvement :-) modified files: src/motion/estimation_rd_based.c src/motion/sad.c src/motion/sad.h src/motion/x86_asm/sad_mmx.asm src/xvid.c 2003-11-13 22:34:33 GMT patch-94 Summary: Various small bug fixes. Revision: xvidcore--devapi4--1.0--patch-94 * encoder.c: GMC code fix in encoder.c. Now gmcval is initialized correctly when using GME. * xvid_decraw.c: Fix elementary stream output. * plugin_2pass2.c: Small parsing bug in stats reading in 2pass2. * decoder.c: Read resync markers in bframes. modified files: examples/xvid_decraw.c src/decoder.c src/encoder.c src/plugins/plugin_2pass2.c 2003-11-11 16:24:05 GMT patch-93 Summary: VFW update for overflow control Revision: xvidcore--devapi4--1.0--patch-93 From Koepi. * Added widget and code for overflow control strength. * Removed widgets for payback options and kfthresholds. * Activated frame stats in DebugOutputView all the time. From me: * Activated static motion detection in cartoon mode. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/resource.h vfw/src/resource.rc 2003-11-09 20:47:47 GMT patch-92 Summary: New two pass code. Revision: xvidcore--devapi4--1.0--patch-92 New two pass code. I may say it's just a fixed version, though it looks more like a "take all the ideas and write it again" version. It performs better with all natural sequences i have and a bit worse with anime. Including it now, allow me improving the code during the beta releases. modified files: src/encoder.c src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c src/xvid.h vfw/src/codec.c vfw/src/config.c vfw/src/config.h 2003-11-09 17:07:16 GMT patch-91 Summary: Fixes for bframe compensation (used in psnr tests). Revision: xvidcore--devapi4--1.0--patch-91 * transfer_8to16_sub2_(c|mmx|xmm|3dne) write back the compensated result to current frame pointer. * transfer_8to16_sub2_mmx uses proper rounding (a+b+1)/2. The +1 operation was missing. * Blocks skipped in bframes must be compensated for psnr computing. modified files: src/encoder.c src/motion/estimation_bvop.c src/utils/mem_transfer.c src/utils/x86_asm/mem_transfer_3dne.asm src/utils/x86_asm/mem_transfer_mmx.asm 2003-11-05 16:05:44 GMT patch-90 Summary: Speed improvement not wasting setedges and interpolate calls. Revision: xvidcore--devapi4--1.0--patch-90 Patch from syskin. * This patch avoids calling setedges and interpolate for uneeded cases: - setedges is only called once per frame. - interpolate is called only when the previous rounding was different from the one needed. * Interpolation has been optimized a bit for qpel case, we do the hv pass down to top to use the cache more efficiently (hope so). modified files: src/encoder.c src/encoder.h src/image/image.c 2003-11-03 19:51:12 GMT patch-89 Summary: SSE2 dev16 fix + xvid_bench DCT block alignments. Revision: xvidcore--devapi4--1.0--patch-89 * Small error fixed by Skal in his dev16 code (missing pshufd). * Blocks used by DCT tests are now aligned with DECLARE_ALIGNED_MATRIX this avoids the well know segfaults when using SSE2 instructions that suppose data alignment. modified files: examples/xvid_bench.c src/motion/x86_asm/sad_sse2.asm 2003-11-03 15:42:23 GMT patch-88 Summary: Align .rodata section for non coff objects Revision: xvidcore--devapi4--1.0--patch-88 Align .rodata section for non coff objects modified files: src/bitstream/x86_asm/cbp_mmx.asm src/bitstream/x86_asm/cbp_sse2.asm src/dct/x86_asm/fdct_mmx_ffmpeg.asm src/dct/x86_asm/fdct_mmx_skal.asm src/dct/x86_asm/fdct_sse2_skal.asm src/dct/x86_asm/idct_3dne.asm src/dct/x86_asm/idct_mmx.asm src/dct/x86_asm/idct_sse2_dmitry.asm src/dct/x86_asm/simple_idct_mmx.asm src/image/x86_asm/colorspace_rgb_mmx.asm src/image/x86_asm/colorspace_yuyv_mmx.asm src/image/x86_asm/interpolate8x8_3dn.asm src/image/x86_asm/interpolate8x8_3dne.asm src/image/x86_asm/interpolate8x8_mmx.asm src/image/x86_asm/interpolate8x8_xmm.asm src/image/x86_asm/qpel_mmx.asm src/image/x86_asm/reduced_mmx.asm src/motion/x86_asm/sad_3dn.asm src/motion/x86_asm/sad_3dne.asm src/motion/x86_asm/sad_mmx.asm src/motion/x86_asm/sad_sse2.asm src/motion/x86_asm/sad_xmm.asm src/quant/x86_asm/quantize_h263_3dne.asm src/quant/x86_asm/quantize_h263_mmx.asm src/quant/x86_asm/quantize_mpeg_mmx.asm src/quant/x86_asm/quantize_mpeg_xmm.asm src/utils/x86_asm/cpuid.asm src/utils/x86_asm/interlacing_mmx.asm src/utils/x86_asm/mem_transfer_3dne.asm 2003-11-02 23:01:43 GMT patch-87 Summary: SSE2 update Revision: xvidcore--devapi4--1.0--patch-87 * Added Dmitry SSE2 iDCT code back. * Plugged Dmitry iDCT as default for SSE2 * Fixed a bug in xvid_bench that was making it would test some CPU instruction set w/o host CPU support. xvidcore init was simply discarding irrelevant cpu flags. new files: src/dct/x86_asm/.arch-ids/idct_sse2_dmitry.asm.id src/dct/x86_asm/idct_sse2_dmitry.asm modified files: build/generic/sources.inc build/win32/libxvidcore.dsp examples/xvid_bench.c src/dct/fdct.h src/dct/idct.h src/xvid.c 2003-10-31 14:53:26 GMT patch-86 Summary: Better handling of old windres versions + GNU make dependency. Revision: xvidcore--devapi4--1.0--patch-86 Old versions of GNU windres (<2.14) don't have the same short options. But long options remain the same so it's better to use long option names to have ful compatibility with older versions. The Makefile appears to be dependent on GNU make because shell expansion for retrieving the path of the Makefile is wrong when using `` even with a single expansion assignment :=. It keeps being expanded when used. modified files: doc/INSTALL vfw/bin/Makefile 2003-10-29 11:31:28 GMT patch-85 Summary: Added sse2 f/iDCT code from skal Revision: xvidcore--devapi4--1.0--patch-85 * Added sse2 f/iDCT code from skal * Added hooking in xvid.c new files: src/dct/x86_asm/.arch-ids/fdct_sse2_skal.asm.id src/dct/x86_asm/fdct_sse2_skal.asm modified files: build/generic/sources.inc build/win32/libxvidcore.dsp src/xvid.c 2003-10-29 00:19:10 GMT patch-84 Summary: Fix the static motion detection Revision: xvidcore--devapi4--1.0--patch-84 Fix the static motion detection modified files: src/motion/estimation_pvop.c 2003-10-28 23:39:46 GMT patch-83 Summary: Added cartoon option handling. Revision: xvidcore--devapi4--1.0--patch-83 Added cartoon widgets + handling code. NB: static motion detection is disabled because of crashes on P4 cpus. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/resource.h vfw/src/resource.rc 2003-10-28 17:44:09 GMT patch-82 Summary: ASM cleanups; Revision: xvidcore--devapi4--1.0--patch-82 * Applied same style to all asm files * Replaced current sad sse2 operators with skal's ones * Removed old and unused colorspace asm files removed files: src/image/x86_asm/.arch-ids/rgb_to_yv12_mmx.asm.id src/image/x86_asm/.arch-ids/yuv_to_yv12_mmx.asm.id src/image/x86_asm/.arch-ids/yuyv_to_yv12_mmx.asm.id src/image/x86_asm/.arch-ids/yv12_to_rgb24_mmx.asm.id src/image/x86_asm/.arch-ids/yv12_to_rgb32_mmx.asm.id src/image/x86_asm/.arch-ids/yv12_to_yuyv_mmx.asm.id src/image/x86_asm/rgb_to_yv12_mmx.asm src/image/x86_asm/yuv_to_yv12_mmx.asm src/image/x86_asm/yuyv_to_yv12_mmx.asm src/image/x86_asm/yv12_to_rgb24_mmx.asm src/image/x86_asm/yv12_to_rgb32_mmx.asm src/image/x86_asm/yv12_to_yuyv_mmx.asm modified files: build/generic/sources.inc src/bitstream/x86_asm/cbp_3dne.asm src/bitstream/x86_asm/cbp_mmx.asm src/bitstream/x86_asm/cbp_sse2.asm src/dct/x86_asm/fdct_mmx_ffmpeg.asm src/dct/x86_asm/fdct_mmx_skal.asm src/dct/x86_asm/idct_3dne.asm src/dct/x86_asm/idct_mmx.asm src/dct/x86_asm/simple_idct_mmx.asm src/image/x86_asm/colorspace_mmx.inc src/image/x86_asm/colorspace_rgb_mmx.asm src/image/x86_asm/colorspace_yuv_mmx.asm src/image/x86_asm/colorspace_yuyv_mmx.asm src/image/x86_asm/interpolate8x8_3dn.asm src/image/x86_asm/interpolate8x8_3dne.asm src/image/x86_asm/interpolate8x8_mmx.asm src/image/x86_asm/interpolate8x8_xmm.asm src/image/x86_asm/qpel_mmx.asm src/image/x86_asm/reduced_mmx.asm src/motion/x86_asm/sad_3dn.asm src/motion/x86_asm/sad_3dne.asm src/motion/x86_asm/sad_mmx.asm src/motion/x86_asm/sad_sse2.asm src/motion/x86_asm/sad_xmm.asm src/quant/x86_asm/quantize_h263_3dne.asm src/quant/x86_asm/quantize_h263_mmx.asm src/quant/x86_asm/quantize_mpeg_mmx.asm src/quant/x86_asm/quantize_mpeg_xmm.asm src/utils/x86_asm/cpuid.asm src/utils/x86_asm/interlacing_mmx.asm src/utils/x86_asm/mem_transfer_3dne.asm src/utils/x86_asm/mem_transfer_mmx.asm 2003-10-27 01:13:47 GMT patch-81 Summary: d_mv_bits speedup from sysKin Revision: xvidcore--devapi4--1.0--patch-81 d_mv_bits speedup from sysKin modified files: src/motion/motion_inlines.h 2003-10-27 00:55:51 GMT patch-80 Summary: fDCT changes, new asm CodingStyle applied to dct dir Revision: xvidcore--devapi4--1.0--patch-80 * Ported the ffmpeg fDCT functions (mmx and xmm). * Modified the skal's versions a bit to allow rolling loops. * Activated Skal's fDCTs (unrolled versions) for mmx _and_ xmm (old code was ignoring xmm versions) * Removed the SSE2 versions (they'll be back later) * .data -> .rodata * Applied announced asm CodingStyle to the dct dir (I'll have to add a section with the said CodingStyle) modified files: build/generic/sources.inc build/win32/libxvidcore.dsp src/dct/fdct.h src/dct/idct.h src/dct/x86_asm/fdct_mmx_ffmpeg.asm src/dct/x86_asm/fdct_mmx_skal.asm src/dct/x86_asm/idct_3dne.asm src/dct/x86_asm/idct_mmx.asm src/dct/x86_asm/simple_idct_mmx.asm src/xvid.c renamed files: src/dct/x86_asm/.arch-ids/fdct_mmx.asm.id ==> src/dct/x86_asm/.arch-ids/fdct_mmx_ffmpeg.asm.id src/dct/x86_asm/.arch-ids/fdct_xmm.asm.id ==> src/dct/x86_asm/.arch-ids/fdct_mmx_skal.asm.id src/dct/x86_asm/fdct_mmx.asm ==> src/dct/x86_asm/fdct_mmx_ffmpeg.asm src/dct/x86_asm/fdct_xmm.asm ==> src/dct/x86_asm/fdct_mmx_skal.asm 2003-10-25 13:48:42 GMT patch-79 Summary: BQuant->PQuant fix. Revision: xvidcore--devapi4--1.0--patch-79 When using closed_gop, a BFrame before an IFrame is turned into a PFrame. Thus is original quant has to be computed back, a rounding was causing these frames to be orig_quant-1. As a consequence we had very big frames before the IFrame, loosing many bits for nearly no visual benefit. modified files: src/encoder.c 2003-10-25 10:26:48 GMT patch-78 Summary: Added closed gop option to xvid_encraw Revision: xvidcore--devapi4--1.0--patch-78 Added closed gop option to xvid_encraw modified files: examples/xvid_encraw.c 2003-10-24 17:39:53 GMT patch-77 Summary: RD fixes. Revision: xvidcore--devapi4--1.0--patch-77 Inter RD optimization relied on buggy functions to predict bitsize. modified files: src/motion/estimation_pvop.c src/motion/motion_inlines.h 2003-10-22 15:48:01 GMT patch-76 Summary: Small INSTALL update due to previous build patches. Revision: xvidcore--devapi4--1.0--patch-76 Small INSTALL update due to previous build patches. modified files: doc/INSTALL 2003-10-21 21:27:46 GMT patch-75 Summary: Removed unused next_block vars. Revision: xvidcore--devapi4--1.0--patch-75 Removed unused next_block vars. modified files: src/decoder.c 2003-10-21 21:24:15 GMT patch-74 Summary: VFW build changes. Revision: xvidcore--devapi4--1.0--patch-74 The build system has been modified to look like the core lib one minus the configure system. modified files: vfw/bin/Makefile vfw/bin/sources.inc vfw/src/config.c vfw/vfw.dsp renamed files: vfw/bin/.arch-ids/Makefile.cygwin.id ==> vfw/bin/.arch-ids/Makefile.id vfw/bin/.arch-ids/Makefile.inc.id ==> vfw/bin/.arch-ids/sources.inc.id vfw/bin/Makefile.cygwin ==> vfw/bin/Makefile vfw/bin/Makefile.inc ==> vfw/bin/sources.inc vfw/src/.arch-ids/config.rc.id ==> vfw/src/.arch-ids/resource.rc.id vfw/src/config.rc ==> vfw/src/resource.rc 2003-10-21 17:00:09 GMT patch-73 Summary: Decoder cleanups and speedup Revision: xvidcore--devapi4--1.0--patch-73 cleanups, speedups from sysKin modified files: src/decoder.c 2003-10-21 16:22:15 GMT patch-72 Summary: Build fixes for newer nasm versions. Revision: xvidcore--devapi4--1.0--patch-72 nasm does not take care of adding trailing slashes to include paths. A patch to upstream authors has been refused because "the backslash() feature has been abandoned to get back to old nasm behavior" Their choice is kinda stupid as nasm is now open to user mistakes... :\ So we fix that on ou side. modified files: build/generic/configure.in build/win32/libxvidcore.dsp 2003-10-17 15:13:12 GMT patch-71 Summary: Updated docs. Revision: xvidcore--devapi4--1.0--patch-71 The doc of devapi4 is mostly out dated, i t is much better not to keep it in the repository at the moment. We'll add new docs later. Added a INSTALL doc that explains the build/install process for supported platforms. It's a first try, things may be added later. new files: doc/.arch-ids/INSTALL.id doc/INSTALL removed files: doc/.arch-ids/API.dox.id doc/.arch-ids/Makefile.id doc/.arch-ids/foot.inc.in.id doc/.arch-ids/header.tex.in.id doc/.arch-ids/xvid-decoding.txt.id doc/.arch-ids/xvid-encoder.txt.id doc/API.dox doc/Makefile doc/foot.inc.in doc/header.tex.in doc/xvid-decoding.txt doc/xvid-encoder.txt modified files: CodingStyle README doc/README renamed files: .arch-ids/README.txt.id ==> .arch-ids/README.id .arch-ids/changelog.txt.id ==> .arch-ids/ChangeLog.id README.txt ==> README changelog.txt ==> ChangeLog 2003-10-15 13:53:11 GMT patch-70 Summary: Better cross compilation handling. Revision: xvidcore--devapi4--1.0--patch-70 With this patch it is now possible to cross compile xvid quite easily for win32 platform on a build linux host. Recipe for debian system: $ apt-get install mingw32 (or create your own cross compiler/binutils suite and install mingw32 header files -- sorry i don't have a recipe for this, this is let as an exercice for the reader) $ cd ${xvidcore} $ cd build/generic $ ./bootstrap.sh $ ./configure --host=i586-mingw32msvc (all occurences of i586-mingw32msvc may be replaced with the right prefix you've choosen for your cross compiler and cross binutils) $ make $ cd ../../vfw/bin $ make -f Makefile.cygwin \ CC=i586-mingw32msvc-gcc WINDRES=i586-mingw32msvc-windres Enjoy your win32 xvid.dll build by free software, on a free OS, for a devil OS target. modified files: build/generic/configure.in vfw/bin/Makefile.cygwin 2003-10-14 15:17:28 GMT patch-69 Summary: Fixed Qpel+Interpolation decoding. Cleaned up mb->mode usage. Revision: xvidcore--devapi4--1.0--patch-69 * Fixed interpolate mode + qpel decoding. * MB->mb_type completely replaced by MB->mode modified files: src/decoder.c 2003-10-12 21:57:24 GMT patch-68 Summary: ac/dc prediction for intra RD search. Revision: xvidcore--devapi4--1.0--patch-68 From syskin, added real ac/dc prediction for INTRA's bitcount. modified files: src/motion/estimation_rd_based.c 2003-10-09 18:15:50 GMT patch-67 Summary: Pigrated asm code to new quant API. Revision: xvidcore--devapi4--1.0--patch-67 Many changes that are mostly cosmetic in the asm files. * indent * added xor eax, eax in quant_(h263|mpeg)_intra_.* functions (just to make sure the returned value isn't random) * added xor eax, eax in dequant_(h263|mpeg)_.* functions (just to make sure the returned value isn't random) * synced cpuid.asm XVID_CPU_feature constants with the one defined in the C code (xvid.h) * enabled all cpu tests in xvid_bench.c modified files: examples/xvid_bench.c src/quant/quant_h263.c src/quant/quant_mpeg.c src/quant/x86_asm/quantize_h263_3dne.asm src/quant/x86_asm/quantize_h263_mmx.asm src/quant/x86_asm/quantize_mpeg_mmx.asm src/quant/x86_asm/quantize_mpeg_xmm.asm src/utils/x86_asm/cpuid.asm src/xvid.h 2003-10-08 21:05:47 GMT patch-66 Summary: Updated xvid_bench for quant API changes Revision: xvidcore--devapi4--1.0--patch-66 Updated xvid_bench for quant API changes modified files: examples/xvid_bench.c 2003-10-07 13:03:51 GMT patch-65 Summary: Quant functions API changes (first step) Revision: xvidcore--devapi4--1.0--patch-65 In the road to instance safe mpeg quantization, a small cleanup to the quant API was needed. It consists in changing the way we name the functions quant_{mpeg|h263}_{inter|intra}_{arch} and in a move to a more unified API (even intra functions return the sum of coefficients, it can be used as a complexity measure at a later time). This patch touch lot of files, but all changes are trivial. NB: we should check the IA64 asm validity, i changed things but i can't test them. new files: src/quant/.arch-ids/quant.h.id src/quant/quant.h removed files: src/quant/.arch-ids/quant_h263.h.id src/quant/.arch-ids/quant_mpeg4.h.id src/quant/quant_h263.h src/quant/quant_mpeg4.h modified files: build/generic/sources.inc build/win32/libxvidcore.dsp src/decoder.c src/encoder.c src/image/qpel.c src/motion/estimation_rd_based.c src/quant/ia64_asm/quant_h263_ia64.s src/quant/quant_h263.c src/quant/quant_matrix.c src/quant/quant_matrix.h src/quant/quant_mpeg.c src/quant/x86_asm/quantize_h263_3dne.asm src/quant/x86_asm/quantize_h263_mmx.asm src/quant/x86_asm/quantize_mpeg_mmx.asm src/quant/x86_asm/quantize_mpeg_xmm.asm src/utils/mbtransquant.c src/xvid.c src/xvid.h renamed files: src/quant/.arch-ids/quant_mpeg4.c.id ==> src/quant/.arch-ids/quant_mpeg.c.id src/quant/quant_mpeg4.c ==> src/quant/quant_mpeg.c src/quant/x86_asm/.arch-ids/quantize4_mmx.asm.id ==> src/quant/x86_asm/.arch-ids/quantize_mpeg_mmx.asm.id src/quant/x86_asm/.arch-ids/quantize4_xmm.asm.id ==> src/quant/x86_asm/.arch-ids/quantize_mpeg_xmm.asm.id src/quant/x86_asm/.arch-ids/quantize_3dne.asm.id ==> src/quant/x86_asm/.arch-ids/quantize_h263_3dne.asm.id src/quant/x86_asm/.arch-ids/quantize_mmx.asm.id ==> src/quant/x86_asm/.arch-ids/quantize_h263_mmx.asm.id src/quant/x86_asm/quantize4_mmx.asm ==> src/quant/x86_asm/quantize_mpeg_mmx.asm src/quant/x86_asm/quantize4_xmm.asm ==> src/quant/x86_asm/quantize_mpeg_xmm.asm src/quant/x86_asm/quantize_3dne.asm ==> src/quant/x86_asm/quantize_h263_3dne.asm src/quant/x86_asm/quantize_mmx.asm ==> src/quant/x86_asm/quantize_h263_mmx.asm 2003-10-05 00:15:15 GMT patch-64 Summary: Updated ChangeLog Revision: xvidcore--devapi4--1.0--patch-64 Updated ChangeLog modified files: changelog.txt 2003-10-04 16:04:30 GMT patch-63 Summary: Removed legacy 2pass code from vfw Revision: xvidcore--devapi4--1.0--patch-63 Removed legacy 2pass code from vfw removed files: vfw/src/.arch-ids/2pass.c.id vfw/src/.arch-ids/2pass.h.id vfw/src/2pass.c vfw/src/2pass.h 2003-10-04 00:41:38 GMT patch-62 Summary: Working VFW mingw/cygwin build system. Revision: xvidcore--devapi4--1.0--patch-62 This patch fixes the VFW building process. Now it should work out of the box using these steps: # cd ${xvidcore} # cd build/generic # ./bootstrap.sh <-- only needed for CVS checkouts. # ./configure # make # cd ../../vfw/bin # make -f Makefile.cygwin Then install as usual clicking on the inf file or "make install" in the vfw/bin dir. modified files: vfw/bin/Makefile.cygwin vfw/src/config.rc vfw/src/debug.h vfw/src/driverproc.c 2003-10-03 17:00:53 GMT patch-61 Summary: Fixes for alternate scan and interlacing support. Revision: xvidcore--devapi4--1.0--patch-61 Fixes from CVS (by sysKin) for: - added alternate scan support with VHQ - fixed interlacing support in s/b-frames. May fix a potential problem as field_pred struct field seemed not to be initialized anywhere. As it's not supported yet, write an hardcoded 0 bit. Fixes from me for the fixes from syKin: - scan_table effectively used in MBCodingBVOP - Block_CalcBits(Intra) fixes to data->scan_table (implies prototype change and code modification every where the functions were used) I also increased BS version as it might result in different bitstreams It's now at version 20. modified files: src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/decoder.c src/encoder.c src/motion/estimation.h src/motion/estimation_rd_based.c src/xvid.h 2003-10-03 15:41:37 GMT patch-60 Summary: Removed BIGLUT support. Revision: xvidcore--devapi4--1.0--patch-60 Remobed legacy code for BIGLUT support. It was unused and RD based Motion Estimation was not even compatible with this type of VLC coding. modified files: build/generic/configure.in src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/prediction/mbprediction.c 2003-10-03 13:25:17 GMT patch-59 Summary: Bugfix for PFrames+ Ext Search. Revision: xvidcore--devapi4--1.0--patch-59 In Qpel mode, the code was doing a diamond search for wrong predictors. This resulted in poor performance as the diamond search was sitting there for sometime. modified files: src/motion/estimation.h src/motion/estimation_pvop.c 2003-10-02 16:50:51 GMT patch-58 Summary: Added VFW makefile for cygwin/minsys Revision: xvidcore--devapi4--1.0--patch-58 Added VFW makefile for cygwin/minsys. I can't test it so it is probably not right out of the box. Waiting for feedback in order to fix it. new files: vfw/bin/.arch-ids/Makefile.cygwin.id vfw/bin/.arch-ids/Makefile.inc.id vfw/bin/Makefile.cygwin vfw/bin/Makefile.inc vfw/src/w32api/.arch-ids/=id vfw/src/w32api/.arch-ids/vfw.h.id vfw/src/w32api/vfw.h new directories: vfw/src/w32api vfw/src/w32api/.arch-ids 2003-10-02 13:35:15 GMT patch-57 Summary: Cleaned up the lumimasking code. Revision: xvidcore--devapi4--1.0--patch-57 The lumimasking code was not very plugin oriented as it has been ported from old XviD versions. This patch cleans up the code and integrates it better with plugin design. No changes done in teh functionnal code. modified files: src/plugins/plugin_lumimasking.c 2003-10-01 23:07:07 GMT patch-56 Summary: Cleaned up trailing space chars. Revision: xvidcore--devapi4--1.0--patch-56 The kind of patch we would love to avoid as they make merging a nightmare while they're kind of useless patches. Applied sed 's/[ \t]*$//' to all c/h files. modified files: src/bitstream/bitstream.c src/bitstream/bitstream.h src/bitstream/cbp.c src/bitstream/mbcoding.c src/dct/idct.c src/dct/simple_idct.c src/decoder.c src/decoder.h src/encoder.c src/encoder.h src/global.h src/image/colorspace.c src/image/colorspace.h src/image/font.c src/image/image.c src/image/image.h src/image/interpolate8x8.c src/image/interpolate8x8.h src/image/qpel.c src/image/qpel.h src/image/reduced.c src/motion/estimation_rd_based.c src/motion/gmc.c src/motion/gmc.h src/motion/motion.h src/motion/sad.c src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c src/plugins/plugin_fixed.c src/plugins/plugin_psnr.c src/plugins/plugin_single.c src/portab.h src/prediction/mbprediction.c src/utils/mbtransquant.c src/utils/timer.c src/xvid.c src/xvid.h 2003-09-30 18:10:18 GMT patch-55 Summary: Code cleanups. Revision: xvidcore--devapi4--1.0--patch-55 It's been a while since the last ISOC89 conformance cleanup. Using the following switches help a lot :-) -Wall -Wsign-compare -Wredundant-decls -Wunreachable-code -Wnested-externs \ -ansi Result: 0 warning/0 error modified files: src/bitstream/vlc_codes.h src/global.h src/image/qpel.h src/motion/estimation.h src/motion/estimation_bvop.c src/motion/estimation_gmc.c src/motion/estimation_pvop.c src/motion/estimation_rd_based.c src/motion/gmc.c src/motion/gmc.h src/motion/motion_inlines.h src/motion/vop_type_decision.c 2003-09-29 00:31:32 GMT patch-54 Summary: Memory leakage fixes. Revision: xvidcore--devapi4--1.0--patch-54 The pEnc->queue was allocated but not freed when bframes == 0. And queue images were not freed as well. modified files: examples/Makefile src/encoder.c src/image/image.c src/utils/mem_align.c 2003-09-28 16:45:02 GMT patch-53 Summary: Fixes the unitialized mcsel bit in RD based ME Revision: xvidcore--devapi4--1.0--patch-53 Fixes the unitialized mcsel bit in RD based ME modified files: src/motion/estimation_rd_based.c 2003-09-28 01:00:06 GMT patch-52 Summary: Fix the XviD constant version initialization Revision: xvidcore--devapi4--1.0--patch-52 Fix the XviD constant version initialization modified files: src/xvid.h 2003-09-28 00:47:05 GMT patch-51 Summary: Fix to the build system (the come back). Revision: xvidcore--devapi4--1.0--patch-51 Ok this one fixes the way we build the targets. The VPATH thingy really works with the library targets. My understanding of the VPATH mechanism was wrong. Now it should be ok (i promess). modified files: build/generic/Makefile 2003-09-27 11:45:18 GMT patch-50 Summary: Small fix to previous patch. Revision: xvidcore--devapi4--1.0--patch-50 A pair ofdouble quotes prevented "make" to sort out the VPATH dependences in "=build". This resulted in compiling all the sources, all the time, whether a file changed or not. modified files: build/generic/Makefile 2003-09-26 22:39:44 GMT patch-49 Summary: Updated the build files for *nix. Revision: xvidcore--devapi4--1.0--patch-49 - Fixed MacOSX build (w/o module option). The subversion was not right it was just minor version though it has to be major.minor. - Fixed bootstrap.sh for MacOSX environment, it now looks for glibtoolize if libtoolize is not found. - The unified Makefile now builds XviD out of source tree in the directory =build. It's cleaner, and clashes much less w/ arch/tla source linting. - Tuned the tagging regexps so: + autoconf files are ignored (considered backup => not erased, not copied and not commited/imported) + =build is also considered backup. modified files: build/generic/Makefile build/generic/bootstrap.sh build/generic/configure.in build/generic/platform.inc.in build/generic/sources.inc examples/Makefile {arch}/=tagging-method 2003-09-24 01:38:03 GMT patch-48 Summary: Bug fix to decoder (mcsel/acpred bits swapped) Revision: xvidcore--devapi4--1.0--patch-48 As reported here: http://www.xvid.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=1513&highlight= <quote> in the spec, 'there is 'mcsel' before 'ac_pred_flag'. however, if you see the code, it's changed. </quote> We were doing the opposite, ac_pred before mcsel. modified files: src/decoder.c 2003-09-11 17:19:35 GMT patch-47 Summary: Small fix to GMC+QuarterPel -- BS version bumped to 19 Revision: xvidcore--devapi4--1.0--patch-47 During the split up, a line has been disabled that prevented good quartelpel+GMC. Fixed. This fix + patch-43 are a good reason to bump up the bitstream version to 19. modified files: src/motion/gmc.h src/xvid.h 2003-09-11 17:11:28 GMT patch-46 Summary: Build process fix for MacOSX+module option Revision: xvidcore--devapi4--1.0--patch-46 This patch fixes the install rule of the MacOSX module style library. It adds a PRE_SHARED_LIB == SHARED_LIB for all platforms except MacOSX that uses it a different way, and exploits the fact $(SPECIFIC_LDFLAGS) is the last var of the build line to insert a command for post linking the right .so file. modified files: build/generic/Makefile build/generic/configure.in build/generic/platform.inc.in 2003-09-11 13:56:40 GMT patch-45 Summary: Tree cleanup and build files updated. Revision: xvidcore--devapi4--1.0--patch-45 * Win32 files switched to Unix format. Ok, on IRC, we sorted out what was b0rking the project files each time I commit them in DOS format. In fact the Unix CVS does upload DOS format files if i commit them, and then Win32 CVS users get double \r\n files. So the best is to use unix format in CVS. This way, the checked out versions are right for Win32 users. NB: this imply a unix2dos conversion when doing a release from a Unix box. I think it's better than current policy, but automatic tarballs/zip of the tree should take care of that. * odivx and xvid_stat examples removed. Associated project files have been removed as well. * The divx4 compatibility layer has been removed. Associated options in the configure script removed. libxvidcore.def has no more need to be an autoconf generated file. * rawdec removed. It has never been used and will never be. * Added major api appending to the macosx module build. removed files: build/win32/.arch-ids/odivx_enc_dec.dsp.id build/win32/.arch-ids/xvid_stat.dsp.id build/win32/odivx_enc_dec.dsp build/win32/xvid_stat.dsp examples/.arch-ids/odivx_enc_dec.c.id examples/.arch-ids/xvid_stat.c.id examples/odivx_enc_dec.c examples/xvid_stat.c rawdec/.arch-ids/=id rawdec/.arch-ids/rawdec.c.id rawdec/.arch-ids/rawdec.dsp.id rawdec/rawdec.c rawdec/rawdec.dsp src/.arch-ids/divx4.c.id src/.arch-ids/divx4.h.id src/divx4.c src/divx4.h modified files: build/generic/Makefile build/generic/configure.in build/generic/libxvidcore.def build/win32/libxvidcore.dsp build/win32/xvid_decraw.dsp build/win32/xvid_encraw.dsp build/win32/xvidcore.dsw renamed files: build/generic/.arch-ids/libxvidcore.def.in.id ==> build/generic/.arch-ids/libxvidcore.def.id build/generic/libxvidcore.def.in ==> build/generic/libxvidcore.def removed directories: rawdec rawdec/.arch-ids 2003-09-11 12:59:19 GMT patch-44 Summary: Replaced malloc.h header file with stdlib.h Revision: xvidcore--devapi4--1.0--patch-44 Replaced malloc.h header file with stdlib.h modified files: src/plugins/plugin_lumimasking.c 2003-09-10 22:33:04 GMT patch-43 Summary: Fixed a problem for 'power of 2' framerates Revision: xvidcore--devapi4--1.0--patch-43 Fixed a problem for 'power of 2' framerates modified files: src/bitstream/bitstream.c 2003-09-10 21:57:12 GMT patch-42 Summary: Motion Estimation module splitting. Revision: xvidcore--devapi4--1.0--patch-42 The motion estimation module was the biggest file of the source tree. After some previous attempts, sysKin decided to split it up again. This time he's done it right. This split up just changes the organization of ME functions inside different files. This should help a bit in keeping the motion estimation being manageable by a normal human ;-) Here is the splitting logic quoted from sysKin's email to xvid-devel: - estimation.h: header files #included in all ME modules: + deftypes, + macros + constants NB: no code. - estimation_bvop.c: motion estimation for b-vops. everything in it :) - estimation_common.c: functions shared among all ME modules: + diamonds + subpel + refinement + picture + manipulation + tables + ... etc. - estimation_gmc.c: gruel's GME code - estimation_pvop.c: ME for p-vops. Also SAD-based mode decision - estimation_rd_based.c: everything R-D-based: mode decison (including _Fast) and ME. - gmc.c, gmc.h: no change. new files: src/motion/.arch-ids/estimation.h.id src/motion/.arch-ids/estimation_bvop.c.id src/motion/.arch-ids/estimation_common.c.id src/motion/.arch-ids/estimation_gmc.c.id src/motion/.arch-ids/estimation_pvop.c.id src/motion/.arch-ids/estimation_rd_based.c.id src/motion/.arch-ids/motion_inlines.h.id src/motion/.arch-ids/vop_type_decision.c.id src/motion/estimation.h src/motion/estimation_bvop.c src/motion/estimation_common.c src/motion/estimation_gmc.c src/motion/estimation_pvop.c src/motion/estimation_rd_based.c src/motion/motion_inlines.h src/motion/vop_type_decision.c removed files: src/motion/.arch-ids/motion_est.c.id src/motion/.arch-ids/motion_est.h.id src/motion/.arch-ids/smp_motion_est.c.id src/motion/.arch-ids/smp_motion_est.h.id src/motion/motion_est.c src/motion/motion_est.h src/motion/smp_motion_est.c src/motion/smp_motion_est.h modified files: build/generic/sources.inc build/win32/libxvidcore.dsp src/bitstream/mbcoding.h src/motion/gmc.c src/motion/gmc.h src/motion/motion.h src/motion/motion_comp.c src/motion/sad.c src/motion/sad.h src/prediction/mbprediction.c src/prediction/mbprediction.h src/utils/mbfunctions.h 2003-09-10 00:40:44 GMT patch-41 Summary: Cleanups and fix to (trellis+thresholding) logic Revision: xvidcore--devapi4--1.0--patch-41 Cleanups to some functions (loop unrolling, call to functions through function array pointers)... Fix to the trellis+thresholding logic. It was comparing the return value of trellis with a threshold but the trellis function returns the last non zero coeff index... this was basically comparing apples with oranges... funny but wrong. Trellis now returns the sum of absolute coeffs, so the comparison is logical. Btw, as discussed on the devel ML, this is probably uneeded as trellis does an RD optimized coeff distribution. modified files: src/utils/mbtransquant.c 2003-09-09 13:13:58 GMT patch-40 Summary: Missing ressource for dshow frontend Revision: xvidcore--devapi4--1.0--patch-40 Missing ressource for dshow frontend new files: dshow/src/.arch-ids/XviD_logo.bmp.id dshow/src/XviD_logo.bmp 2003-09-08 11:02:10 GMT patch-39 Summary: Small fixes for fast mode decision Revision: xvidcore--devapi4--1.0--patch-39 Small fixes for fast mode decision modified files: src/motion/motion_est.c src/xvid.h 2003-09-05 23:45:48 GMT patch-38 Summary: New RD mode decision and subpel refinement. Revision: xvidcore--devapi4--1.0--patch-38 New stuff from michael. It deals with mode decision and subpel refinement. Integration of these new flags are not settled. Wait and see. Further testing is needed. modified files: src/motion/motion_est.c src/motion/motion_est.h src/xvid.h 2003-08-29 13:56:30 GMT patch-37 Summary: Still more ME tuning Revision: xvidcore--devapi4--1.0--patch-37 Still more ME tuning modified files: src/motion/motion_est.c 2003-08-28 12:43:22 GMT patch-36 Summary: Removed expanded the cvs Id field Revision: xvidcore--devapi4--1.0--patch-36 Removed expanded the cvs Id field modified files: src/image/x86_asm/qpel_mmx.asm 2003-08-28 12:39:44 GMT patch-35 Summary: More motion est cleanup and bugfixes. Revision: xvidcore--devapi4--1.0--patch-35 Still more bugfixes, cleanups and improvements to the Motion Est by sysKin modified files: src/motion/motion_est.c src/motion/motion_est.h 2003-08-26 13:57:39 GMT patch-34 Summary: Added final bits of Aspect Ratio flag. Revision: xvidcore--devapi4--1.0--patch-34 Peter did think of the AR flag since the very beginning of devapi4. He just forgot to code the final bits to effectively write it to the bitstream. This patch adds these missing final bits so XviD now reads and writes AR flags. modified files: ./src/bitstream/bitstream.c ./src/encoder.c ./src/encoder.h ./src/xvid.h 2003-08-25 16:41:09 GMT patch-33 Summary: Small motion estimation cleanup. Revision: xvidcore--devapi4--1.0--patch-33 Cleanups from sysKin. modified files: ./src/motion/motion_est.c ./src/motion/motion_est.h 2003-08-25 14:59:28 GMT patch-32 Summary: Frame padding bug. Revision: xvidcore--devapi4--1.0--patch-32 We were edging the image repeating pixels from the image directly, but the standard says we must repeat from a 16 pixel boundary. See Chapter 7.6.4 of the standard. modified files: ./src/image/image.c 2003-08-23 15:07:44 GMT patch-31 Summary: New Qpel code. Revision: xvidcore--devapi4--1.0--patch-31 Isibaar commited a new piece of QPel code that seems to be optimized for ia32(mmx) architectures. I had to clean it up a bit to make it respectful of architecture separations. This code is disabled for non ia32 arch, a comment mention it's only faster on ia32... i wonder if it's true, some tests have to be done on sourceforge compile farm in order to confirm that. Compared to the bared CVS commit, this patch includes: - fixes the unix build. - better architecture separation. - CodingStyle respected. new files: ./src/image/.arch-ids/qpel.c.id ./src/image/.arch-ids/qpel.h.id ./src/image/qpel.c ./src/image/qpel.h ./src/image/x86_asm/.arch-ids/qpel_mmx.asm.id ./src/image/x86_asm/qpel_mmx.asm modified files: ./build/generic/sources.inc ./build/win32/libxvidcore.dsp ./src/encoder.c ./src/motion/motion_comp.c ./src/xvid.c 2003-08-22 13:20:36 GMT patch-30 Summary: sad32v does really what it's expected (ie 32x32 SAD :-) Revision: xvidcore--devapi4--1.0--patch-30 sad32v does really what it's expected (ie 32x32 SAD :-) modified files: ./src/motion/sad.c 2003-08-18 19:00:49 GMT patch-29 Summary: 64bit fix. Revision: xvidcore--devapi4--1.0--patch-29 The interpolation code was unsafe on 64bit platforms, the offset was badly sized, resulting in segfaults. modified files: ./src/image/interpolate8x8.h 2003-08-17 14:08:48 GMT patch-28 Summary: Greyscale mode fixes. Revision: xvidcore--devapi4--1.0--patch-28 We were missing some greyscale tests in the encoder loop... noticeably in the PVOP function when coding an intra block, and in BVOP function when coding all types. I added the cbp trick in the cases discussed above. modified files: ./src/encoder.c 2003-08-13 11:47:33 GMT patch-27 Summary: Forgotten bit for IA64 separation Revision: xvidcore--devapi4--1.0--patch-27 Forgotten bit for IA64 separation modified files: ./src/image/interpolate8x8.h 2003-08-11 15:42:30 GMT patch-26 Summary: Some qpel changes (sync with Isibaar) Revision: xvidcore--devapi4--1.0--patch-26 Some qpel changes (sync with Isibaar) modified files: ./examples/xvid_encraw.c 2003-08-11 15:30:04 GMT patch-25 Summary: Better architecture separation. Revision: xvidcore--devapi4--1.0--patch-25 Architecture depending functions were declared whatever arch you were compiling. This patch fixes that. I also removed the simple_idct hack in decoder.c as it was simply not used. Better not have ugly code in there. xvid_bench, should now compile and run on all archs. However I did not put the cpu definitions for each arch, i just separated ARCH_IS_IA32 so even ARCH_IS_GENERIC can compile modified files: ./examples/xvid_bench.c ./src/bitstream/cbp.h ./src/dct/fdct.h ./src/dct/idct.h ./src/decoder.c ./src/image/colorspace.h ./src/image/interpolate8x8.h ./src/image/reduced.h ./src/motion/sad.h ./src/quant/quant_h263.h ./src/quant/quant_mpeg4.h ./src/utils/emms.h 2003-08-09 20:47:42 GMT patch-24 Summary: Updated changelog Revision: xvidcore--devapi4--1.0--patch-24 Updated changelog modified files: ./changelog.txt 2003-08-09 20:31:17 GMT patch-23 Summary: Workaround to a GMC bug due to a MS compiler bug. Revision: xvidcore--devapi4--1.0--patch-23 Christoph did use a trick to speed up code that resulted in badly optimized code (teh compiler was missing a cast) modified files: ./src/motion/gmc.c 2003-08-09 17:09:00 GMT patch-22 Summary: Fixes to xvid_decraw Revision: xvidcore--devapi4--1.0--patch-22 xvid_decraw has always been used on not so high bitrate sequences and not so big sequences neither. I've been doing lot of tests on the Matrix 2 trailer (1000x540 25fps ~5Mbits/s) and xvid_decraw was not able to handle that because of bugs in the buffer filling algorithm. This patch fixes the buffer filling and catches up with christoph changes in CVS (wrong help message and option parsing). modified files: ./examples/xvid_decraw.c 2003-08-08 21:31:59 GMT patch-21 Summary: Added QPel and GMC options. Revision: xvidcore--devapi4--1.0--patch-21 XviD has so many options that we forget to propose them all on the CLI, here are two more: GMC and Qpel. modified files: ./examples/xvid_encraw.c 2003-08-07 19:26:28 GMT patch-20 Summary: SVOP handling in status window Revision: xvidcore--devapi4--1.0--patch-20 SVOP handling in status window modified files: ./vfw/src/status.c 2003-08-07 19:25:03 GMT patch-19 Summary: Warning cleanups by chl Revision: xvidcore--devapi4--1.0--patch-19 Warning cleanups by chl modified files: ./src/encoder.c ./src/encoder.h ./src/image/interpolate8x8.c ./src/motion/motion_est.c ./src/xvid.h 2003-08-06 21:13:35 GMT patch-18 Summary: Fix to GMC sprite trajectory code Revision: xvidcore--devapi4--1.0--patch-18 Fix to GMC sprite trajectory code modified files: ./src/bitstream/mbcoding.c ./src/xvid.h 2003-08-06 10:57:25 GMT patch-17 Summary: Fixes a bug in BVOP block skipping thresholding Revision: xvidcore--devapi4--1.0--patch-17 Fixes a bug in BVOP block skipping thresholding modified files: ./src/motion/motion_est.c 2003-08-03 14:57:32 GMT patch-16 Summary: Functions renaming + motion fixes. Revision: xvidcore--devapi4--1.0--patch-16 BITS flags have been renamed to RD (Rate Distorsion) flags... however function names were still xxxBitsxxx. Improved frame type decision Fix for DQUANTS plugins, their quant was never checked against valid [1..31] range. modified files: ./src/encoder.c ./src/motion/motion_est.c ./src/motion/motion_est.h 2003-08-02 15:00:49 GMT patch-15 Summary: API cleanup. Revision: xvidcore--devapi4--1.0--patch-15 Since we started devapi3 and then devapi4, feature names did not change because it was just convenient to keep them to minimize the change impact. But most of the flags were now not even suggesting what they do. So this patch cleans the API. This patch also change the way we describe flags, it's more compact and shows better flags are bit sets that must not overlap. This change fixes a plugin flag overlapping problem as well. modified files: ./examples/xvid_encraw.c ./src/decoder.c ./src/encoder.c ./src/encoder.h ./src/motion/motion_est.c ./src/motion/motion_est.h ./src/xvid.c ./src/xvid.h ./vfw/src/codec.c ./vfw/src/config.c 2003-07-29 22:25:12 GMT patch-14 Summary: Fixed bogus memory accesses Revision: xvidcore--devapi4--1.0--patch-14 Fixed bogus memory accesses modified files: ./src/encoder.c ./src/plugins/plugin_2pass1.c 2003-07-28 12:22:33 GMT patch-13 Summary: Bitstream version increased to 16 Revision: xvidcore--devapi4--1.0--patch-13 Bitstream version increased to 16 modified files: ./src/xvid.h 2003-07-25 12:01:51 GMT patch-12 Summary: Added gmc files to teh windows project file Revision: xvidcore--devapi4--1.0--patch-12 Added gmc files to teh windows project file modified files: ./build/win32/libxvidcore.dsp ./vfw/src/codec.c 2003-07-25 12:00:31 GMT patch-11 Summary: Added cartoon mode from Isibaar Revision: xvidcore--devapi4--1.0--patch-11 Added cartoon mode from Isibaar modified files: ./src/motion/motion_est.c ./src/plugins/plugin_single.c ./src/utils/mbtransquant.c ./src/xvid.h 2003-07-25 10:30:41 GMT patch-10 Summary: Bitstream syntax comments. Revision: xvidcore--devapi4--1.0--patch-10 This patch does not change the bitstream but adds some comments that can help in order to understand (lack of) calls to BitstreamPadAlways. modified files: ./src/bitstream/bitstream.c ./src/encoder.c 2003-07-22 16:34:25 GMT patch-9 Summary: Fixes Bistream errors in VOL (+ forced stuffing) Revision: xvidcore--devapi4--1.0--patch-9 After a detailed bugreport at: http://www.xvid.org/modules.php?op=modload&name=phpBB2&file=viewtopic&t=1387&highlight= I discovered that: 1/ we did not write video_signal_type, but we were padding to the next byte, that's why we had video_signal_type=0 and then only 1s until the next byte boundary. This explains the 11 next_start_code(); 2/ video_object_type_indication = Reserved is right on my machine, please check again, but i doubt there is a bug there, we use 3 hard wired values and none of them is zero. 3/ 01 : next_start_code() *** Was wrong in 24.02.2003; is correct in dev-api-4!!! *** was a bug in fact... when we write user data, we pad to the next byte boundary (if needed) like the standard says... by chancepadding was almost always done, thus the next_start_code() was respected. 4/ The extra stuffing bits were caused by a forced padding between our VOL function writer and VOP header function writer. modified files: ./src/bitstream/bitstream.c ./src/encoder.c 2003-07-16 22:57:44 GMT patch-8 Summary: Fixed quant4_intra_xmm and quant_intra_3dne bug for DC<0. Revision: xvidcore--devapi4--1.0--patch-8 These two functions were suffering the same error that consists in emulating idiv with some an inversed divisor array and an imul instruction followed by a right shift... That was always decreasing the ressult by 1 for negative DC values. A not so bad solution is simply to use a cmov instruction and choose the right value according to the DC value. As these function were for PIII and Athlon, we are sure we can use the cmov instruction. PS: the fix is somewhere in cosmetic changes... sorry but the code was too ugly to fix it like it was. modified files: ./src/quant/x86_asm/quantize4_xmm.asm ./src/quant/x86_asm/quantize_3dne.asm 2003-07-16 12:58:21 GMT patch-7 Summary: Fixed the build system (error caused by patch-5) Revision: xvidcore--devapi4--1.0--patch-7 IA64 cahnges were wrong in the build system, they make all platforms try to compile a directory... That patch should fix the IA64 target build and get back to previous behavior for other architectures. modified files: ./build/generic/configure.in ./build/generic/platform.inc.in ./build/generic/sources.inc 2003-07-13 12:16:55 GMT patch-6 Summary: Updates for GME and some cleanups. Revision: xvidcore--devapi4--1.0--patch-6 This is a all in one patch from syskin: * mcsel decision moved to ModeDecision() function. That makes motion loop completely aware of macroblock mode and vectors (amv in that case). A simple copy&paste was needed to make the the decision R-D based, to be compatible with MODEDECISION_BITS. * many bugs fixed. Most of them very small, the only big one was that BITS was misunderstanding a flag and was thinking that mpeg quant is used when h263 quant is used and vice versa :( Also, correct cbp with inter4v mode makes mode decision better. Two speedups - for BITS (no more dequantization when sum == 0) and for ChromaME (chroma sad not computed if total sad too big before that). Some GMC compiler warnings removed. Probably more, I don't remember ;) I haven't touched P/B/I decision for once. * compiler warnings removed, mostly "const mismatch" in get_amv() <-- or what was his name. * two functions made 2x smaller, shorter and faster. modified files: ./src/encoder.c ./src/global.h ./src/image/interpolate8x8.h ./src/motion/gmc.c ./src/motion/gmc.h ./src/motion/motion_est.c ./src/motion/motion_est.h ./vfw/src/codec.c 2003-07-10 17:35:59 GMT patch-5 Summary: IA64 updates. Revision: xvidcore--devapi4--1.0--patch-5 Changes from Stephan Krause <s_kraste at ira.uka.de> Small updates so ia64 is supposed to work. Further testing is needed because tests have only been done with xvid_encraw. modified files: ./build/generic/platform.inc.in ./examples/xvid_encraw.c ./src/motion/motion_est.c ./src/xvid.c 2003-07-10 17:27:01 GMT patch-4 Summary: Removed remaining expanded $ lines from the arch repo Revision: xvidcore--devapi4--1.0--patch-4 Removed remaining expanded $ lines from the arch repo modified files: ./CodingStyle ./build/generic/bootstrap.sh ./doc/xvid-encoder.txt ./src/bitstream/ppc_asm/cbp_altivec.s ./src/bitstream/ppc_asm/cbp_ppc.s ./src/dct/x86_asm/fdct_xmm.asm ./src/image/x86_asm/colorspace_yuv_mmx.asm ./src/image/x86_asm/reduced_mmx.asm ./src/image/x86_asm/yuv_to_yv12_mmx.asm ./src/image/x86_asm/yv12_to_rgb24_mmx.asm ./src/image/x86_asm/yv12_to_rgb32_mmx.asm ./src/motion/ppc_asm/sad_altivec.c ./todo.txt 2003-07-02 23:20:39 GMT patch-3 Summary: Reset the IFrame counter when an iframe is encoded Revision: xvidcore--devapi4--1.0--patch-3 Reset the IFrame counter when an iframe is encoded modified files: ./src/encoder.c 2003-06-29 21:58:24 GMT patch-2 Summary: Added 3 warp point GMC. Revision: xvidcore--devapi4--1.0--patch-2 Added 3 warp point GMC (first cvs commit + bitstream warp writing fix from cvs) new files: ./src/motion/.arch-ids/gmc.c.id ./src/motion/.arch-ids/gmc.h.id ./src/motion/gmc.c ./src/motion/gmc.h modified files: ./build/generic/sources.inc ./src/bitstream/bitstream.c ./src/decoder.c ./src/decoder.h ./src/encoder.c ./src/encoder.h ./src/global.h ./src/motion/motion.h ./src/motion/motion_comp.c ./src/motion/motion_est.c ./src/motion/motion_est.h ./src/utils/mbfunctions.h ./src/xvid.h 2003-06-29 21:35:01 GMT patch-1 Summary: Updated changelog Revision: xvidcore--devapi4--1.0--patch-1 Updated changelog modified files: ./changelog.txt 2003-06-27 17:01:46 GMT base-0 Summary: tag of ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-80 Revision: xvidcore--devapi4--1.0--base-0 (automatically generated log message) new patches: ed.gomez@free.fr--main/xvidcore--devapi4--1.0--base-0 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-1 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-2 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-3 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-4 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-5 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-6 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-7 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-8 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-9 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-10 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-11 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-12 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-13 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-14 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-15 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-16 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-17 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-18 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-19 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-20 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-21 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-22 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-23 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-24 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-25 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-26 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-27 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-28 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-29 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-30 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-31 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-32 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-33 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-34 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-35 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-36 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-37 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-38 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-39 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-40 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-41 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-42 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-43 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-44 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-45 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-46 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-47 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-48 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-49 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-50 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-51 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-52 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-53 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-54 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-55 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-56 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-57 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-58 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-59 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-60 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-61 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-62 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-63 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-64 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-65 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-66 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-67 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-68 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-69 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-70 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-71 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-72 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-73 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-74 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-75 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-76 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-77 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-78 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-79 ed.gomez@free.fr--main/xvidcore--devapi4--1.0--patch-80 ed.gomez@free.fr--main/xvidcore--stable--0.9--base-0 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-1 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-2 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-3 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-4 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-5 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-6 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-7 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-8 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-9 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-10 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-11 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-12 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-13 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-14 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-15 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-16 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-17 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-18 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-19 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-20 ed.gomez@free.fr--main/xvidcore--stable--0.9--version-0 ed.gomez@free.fr--main/xvidcore--stable--1.0--base-0 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-1 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-2 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-3 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-4 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-5 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-6 2003-06-27 13:42:52 GMT patch-80 Summary: Still fixes and improvements to motion estimation Revision: xvidcore--devapi4--1.0--patch-80 Still fixes and improvements to motion estimation. modified files: src/motion/motion_est.c src/motion/motion_est.h 2003-06-27 13:35:20 GMT patch-79 Summary: Added compile time PNM reading Revision: xvidcore--devapi4--1.0--patch-79 Added compile time PNM reading. It can be useful to test RGB<->YV12 conversions inside XviD. modified files: examples/xvid_encraw.c 2003-06-24 12:19:01 GMT patch-78 Summary: Fixes to the RD ME Revision: xvidcore--devapi4--1.0--patch-78 Fixes to the RD ME. modified files: src/motion/motion_est.c src/motion/motion_est.h 2003-06-14 09:14:11 GMT patch-77 Summary: Zone update. Revision: xvidcore--devapi4--1.0--patch-77 Removed zone warning boxes (they are counter productive) Added zone-based force key frame option. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/config.rc vfw/src/resource.h 2003-06-14 09:06:37 GMT patch-76 Summary: Fixes a bug where type was not respected in a BEFORE plugin. Revision: xvidcore--devapi4--1.0--patch-76 Fixes a bug where type was not respected in a BEFORE plugin. The plugin framework was not copying what was passed to the call_plugins function. modified files: src/encoder.c 2003-06-12 23:03:38 GMT patch-75 Summary: Fixed the old "yellow line on left" with rgb output. Revision: xvidcore--devapi4--1.0--patch-75 Fixed the old "yellow line on left" with rgb output. modified files: src/image/x86_asm/colorspace_rgb_mmx.asm 2003-06-12 23:02:10 GMT patch-74 Summary: Removed log2bin ia32 optimization. Revision: xvidcore--devapi4--1.0--patch-74 Removed log2bin ia32 optimization. modified files: src/bitstream/bitstream.c 2003-06-12 22:55:10 GMT patch-73 Summary: Fixed some small things in encoder. Revision: xvidcore--devapi4--1.0--patch-73 Removed definitively the Hint stuff. Fixed some XXX thingies nad some cleanup. modified files: src/encoder.c 2003-06-12 22:51:55 GMT patch-72 Summary: Back to Walken's Idct Revision: xvidcore--devapi4--1.0--patch-72 The simple_idct idea was not so good as is. Waiting for a better solution from michael. modified files: src/xvid.c src/xvid.h 2003-06-10 22:45:57 GMT patch-71 Summary: VFW front end update (New live quant histogram window) Revision: xvidcore--devapi4--1.0--patch-71 Update to the VFW frontend. It includes a new window that shows live quantizer histogram during encoding session. new files: vfw/src/.arch-ids/status.c.id vfw/src/.arch-ids/status.h.id vfw/src/status.c vfw/src/status.h modified files: vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/src/config.rc vfw/src/driverproc.c vfw/src/resource.h vfw/vfw.dsp 2003-06-10 20:58:09 GMT patch-70 Summary: Fixed the win32 project file because of patch-64 Revision: xvidcore--devapi4--1.0--patch-70 Removed adapt_quant.[ch] files from the libxvidcore win32 project file. modified files: build/win32/libxvidcore.dsp 2003-06-10 20:53:31 GMT patch-69 Summary: Added direct target frame size support + cosmetic. Revision: xvidcore--devapi4--1.0--patch-69 If the target bitrate is < 0, it is now interpreted as a target size in kbytes. I did also some cosmetic work to remove all space indents ^_^. modified files: src/plugins/plugin_2pass2.c 2003-06-10 09:13:40 GMT patch-68 Summary: xvid_bench updates and corresponding Makefile changes. Revision: xvidcore--devapi4--1.0--patch-68 As mentionned on the devel mailing list, xvid_bench did not even compile anymore. This patch updates xvid_bench to the new API. xvid_bench is now compiled with other examples by the Makefile, this makes mandatory to include ../build/generic/platform.inc to have the ARCH_IS_xxxx constants. Dunno if it has an impact on Win32 project files. modified files: examples/Makefile examples/xvid_bench.c 2003-06-10 09:05:14 GMT patch-67 Summary: Probably a small copy/paste error Revision: xvidcore--devapi4--1.0--patch-67 XVID_CSP_BGR was advertised as being a 32bit packed format -> 24bit is the right pixel size modified files: src/xvid.h 2003-06-09 19:39:47 GMT patch-66 Summary: Activated simple_idct_mmx. Revision: xvidcore--devapi4--1.0--patch-66 This patch activates simple_idct_mmx use. However it tries to make sure old streams (< version 10) are decoded using the mmx Walten's version. A noticeable bitstream version change, it is now numbered 11. The number 10 is used on the cvs_head version for the same code change. modified files: src/bitstream/bitstream.c src/dct/simple_idct.c src/dct/x86_asm/simple_idct_mmx.asm src/decoder.c src/decoder.h src/xvid.c src/xvid.h 2003-06-09 19:15:18 GMT patch-65 Summary: Remaining include of adapt_quant.h Revision: xvidcore--devapi4--1.0--patch-65 encoder.c was still including adapt_quant.h. Removed. modified files: src/encoder.c 2003-06-09 17:49:44 GMT patch-64 Summary: Moved code from adapt_quant.c to the lumimasking plugin. Revision: xvidcore--devapi4--1.0--patch-64 The lumimasking plugin was using functions from outside. As I understand what plugins are, they should not rely on code outside their module as much as it is possible to achieve. Here it was clear, the plugin could be made standalone. PS: it seems lumimasking is a no-op plugin, it's probably a bug in the plugin framework. No time to track this. removed files: src/quant/.arch-ids/adapt_quant.c.id src/quant/.arch-ids/adapt_quant.h.id src/quant/adapt_quant.c src/quant/adapt_quant.h modified files: build/generic/sources.inc src/plugins/plugin_lumimasking.c 2003-06-09 13:45:29 GMT patch-63 Summary: Legal GNU GPL Headers and copyright holders. Revision: xvidcore--devapi4--1.0--patch-63 Added Legal GNU GPL headers and copyright holders as defined in XviD 0.9.x. There are still some wrong copyright (atm noted 'Anonymous') and i missed probably some old headers that contain the GNU GPL pattern my script searched for. modified files: dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h dshow/src/IXvidDecoder.h examples/xvid_bench.c examples/xvid_decraw.c examples/xvid_encraw.c examples/xvid_stat.c rawdec/rawdec.c src/bitstream/bitstream.c src/bitstream/bitstream.h src/bitstream/cbp.c src/bitstream/cbp.h src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/bitstream/vlc_codes.h src/bitstream/zigzag.h src/dct/fdct.c src/dct/fdct.h src/dct/idct.c src/dct/idct.h src/dct/simple_idct.c src/decoder.c src/decoder.h src/divx4.c src/divx4.h src/encoder.c src/encoder.h src/global.h src/image/colorspace.c src/image/colorspace.h src/image/font.c src/image/font.h src/image/image.c src/image/image.h src/image/interpolate8x8.c src/image/interpolate8x8.h src/image/reduced.c src/image/reduced.h src/motion/motion.h src/motion/motion_comp.c src/motion/motion_est.c src/motion/motion_est.h src/motion/ppc_asm/sad_altivec.c src/motion/sad.c src/motion/sad.h src/motion/smp_motion_est.c src/motion/smp_motion_est.h src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c src/plugins/plugin_dump.c src/plugins/plugin_fixed.c src/plugins/plugin_lumimasking.c src/plugins/plugin_psnr.c src/plugins/plugin_single.c src/portab.h src/prediction/mbprediction.h src/quant/adapt_quant.c src/quant/adapt_quant.h src/quant/quant_h263.h src/quant/quant_matrix.c src/quant/quant_matrix.h src/quant/quant_mpeg4.c src/quant/quant_mpeg4.h src/utils/emms.c src/utils/emms.h src/utils/mbfunctions.h src/utils/mbtransquant.c src/utils/mem_align.c src/utils/mem_align.h src/utils/mem_transfer.c src/utils/mem_transfer.h src/utils/timer.c src/utils/timer.h src/xvid.c src/xvid.h vfw/src/2pass.h vfw/src/codec.h vfw/src/config.h vfw/src/debug.h vfw/src/resource.h vfw/src/vfwext.h 2003-06-09 01:13:50 GMT patch-62 Summary: ANSI C comments. Revision: xvidcore--devapi4--1.0--patch-62 Turned all // ISO C99 comments into ISO C89 (aka ANSI C) coment style. Now XviD compiles fine with gcc 3.x -std=iso89 option. This should help those people who want to get XviD working on DSPs or any other exotic hardware. This type of exotic hardware is usually shipped with a very spartiate ANSI C compiler. NB: Big patch that breaks all kind of cherry picking merges. modified files: examples/odivx_enc_dec.c examples/xvid_bench.c src/bitstream/bitstream.c src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/bitstream/zigzag.h src/dct/fdct.c src/dct/idct.c src/dct/simple_idct.c src/decoder.c src/decoder.h src/encoder.c src/encoder.h src/global.h src/image/colorspace.c src/image/font.c src/image/image.c src/image/interpolate8x8.c src/image/interpolate8x8.h src/image/reduced.c src/motion/motion.h src/motion/motion_comp.c src/motion/motion_est.c src/motion/motion_est.h src/motion/sad.c src/plugins/plugin_2pass2.c src/prediction/mbprediction.c src/prediction/mbprediction.h src/quant/adapt_quant.c src/quant/adapt_quant.h src/quant/quant_h263.c src/quant/quant_h263.h src/quant/quant_mpeg4.c src/quant/quant_mpeg4.h src/utils/mbtransquant.c src/utils/mem_transfer.c src/utils/timer.c src/xvid.c vfw/src/2pass.c vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/src/driverproc.c 2003-06-04 18:19:56 GMT patch-61 Summary: Removed AltCC from VFW frontend Revision: xvidcore--devapi4--1.0--patch-61 A previous patch removed AltCC from the 2pass plugin. Thus we remove the frontend panels for AltCC and corresponding code. modified files: src/xvid.h vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/config.rc 2003-05-29 14:47:28 GMT patch-60 Summary: Lot of two pass updates. Revision: xvidcore--devapi4--1.0--patch-60 * Removed Alt curve treatment * After reading VFW code, i found out that it was using the blocks stats fields to retrieve the number of MBs in a frame. So all this min_size[] was not meant to discover a min_size for each frame according to its intra MBs but rather an hardcoded minimum for all frames as advertised in earlier cvs revisions. It would be easier if original code was commented :-( * Some comment changes * bquant_error and pquant_error have been replaced by an array quant_error[3][32] indexed by frame type and quantizer value. * Moved some initialization stuff * I read VFW and noticed that min_length was supposed to be: min{hard coded length, min{observed lengths}} * Force frame type during the second pass. * Simplified equations. Scaling was needed because of the non linear formulas used in AltCC but now we can directly use avg_length[s->type-1] instead of "first prescaling bframes to pframes lengths then use pframe stats and at last prescaling back frame length to bframe lengths" See my new XXX: question about the overflow. modified files: src/plugins/plugin_2pass2.c 2003-05-25 10:01:55 GMT patch-59 Summary: Function reordering, fix minimum "hardcoded" frame sizes in internal_sacle(). Revision: xvidcore--devapi4--1.0--patch-59 Fixed a bug where hardcoded miminum frame lengths were computed only for first frame (IFrame) and was applied for al frames. I just moved the formulas into the frame loop. Lot of cosmetic work, function reodrering etc etc so the plugin function come first, and then we have sub function and helper functions. Some fixes in my previous comments. modified files: src/plugins/plugin_2pass2.c 2003-05-22 23:11:21 GMT patch-58 Summary: Added the container_frame_overhead field to the 2pass2 RC structure. Revision: xvidcore--devapi4--1.0--patch-58 In my previous patches, i disabled container format overhead compensation because xvidcore can be used for other things than AVI. However this compensation is usefull, so it's back with its own structure field that specifies how much bytes the container uses for a frame (average value). We can now do some direct ogm, matroska encodings without loosing a single byte... :-) modified files: src/plugins/plugin_2pass2.c src/xvid.h vfw/src/codec.c 2003-05-22 22:22:47 GMT patch-57 Summary: Fixed an overflow bug in target filesize computation. Revision: xvidcore--devapi4--1.0--patch-57 rc->target was an uint64_t data to avoid overflow when dealing with long movies and/or high bitrates. The problem is that its initialization was using int32 data, thus this was resulting in an overflow in its initial computation. Quite silly, but this bug drived me crazy during 4 hours... modified files: src/plugins/plugin_2pass2.c 2003-05-22 18:53:19 GMT patch-56 Summary: Added the mrproper Makefile target. Revision: xvidcore--devapi4--1.0--patch-56 Added the mrproper Makefile target that deletes even bootstrapped files. mrproper name comes from the linux kernel makefile, i was out of inspiration. modified files: build/generic/Makefile 2003-05-22 17:30:15 GMT patch-55 Summary: Fix a nasty bug due to a typo mistake. Revision: xvidcore--devapi4--1.0--patch-55 We were comparing frame length with a wrong min_size[index] that was out of bounds (in internal_scale). modified files: src/plugins/plugin_2pass2.c 2003-05-22 17:24:19 GMT patch-54 Summary: Removed automatic \n in DPRINTF calls. Revision: xvidcore--devapi4--1.0--patch-54 Removed automatic \n in DPRINTF calls. modified files: src/bitstream/bitstream.c src/bitstream/mbcoding.c src/decoder.c src/encoder.c src/image/image.c src/plugins/plugin_2pass2.c src/portab.h src/prediction/mbprediction.c 2003-05-22 17:03:38 GMT patch-53 Summary: Cleaned up a bit, added comments. Revision: xvidcore--devapi4--1.0--patch-53 I Cleaned up the plugin_before function. I added some comments at the same time, so now it should be more easy to understand the meaning of all these if/else thingies :-) modified files: src/plugins/plugin_2pass2.c 2003-05-18 12:12:49 GMT patch-52 Summary: Update of xvid_encraw (vop_debug, debug, max key frame) Revision: xvidcore--devapi4--1.0--patch-52 Added a -vop_debug option. This makes xvidcore to print out frame information directly into the encoded frame. Changed the meaning of the -debug option. It activates now the internal xvidcore debug output. Added a -max_key_interval. modified files: examples/xvid_encraw.c 2003-05-18 12:01:31 GMT patch-51 Summary: Missing RateControl removal from Win32 visual project. Revision: xvidcore--devapi4--1.0--patch-51 RateControl removal was missing in the visual c project. modified files: build/win32/libxvidcore.dsp 2003-05-18 00:08:46 GMT patch-50 Summary: Removed legacy RateControl module. Revision: xvidcore--devapi4--1.0--patch-50 Removed all code related to the old RateControl module. removed files: src/utils/.arch-ids/ratecontrol.h.id src/utils/.arch-ids/ratecontrol.c.id src/utils/ratecontrol.h src/utils/ratecontrol.c modified files: build/generic/sources.inc src/encoder.h 2003-05-17 23:54:55 GMT patch-49 Summary: VFW Update. Revision: xvidcore--devapi4--1.0--patch-49 Added support for the debug option. The registry key debug has been changed to vop_debug. The reg key debug is now used for the codec debugging output. Some work on zones and mispellings. modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/config.rc vfw/src/resource.h 2003-05-17 23:50:38 GMT patch-48 Summary: 2pass plugin updates for zone support. Revision: xvidcore--devapi4--1.0--patch-48 A bit more work on zones support in the 2Pass2 plugin. Simple cleanup in the 2Pass1 plugin. modified files: src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c 2003-05-17 21:07:43 GMT patch-47 Summary: Debug is now controled through xvid_global + INIT Revision: xvidcore--devapi4--1.0--patch-47 Debug is now controlled through a global variable. It can be set thanx to the API using the new xvid_gbl_init_t.debug field. All DPRINTF constants have been turned into XVID_DEBUG_xxxx. They have been moved to xvid.h. modified files: src/bitstream/bitstream.c src/bitstream/mbcoding.c src/decoder.c src/encoder.c src/image/image.c src/plugins/plugin_2pass2.c src/plugins/plugin_single.c src/portab.h src/prediction/mbprediction.c src/utils/ratecontrol.c src/xvid.c src/xvid.h 2003-05-17 20:32:59 GMT patch-46 Summary: Fix for the patch-44. Revision: xvidcore--devapi4--1.0--patch-46 The fix from pete was breaking lot of other stuff, or at least it was outlining it. Now it works reliably. modified files: src/encoder.c 2003-05-15 17:31:04 GMT patch-45 Summary: Removed XVID_VOP_DYNAMIC_BFRAMES flag. Revision: xvidcore--devapi4--1.0--patch-45 The encoder loop bugfix removed this flag, so it's now being removed from xvid_encraw. modified files: examples/xvid_encraw.c 2003-05-15 17:24:55 GMT patch-44 Summary: Fix to the encoder loop (was not respecting dynamic decision). Revision: xvidcore--devapi4--1.0--patch-44 The long awaited fix to the encoder loop that was not respecting the dynamic decision performed by the MEAnlyse function. modified files: src/encoder.c src/xvid.h 2003-05-14 23:27:59 GMT patch-43 Summary: Added module building for MacOSX. Revision: xvidcore--devapi4--1.0--patch-43 Added the --enable-macosx_module option to the configure script. It allows module building on that platform as it differenciates loadable modules (a la dlopen) and dynamic libs that are simply linked at compile time. This was needed for transcode. Patch contributed by Tilmann Bitterberg <transcode at tibit.org> modified files: build/generic/configure.in 2003-05-14 20:21:30 GMT patch-42 Summary: Merged RD ME from cvs_head. Revision: xvidcore--devapi4--1.0--patch-42 Syskin has changed a bit the ME algorithm, so now it does a kind of RD optimization of Vector search. modified files: src/motion/motion_est.c src/motion/motion_est.h 2003-05-14 18:40:40 GMT patch-41 Summary: Merged syskin ME changes. Revision: xvidcore--devapi4--1.0--patch-41 Merged last syskin ME changes. Matches motion_est.c:1.69 and motion_est.h:1.7 minus unneeded code plus some changes due to new API. modified files: src/motion/motion_est.c src/motion/motion_est.h 2003-05-14 17:28:52 GMT patch-40 Summary: Small update to xvid_encraw. Revision: xvidcore--devapi4--1.0--patch-40 I added an help message to mention the fact we can repeat the zone options. modified files: examples/xvid_encraw.c 2003-05-14 14:19:12 GMT patch-39 Summary: VFW Update (zone support, profile support) Revision: xvidcore--devapi4--1.0--patch-39 VFW Update (zone support, profile support) new files: vfw/src/.arch-ids/vfwext.h.id vfw/src/.arch-ids/debug.h.id vfw/src/vfwext.h vfw/src/debug.h modified files: vfw/src/codec.c vfw/src/config.c vfw/src/config.h vfw/src/config.rc vfw/src/driverproc.c vfw/src/driverproc.def vfw/src/resource.h vfw/vfw.dsp 2003-05-14 14:02:05 GMT patch-38 Summary: Add support for single RC and zones to xvid_encraw. Revision: xvidcore--devapi4--1.0--patch-38 Adds support for single RC and zones to xvid_encraw. modified files: examples/xvid_encraw.c 2003-05-14 13:58:56 GMT patch-37 Summary: Fixes for Win32 build of libxvidcore. Revision: xvidcore--devapi4--1.0--patch-37 A previous patch left the Win32 build process incomplete and not up to date. modified files: build/generic/libxvidcore.def.in build/win32/libxvidcore.dsp 2003-05-13 00:10:12 GMT patch-36 Summary: Small fixes. Revision: xvidcore--devapi4--1.0--patch-36 data->quant fix. Fixed some coding bugs in trellis code. Used __inline and not inline. modified files: src/encoder.c src/utils/mbtransquant.c 2003-05-13 00:05:03 GMT patch-35 Summary: CBR plugin is renamed Single pass. Fixed Quant plugin is disabled. Revision: xvidcore--devapi4--1.0--patch-35 With the zones feature, the CBR plugin could be used for all type of one pass RC. The better thing to do would be to include fixed quant to this new single pass plugin. Btw, a (clean) solution has not been found yet. I am obliged to disable the fixed quant plugin. This breaks xvid_encraw :-( modified files: build/generic/sources.inc src/plugins/plugin_single.c src/xvid.h renamed files: src/plugins/.arch-ids/plugin_cbr.c.id ==> src/plugins/.arch-ids/plugin_single.c.id src/plugins/plugin_cbr.c ==> src/plugins/plugin_single.c 2003-05-12 23:49:14 GMT patch-34 Summary: Removed quant limits per RC plugin, moved to global settings. Revision: xvidcore--devapi4--1.0--patch-34 The I/P/B Frames' min/max quantizers have moved from RC plugins' interface to the general encoding interface. The CBR plugin has been updated for zones and the quent limits move. modified files: src/encoder.c src/encoder.h src/plugins/plugin_2pass2.c src/plugins/plugin_cbr.c src/xvid.h 2003-05-12 23:25:54 GMT patch-33 Summary: Added encoding zones Revision: xvidcore--devapi4--1.0--patch-33 Added encoding zones in 2pass plugins. The idea behind "zones" is to define frame ranges for which we change the plugin's behavior. modified files: src/encoder.c src/encoder.h src/plugins/plugin_2pass1.c src/xvid.h 2003-05-12 23:10:17 GMT patch-32 Summary: Added the profile setting. Revision: xvidcore--devapi4--1.0--patch-32 Added the profile setting to user API. modified files: src/bitstream/bitstream.c src/bitstream/bitstream.h src/encoder.c src/encoder.h src/xvid.h 2003-05-11 23:59:01 GMT patch-31 Summary: Changed quality presets. Revision: xvidcore--devapi4--1.0--patch-31 The presets have been changed so now we should have better PSNR with higher quality presets in all cases. I changed a bit the way we treat quality overflow or overflow, now i just clip the value to allowed range. modified files: examples/xvid_encraw.c 2003-05-11 20:47:55 GMT patch-30 Summary: Some cleanups in the trellis code. Revision: xvidcore--devapi4--1.0--patch-30 Some cleanup work on trellis code. Should compile file on Visual C++ now. modified files: src/utils/mbtransquant.c 2003-05-10 23:53:28 GMT patch-29 Summary: New trellis code Revision: xvidcore--devapi4--1.0--patch-29 New trellis code from skal. It should be reworked a bit so it integrates better into XviD code. modified files: src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/utils/mbtransquant.c 2003-05-10 23:43:11 GMT patch-28 Summary: Intra frame decision. Revision: xvidcore--devapi4--1.0--patch-28 These are syskin's words: hopefully, intra frame at every scene change (we really need it to cut things). modified files: src/motion/motion_est.c 2003-05-05 21:50:25 GMT patch-27 Summary: Fixed double last calculation in trellis quantization. Revision: xvidcore--devapi4--1.0--patch-27 chl changelog message: Removed double calculation of "last" => +0.02dB modified files: src/bitstream/mbcoding.c 2003-05-05 21:46:29 GMT patch-26 Summary: Added config.status to the distclean target. Revision: xvidcore--devapi4--1.0--patch-26 The target distclean is supposed to clean all files so the remaining ones are those supposed to be found in a distribution tarball... config.status is not one of them, so let's add this to the distclean target. modified files: build/generic/Makefile 2003-05-05 21:39:47 GMT patch-25 Summary: configure.in tuning (API number and lib sonames). Revision: xvidcore--devapi4--1.0--patch-25 I fixed a typo which prevented SPECIFIC_CFLAGS to be properly set by the configure script. I also bumped the API version number as API 3.0 is current cvs_head and this branch is the next major API version While trying to build my own debian package out of xvidcore, i ran into trouble with the soname not respecting some basic rules that prevented having different library revisions running alongside (with different major APIs). This has been fixed adding the major API number to the library SONAME. modified files: build/generic/configure.in 2003-04-27 23:22:30 GMT patch-24 Summary: Cleaned CBR plugin a bit, adds structure for a better initial quant. Revision: xvidcore--devapi4--1.0--patch-24 Just a clean up turning default values to preprocessor constants. I added a get_initial_quant for trying to retrieve support in a near future, a good quantizer according to the desired target bitrate. This will be done thanks to a simple LUT where we'll have lut[quant] = average_bitrate;. This seems stupid but it'll be better than starting with an hardcoded value. modified files: src/plugins/plugin_cbr.c 2003-04-27 23:18:20 GMT patch-23 Summary: b-frames look good in still motion, after all. Revision: xvidcore--devapi4--1.0--patch-23 b-frames look good in still motion, after all. modified files: src/motion/motion_est.c 2003-04-27 23:14:39 GMT patch-22 Summary: Add initial trellis quantization to inter+h263 frames. Revision: xvidcore--devapi4--1.0--patch-22 This is the initial support of trellis quantization for inter frames + h263 quantization method. Complete support is on the way. modified files: examples/xvid_encraw.c src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/utils/mbtransquant.c src/xvid.h 2003-04-27 22:59:47 GMT patch-21 Summary: Fixes 2 memory leaks. Revision: xvidcore--devapi4--1.0--patch-21 After a valgrind pass I fixed these 2 leaks. We have still to fix an MEAnalysis on unitialized data. modified files: src/encoder.c src/utils/mem_align.c 2003-04-27 22:50:27 GMT patch-20 Summary: Adds Avg PSNR output to xvid_encraw. Revision: xvidcore--devapi4--1.0--patch-20 Adds Avg PSNR output to xvid_encraw. modified files: examples/xvid_encraw.c 2003-04-27 22:40:45 GMT patch-19 Summary: Fixes the vfw Visual Project. Revision: xvidcore--devapi4--1.0--patch-19 A missing file has been removed from the project file. modified files: vfw/vfw.dsp 2003-04-14 20:07:47 GMT patch-18 Summary: Fixes plugin initialization in xvid_encraw. Revision: xvidcore--devapi4--1.0--patch-18 We were initializing plugins' versions before a memset... <homer>Doh...</homer> modified files: examples/xvid_encraw.c 2003-04-14 15:28:57 GMT patch-17 Summary: Fixed function prototypes <-> definitions mismatching. Revision: xvidcore--devapi4--1.0--patch-17 Fixed function prototypes <-> definitions mismatching. modified files: src/utils/mbfunctions.h src/utils/mbtransquant.c 2003-04-14 15:23:15 GMT patch-16 Summary: VFW frontend update Revision: xvidcore--devapi4--1.0--patch-16 The VFW frontend has been updated. modified files: vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/src/config.rc vfw/src/driverproc.c vfw/src/resource.h vfw/vfw.dsp 2003-04-14 15:05:20 GMT patch-15 Summary: Fixed BITS decision for low quants, reworked p/b/i decision. Revision: xvidcore--devapi4--1.0--patch-15 sysKin's log message: improved vhq (does not decrease psnr anymore - at least for low quants) and tweaked p/b/i decision again. I Added a fix to this CVS commit to avoid ALU Exception (division by zero). It has been commited to cvs_head as well by sysKin. modified files: src/motion/motion_est.c 2003-04-10 13:01:07 GMT patch-14 Summary: Removed all ABS() macros. Revision: xvidcore--devapi4--1.0--patch-14 All ABS macros have been replace with their stdlib.h/math.h equivalent. This gives a 33% overall speedup for the plain C encoder, while the ia32 one seems to suffer a small speed loss. However this speed loss is very small and it seems it depends on the CPU type as the abs/fabs usage is impacting badly on sad functions but impacting well on interpolate functions ... weird inst'it ? modified files: src/bitstream/mbcoding.c src/global.h src/image/image.c src/motion/motion_comp.c src/motion/motion_est.c src/motion/sad.c src/prediction/mbprediction.c src/utils/mbtransquant.c src/xvid.c 2003-04-09 18:44:24 GMT patch-13 Summary: Added GNU profiling option to the configure script. Revision: xvidcore--devapi4--1.0--patch-13 In order to allow easy profiling using GNU tools (gprof, gcov), I added the --enable-gnuprofile to the configure.in template. This modifies the SPECIFIC_LDFLAGS and SPECIFIC_CFLAGS for library building so they include all needed options for profiling and test coverage. /!\ When compiling your own program, don't forget to use these options: -pg -fprofile-arcs -ftest-coverage When linking your program, you MUST use the -pg option too, else your binary will not use/create profiling informations. modified files: build/generic/configure.in 2003-04-09 16:09:33 GMT patch-12 Summary: Build fix from release-0_9_1-fixes@cvs.xvid.org Revision: xvidcore--devapi4--1.0--patch-12 MacOSX build process was wrong on the linking stage as it was ignoring the equivalent of the linux soname thingy. modified files: build/generic/configure.in 2003-04-09 13:44:06 GMT patch-11 Summary: Syncing arch tree with xvid.org cvs. Revision: xvidcore--devapi4--1.0--patch-11 Synced with all the work done in the xvid.org cvs repository. I could not maintain a complete list of all items but here is a kind of digest. + Merged build files fixes from the release-0_9_1-fixes branch. + Synced all motion estimation changes from the cvs_head branch. + Added rate control plugins. + Added lumimasking plugin. + Synced optimizations from cvs_head in interpolate and cbp functions. + xvid_encraw improvements. + new mbtransquant set of functions. + Fixed bframe SSE calculation. new files: src/plugins/.arch-ids/plugin_2pass1.c.id src/plugins/.arch-ids/plugin_2pass2.c.id src/plugins/.arch-ids/plugin_cbr.c.id src/plugins/.arch-ids/plugin_fixed.c.id src/plugins/.arch-ids/plugin_lumimasking.c.id vfw/src/.arch-ids/XviD_logo.bmp.id src/plugins/plugin_2pass1.c src/plugins/plugin_2pass2.c src/plugins/plugin_cbr.c src/plugins/plugin_fixed.c src/plugins/plugin_lumimasking.c vfw/src/XviD_logo.bmp modified files: build/generic/Makefile build/generic/bootstrap.sh build/generic/configure.in build/generic/libxvidcore.def.in build/generic/platform.inc.in build/generic/sources.inc build/win32/libxvidcore.dsp examples/xvid_decraw.c examples/xvid_encraw.c examples/xvid_stat.c src/bitstream/bitstream.c src/bitstream/bitstream.h src/bitstream/cbp.c src/bitstream/mbcoding.c src/bitstream/vlc_codes.h src/decoder.c src/divx4.c src/encoder.c src/encoder.h src/global.h src/image/image.c src/image/interpolate8x8.c src/motion/motion.h src/motion/motion_comp.c src/motion/motion_est.c src/motion/motion_est.h src/motion/sad.c src/plugins/plugin_dump.c src/plugins/plugin_psnr.c src/portab.h src/prediction/mbprediction.c src/utils/mbfunctions.h src/utils/mbtransquant.c src/xvid.c src/xvid.h vfw/src/2pass.c vfw/src/codec.c 2003-03-16 00:21:32 GMT patch-10 Summary: Added suxen plugin system (Synced with CVS) Revision: xvidcore--devapi4--1.0--patch-10 Sync with the CVS and thus adds the plugin framework. new files: src/plugins/.arch-ids/=id src/plugins/.arch-ids/plugin_dump.c.id src/plugins/.arch-ids/plugin_psnr.c.id src/plugins/plugin_dump.c src/plugins/plugin_psnr.c modified files: build/win32/libxvidcore.dsp examples/Makefile examples/xvid_decraw.c examples/xvid_encraw.c src/bitstream/bitstream.c src/encoder.c src/encoder.h src/portab.h src/utils/mbtransquant.c src/xvid.h new directories: src/plugins/.arch-ids src/plugins 2003-03-11 23:37:06 GMT patch-9 Summary: Changed xvid_decraw option handling for -d/-m. Revision: xvidcore--devapi4--1.0--patch-9 -d and -m options were boolean so option values were not needed. modified files: examples/xvid_decraw.c 2003-03-11 23:30:16 GMT patch-8 Summary: Fixed frame counting in xvid_encraw. Revision: xvidcore--devapi4--1.0--patch-8 We were branching before incrementing the frame counter when core was buffering frames. This was resulting in wrong frame counting during the buffering phase. modified files: examples/xvid_encraw.c 2003-03-11 23:07:01 GMT patch-7 Summary: Ported xvid_decraw to new API. Revision: xvidcore--devapi4--1.0--patch-7 xvid_decraw has been ported to new API. It basically works fine, however i'm not completly staisfied. If I do a step by step run then i can see that second frame is reported as a VOL decoding though the first IFrame has been consumed. This makes xvid_decraw does not report correctly frames' length. Except that, xvid_decraw works well enough to activate it in the makefile. modified files: examples/Makefile examples/xvid_decraw.c 2003-03-11 20:19:44 GMT patch-6 Summary: Fix an important API comment in main header. Revision: xvidcore--devapi4--1.0--patch-6 This patch fixes a comment in xvid.h which was simply wrong and could lead to uneeded code. modified files: src/xvid.h 2003-03-11 00:36:34 GMT patch-5 Summary: PSNR is now an option. More consistent -m/-s option handling. Revision: xvidcore--devapi4--1.0--patch-5 I turned PSNR stats into an option (-s). I fixed the handling of the -m option that required only a bool. I could say in french "ma stupidité dans toute sa grandeur". -m presence is enough to significate "save _m_peg stream", we don't need the boolean value. modified files: examples/xvid_encraw.c 2003-03-10 00:36:15 GMT patch-4 Summary: Adds extended stats support even for bframes in xvidcore. Revision: xvidcore--devapi4--1.0--patch-4 This patch enables core extended stats support even for bframes. It modifies the way the MBTransQuantBVOP function does its work. It used to not dequant, idct the MB because bframes are never used as reference frames. However if we want to compute stats, then we must perform these inverse transformations. modified files: src/encoder.c src/utils/mbfunctions.h src/utils/mbtransquant.c 2003-03-09 16:42:27 GMT patch-3 Summary: Adds extended stats support. Revision: xvidcore--devapi4--1.0--patch-3 This patch enables core extended stats support. It seems that xvidcore does not compute sse for BFrames, I have tried to adds this by an ugly hack but it did not work as expected, i suppose core does not decompress bframes as they are not used as reference frames (unlike P and I frames). If we succeed in enabling sse calculation in core for bframes, then xvid_stat will not be needed anymore. This will save lot of trouble with frame matching in PSNR computation when bframes are enabled. modified files: examples/xvid_encraw.c 2003-03-09 00:23:52 GMT patch-2 Summary: Updated xvid_encraw for new API. Revision: xvidcore--devapi4--1.0--patch-2 This patch updates the xvid_encraw example to support the new API. As it's the first patch for API 4 support, I disabled all other examples. BUG: first frame type is Unknown, I suppose I'm missing a subtility of the new API. modified files: examples/Makefile examples/xvid_encraw.c src/encoder.c 2003-03-06 22:08:43 GMT patch-1 Summary: Synced with dev-api-4 XviD branch. Revision: xvidcore--devapi4--1.0--patch-1 Synced with dev-api-4 XviD branch. My branching was done at a later point than CVS. This resulted in version skew, now this branch is synced with CVS. new files: vfw/.arch-ids/=id vfw/bin/.arch-ids/=id vfw/src/.arch-ids/=id vfw/.arch-ids/vfw.dsp.id vfw/bin/.arch-ids/xvid.inf.id vfw/src/.arch-ids/2pass.c.id vfw/src/.arch-ids/2pass.h.id vfw/src/.arch-ids/codec.c.id vfw/src/.arch-ids/codec.h.id vfw/src/.arch-ids/config.c.id vfw/src/.arch-ids/config.h.id vfw/src/.arch-ids/config.rc.id vfw/src/.arch-ids/driverproc.c.id vfw/src/.arch-ids/driverproc.def.id vfw/src/.arch-ids/resource.h.id rawdec/.arch-ids/rawdec.c.id rawdec/.arch-ids/rawdec.dsp.id rawdec/.arch-ids/=id dshow/.arch-ids/=id dshow/.arch-ids/authors.txt.id dshow/.arch-ids/dshow.dsp.id dshow/src/.arch-ids/=id dshow/src/.arch-ids/CAbout.cpp.id dshow/src/.arch-ids/CAbout.h.id dshow/src/.arch-ids/CXvidDecoder.cpp.id dshow/src/.arch-ids/CXvidDecoder.h.id dshow/src/.arch-ids/IXvidDecoder.h.id dshow/src/.arch-ids/resource.h.id dshow/src/.arch-ids/xvid.ax.def.id dshow/src/.arch-ids/xvid.ax.rc.id vfw/vfw.dsp vfw/bin/xvid.inf vfw/src/2pass.c vfw/src/2pass.h vfw/src/codec.c vfw/src/codec.h vfw/src/config.c vfw/src/config.h vfw/src/config.rc vfw/src/driverproc.c vfw/src/driverproc.def vfw/src/resource.h rawdec/rawdec.c rawdec/rawdec.dsp dshow/authors.txt dshow/dshow.dsp dshow/src/CAbout.cpp dshow/src/CAbout.h dshow/src/CXvidDecoder.cpp dshow/src/CXvidDecoder.h dshow/src/IXvidDecoder.h dshow/src/resource.h dshow/src/xvid.ax.def dshow/src/xvid.ax.rc modified files: build/generic/Makefile build/generic/bootstrap.sh build/generic/configure.in build/generic/platform.inc.in build/win32/libxvidcore.dsp examples/Makefile examples/xvid_bench.c examples/xvid_decraw.c examples/xvid_encraw.c examples/xvid_stat.c src/bitstream/bitstream.c src/bitstream/bitstream.h src/bitstream/mbcoding.c src/bitstream/vlc_codes.h src/decoder.c src/decoder.h src/encoder.c src/encoder.h src/global.h src/image/colorspace.c src/image/colorspace.h src/image/image.c src/image/image.h src/image/interpolate8x8.c src/motion/motion.h src/motion/motion_comp.c src/motion/motion_est.c src/motion/motion_est.h src/motion/smp_motion_est.c src/motion/smp_motion_est.h src/portab.h src/prediction/mbprediction.c src/utils/mbtransquant.c src/xvid.c src/xvid.h todo.txt new directories: dshow/.arch-ids dshow/src/.arch-ids rawdec/.arch-ids vfw/.arch-ids vfw/bin/.arch-ids vfw/src/.arch-ids vfw vfw/bin vfw/src rawdec dshow dshow/src 2003-03-06 21:27:16 GMT base-0 Summary: tag of ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-6 Revision: xvidcore--devapi4--1.0--base-0 (automatically generated log message) new patches: ed.gomez@free.fr--main/xvidcore--stable--0.9--base-0 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-1 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-2 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-3 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-4 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-5 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-6 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-7 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-8 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-9 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-10 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-11 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-12 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-13 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-14 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-15 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-16 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-17 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-18 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-19 ed.gomez@free.fr--main/xvidcore--stable--0.9--patch-20 ed.gomez@free.fr--main/xvidcore--stable--0.9--version-0 ed.gomez@free.fr--main/xvidcore--stable--1.0--base-0 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-1 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-2 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-3 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-4 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-5 ed.gomez@free.fr--main/xvidcore--stable--1.0--patch-6 2003-02-15 18:40:33 GMT patch-3 Summary: Added latest Pete's chroma optimization code. Revision: xvidcore--stable--1.0--patch-3 During merge, i forgot that small piece of code. modified files: src/encoder.c src/xvid.h 2003-02-15 14:48:12 GMT patch-2 Summary: Fixed compilation and moved back to plain GPL. Revision: xvidcore--stable--1.0--patch-2 portab.h was missing the DPRINTF_RC flag. I merged the watcom C portab.h part. Back to plain GPL as it is in dev-api-3 branch. modified files: LICENSE src/portab.h 2003-02-15 14:05:17 GMT patch-1 Summary: Updated tree to dev-api-3 branch. Revision: xvidcore--stable--1.0--patch-1 This patch consists basically of merging things with dev-api-3 CVS branch. - All asm, C, h files have been copied from this CVS branch. - Fixed generic sources.inc to take care of changes. - Fixed architecture stuff in sources (ARCH_IS_...). - Updated examples. - Updated libxvidcore.dsp. - Fixed libxvidcore.dsp for ARCH_IS_... constants. - Changed .so and .a naming convention. It is now postfixed with the API version to avoid API incompatibilities with 2.1 which had had a postfix. - Fixed configure version 0.9.1 <-> 1.0.0 cvs-snaphot This is the first attempt. I don't even know if it compiles well. new files: src/bitstream/x86_asm/.arch-ids/cbp_3dne.asm.id src/dct/.arch-ids/simple_idct.c.id src/dct/x86_asm/.arch-ids/fdct_xmm.asm.id src/dct/x86_asm/.arch-ids/idct_3dne.asm.id src/dct/x86_asm/.arch-ids/simple_idct_mmx.asm.id src/image/.arch-ids/font.c.id src/image/.arch-ids/font.h.id src/image/.arch-ids/reduced.c.id src/image/.arch-ids/reduced.h.id src/image/x86_asm/.arch-ids/colorspace_mmx.inc.id src/image/x86_asm/.arch-ids/colorspace_rgb_mmx.asm.id src/image/x86_asm/.arch-ids/colorspace_yuv_mmx.asm.id src/image/x86_asm/.arch-ids/colorspace_yuyv_mmx.asm.id src/image/x86_asm/.arch-ids/interpolate8x8_3dne.asm.id src/image/x86_asm/.arch-ids/reduced_mmx.asm.id src/motion/.arch-ids/motion_est.h.id src/motion/.arch-ids/smp_motion_est.c.id src/motion/.arch-ids/smp_motion_est.h.id src/motion/x86_asm/.arch-ids/sad_3dne.asm.id src/quant/x86_asm/.arch-ids/quantize4_xmm.asm.id src/quant/x86_asm/.arch-ids/quantize_3dne.asm.id src/utils/x86_asm/.arch-ids/interlacing_mmx.asm.id src/utils/x86_asm/.arch-ids/mem_transfer_3dne.asm.id src/bitstream/x86_asm/cbp_3dne.asm src/dct/simple_idct.c src/dct/x86_asm/fdct_xmm.asm src/dct/x86_asm/idct_3dne.asm src/dct/x86_asm/simple_idct_mmx.asm src/image/font.c src/image/font.h src/image/reduced.c src/image/reduced.h src/image/x86_asm/colorspace_mmx.inc src/image/x86_asm/colorspace_rgb_mmx.asm src/image/x86_asm/colorspace_yuv_mmx.asm src/image/x86_asm/colorspace_yuyv_mmx.asm src/image/x86_asm/interpolate8x8_3dne.asm src/image/x86_asm/reduced_mmx.asm src/motion/motion_est.h src/motion/smp_motion_est.c src/motion/smp_motion_est.h src/motion/x86_asm/sad_3dne.asm src/quant/x86_asm/quantize4_xmm.asm src/quant/x86_asm/quantize_3dne.asm src/utils/x86_asm/interlacing_mmx.asm src/utils/x86_asm/mem_transfer_3dne.asm modified files: build/generic/Makefile build/generic/configure.in build/generic/sources.inc build/win32/libxvidcore.dsp examples/odivx_enc_dec.c examples/xvid_bench.c examples/xvid_decraw.c examples/xvid_encraw.c examples/xvid_stat.c src/bitstream/bitstream.c src/bitstream/bitstream.h src/bitstream/cbp.c src/bitstream/cbp.h src/bitstream/mbcoding.c src/bitstream/mbcoding.h src/bitstream/ppc_asm/cbp_altivec.s src/bitstream/ppc_asm/cbp_ppc.s src/bitstream/vlc_codes.h src/bitstream/x86_asm/cbp_mmx.asm src/bitstream/x86_asm/cbp_sse2.asm src/bitstream/zigzag.h src/dct/fdct.c src/dct/fdct.h src/dct/ia64_asm/fdct_ia64.s src/dct/idct.c src/dct/idct.h src/dct/ppc_asm/fdct_altivec.s src/dct/ppc_asm/idct_altivec.s src/dct/x86_asm/fdct_mmx.asm src/dct/x86_asm/idct_mmx.asm src/decoder.c src/decoder.h src/divx4.c src/divx4.h src/encoder.c src/encoder.h src/global.h src/image/colorspace.c src/image/colorspace.h src/image/image.c src/image/image.h src/image/interpolate8x8.c src/image/interpolate8x8.h src/image/x86_asm/interpolate8x8_3dn.asm src/image/x86_asm/interpolate8x8_mmx.asm src/image/x86_asm/interpolate8x8_xmm.asm src/image/x86_asm/rgb_to_yv12_mmx.asm src/image/x86_asm/yuv_to_yv12_mmx.asm src/image/x86_asm/yuyv_to_yv12_mmx.asm src/image/x86_asm/yv12_to_rgb24_mmx.asm src/image/x86_asm/yv12_to_rgb32_mmx.asm src/image/x86_asm/yv12_to_yuyv_mmx.asm src/motion/ia64_asm/sad_ia64.s src/motion/motion.h src/motion/motion_comp.c src/motion/motion_est.c src/motion/ppc_asm/sad_altivec.c src/motion/sad.c src/motion/sad.h src/motion/x86_asm/sad_3dn.asm src/motion/x86_asm/sad_mmx.asm src/motion/x86_asm/sad_sse2.asm src/motion/x86_asm/sad_xmm.asm src/portab.h src/prediction/mbprediction.c src/prediction/mbprediction.h src/quant/adapt_quant.c src/quant/adapt_quant.h src/quant/quant_h263.c src/quant/quant_h263.h src/quant/quant_matrix.c src/quant/quant_matrix.h src/quant/quant_mpeg4.c src/quant/quant_mpeg4.h src/quant/x86_asm/quantize4_mmx.asm src/quant/x86_asm/quantize_mmx.asm src/utils/emms.c src/utils/emms.h src/utils/ia64_asm/mem_transfer_ia64.s src/utils/mbfunctions.h src/utils/mbtransquant.c src/utils/mem_align.c src/utils/mem_align.h src/utils/mem_transfer.c src/utils/mem_transfer.h src/utils/ratecontrol.c src/utils/ratecontrol.h src/utils/timer.c src/utils/timer.h src/utils/x86_asm/cpuid.asm src/utils/x86_asm/mem_transfer_mmx.asm src/xvid.c src/xvid.h 2003-02-14 23:01:44 GMT base-0 Summary: Upcoming 1.0 version continuation Revision: xvidcore--stable--1.0--base-0 Continuation of the xvidcore--stable--0.9 version. new directories: {arch}/xvidcore/xvidcore--stable/xvidcore--stable--1.0 {arch}/xvidcore/xvidcore--stable/xvidcore--stable--1.0/ed.gomez@free.fr--main {arch}/xvidcore/xvidcore--stable/xvidcore--stable--1.0/ed.gomez@free.fr--main/patch-log 2003-02-11 21:03:19 GMT patch-20 Summary: Removed BFrame outdated bframe/qpel decoding. Revision: xvidcore--stable--0.9--patch-20 Michael noticed there were still pieces of bframe and qpel decoding. He proposed to remove it or upgrade it... Feeling too lazy to merge all differences (the too much divergent) file from dev-api-3. modified files: changelog.txt src/decoder.c src/image/interpolate8x8.c src/image/interpolate8x8.h 2003-02-11 18:40:48 GMT patch-19 Summary: Fixed libxvidcore.def, revamped Makefile output, fixed ia64 build, added ranlib detection. Revision: xvidcore--stable--0.9--patch-19 Ok this patch does lot of things. First, it fixes libxvidcore.def for win32 targets. This file is now generated at configure time. This way we make sure no symobols are exported without being compiled in. Second, I revamped Makefile so its output is more eye candy. Third change, I removed the ia64 dct file from SRC_IA64 variable, this was interfering with the DCT_IA64_SOURCES variable. Fourth change, ranlib is detected at configure time and used in the Makeile through the RANLIB variable. modified files: build/generic/Makefile build/generic/configure.in build/generic/libxvidcore.def.in build/generic/platform.inc.in build/generic/sources.inc renamed files: build/generic/.arch-ids/libxvidcore.def.id ==> build/generic/.arch-ids/libxvidcore.def.in.id build/generic/libxvidcore.def ==> build/generic/libxvidcore.def.in 2003-02-10 23:31:01 GMT patch-18 Summary: Fixed xvid_encraw help message. Revision: xvidcore--stable--0.9--patch-18 Fixed xvid_encraw help message. modified files: examples/xvid_encraw.c 2003-02-10 23:06:32 GMT patch-17 Summary: Added IA64 DCT source choice according to the compiler basename. Revision: xvidcore--stable--0.9--patch-17 The IA64 dct file must be choosen according to the compiler. I chose to look for a basename based on the *ecc* regexp, all other compiler will be treated as being the GNU C compiler. Hope this is enough. modified files: build/generic/Makefile build/generic/configure.in build/generic/platform.inc.in 2003-02-10 13:49:25 GMT patch-16 Summary: Changed linking option on PPC platforms (-flat_namespace) Revision: xvidcore--stable--0.9--patch-16 Guillaume sent me this fix for PPC platforms. modified files: build/generic/configure.in 2003-02-09 23:15:18 GMT patch-15 Summary: Added the configure bootstrap script. Revision: xvidcore--stable--0.9--patch-15 Added the configure bootstrap script. new files: build/generic/.arch-ids/bootstrap.sh.id build/generic/bootstrap.sh 2003-02-09 23:06:51 GMT patch-14 Summary: The PPC port is now disabled because it is outdated. Revision: xvidcore--stable--0.9--patch-14 The PPC port is now disabled because it is outdated. modified files: build/generic/configure.in 2003-02-09 23:01:30 GMT patch-13 Summary: More "unknown compiler" friendly portab.h file. Revision: xvidcore--stable--0.9--patch-13 Cristoph pointed out that portab.h was a problem when used with unknown compilers. This patch tries to fix that. modified files: src/portab.h 2003-02-09 00:49:32 GMT patch-12 Summary: DivX4 compatibility layer has been turned into an option (default:disable). Revision: xvidcore--stable--0.9--patch-12 The divx4 compatibility API has been turned into an option. This has been a long wanted thing by mplayer's guys, so here it is. As we say in french "mieux vaut tard que jamais". modified files: build/generic/Makefile build/generic/configure.in build/generic/platform.inc.in build/generic/sources.inc 2003-02-08 23:29:55 GMT patch-11 Summary: Fixed WIN32/_MSC_VER confusion and updated MSVC libxvidcore.dsp project file. Revision: xvidcore--stable--0.9--patch-11 This patch set fixes all WIN32/_MSC_VER conditional compilation in examples and in the Illegal Instruction detection for SSE2 support in xvid.c. libxvidcore.dsp file as been updated with the right defines for x86 support (ARCH_IS_IA32, ARCH_IS_32BIT, ARCH_IS_LITTLE_ENDIAN) Hope Win32 is now completely ready. modified files: build/win32/libxvidcore.dsp examples/xvid_bench.c examples/xvid_decraw.c examples/xvid_encraw.c examples/xvid_stat.c src/xvid.c 2003-02-08 14:55:19 GMT patch-10 Summary: Fixed MacOSX build. Revision: xvidcore--stable--0.9--patch-10 Two fixes for MacOSX. It adds a missing option to gcc to allow the linking stage on this platform (-fno-common). It fixes Altivec test which was outputting result on the console. modified files: build/generic/configure.in 2003-02-08 12:49:17 GMT patch-9 Summary: Added Altivec detection (Guillaume Morin) Revision: xvidcore--stable--0.9--patch-9 Added Altivec detection test in configure.in. modified files: build/generic/configure.in 2003-02-08 12:25:46 GMT patch-8 Summary: Fixed portab.h for _DEBUG target and GCC/ICC compilers. Revision: xvidcore--stable--0.9--patch-8 During the Unix build system change, i had to turn the DRPINTF macro into a real function because teh MacOSX compilers do not support the variadic macros as defined in ISO C99 standard. During this change, i forgot to adapt the macro code and the #include <stdarg.h> needed for variadic functions. modified files: src/portab.h 2003-02-08 11:45:00 GMT patch-7 Summary: Changed the way I add strings into variables. Revision: xvidcore--stable--0.9--patch-7 I changed the way I add strings to variables (CFLAGS and so on). Now i use var="$var string2" instead of var=$var" string2". Fixed a typo reported by Pete for the cygwin part. modified files: build/generic/configure.in 2003-02-07 23:16:57 GMT patch-6 Summary: Fixed the "ar" "s" option for some platforms. Revision: xvidcore--stable--0.9--patch-6 The "s" option of the "ar" program is not standard accross all platforms. I had at least problems on OpenBSD and an old Solaris version. modified files: build/generic/Makefile 2003-02-07 22:19:37 GMT patch-5 Summary: Fixed a BSD checking in ansm output format. Revision: xvidcore--stable--0.9--patch-5 Fixed a BSD checking in ansm output format. modified files: build/generic/configure.in 2003-02-07 21:18:14 GMT patch-4 Summary: Fixed options and added the --disable-assembly option Revision: xvidcore--stable--0.9--patch-4 Options have been fixed because they were not taking care of the enable_feature variable. The --disable-assembly options has been added. This is a good way to compile XviD on nearly all platforms without having to deal with the assembly code -- useful on PPC platform at the moment where gcc seems to use a different kind of assembly syntax. modified files: build/generic/configure.in 2003-02-06 21:49:16 GMT patch-3 Summary: Fixes for the new build system in sources. Revision: xvidcore--stable--0.9--patch-3 This patch fixes source files according to the new defines used by the reworked build system. modified files: src/bitstream/bitstream.h src/divx4.h src/portab.h src/utils/emms.h src/xvid.c 2003-02-06 21:22:55 GMT patch-2 Summary: Changed build system for Unix OSes Revision: xvidcore--stable--0.9--patch-2 Changed the build system for Unix systems. It is now built upon an autoconf script that automatically configures the sources. The Makefile is portable accross various platforms and "make" programs. It is at least working on these platforms for now: - Debian GNU/Linux - StrongARM - Alphave67 (alpha 64bit) - ia32 UltraSparcIII - Solaris - UltraSparcI - Sparc 32bit on old sun stations ( i don't remember the exact name) - FreeBSD 4.7 - ia32 - RedHat 7.3 - ia32 - Gentoo 1.4 - ia32 - the Irix box according to christoph tests - ia64 - Unknown OS? The unix unified makefile supports: - gmake - pmake ToDo things to finish this new build system: - Manage the ecc/gcc source choice for ia64 - Someone to test the makefile on Cygwin and/or mingw+minsys - Update MSVC projects (replace 2 or 3 defines) - See why MacOSX is complaining about duplicated symbols, it seems the mach ABI does not alow namespace collisions even between C modules. And add altivec detection in configure.in new files: build/generic/.arch-ids/configure.in.id build/generic/.arch-ids/Makefile.id build/generic/.arch-ids/platform.inc.in.id build/generic/.arch-ids/sources.inc.id build/generic/configure.in build/generic/Makefile build/generic/platform.inc.in build/generic/sources.inc removed files: build/generic/.arch-ids/Makefile.beos.id build/generic/.arch-ids/Makefile.cygwin.id build/generic/.arch-ids/Makefile.dj.id build/generic/.arch-ids/Makefile.freebsd.id build/generic/.arch-ids/Makefile.generic.id build/generic/.arch-ids/Makefile.ia64.id build/generic/.arch-ids/Makefile.inc.id build/generic/.arch-ids/Makefile.irix64.id build/generic/.arch-ids/Makefile.linuxppc.id build/generic/.arch-ids/Makefile.linuxppc_altivec.id build/generic/.arch-ids/Makefile.linuxx86.id build/generic/.arch-ids/Makefile.sparc.id build/generic/Makefile.beos build/generic/Makefile.cygwin build/generic/Makefile.dj build/generic/Makefile.freebsd build/generic/Makefile.generic build/generic/Makefile.ia64 build/generic/Makefile.inc build/generic/Makefile.irix64 build/generic/Makefile.linuxppc build/generic/Makefile.linuxppc_altivec build/generic/Makefile.linuxx86 build/generic/Makefile.sparc 2003-02-06 21:11:17 GMT patch-1 Summary: Updated to current stable CVS_HEAD Revision: xvidcore--stable--0.9--patch-1 Updated files to current stable CVS_HEAD versions. new files: build/win32/.arch-ids/odivx_enc_dec.dsp.id build/win32/.arch-ids/xvidcore.dsw.id build/win32/.arch-ids/xvid_bench.dsp.id build/win32/odivx_enc_dec.dsp build/win32/xvidcore.dsw build/win32/xvid_bench.dsp modified files: authors.txt build/generic/Makefile.beos build/generic/Makefile.generic build/generic/Makefile.linuxx86 doc/Makefile examples/Makefile examples/odivx_enc_dec.c examples/xvid_bench.c examples/xvid_encraw.c examples/xvid_stat.c src/bitstream/bitstream.c src/bitstream/bitstream.h src/bitstream/cbp.c src/bitstream/mbcoding.c src/bitstream/vlc_codes.h src/bitstream/zigzag.h src/dct/fdct.c src/dct/idct.c src/dct/idct.h src/decoder.c src/decoder.h src/divx4.h src/encoder.c src/encoder.h src/global.h src/image/colorspace.c src/image/image.c src/image/interpolate8x8.c src/image/interpolate8x8.h src/motion/motion.h src/motion/motion_comp.c src/motion/motion_est.c src/motion/sad.c src/portab.h src/prediction/mbprediction.c src/prediction/mbprediction.h src/quant/adapt_quant.c src/quant/adapt_quant.h src/quant/quant_h263.c src/quant/quant_mpeg4.c src/utils/emms.h src/utils/mbfunctions.h src/utils/mbtransquant.c src/utils/mem_align.c src/utils/mem_transfer.c src/utils/timer.c src/utils/timer.h src/xvid.h todo.txt 2003-02-06 20:59:19 GMT base-0 Summary: Imported xvidcore 0.9.0 into arch repository Revision: xvidcore--stable--0.9--base-0 Imported xvidcore 0.9.0 into arch repository. I hope I forgot nothing. new files: ./.arch-ids/CodingStyle.id ./.arch-ids/LICENSE.id ./.arch-ids/README.txt.id ./.arch-ids/authors.txt.id ./.arch-ids/changelog.txt.id ./.arch-ids/todo.txt.id ./CodingStyle ./LICENSE ./README.txt ./authors.txt ./build/.arch-ids/=id ./build/generic/.arch-ids/=id ./build/generic/.arch-ids/Makefile.beos.id ./build/generic/.arch-ids/Makefile.cygwin.id ./build/generic/.arch-ids/Makefile.dj.id ./build/generic/.arch-ids/Makefile.freebsd.id ./build/generic/.arch-ids/Makefile.generic.id ./build/generic/.arch-ids/Makefile.ia64.id ./build/generic/.arch-ids/Makefile.inc.id ./build/generic/.arch-ids/Makefile.irix64.id ./build/generic/.arch-ids/Makefile.linuxppc.id ./build/generic/.arch-ids/Makefile.linuxppc_altivec.id ./build/generic/.arch-ids/Makefile.linuxx86.id ./build/generic/.arch-ids/Makefile.sparc.id ./build/generic/.arch-ids/libxvidcore.def.id ./build/generic/Makefile.beos ./build/generic/Makefile.cygwin ./build/generic/Makefile.dj ./build/generic/Makefile.freebsd ./build/generic/Makefile.generic ./build/generic/Makefile.ia64 ./build/generic/Makefile.inc ./build/generic/Makefile.irix64 ./build/generic/Makefile.linuxppc ./build/generic/Makefile.linuxppc_altivec ./build/generic/Makefile.linuxx86 ./build/generic/Makefile.sparc ./build/generic/libxvidcore.def ./build/win32/.arch-ids/=id ./build/win32/.arch-ids/libxvidcore.dsp.id ./build/win32/.arch-ids/xvid_decraw.dsp.id ./build/win32/.arch-ids/xvid_encraw.dsp.id ./build/win32/.arch-ids/xvid_stat.dsp.id ./build/win32/libxvidcore.dsp ./build/win32/xvid_decraw.dsp ./build/win32/xvid_encraw.dsp ./build/win32/xvid_stat.dsp ./changelog.txt ./doc/.arch-ids/=id ./doc/.arch-ids/API.dox.id ./doc/.arch-ids/Makefile.id ./doc/.arch-ids/README.id ./doc/.arch-ids/foot.inc.in.id ./doc/.arch-ids/header.tex.in.id ./doc/.arch-ids/xvid-decoding.txt.id ./doc/.arch-ids/xvid-encoder.txt.id ./doc/API.dox ./doc/Makefile ./doc/README ./doc/foot.inc.in ./doc/header.tex.in ./doc/xvid-decoding.txt ./doc/xvid-encoder.txt ./examples/.arch-ids/=id ./examples/.arch-ids/Makefile.id ./examples/.arch-ids/README.id ./examples/.arch-ids/cactus.pgm.bz2.id ./examples/.arch-ids/odivx_enc_dec.c.id ./examples/.arch-ids/xvid_bench.c.id ./examples/.arch-ids/xvid_decraw.c.id ./examples/.arch-ids/xvid_encraw.c.id ./examples/.arch-ids/xvid_stat.c.id ./examples/Makefile ./examples/README ./examples/cactus.pgm.bz2 ./examples/odivx_enc_dec.c ./examples/xvid_bench.c ./examples/xvid_decraw.c ./examples/xvid_encraw.c ./examples/xvid_stat.c ./src/.arch-ids/=id ./src/.arch-ids/decoder.c.id ./src/.arch-ids/decoder.h.id ./src/.arch-ids/divx4.c.id ./src/.arch-ids/divx4.h.id ./src/.arch-ids/encoder.c.id ./src/.arch-ids/encoder.h.id ./src/.arch-ids/global.h.id ./src/.arch-ids/portab.h.id ./src/.arch-ids/xvid.c.id ./src/.arch-ids/xvid.h.id ./src/bitstream/.arch-ids/=id ./src/bitstream/.arch-ids/bitstream.c.id ./src/bitstream/.arch-ids/bitstream.h.id ./src/bitstream/.arch-ids/cbp.c.id ./src/bitstream/.arch-ids/cbp.h.id ./src/bitstream/.arch-ids/mbcoding.c.id ./src/bitstream/.arch-ids/mbcoding.h.id ./src/bitstream/.arch-ids/vlc_codes.h.id ./src/bitstream/.arch-ids/zigzag.h.id ./src/bitstream/bitstream.c ./src/bitstream/bitstream.h ./src/bitstream/cbp.c ./src/bitstream/cbp.h ./src/bitstream/mbcoding.c ./src/bitstream/mbcoding.h ./src/bitstream/ppc_asm/.arch-ids/=id ./src/bitstream/ppc_asm/.arch-ids/cbp_altivec.s.id ./src/bitstream/ppc_asm/.arch-ids/cbp_ppc.s.id ./src/bitstream/ppc_asm/cbp_altivec.s ./src/bitstream/ppc_asm/cbp_ppc.s ./src/bitstream/vlc_codes.h ./src/bitstream/x86_asm/.arch-ids/=id ./src/bitstream/x86_asm/.arch-ids/cbp_mmx.asm.id ./src/bitstream/x86_asm/.arch-ids/cbp_sse2.asm.id ./src/bitstream/x86_asm/cbp_mmx.asm ./src/bitstream/x86_asm/cbp_sse2.asm ./src/bitstream/zigzag.h ./src/dct/.arch-ids/=id ./src/dct/.arch-ids/README.IJG.id ./src/dct/.arch-ids/fdct.c.id ./src/dct/.arch-ids/fdct.h.id ./src/dct/.arch-ids/idct.c.id ./src/dct/.arch-ids/idct.h.id ./src/dct/README.IJG ./src/dct/fdct.c ./src/dct/fdct.h ./src/dct/ia64_asm/.arch-ids/=id ./src/dct/ia64_asm/.arch-ids/fdct_ia64.s.id ./src/dct/ia64_asm/.arch-ids/genidct.py.id ./src/dct/ia64_asm/.arch-ids/idct_fini.s.id ./src/dct/ia64_asm/.arch-ids/idct_ia64_ecc.s.id ./src/dct/ia64_asm/.arch-ids/idct_ia64_gcc.s.id ./src/dct/ia64_asm/.arch-ids/idct_init.s.id ./src/dct/ia64_asm/fdct_ia64.s ./src/dct/ia64_asm/genidct.py ./src/dct/ia64_asm/idct_fini.s ./src/dct/ia64_asm/idct_ia64_ecc.s ./src/dct/ia64_asm/idct_ia64_gcc.s ./src/dct/ia64_asm/idct_init.s ./src/dct/idct.c ./src/dct/idct.h ./src/dct/ppc_asm/.arch-ids/=id ./src/dct/ppc_asm/.arch-ids/fdct_altivec.s.id ./src/dct/ppc_asm/.arch-ids/idct_altivec.s.id ./src/dct/ppc_asm/fdct_altivec.s ./src/dct/ppc_asm/idct_altivec.s ./src/dct/x86_asm/.arch-ids/=id ./src/dct/x86_asm/.arch-ids/fdct_mmx.asm.id ./src/dct/x86_asm/.arch-ids/idct_mmx.asm.id ./src/dct/x86_asm/fdct_mmx.asm ./src/dct/x86_asm/idct_mmx.asm ./src/decoder.c ./src/decoder.h ./src/divx4.c ./src/divx4.h ./src/encoder.c ./src/encoder.h ./src/global.h ./src/image/.arch-ids/=id ./src/image/.arch-ids/colorspace.c.id ./src/image/.arch-ids/colorspace.h.id ./src/image/.arch-ids/image.c.id ./src/image/.arch-ids/image.h.id ./src/image/.arch-ids/interpolate8x8.c.id ./src/image/.arch-ids/interpolate8x8.h.id ./src/image/colorspace.c ./src/image/colorspace.h ./src/image/ia64_asm/.arch-ids/=id ./src/image/ia64_asm/.arch-ids/README.id ./src/image/ia64_asm/.arch-ids/interpolate8x8_ia64.s.id ./src/image/ia64_asm/.arch-ids/interpolate8x8_ia64_exact.s.id ./src/image/ia64_asm/README ./src/image/ia64_asm/interpolate8x8_ia64.s ./src/image/ia64_asm/interpolate8x8_ia64_exact.s ./src/image/image.c ./src/image/image.h ./src/image/interpolate8x8.c ./src/image/interpolate8x8.h ./src/image/x86_asm/.arch-ids/=id ./src/image/x86_asm/.arch-ids/interpolate8x8_3dn.asm.id ./src/image/x86_asm/.arch-ids/interpolate8x8_mmx.asm.id ./src/image/x86_asm/.arch-ids/interpolate8x8_xmm.asm.id ./src/image/x86_asm/.arch-ids/rgb_to_yv12_mmx.asm.id ./src/image/x86_asm/.arch-ids/yuv_to_yv12_mmx.asm.id ./src/image/x86_asm/.arch-ids/yuyv_to_yv12_mmx.asm.id ./src/image/x86_asm/.arch-ids/yv12_to_rgb24_mmx.asm.id ./src/image/x86_asm/.arch-ids/yv12_to_rgb32_mmx.asm.id ./src/image/x86_asm/.arch-ids/yv12_to_yuyv_mmx.asm.id ./src/image/x86_asm/interpolate8x8_3dn.asm ./src/image/x86_asm/interpolate8x8_mmx.asm ./src/image/x86_asm/interpolate8x8_xmm.asm ./src/image/x86_asm/rgb_to_yv12_mmx.asm ./src/image/x86_asm/yuv_to_yv12_mmx.asm ./src/image/x86_asm/yuyv_to_yv12_mmx.asm ./src/image/x86_asm/yv12_to_rgb24_mmx.asm ./src/image/x86_asm/yv12_to_rgb32_mmx.asm ./src/image/x86_asm/yv12_to_yuyv_mmx.asm ./src/motion/.arch-ids/=id ./src/motion/.arch-ids/motion.h.id ./src/motion/.arch-ids/motion_comp.c.id ./src/motion/.arch-ids/motion_est.c.id ./src/motion/.arch-ids/sad.c.id ./src/motion/.arch-ids/sad.h.id ./src/motion/ia64_asm/.arch-ids/=id ./src/motion/ia64_asm/.arch-ids/calc_delta_1.s.id ./src/motion/ia64_asm/.arch-ids/calc_delta_2.s.id ./src/motion/ia64_asm/.arch-ids/calc_delta_3.s.id ./src/motion/ia64_asm/.arch-ids/halfpel8_refine_ia64.s.id ./src/motion/ia64_asm/.arch-ids/sad_ia64.s.id ./src/motion/ia64_asm/calc_delta_1.s ./src/motion/ia64_asm/calc_delta_2.s ./src/motion/ia64_asm/calc_delta_3.s ./src/motion/ia64_asm/halfpel8_refine_ia64.s ./src/motion/ia64_asm/sad_ia64.s ./src/motion/motion.h ./src/motion/motion_comp.c ./src/motion/motion_est.c ./src/motion/ppc_asm/.arch-ids/=id ./src/motion/ppc_asm/.arch-ids/README.id ./src/motion/ppc_asm/.arch-ids/sad_altivec.c.id ./src/motion/ppc_asm/.arch-ids/sad_altivec.s.id ./src/motion/ppc_asm/README ./src/motion/ppc_asm/sad_altivec.c ./src/motion/ppc_asm/sad_altivec.s ./src/motion/sad.c ./src/motion/sad.h ./src/motion/x86_asm/.arch-ids/=id ./src/motion/x86_asm/.arch-ids/sad_3dn.asm.id ./src/motion/x86_asm/.arch-ids/sad_mmx.asm.id ./src/motion/x86_asm/.arch-ids/sad_sse2.asm.id ./src/motion/x86_asm/.arch-ids/sad_xmm.asm.id ./src/motion/x86_asm/sad_3dn.asm ./src/motion/x86_asm/sad_mmx.asm ./src/motion/x86_asm/sad_sse2.asm ./src/motion/x86_asm/sad_xmm.asm ./src/portab.h ./src/prediction/.arch-ids/=id ./src/prediction/.arch-ids/mbprediction.c.id ./src/prediction/.arch-ids/mbprediction.h.id ./src/prediction/mbprediction.c ./src/prediction/mbprediction.h ./src/quant/.arch-ids/=id ./src/quant/.arch-ids/adapt_quant.c.id ./src/quant/.arch-ids/adapt_quant.h.id ./src/quant/.arch-ids/quant_h263.c.id ./src/quant/.arch-ids/quant_h263.h.id ./src/quant/.arch-ids/quant_matrix.c.id ./src/quant/.arch-ids/quant_matrix.h.id ./src/quant/.arch-ids/quant_mpeg4.c.id ./src/quant/.arch-ids/quant_mpeg4.h.id ./src/quant/adapt_quant.c ./src/quant/adapt_quant.h ./src/quant/ia64_asm/.arch-ids/=id ./src/quant/ia64_asm/.arch-ids/quant_h263_ia64.s.id ./src/quant/ia64_asm/quant_h263_ia64.s ./src/quant/quant_h263.c ./src/quant/quant_h263.h ./src/quant/quant_matrix.c ./src/quant/quant_matrix.h ./src/quant/quant_mpeg4.c ./src/quant/quant_mpeg4.h ./src/quant/x86_asm/.arch-ids/=id ./src/quant/x86_asm/.arch-ids/quantize4_mmx.asm.id ./src/quant/x86_asm/.arch-ids/quantize_mmx.asm.id ./src/quant/x86_asm/quantize4_mmx.asm ./src/quant/x86_asm/quantize_mmx.asm ./src/utils/.arch-ids/=id ./src/utils/.arch-ids/emms.c.id ./src/utils/.arch-ids/emms.h.id ./src/utils/.arch-ids/mbfunctions.h.id ./src/utils/.arch-ids/mbtransquant.c.id ./src/utils/.arch-ids/mem_align.c.id ./src/utils/.arch-ids/mem_align.h.id ./src/utils/.arch-ids/mem_transfer.c.id ./src/utils/.arch-ids/mem_transfer.h.id ./src/utils/.arch-ids/ratecontrol.c.id ./src/utils/.arch-ids/ratecontrol.h.id ./src/utils/.arch-ids/timer.c.id ./src/utils/.arch-ids/timer.h.id ./src/utils/emms.c ./src/utils/emms.h ./src/utils/ia64_asm/.arch-ids/=id ./src/utils/ia64_asm/.arch-ids/mem_transfer_ia64.s.id ./src/utils/ia64_asm/mem_transfer_ia64.s ./src/utils/mbfunctions.h ./src/utils/mbtransquant.c ./src/utils/mem_align.c ./src/utils/mem_align.h ./src/utils/mem_transfer.c ./src/utils/mem_transfer.h ./src/utils/ratecontrol.c ./src/utils/ratecontrol.h ./src/utils/timer.c ./src/utils/timer.h ./src/utils/x86_asm/.arch-ids/=id ./src/utils/x86_asm/.arch-ids/cpuid.asm.id ./src/utils/x86_asm/.arch-ids/mem_transfer_mmx.asm.id ./src/utils/x86_asm/cpuid.asm ./src/utils/x86_asm/mem_transfer_mmx.asm ./src/xvid.c ./src/xvid.h ./todo.txt
No admin address has been configured | ViewVC Help |
Powered by ViewVC 1.0.4 |