我正在尝试使用原始音频数据来操作和播放 OpenAL。到目前为止,一切都很好,因为我已经编写了自己的 .wav 文件阅读器并且一直在使用它。但是,我的目标是让人们导入自己的音乐。这意味着我的程序应该支持各种音频格式和编解码器,至少包括 MP3、Ogg 和 FLAC。
现在与读取 .wav 文件不同,其他格式并不那么简单。现在我可以编写自己的阅读器和/或使用各种现有库的包装器,例如 libsnd 和 ogg 库,但我宁愿不重新发明轮子。所以我的问题是:是否已经有一个库允许从 Mono 中的各种格式获取原始字节音频数据?
我看过 NAudio,但它高度依赖于各种 Win32 API 调用,这对我来说是不行的,因为我打算让我的程序多平台。目前我只关心获取数据用于读取和播放目的,我不打算操作、混合或任何其他类型的计算工作。
编辑: 我忘记的一个重要因素是许可。我更喜欢基于 MIT 的许可或其他允许我在商业软件中免费使用该库的开放许可。例如,BASS.Net 库是不可能的,因为许可库超出了我的预算。
EDIT2: irrKlang 不支持 Mono。