您当前的位置:matlab资源网文章中心资料 → 文章内容

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

作者:天水浪客  来源:转载http://blog.sina.com.cn/s/blog_4a9fe76101008f6x.html  发布时间:2008-6-13 15:16:11

【天水浪客一门课程的平时作业,matlab确实强大,用它做这个有点杀鸡用牛刀的意味 ... 软件太大了,直接靠安装了此软件的同学搞定,程序也是参考网上的资料 ... 惭愧 ... 但总算是弄完了。发上来供后人借鉴吧 ...

 

matlab7下载(1.01G):

http://www.21ft.com/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)');

  • 上一篇文章:基于VC.NET的GDI+图像处理
  • 下一篇文章:MATLAB系统
  • 文章评论 (评论内容只代表网友观点,与本站立场无关!)

    用户名: 查看更多评论

    分 值:100分 85分 70分 55分 40分 25分 10分 0分

    内 容:

             (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码

    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 -