www.gusucode.com > 声音的处理有:LPC,FFT,共振峰,频谱源码程序 > siganlandsystemusingMatlab/SSUM/library/save_audiodata.m

    %
function save_audiodata(audiodata, varargin)

	savedir = pwd;
	if nargin > 1,
		filenamepath = varargin{1};
	else
		try
			cd([ssumroot, 'data/sounds']);
		catch
			cd([ssumroot]);
		end

		[filename, pathname] = uiputfile('*.wav', 'Save sound as');
		if isequal(filename,0) | isequal(pathname,0) 
			return;     
		end         
		filenamepath = [pathname filename];
	end
	signal = audiodata.data;
	Fs = audiodata.Fs;
	if (max(abs(signal)) > 0.9)
		signal = normalize(signal);
	end
	wavwrite(signal,Fs,16,filenamepath);
	disp(['File saved as ', filenamepath])

	cd(savedir);