【问题标题】:Web Audio API: FFT data in firefox differ from those in chrome, when using media stream?Web Audio API:当使用媒体流时,Firefox 中的 FFT 数据与 chrome 中的不同?
【发布时间】:2014-09-04 14:08:40
【问题描述】:

我正在尝试使用网络音频 API 对从麦克风获取的数据进行频率分析。我需要实时数据(尽可能多的实时数据,窗口大小为 1024 个样本)。

我使用createMediaStreamSource 作为源节点。我使用 getByteFrequencyData 方法 (sample size = 1024) 使用来自 Analyzer 节点的 FFT 数据。

来自 FFT 数组的数据在 chrome 和 firefox 中完全不同(在 firefox 中,频谱的大小总是更小(更小的向量维度)和更小的值(更低的值),而不是 Chrome,与 Chrome 相比,它看起来还可以例如 Audacity 中的其他 FFT 算法)。即使我使用来自https://webaudiodemos.appspot.com/AudioRecorder/index.html 的录音机并将录音放入其中一个音频分析器应用程序(windows 上的大胆),我也会得到this (image)

我想知道为什么 Firefox 中的频谱与 chrome 中的频谱不同。

感谢您的帮助。

【问题讨论】:

    标签: javascript api audio web


    【解决方案1】:

    这是因为我们 (Firefox) 自动对输入应用处理(回声消除、噪声抑制)并在输入音频流上使用 16kHz 采样率。

    这将会改变,但现在就是这样,对此感到抱歉。

    将来可以请求输入采样率并停用任何处理。

    【讨论】:

    • 感谢您的回答,我们认为这与 Firefox 处理有关,只是不确定。所以这个答案很有帮助。
    猜你喜欢
    • 2013-06-11
    • 2013-01-25
    • 2013-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-29
    • 1970-01-01
    • 2016-01-31
    相关资源
    最近更新 更多