Hi all,

I've merged Acy's, Takehiro's and my recent changes to quantize_xrpow[_ISO],
resulting in a tidier version (attached). With Takehiro's changes, we can
eliminate the short block case entirely, so the functions are much shorter
and faster. And with Acy's changes, we have a super-speedy MSVC version
(with gcc/i386 version to follow?). With my compareval0 addition for non-ISO
mode, we get another small speedup to the C version. Manual loop unrolling
of the C version helps quite a lot as well, but I've left that out to keep
things simple.

Some speed results (Celeron 400, Win98SE), each version run 3 times

Standard mode:
lame_std    iron.wav nul 1.9520, 2.0136, 2.0010
lame_cv0    iron.wav nul 2.0323, 2.0010, 2.0253
lame_acy    iron.wav nul 2.5422, 2.5331, 2.5221
(compareval0 doesn't really help in ISO mode)

High quality mode:
lame_std -h iron.wav nul 1.3081, 1.3028, 1.3052
lame_cv0 -h iron.wav nul 1.3437, 1.3494, 1.3557
lame_acy -h iron.wav nul 2.1416, 2.1416, 2.1574

-- Mat.

quantize-pvt_update.c

Reply via email to