[英]How would I use FFT to analyse an audio wave in R, Rstudio
我正在尝试使用 R 在声音文件中查找谐波,我还想将 plot 这些发现作为频率(Hz)(x)强度(y)图来显示找到的谐波。 到目前为止,我发现很难找到在 R 中的音频文件上使用 FFT 的有用的工作示例,因为大多数教程都使用预制的余弦或正弦波。
我在社区代码下的https://www.rdocumentation.org/packages/stats/versions/3.6.2/topics/fft页面上找到了一个示例,但是当我尝试在音频文件。
#my addition (I've left the wave file space empty deliberately)
voice <- readWave("",from=0, to=Inf, units=c("seconds"), header=FALSE, toWaveMC=NULL)
#the community code
x <- wavobj@left
fs <- wavobj@samp.rate
nbits <- wavobj@bit
x <- x[1:(fs*5)]
y <- fft(x)
y.tmp <- Mod(y)
y.tmp <- Mod(y)
y.ampspec <- y.tmp[1:(length(y)/2+1)]
y.ampspec[2:(length(y)/2)] <- y.ampspec[2:(length(y)/2)] * 2
f <- seq(from=0, to=fs/2, length=length(y)/2+1)
plot(f, y.ampspec, type="h", xlab="Frequency (Hz)", ylab="Amplitude Spectrum", xlim=c(0, 350))
请发送一些帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.