当前位置:编程学习 > Matlab >>

求MATLAB语音信号采集的程序?[y,fs,nbits]=wavread('D:\MATLAB\work\shengkacaiji.wav');为什么错误呢?

补充:AI = analoginput('winsound'); chan = addchannel(AI,1); set(AI,'SampleRate',8000) ActualRate = get(AI,'SampleRate'); set(AI,'TriggerChannel',chan) set(AI,'TriggerType','software'); set(AI,'Triggercondition','rising'); set(AI, 'TriggerDelayUnits', 'seconds'); set(AI,'timeout',2) Fs = ActualRate; start(AI) try [data1,time]=getdata(AI); timecatch time=0;data1=0; disp('A timeout occurred.'); end subplot(2,1,1) plot(time,data1) xlabel('Time (sec.)') ylabel('Signal Level (Volts)') grid on blocksize =length(data1); window = hanning(blocksize); data2=window.*data1; [b,a]=ellip(4,0.1,20,3000*2/Fs); data=filter(b,a,data2); wavwrite(data1,'C:\shengkacaiji.wav') delete(AI) clear AI [f,mag] = daqdocfft(data1,Fs,blocksize); subplot(2,1,2) plot(f,mag) grid on ylabel('Magnitude (dB)') xlabel('Frequency (Hz)') title('Frequency Components of Incoming Signal') xlim([0 1500]) [ymax,maxindex] = max(mag); disp(['Maximum occurred at ', num2str(maxindex), ' Hz']) 怎么不出图形呢,求指教
追问:路径没错呀,Error using ==> wavread
Cannot open file.,不知道怎么回事,那分号我也知道啊,我是个初学者,不懂啊,悲剧
答案:错误提示是什么啊?你的路径没有问题吧? 
最后的那个分号需要是英文字符啊!
其他:[y,fs,nbits]=wavread('D:\MATLAB\work\shengkacaiji.wav');
你的文件没超过1M吧?!
建议:试一下[y,fs bits]=wavread('shengcaiji.wav'); 

上一个:MATLAB编程
下一个:哪位高手MATLAB比较好 我有几行程序请教

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,