From: Monty Date: Wed, 15 Dec 1999 08:51:03 +0000 (+0000) Subject: more quant work X-Git-Tag: v1.3.3~1322 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=986bbbb619187c93991b57abe6711027655c4192;p=platform%2Fupstream%2Flibvorbis.git more quant work svn path=/trunk/vorbis/; revision=196 --- diff --git a/vq/vqgen.c b/vq/vqgen.c index 46edeeb..bace2f5 100644 --- a/vq/vqgen.c +++ b/vq/vqgen.c @@ -254,24 +254,22 @@ double vqgen_iterate(vqgen *v){ { /* midpoints must be quantized. but we need to know the range in order to do so */ - double *min=alloca(sizeof(double)*v->elements); - double *max=alloca(sizeof(double)*v->elements); + double min,max; - for(k=0;kelements;k++) - min[k]=max[k]=_now(v,0)[k]; - for(j=1;jentries;j++){ - for(k=0;kelements;k++){ + for(k=0;kelements;k++){ + double delta; + min=max=_now(v,0)[k]; + + for(j=1;jentries;j++){ double val=_now(v,0)[k]; - if(valmax[k])max[k]=val; + if(valmax)max=val; } - } - for(k=0;kelements;k++){ - double base=min[k]; - double delta=(max[k]-min[k])/((1<quantbits)-1); + + delta=(max-min)/((1<quantbits)-1); for(j=0;jentries;j++){ double val=_now(v,j)[k]; - _now(v,j)[k]=base+delta*rint((val-base)/delta); + _now(v,j)[k]=min+delta*rint((val-min)/delta); } } }