【发布时间】:2013-05-07 04:47:21
【问题描述】:
我正在尝试实现一个使用低音音频 (http://www.un4seen.com/) 绘制音频频谱的应用程序。我的理解是我必须:
从流中获取 FFT 数据 浮动[]缓冲区=新浮动[256]; Bass.BASS_ChannelGetData(handle, buffer, (int)(BASS_DATA_FFT_COMPLEX|BASS_DATA_FFT_NOWINDOW));
对于每个 fft,计算它的大小
对 FFT 应用窗口函数(汉宁或汉明都可以)
然后,画一个漂亮的频谱分析
但问题是:
- BASS_DATA_FFT_COMPLEX BassData 似乎无法访问。我可以看到它应该在文档http://www.bass.radio42.com/help/html/a13cfef0-1056-bb94-81c4-a4fdf21bd463.htm 中可用,但我无法使用它,因为我收到 BassData 不包含此类枚举的错误
- 此外,我想知道我所做的是否正确。要绘制频谱,我应该简单地绘制 fft 的幅度还是绘制 fft 的幅度与该 fft 的频率?在这种情况下,我将如何获得与该 fft 对应的频率?我不介意从任何语言(C/C++、C#、VB、Java 等)截取的任何代码
注意:我不确定这是否有帮助,但这是我正在使用的: 使用 Microsoft Chart 控件进行绘图。 带有 BASS.NET API 的 C# http://www.bass.radio42.com/ 非常感谢任何帮助和建议
【问题讨论】:
标签: audio signal-processing bass.dll