mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Skip loop iterations which are no-ops due to data1[-lag..-1] being zero.
Originally committed as revision 18498 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
fb53b4a035
commit
0aed5e9fb8
@ -594,7 +594,7 @@ void ff_flac_compute_autocorr(const int32_t *data, int len, int lag,
|
|||||||
|
|
||||||
for(j=0; j<lag; j+=2){
|
for(j=0; j<lag; j+=2){
|
||||||
double sum0 = 1.0, sum1 = 1.0;
|
double sum0 = 1.0, sum1 = 1.0;
|
||||||
for(i=0; i<len; i++){
|
for(i=j; i<len; i++){
|
||||||
sum0 += data1[i] * data1[i-j];
|
sum0 += data1[i] * data1[i-j];
|
||||||
sum1 += data1[i] * data1[i-j-1];
|
sum1 += data1[i] * data1[i-j-1];
|
||||||
}
|
}
|
||||||
@ -604,7 +604,7 @@ void ff_flac_compute_autocorr(const int32_t *data, int len, int lag,
|
|||||||
|
|
||||||
if(j==lag){
|
if(j==lag){
|
||||||
double sum = 1.0;
|
double sum = 1.0;
|
||||||
for(i=0; i<len; i+=2){
|
for(i=j-1; i<len; i+=2){
|
||||||
sum += data1[i ] * data1[i-j ]
|
sum += data1[i ] * data1[i-j ]
|
||||||
+ data1[i+1] * data1[i-j+1];
|
+ data1[i+1] * data1[i-j+1];
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user