goertzel-algorithm

    -1热度

    1回答

    我在这里得到了代码: https://naudio.codeplex.com/discussions/270762。 戈泽尔算法是这样的: public double goertzel(List<double> sngData, long N, float frequency, int samplerate) { double skn, skn1, skn2; s

    1热度

    1回答

    我试图想出一种有效的方法来描述两个窄带音调相隔约900kHz(一个在100kHZ左右,一个在1MHz左右,一旦转换为基带)。随着时间的推移,它们的频率不会有太大变化,但可能会有我们想要监测的幅度变化。 每个音的宽度大约为100Hz,我们需要长时间描述这两个动物,直到分辨率约为0.1Hz。样品以超过2M采样/秒(TBD)进入以充分获得最高音调。 我试图避免(如果可能的话)对数据每秒进行一次蛮力> 2

    1热度

    1回答

    我试图近乎实时地检测一些音频信号(纯正弦)。我知道我会得到一些延迟。 在一开始,我尝试在75ms的持续时间内检测一些10Khz的音调。这是通过Goertzel过滤器实现的。这个问题的首选技术是什么?我想制作一个Goertzel总能检测到的缓冲区,但这听起来很糟糕,因为我不知道信号何时开始。你能给我一些帮助或想法吗?由于

    3热度

    1回答

    我需要一种算法来检测纯正弦信号的频率和相位。输入信号的频率在0到100 Hz之间变化。 的信号的值被用为20kHz的频率捕获(所以我得到每秒20.000值) - 这是给定的,并且不能被改变。我需要检测此输入信号的频率和相位,并使用PWM产生具有与输入信号相同频率的MCU中断。 任何人都可以建议使用什么算法来做到这一点简单和高效?也许Goertzel算法?

    0热度

    2回答

    我目前正试图通过声音发送和接收一些BPSK调制数据。目前,我使用goertzel的算法作为解调的带通滤波器。我没有正式的信号处理培训。 鉴于44100Hz的采样率和100的桶大小,我的直觉认为,以441Hz的频率倍数产生波会导致我获得一个相对恒定的相位。在其他频率下,我检测到的相位应该漂移。 但是,当我在当前的实现中检测到一秒钟内(大约90度)产生的声波时,会出现相位漂移。这是我的预期还是我执行g

    0热度

    1回答

    我的SIP电话正在PCMU有效负载(不使用rfc 2833支持的有效载荷格式)中的常规rtp数据包中发出音调(回铃音)。要检测rtp数据中是否存在语音或语音,应使用Goertzel算法。我是这个域的新手,并且无法理解如何从接收到的rtp数据包向Goertzel算法提供输入?或者这个算法是否将模拟信号作为输入?

    0热度

    1回答

    我试图在IOS 8中实现一个吉他调谐器,并从s.o中获得了一些代码。谁已经意识到这一点:它处理Goertzel算法,短期内比较固定频率的大小 - 定义为srings E-A-D-G-B-E。 - 在这里,其被放置在CoreAudio的回调方法的程序: int currentString(SInt16 *samples, int N) { int note0 = 82; int note1 =