分享

采用FFT算法分析音频信号的仿真设计

 贤人好客 2010-04-25
1.仿真实验中将提供一个待分析处理的音频信号(.wav文件)或者也可以现用麦克录段你的声音。
2.实验步骤
⑴ 选择一个wav文件作为分析的对象,当然也可以现用麦克录段你的声音。
⑵ 读取音频信号的数据,并画出其时域波形和频谱图。例如:

⑶ 反演它的时域值。当然可以使用富氏反变换,但这里我们利用刚才分析的几个主要的冲击峰值来重构。并听一听其声音的变化。
⑷ 给出仿真结论及不足之处。
 
1.几个要用到的函数:
⑴ [x,fs,bits]=wavread('filename')这是一个matlab中读取wav文件的数据的函数。其中的x表示一长串的数据,一般是两列(立体声);fs是该wav文件在采集时用的采样频率;bits是指在进行A/D转化时用的量化位长(一般是8bits或16bits)。
⑵ [d]=fft(w,l)这是matlab中fft函数的一种输入输出形式。w是一列波形数据;l是指示用多少点的fft,我们应该选择2的乘方的数(如16,128,1024等),因为这样就可以使用优化的蝶形算法;d是频域的输出。由于fft(dft)的对称性,又输入的是实数,fft的结果的复数序列是共轭反对称的,所以它们的模的大小对称,一般来说只用取一半的数据就可以了。

⑶ sound(w,fs,bits)和前面的wavread一样的参数表示,它将数列的数据通过声卡转化为声音。


你自己做

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多