当前位置: 首页 > 知识库问答 >
问题:

webaudioapi/javascript中低频信号的快速傅立叶变换

洪越泽
2023-03-14

我有一个8000 Hz采样率的单通道波。

我需要实时分析5赫兹到300赫兹之间的频率,重点是10到60赫兹的信号。

我最初的想法是将8000 Hz的样本放入缓冲区,收集大约32000个样本。然后,在其上运行32000窗口大小的傅立叶变换。

这里的理由是,对于低频信号,您需要更大的窗口大小(对吗?)

然而,如果我试图实时显示这个信号,那么AudioAnalyzerNode似乎不是一个好的选择。我知道WebAudio API允许我获取原始数据,但理想情况下,AudioAnalyzerNode能够基于之前的32000个样本运行新的fft,即使新获得的样本量较小。此时,fft数据似乎每四秒钟只更新一次。

我是否必须创建一个特殊的“running bin”,以便显示器每4秒更新一次以上?或者,我可以使用的最小窗口大小是多少才能在这个范围内获得合理的值?32000的窗户够大吗?

我在javascript中使用WebAudio API分析器节点,但如果我必须获取原始数据,我也愿意将库更改为javascript中的另一个库。

共有1个答案

鲜于阳成
2023-03-14

使用AnalyserNode,您可以随时调用getFloat频率数据。这将返回最后fftSize样本的FFT。这些被平滑在一起。有关完整详细信息,请参阅AnalyserNode接口

此外,WebAudio规范允许您使用用户可选择的采样率构建音频上下文。您可以将采样率设置为8000 Hz。然后,FFT可以具有更高的分辨率和更低的复杂性。

但是,我认为还没有任何浏览器实现了这种能力。

另一种选择是获取支持的音频卡,允许8000 Hz的采样率,并设置您的系统将其用作默认音频输出设备,然后音频上下文将具有8000 Hz的采样率。

 类似资料:
  • 目标 在这一节中,我们将学习 使用OpenCV查找图像的傅立叶变换 利用Numpy中的FFT功能 傅立叶变换的一些应用 我们将学到以下函数:cv2.dft(),cv2.idft()等 理论 傅立叶变换用于分析各种滤波器的频率特性。对于图像,可以使用2D离散傅里叶变换(DFT)来查找频域。被称为快速傅立叶变换(FFT)的快速算法被用于DFT的计算。有关这些的细节可以在任何图像处理或信号处理的教科书中

  • 目标 在本节中,我们将学习 使用OpenCV查找图像的傅立叶变换 利用Numpy中可用的FFT函数 傅立叶变换的某些应用程序 我们将看到以下函数:cv.dft(),cv.idft()等 理论 傅立叶变换用于分析各种滤波器的频率特性。对于图像,使用2D离散傅里叶变换(DFT)查找频域。一种称为快速傅立叶变换(FFT)的快速算法用于DFT的计算。关于这些的详细信息可以在任何图像处理或信号处理教科书中找

  • 本文向大家介绍Opencv实现傅里叶变换,包括了Opencv实现傅里叶变换的使用技巧和注意事项,需要的朋友参考一下 傅里叶变换将图像分解成其正弦和余弦分量,它将图像由空域转换为时域。任何函数都可以近似的表示为无数正弦和余弦函数的和,傅里叶变换就是实现这一步的,数学上一个二维图像的傅里叶变换为:   公式中,f是图像在空域的值,F是频域的值。转换的结果是复数,但是不可能通过一个真实图像和一个复杂的图

  • 我不太精通Java,所以请保持简单。不过,我会尽力理解你发布的所有内容。这是我的问题。 我已经编写了代码来记录来自外部麦克风的音频并将其存储在. wave中。存储此文件与存档目的相关。我需要做的是对存储的音频进行FFT。 我的方法是将wav文件作为字节数组加载并对其进行转换,问题是1。我需要摆脱一个标题,但我应该能够做到这一点和2。我得到了一个字节数组,但是我在网上找到的大多数(如果不是全部)FF

  • GitHub:https://github.com/programmerb/fourier-transform-terminal-/blob/master/classes/cooley-tukey.h 我已经尝试将参数更改为引用,并将私有成员添加到cooley-tukey类中,但我得到了同样的错误。 库利-图基类: 部分错误: FFT-递归函数(误差来源):

  • 使用“选择主体”、“快速选择”或“魔棒”工具在 Photoshop 中快速建立选区。 选择主体只需一次单击即可选择图像中突出的主体 通过选择主体命令,您只需单击一次,即可选择图像中最突出的主体。凭借先进的机器学习技术,选择主体功能经过学习训练后,能够识别图像上的多种对象,包括人物、宠物、动物、车辆、玩具等等。 在 Photoshop 中,可通过以下方式之一访问选择主体: 在编辑图像时,选择选择 >