信号与系统:用matlab分析wav音频的频谱
-11-25
【天水浪客一门课程的平时作业,matlab确实强大,用它做这个有点杀鸡用牛刀的意味...软件太大了,直接靠安装了此软件的同学搞定,程序也是参考网上的资料... 惭愧 ... 但总算是弄完了。发上来供后人借鉴吧 ...
matlab7下载(1.01G):
/ftpsite/incoming/matlab7.ISO
1、下载后用虚拟光驱安装(天水浪客补:别弱到看成压缩包了)。
2、序列号是13-22955-32678-26249-06848-40366-39620-03472-09765-20949-30945-19673-43738-38950-44548
3、关于matlab自动关闭的问题:
这个问题是和CPU有关系,MATLAB要用到CPU的数学计算模块,而MATLAB默认的是INTEL的CPU,所以速龙或者是闪龙的CPU一般都会遇到安装好后打开自动关闭的问题.
解决办法:
先确认安装好后(假如安装在D盘)在此路径下D:\MATLAB7\bin\win32有一个叫做atlas_Athlon.dll的文件.
然后在我的电脑上右击点"属性",再在"高级"中点"环境变量",在"系统变量"中点击"新建"
输入以下信息: 变量名:BLAS_VERSION
变量址:D:\MATLAB7\bin\win32\atlas_Athlon.dll】
分析一个.wav文件的频谱
分析的是ZR33.wav
程序:
[y,Fs,bits]=wavread("ZR33.wav");
y=y(:,1);
sigLength=length(y);
Y = fft(y,sigLength);
Pyy = Y.* conj(Y) / sigLength;
halflength=floor(sigLength/2);
f=Fs*(0:halflength)/sigLength;
figure;plot(f,Pyy(1:halflength+1));xlabel("Frequency(Hz)");
t=(0:sigLength-1)/Fs;
figure;plot(t,y);xlabel("Time(s)");
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。
/style/images/nopic.gif