view dsp/spectraldata.m @ 38:9d24b616bb06

Added function algebra.
author samer
date Tue, 29 Jan 2013 15:59:01 +0000
parents c3b0cd708782
children
line wrap: on
line source
function a=spectraldata(source,specfn,windowfn)
% SPECTRALDATA - Spectral data from buffered frames
%
% spectraldata :: (
% 	source:   seq[n,l],			~	source data 
%	specfn:   [n,l]->[m,l],		~ compute spectrum from frames
%  windowfn: (n:natural->[n])	~ function to compute window, eg hanning
% ) -> seq[m,l]

	H=spdiag(feval(windowfn,size(source,1)));
	a=map(@(x)specfn(H*x),source);
	%a=fnseq(fn,source,'charfn',@charfn);

%	function s=charfn(o)
%		s=sprintf('%s >> %s/%s',char(source(o)),tostring(specfn),tostring(windowfn));
%	end
end