blob: 7e832a00adf703561190aa0c4c596480944a3fb8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
/*
* input I is a folded spectrum of length N; output O and
* synthesis window W are of length Nw--overlap-add windowed,
* unrotated, unfolded input data into output O
*/
void overlapadd( float *I, int N, float *W, float *O, int Nw, int n )
{
int i ;
while ( n < 0 )
n += N ;
n %= N ;
for ( i = 0 ; i < Nw ; i++ ) {
O[i] += I[n]*W[i] ;
if ( ++n == N )
n = 0 ;
}
}
|