How can Overlap-add technique be done
Show older comments
Hi:), I would like to perform the overlap-add technique but it seems to have errors. any ideas
load handel
N=length(y);
L=8192;
b=[0.2];
a=[1 -0.8];
[hn,t]=impz(b,a);
M=length(hn);
Nx=floor((N+M-1-1))/(L)
H = fft(hn,N) %% (zero-padded FFT)
i = 1
while i <= Nx
il = min(i+L-1,Nx)
wt = ifft( fft(y(i:il),N) .* H, N);
k = min(i+N-1,Nx);
w(i:k) = w(i:k) + wt ; %%(add the overlapped output blocks)
i = i+L;
end
2 Comments
Walter Roberson
on 17 Dec 2012
What errors do you perceive?
Note: you might want to consider using "for" instead of "while"
Ijeoma Madu
on 17 Dec 2012
Edited: Ijeoma Madu
on 17 Dec 2012
Accepted Answer
More Answers (0)
Categories
Find more on Fast Fourier Transforms in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!