matlab语音频谱,信号与系统:用matlab分析wav音频的频谱

信号与系统:用matlab分析wav音频的频谱

【天水浪客一门课程的平时作业,matlab确实强大,用它做这个有点杀鸡用牛刀的意味

...

软件太大了,直接靠安装了此软件的同学搞定,程序也是参考网上的资料

... 惭愧 ... 但总算是弄完了。发上来供后人借鉴吧 ...

matlab7下载(1.01G):

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)');

你可能感兴趣的:(matlab语音频谱)