社区
图形处理/算法
帖子详情
如何对wav文件使用FFT进行频谱分析?
teleinfor
2012-03-03 06:26:58
加精
需要对一个wav文件做频谱分析,都忘记FFT到底是干啥的了。
请问如何分析一个wav文件的频谱呢?FFT的采样点数如何确定?
wav文件为PCM音频,采样频率为8000/s
...全文
9635
82
打赏
收藏
如何对wav文件使用FFT进行频谱分析?
需要对一个wav文件做频谱分析,都忘记FFT到底是干啥的了。 请问如何分析一个wav文件的频谱呢?FFT的采样点数如何确定? wav文件为PCM音频,采样频率为8000/s
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
82 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gaosunqiong
2014-03-07
打赏
举报
回复
楼主弄懂怎样从PCM数据中分析出频谱图没?我也想了解一下?
hannylove24
2012-08-19
打赏
举报
回复
现在发现、如果以前老师不是按课本死教、学信号处理也不会这么累、而且搞不懂所以然,纯理论站在虚的角度研究一个虚的东西,但是要是结合一个音频分析、保准懂得又快又好
hannylove24
2012-08-19
打赏
举报
回复
和楼主一样,fft算法我自己已经写了,频域数据反变换能够变回原来的时域数据,因为做到频域离散傅里叶变换是以k(整数0~N)为变量带入和连续的傅里叶变换不同,不是一个具体的频率值,而且代入多少时域点就有多少频域点,那现在我知道wave格式的音频的采样率,如果只有k,把k代到频谱函数求出来的值就是把k*音频的采样率就得到实际的频率上的频谱了吗?
danxger
2012-07-12
打赏
举报
回复
现在发现还是外文翻译过来的书好,通俗易懂,这样的书才是好书
ddjdl
2012-07-12
打赏
举报
回复
时间过的好快,跟进频谱分析
danxger
2012-04-21
打赏
举报
回复
没有人关注了,顶一下!
danxger
2012-04-21
打赏
举报
回复
顶一下吧。都没有人关注了
hztj2005
2012-03-28
打赏
举报
回复
[Quote=引用 38 楼 的回复:]
audacity是开源的音频处理软件,他不光可以分析频谱,还有音频处理算法,如降噪等。
你可以把他编译出来自己分析源码,不过编译的过程有点麻烦,我也花了点时间才编译好。
[/Quote]
我也找到这里了,看来这个不但编译有点麻烦,而且结构也够复杂的,要点时间来理清流程。
hztj2005
2012-03-27
打赏
举报
回复
[Quote=引用 71 楼 danxger 的回复:]
引用 70 楼 hztj2005 的回复:
虽然对于一般编程来说,不了解蝶形算法,直接运用现有的FFT代码也是可以的。
但总觉得不踏实,
看了很多本书,
觉得高西全的《数字信号处理》第4章把FFT的蝶形算法的步骤讲得最透。
所以这个书能印35万册也是有理由的。
有没有电子档的,能发一份给我吗?
[/Quote]
没有,我买的纸质,29元。
danxger
2012-03-27
打赏
举报
回复
[Quote=引用 72 楼 hztj2005 的回复:]
引用 71 楼 danxger 的回复:
引用 70 楼 hztj2005 的回复:
虽然对于一般编程来说,不了解蝶形算法,直接运用现有的FFT代码也是可以的。
但总觉得不踏实,
看了很多本书,
觉得高西全的《数字信号处理》第4章把FFT的蝶形算法的步骤讲得最透。
所以这个书能印35万册也是有理由的。
有没有电子档的,能发一份给我吗?
没有,我买的纸质,29元。
[/Quote]
那我也买一本吧。以前买过清华出版的音频信号处理,还有赵力的信号处理,看了一些,没看懂!有问题希望大侠指点啊!
hztj2005
2012-03-26
打赏
举报
回复
虽然对于一般编程来说,不了解蝶形算法,直接运用现有的FFT代码也是可以的。
但总觉得不踏实,
看了很多本书,
觉得高西全的《数字信号处理》第4章把FFT的蝶形算法的步骤讲得最透。
所以这个书能印35万册也是有理由的。
danxger
2012-03-26
打赏
举报
回复
[Quote=引用 70 楼 hztj2005 的回复:]
虽然对于一般编程来说,不了解蝶形算法,直接运用现有的FFT代码也是可以的。
但总觉得不踏实,
看了很多本书,
觉得高西全的《数字信号处理》第4章把FFT的蝶形算法的步骤讲得最透。
所以这个书能印35万册也是有理由的。
[/Quote]
有没有电子档的,能发一份给我吗?
danxger
2012-03-21
打赏
举报
回复
学计算机的,没有学过信号处理,现在恶补信号处理啊!!!
hztj2005
2012-03-19
打赏
举报
回复
谢谢syrchina 的回复:
另外推荐一篇文章:
http://apps.hi.baidu.com/share/detail/22378128
与63楼做一个对比,我改用512的频率采样,采2秒,就是1024个数据,按1024进行FFT,
结果有比例的变化:
C/C++ code
//产生模拟原始数据输入 ,在实际应用时替换为AD采样数据
void InputData(void)
{
int i;
for(i=0; i<(N_FFT/2); i++)//制造输入序列
{
data_of_N_FFT[i].real = sin((2*PI/(N_FFT/2))*i)+5*sin((2*PI/(N_FFT/2))*20*i);//输入采样数据
data_of_N_FFT[i].imag = 0;
data_of_N_FFT[i+512].real = sin((2*PI/(N_FFT/2))*i)+5*sin((2*PI/(N_FFT/2))*20*i);//输入采样数据
data_of_N_FFT[i+512].imag = 0;
}
}
0,0.00000
1,0.00000
2,512.00000
3,0.00000
4,0.00001
.........
37,0.00000
38,0.00000
39,0.00000
40,2560.00000
41,0.00000
42,0.00000
...........
982,0.00000
983,0.00000
984,2560.00000
985,0.00000
986,0.00000
987,0.00000
...........
1019,0.00000
1020,0.00001
1021,0.00000
1022,512.00000
1023,0.00000
2和40都要除2秒,才是正确的结果。
我这样试验是有这样一个疑问:
一般说话4-6个音节/秒,但有快有慢,按22.05kHz采样,一个音节就是55125-36750采样点,
对于一个系列的语音采样,无法准确确定某个音节的起点和终点,
那么一次FFT函数的样本数多少如何影响频谱分析的结果?
danxger
2012-03-17
打赏
举报
回复
[Quote=引用 66 楼 syrchina 的回复:]
另外推荐一篇文章:
http://apps.hi.baidu.com/share/detail/22378128
[/Quote]
这篇文章不错!
rickys2080
2012-03-17
打赏
举报
回复
另外推荐一篇文章:
http://apps.hi.baidu.com/share/detail/22378128
rickys2080
2012-03-17
打赏
举报
回复
[Quote=引用 63 楼 hztj2005 的回复:]
引用 57 楼 syrchina 的回复:
FFT示例代码:
http://blog.csdn.net/syrchina/article/details/6670517
我用你代码模拟原始数据输入y=sin(x)+5*sin(20x)
void InputData(void)
{
int i;
for(i=0; i<N_FFT; i++)//制造输入序列
{
data……
[/Quote]
除以N(即FFT点数),原因参看:
http://www.baidu.com/s?tn=monline_dg&bs=FFT+%BD%E1%B9%FB+%B3%FD%D2%D4&f=8&rsv_bp=1&wd=FFT+%BD%E1%B9%FB+%B3%FD%D2%D4N&inputT=395
vc_dreamver
2012-03-17
打赏
举报
回复
http://www.fftw.org/正解! 一维二维都可以,还可以变长!
hztj2005
2012-03-17
打赏
举报
回复
[Quote=引用 57 楼 syrchina 的回复:]
FFT示例代码:
http://blog.csdn.net/syrchina/article/details/6670517
[/Quote]
我用你代码模拟原始数据输入y=sin(x)+5*sin(20x)
void InputData(void)
{
int i;
for(i=0; i<N_FFT; i++)//制造输入序列
{
data_of_N_FFT[i].real = sin((2*PI/N_FFT)*i)+5*sin((2*PI/N_FFT)*20*i); //输入采样数据
data_of_N_FFT[i].imag = 0;
}
}
FFT后
sqrt(data_of_N_FFT[i].real*data_of_N_FFT[i].real+data_of_N_FFT[i].imag*data_of_N_FFT[i].imag)
的数据:
0,0.00000
1,512.00000
2,0.00000
3,0.00000
........
18,0.00000
19,0.00000
20,2560.00000
21,0.00000
22,0.00000
........
1002,0.00000
1003,0.00000
1004,2560.00000 //为什么有???
1005,0.00000
1006,0.00000
........
1020,0.00001
1021,0.00000
1022,0.00000
1023,512.00000 //为什么有??
这个结果正确吗?
正式取值似乎还要除512?
danxger
2012-03-15
打赏
举报
回复
[Quote=引用 55 楼 hztj2005 的回复:]
引用 54 楼 danxger 的回复:
我的帖子没有说解决了采样问题啊!!
我记错了。
我在网上找了采样画波形的代码,整合到了一起。
试用几天如果没错,就传到网上。
但fft还没弄懂。
[/Quote]
你的采样画波代码试用好了么?
FFT不容易懂啊!!!
加载更多回复(50)
qt
频谱分析
傅里叶变换 类库
qt程序,用于实现
频谱分析
中的傅里叶变换,非可执行
文件
,类库
音频信号的
频谱分析
对音频号
进行
快速傅里叶变换
fft
选取windows系统自带的ding.
wav
信号作为分析对象,在Matlab软件平台下,利用函数
wav
read对音频信号
进行
采样,记住采样频率和采样点数,听一下原始声音sound(y, fs, bits)。(2)音频信号的
频谱分析
,先画出音频信号的时域波形;然后对音频号
进行
快速傅里叶变换
fft
(y,N),N取32768,画出信号的频谱特性,加深对频谱特性的理解。(3)根据频谱,反演时域特性,画出时域波形。寻找幅值最大的两个频率,此频率除以
fft
点数在乘以采样频率就是信号的主频,即可合成信号的时域图形,听一下声音。(4)对原音频信号
进行
1024点的分段付立业分析meshgrid (5)根据主要频线合成音频,并画出时域图形,试听合成效果。(6)采用线性插值(linspace)和傅立业反变换(fliplr, i
fft
)分别合成音频,并画出时域图形,试听效果。
wav
_
FFT
_demo.rar_
FFT
wav
_equalizer_
fft
_音频 均衡_音频频率
FFT
快速傅氏变换(
FFT
),允许用户查看的音频信号的频谱内容。
FFT
这里给出的代码是由唐交叉出现,他的主页,随后被撤下。而不是解释的
FFT
的数学理论,我将试图解释它的用处,因为它涉及到的音频信号。
FFT
允许用户获得的音频信号的频谱构成,获得它的各种频率的分贝,或获得其各种频率的强度。光谱观众(在上面的图片所示),均衡器,或VU表可以
使用
FFT
,以显示其结果。它们之间的差值,然后取决于一对夫妇方程采取的
FFT
的实部和虚部的组件,并返回的强度或分贝水平被用于在绘制结果中的一个。下面的代码提取的
FFT
结果的实部和虚数部分,并返回的强度和分贝。
使用
matlab语言对信号
进行
频谱分析
识别多种乐器(内含素材)
通过
fft
快速傅里叶变换时域变换到频域,然后通过对频域特征
进行
分析,确定乐器。 这是我大二时候的课程项目
DFT的matlab源代码-DFT_
FFT
_draw
WAV
:利用Java实现DFT、
FFT
,并绘制波形图和频谱图,音频播放频谱或波形图实时显示
DFT的matlab源代码 DFT_
FFT
_draw
WAV
利用Java实现DFT、
FFT
,读取
WAV
文件
,并绘制波形图和频谱图,音频播放频谱或波形图实时显示效果。 几个工程打包于
文件
夹DFT_
FFT
: DFT_IDFT:计算前N点DFT,并绘制波形图或频谱图;
FFT
:计算前N点
FFT
,并绘制波形图或频谱图,能播放
WAV
音乐,不过不能实时显示频谱或波形;
FFT
2_backup和
FFT
2_Finish:计算N点DFT或
FFT
,能播放
WAV
音频,且能实时显示波形或频谱,音频与波形或频谱不同步,需自己调节,但做不到十分精准。 对
Wav
eFileReader.java
进行
了修改,使之可以读取部分格式工厂转化的
WAV
文件
。 raw
wav
s:这是我用的一些
WAV
音乐
文件
,修改下代码中路径就可以直接运行
使用
。
WAV
文件
解析参考以下链接: 注意,看了第1个链接你会发现很简单,而你也确实可以解析一些
WAV
文件
了,但是还有许多是其它格式的。 主要就是参考第二个链接里的这两个图片修改的。
图形处理/算法
19,468
社区成员
50,700
社区内容
发帖
与我相关
我的任务
图形处理/算法
VC/MFC 图形处理/算法
复制链接
扫一扫
分享
社区描述
VC/MFC 图形处理/算法
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章