声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1100|回复: 4

[综合讨论] 求助关于音频傅立叶后频率的问题

[复制链接]
发表于 2007-5-11 15:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
[aa,fh,fb]=wavread('w.wav');
b=fft(aa);
[dd,cc]=max(b);

这样做 cc 就应该是音频低频的位置了吧,

那么如果我想取出特定频率的位置该怎么做呢?

例如我想取出中频 3khz 在音频中的位置该怎么做呢?

盼高手指教!!

谢谢!!!
回复
分享到:

使用道具 举报

 楼主| 发表于 2007-5-12 22:50 | 显示全部楼层
没人顶呀....
发表于 2007-5-13 08:14 | 显示全部楼层
1,语句
[dd,cc]=max(b);
应改为
[dd,cc]=max(abs(b));
因为b是复数。
2,cc是最大值dd所在的下标值。要想求出最大值dd对应的频率f0,可以有
N=length(aa);
df=fh/N;
f0=(cc-1)*df;
3,如果要求特定的频率ff,对应的下标值ee为
ee=round(ff/df)+1;

评分

1

查看全部评分

 楼主| 发表于 2007-5-13 15:50 | 显示全部楼层
谢谢!!!
但是对
N=length(aa);
df=fh/N;
f0=(cc-1)*df;
不是十分理解
能不能简单说明一下为什么这样做就可以求出频率?
发表于 2007-5-13 16:09 | 显示全部楼层


要理解它,就要好好研究下离散傅立叶变换
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-29 09:45 , Processed in 0.099788 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表