[FFmpeg-cvslog] r14250 - trunk/libavcodec/vorbis_dec.c
lorenm
subversion
Wed Jul 16 01:01:15 CEST 2008
Author: lorenm
Date: Wed Jul 16 01:01:15 2008
New Revision: 14250
Log:
unroll another common case in vorbis_residue_decode
Modified:
trunk/libavcodec/vorbis_dec.c
Modified: trunk/libavcodec/vorbis_dec.c
==============================================================================
--- trunk/libavcodec/vorbis_dec.c (original)
+++ trunk/libavcodec/vorbis_dec.c Wed Jul 16 01:01:15 2008
@@ -1330,6 +1330,14 @@ static int vorbis_residue_decode(vorbis_
vec[voffs+k ]+=codebook.codevectors[coffs ]; // FPMATH
vec[voffs+k+vlen]+=codebook.codevectors[coffs+1]; // FPMATH
}
+ } else if(dim==4) {
+ for(k=0;k<step;++k, voffs+=2) {
+ coffs=get_vlc2(gb, codebook.vlc.table, codebook.nb_bits, 3) * 4;
+ vec[voffs ]+=codebook.codevectors[coffs ]; // FPMATH
+ vec[voffs+1 ]+=codebook.codevectors[coffs+2]; // FPMATH
+ vec[voffs+vlen ]+=codebook.codevectors[coffs+1]; // FPMATH
+ vec[voffs+vlen+1]+=codebook.codevectors[coffs+3]; // FPMATH
+ }
} else
for(k=0;k<step;++k) {
coffs=get_vlc2(gb, codebook.vlc.table, codebook.nb_bits, 3) * dim;
More information about the ffmpeg-cvslog
mailing list