在.Net/C#中播放音频

Ric*_*ter 10 c# audio buffer playback

我是一位多年经验丰富的MFC程序员,近年来他一直在使用Objective C for Mac和iOS开发商业应用程序 - 我正在努力加快.Net和C#的速度(我很快就会这样做)需要将我的一个商业应用程序从Mac转换为PC).

我现在已经完成了几本书的练习,并且为了更熟悉.Net(和C#),我决定将我的一个非商业应用程序转换为.Net作为学习练习一切顺利(界面正常,数据结构都很好)但我需要能够播放音频.

我的Mac应用程序从一系列数学公式生成音频 - 想象一个波浪发生器 - 不完全相同但相似.在Mac上,我将音频生成为16位带符号的原始音频,使用Core Audio设置音频输出路由,然后在音频路由需要新的音频缓冲区时进行回调(这样我就可以动态生成音频) .

我需要在PC上做同样的事情.不幸的是,我发现MSDN文档是"无法看到树木"的案例,因为有大量的文档.我可以找到能让我加载和播放mp3/wav等文件的类,但我需要实时生成音频.任何人都可以指出我正确的方向找到一些东西,可以让我在播放时动态填充缓冲区吗?

谢谢

yms*_*yms 8

我在几个项目中使用了这个样本,结果很好.它基本上是使用P/Invoke的Windows Waveform Audio API的.Net包装器.其他选择: