Mercurial > libavcodec.hg
diff svq1.c @ 4749:7011f597e473 libavcodec
mmx 16-bit ssd. 2.3x faster svq1 encoding.
author | lorenm |
---|---|
date | Fri, 30 Mar 2007 19:15:31 +0000 |
parents | a96d905dcbaa |
children | 14a0a003804b |
line wrap: on
line diff
--- a/svq1.c Fri Mar 30 09:26:13 2007 +0000 +++ b/svq1.c Fri Mar 30 19:15:31 2007 +0000 @@ -992,15 +992,10 @@ for(i=0; i<16; i++){ int sum= codebook_sum[stage*16 + i]; - int sqr=0; - int diff, mean, score; + int sqr, diff, mean, score; vector = codebook + stage*size*16 + i*size; - - for(j=0; j<size; j++){ - int v= vector[j]; - sqr += (v - block[stage][j])*(v - block[stage][j]); - } + sqr = s->dsp.ssd_int8_vs_int16(vector, block[stage], size); diff= block_sum[stage] - sum; mean= (diff + (size>>1)) >> (level+3); assert(mean >-300 && mean<300);