I have been working on speed enhancements for WavPack and think I have made enough progress to justify a release. The improvement seems to vary quite a bit on different systems, but I couldn't find a system where this didn't make some improvement (even a few percent) and on some systems (like my old 1.7 GHz P4) it is significant. The improvements apply to both packing and unpacking stereo files. Note that this is still pure C; there is no hand-coded assembler.
This also includes the MMX code (via intrinsics) from Joachim Henke. Unfortunately, this only seems to provide an improvement for bitdepths over 16, so it's restricted to that for now (although it does make a nice improvement for 24-bit or IEEE float data). Regarding MMX support, is that ubiquitous enough now that programs simply use it without checking for it? Since WavPack now requires Windows 98, it is reasonable to assume that any computer running Windows 98 also has MMX?
A bug has been fixed that sometimes caused a crash if a metadata source file specified on the command-line was not found, but otherwise this release only involves optimization. The output files should always be bit-identical to 4.40 regardless of the mode. This code hasn't been checked in to SVN and I haven't tested it on Linux, but that will come shortly.
Many thanks to the WavPack users and also thanks in advance for any comparison testing done on this new version, which can be found here.
David
