【问题标题】:Audio playback and spectrum analysis libarary for C# [closed]C# 的音频播放和频谱分析库 [关闭]
【发布时间】:2012-09-18 22:16:04
【问题描述】:

我想创建一个播放音乐文件的小应用程序(格式并不重要)。困难的部分是:同时我想显示低频(低音)、中频和高频的当前幅度。

所以我需要一些简单的频谱分析以及播放功能。有没有 C# 音频库可以轻松做到这一点?

这个项目的目的是驱动我最近安装在我房间里的 RGB-LED 照明系统 ;-)

【问题讨论】:

标签: c# audio analysis frequency


【解决方案1】:

NAudio:http://naudio.codeplex.com/(开源)

Bass 和 Bass.Net:http://www.un4seen.com/(非商业免费)

Fmod 例如:http://www.fmod.org/index.html(也可免费用于非商业用途)

使用 Bass 做你需要的事情非常容易:

string filepath ="";
Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_DEFAULT, IntPtr.Zero, null);
int handle = Bass.BASS_StreamCreateFile(filepath, 0, 0, BASSFlag.BASS_SAMPLE_FLOAT);
Bass.BASS_ChannelPlay(handle,false);

然后得到光谱:

float[] buffer = new float[256];
Bass.BASS_ChannelGetData(handle, buffer, (int)BASSData.BASS_DATA_FFT256);

从那里您可以轻松地平均特定频率的频段

【讨论】:

  • 不错,看起来非常易于使用。我试试看!
  • 遗憾的是,Bass 和 Fmod 的许可证太贵了。
  • 如果您有一个小型开发团队,fmod 的许可证是免费的。您只需要列出他们的图标。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-27
  • 1970-01-01
  • 2011-01-09
  • 1970-01-01
  • 2015-10-28
  • 1970-01-01
相关资源
最近更新 更多