annotate dsp/imagspec.m @ 47:82075c94eed1

adding a bunch of stuff, including graphics and pitch toolboxes.
author samer
date Sat, 17 Jan 2015 15:20:35 +0000
parents c3b0cd708782
children
rev   line source
samer@32 1 function X=imagspec(A,P)
samer@32 2 % IMAGSPEC - convert mag/phase spectrum to wave
samer@32 3 %
samer@32 4 % imagspec :: [[M+1,L]]~'magnitude', [[M+1,L]]~'phase' -> [[2*M,L]]~'signal'.
samer@32 5 % imagspec :: [[M+1,L]]~'magnitude' -> [[2*M,L]]~'signal'.
samer@32 6 %
samer@32 7 % Second form uses random phases.
samer@32 8
samer@32 9 n=size(A,1);
samer@32 10 if nargin<2,
samer@32 11 % make up random phases
samer@32 12 P=exp(2*i*pi*rand(size(A)));
samer@32 13 end
samer@32 14 A=[A; A(n-1:-1:2,:)];
samer@32 15 phi=[P; conj(P(n-1:-1:2,:))];
samer@32 16 X=real(ifft(phi.*A)); % get waveform
samer@32 17
samer@32 18
samer@32 19