- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
最佳答案
听起来您已经了解如何获得 FFT 频谱,对吗?
http://flic.kr/p/7notw6
但是,如果您正在寻找基本面(绿点),则不能只使用最高峰。这不一定是根本。在我的示例中,实际基波是 100 Hz,但最高峰值是 300 Hz。
有很多不同的方法可以找到真正的基本原理,每种方法在不同的环境中都可以更好地发挥作用。 comp.dsp 上的一个线程提到“FFT、倒谱、自动/互相关、AMDF/ASDF”。
举一个简单的例子,每个红点与其相邻点的距离为 100 Hz,因此如果您使用寻峰算法,然后将每个谐波与下一个谐波之间的距离平均在一起,您将找到基波,但这会如果任何一个峰值被遗漏,或者包含额外的峰值,或者如果信号是对称的并且只包含奇次谐波(1f、3f、5f),则失败。您需要找到模式,然后丢弃异常值,然后进行平均。这可能是一种容易出错的方法。
您还可以对原始波形进行自相关。从概念上讲,这意味着将波形的副本滑过自身,并找到与自身最佳对齐的延迟(这将是一个完整的周期)。在正常实现中,we use the FFT, though, to speed it up .自相关基本上是
correlation = fftconvolve(sig, sig[::-1], mode='full')
关于flash - 使用 computeSpectrum() 进行音调检测返回 FFT 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6283104/
我可以在Internet上找到的所有示例都只是将函数computeSpectrum的结果数组可视化,但是我要承担其他任务。 我生成一个音符,我需要通过分析结果数组来说出正在播放的音符。我发现我需要将函
Netstream仅作为声音? 我正在尝试将来自网络流的声音放入Sound变量,以便像this tutorial一样可视化它。 Adobe ActionScript 3.0 *访问原始声音数据 问题是
我正在使用 Flash Player 10.3 的 Actionscript 3.0 进行开发 我正在使用 计算频谱()在加载的 .mp3 上 运行 *Event.ENTER_FRAME* 以获取 b
我只是想了解从 computeSpectrum(bytes,true,0) 发回的值是什么意思。对于我从字节数组中读取的每个浮点数,我的值范围从 0 到 1,但每个值是否表示赫兹的范围。 最佳答案 由
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 2年前关闭。 Improve thi
我习惯于使用 SoundMixer.computeSpectrum,但我需要从麦克风中即时获取一些数据(我不能将 SoundMixer 与麦克风一起使用)。 我在转换 FFT 数据(来自 this c
我是一名优秀的程序员,十分优秀!