这是一个理论问题,如果在不同的网站上提出更好的问题,你会不会提供网站,而不是关闭问题(我会删除这个问题)。我知道meta.stack ...是关于该网站的问题,但不知道在哪里可以找到一般理论问题。
我知道Shannon定理告诉我们,如果每个正弦波周期至少有2个样本,我们就有足够的信息来重建 正弦曲线和奈奎斯特定理告诉我们,我们应该以最高频率的两倍进行采样,但我对从非正弦波中获得此频率感到困惑。周期性的标准不是重复相同的活动吗?语音很少是正弦波,因此在将语音从模拟转换为数字时,如何实现奈奎斯特定理(即我们如何知道频率)?
答案 0 :(得分:1)
此问题的更好网站是http://dsp.stackexchange.com。以下是与您的问题有些相似的问题的答案(但有更复杂的细节):https://dsp.stackexchange.com/a/8078/25504
简而言之,傅立叶快速变换(FFT)用于将复杂信号分解为等效的正弦曲线。
以下是介绍此流程的演示文稿: http://astro.pas.rochester.edu/~aquillen/phy103/Lectures/D_Fourier.pdf
答案 1 :(得分:1)
专注于理解时域中的模拟曲线(音频)与频域之间的差异。它使用不同的表示形式的相同信息。当ADC(模数转换器)对该曲线进行采样时,其数字输出是时域曲线上的点(其中时间在X轴上绘制,幅度在Y上)。只要样本发生的频率至少是该曲线的最高频率摆动的两倍,就会捕获信息负载。这适用于任意曲线(非正弦曲线)。
使用离散傅里叶变换(fft),您可以将此信息转换为其频域对应,同时保留恢复源模拟曲线所需的所有信息。这是表示使用正弦波的地方。 Joseph Fourier规定了fft用作一组sin / cos波存储的逻辑,以及相位和幅度,正常音频曲线的频域表示,其在时域中更自然地表示。
总结:任何模拟曲线(非正弦或其他)都可以作为一组(理论上无限集,取决于所需的精度)存储在频域中...每个结构定义一对cos和sin波的频率,幅度和相移,每个cos和sin波输出一个正常的正则正弦曲线。通过将所有这些频域正弦曲线的输出合成并组合在一起,它将精确地生成精确的输入模拟曲线,此时该曲线将回到时域
作为旁注,您可以从时域到频域,也可以在频域中进行编辑,然后无休止地转换回时域
至于getting the Nyquist frequency
......您只需确定必须捕获的最高频率,将其加倍并将此频率用作采样率。当然,在该奈奎斯特频率下源音频曲线的保真度受到损害,因为其原始形状被简化为两点(两个样本)。每个源曲线周期的样本数量越多,自然会允许更高的保真度(记录沿曲线的更多点)。顶部提示:以所需最高频率的倍数
最近,我一直在编打FFT api的来电,这段视频详细介绍了一些关于通过FFT调用时返回的频域数据集的低级细节的最佳信息。在您的时域缓冲区Discrete Fourier Transform - Simple Step by Step
中