view dsp/realfft.m @ 34:c75bb62b90a9

Imported audio synthesis tools.
author samer
date Sun, 20 Jan 2013 19:05:05 +0000
parents c3b0cd708782
children
line wrap: on
line source
function [y,f] = realfft(x,nfft)
% realfft - Do FFT assuming real data, returning complex half spectrum
%
% realfft ::
%    [[L,T]->real]     ~'sequence of T L-point frames',
%    N:natural         ~'FFT size'
% -> [[M,T]->complex]  ~'sequence of T M-point complex spectra',
%    [[M]]             ~'normalised centre frequency for each bin'.
%      
% Note that M=dftbins(N).

% apply the window and do FFT on each column, then
% assume it's a real signal and discard half the bins
y = fft(x,nfft);
select=1:dftbins(nfft);
y = y(select,:);
% compute the normalised frequency for each bin
f=(select-1)/nfft;