【发布时间】:2015-05-04 18:00:08
【问题描述】:
我正在使用 Matlab,我也想对之前在 Matlab 上录制的 wav 文件执行 FFT。
fs = 44100; % Hz
t = 0:1/fs:1; % seconds
f = 600; % Hz
y = sin(2.*pi.*f.*t);
audiowrite('600freq.wav',y,fs)
这是我在 wav 文件中录制的方式。 现在到阅读和 FFT 部分:
[y,Fs] = audioread('600freq.wav');
sound(y)
plot(fft(y))
这是我得到的 FFT 图:
也许我错过了有关 FFT 的一些信息,但我预计会有两个垂直棒棒糖。 我注意到的另一件事是错误的,当我从文件中读取声音后播放声音时,它的长度更长,音高明显更低。 我的猜测是采样率问题,但我真的不知道该怎么办。
提前感谢您的帮助。
【问题讨论】:
标签: matlab audio signal-processing fft