view dsp/realfft.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
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;