2

我正在使用NAudio在我的 .NET 项目中播放 MIDI 文件。

我想播放一些 MIDI 音轨(尤其是鼓循环),以便每个声音都映射到某个wavmp3文件。那可能吗?

我是 MIDI 开发的新手,我刚刚听说SoundFont的想法,这可能是我正在寻找的吗?

以前有人试过吗?

更新
不是我有那些波形文件,我只是讨厌计算机上默认 MIDI 设备的声音。

也许我只是需要一个更好的声卡,或者也许有一个具有专业音色的虚拟 MIDI 设备。

更新
阅读有关SoundFont的信息后,我几乎可以肯定这是我正在寻找的解决方案。问题是如何将它与 NAudio 一起使用。

4

1 回答 1

1

为此,您需要一个软件合成器,它可以将 MIDI 音符转换为 PCM 音频。正如您所提到的,一些软件合成器使用声音字体,另一些使用样本,还有一些使用振荡器或物理建模生成声音。

NAudio 不包含软件合成器,构建一个根本不是一项简单的任务(需要了解滤波器、重采样、振荡器、DSP 等知识)。您可能会发现最好的方法是将 NAudio 与VST.net结合使用。这将允许您加载任何 VST 软件乐器(其中有数千种,无论是商业的还是免费的),将您的 MIDI 传递到其中,然后使用 NAudio 将生成的声音写入文件。

话虽如此,如果您只需要一个简单的鼓音序器,NAudio WPF 演示确实包含一个播放鼓样本的示例。

于 2013-05-08T08:39:10.800 回答