C# C语言的音频播放和频谱分析库#

C# C语言的音频播放和频谱分析库#,c#,audio,analysis,frequency,C#,Audio,Analysis,Frequency,我想创建一个播放音乐文件的小应用程序(格式并不重要)。困难的部分是:同时我想显示低频(低音)、中频和高频的当前振幅 所以我需要一些简单的光谱分析和回放功能。有没有一个C#音频库可以不费吹灰之力就能做到这一点 本项目的目的是驱动我最近在房间安装的RGB-LED照明系统;-) NAudio:(开源) Bass和Bass.Net:(非商业版免费) Fmod Ex:(非商业用途也免费) 使用Bass进行所需操作非常简单: string filepath =""; Bass.BASS_Init(-1, 4

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

所以我需要一些简单的光谱分析和回放功能。有没有一个C#音频库可以不费吹灰之力就能做到这一点

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

NAudio:(开源)

Bass和Bass.Net:(非商业版免费)

Fmod Ex:(非商业用途也免费)

使用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);

从那里你可以很容易地平均特定频率的频带

Nice,看起来非常容易使用。我要试试看!可惜Bass和Fmod的许可证太贵了。如果你有一个小型开发团队,Fmod的许可证是免费的。你只需要列出他们的图标。