使用 C#、DirectX 和 XNA 播放音频和最终用户的要求

Posted

技术标签:

【中文标题】使用 C#、DirectX 和 XNA 播放音频和最终用户的要求【英文标题】:Playing Audio, and Requirements for End-User with C#, DirectX, and XNA 【发布时间】:2009-09-02 21:29:36 【问题描述】:

我正在开发一款 C# 桌面 2D 游戏,并且想要播放音频。

1) 如果我将 DirectX 用于音频,最终用户是否必须在计算机上安装 DirectX? (我认为是的)。

2) 如果我将 XNA 用于音频,最终用户是否仍需要 DirectX 或 .NET Framework 以外的其他任何东西来运行我的程序?

我感觉 XNA 是 C# 爱好者游戏开发的首选。到目前为止,我已经在纯 .NET 中完成了所有工作;我最近才决定不接受框架附带的 SoundPlayer,因为它不能同时播放多个音频文件。

【问题讨论】:

【参考方案1】:

XNA(基于 DirectX)和 DirectX 都需要安装 DirectX 运行时库才能运行。

是的,XNA 是微软在 C# 上进行游戏开发的首选,但也有许多不错的 3rd 方替代品,例如 Tao 和 SlimDX。如果您只想要音频,Tao 特别为 OpenAL 提供了一个很好的包装器:

http://www.taoframework.com/

【讨论】:

以上是关于使用 C#、DirectX 和 XNA 播放音频和最终用户的要求的主要内容,如果未能解决你的问题,请参考以下文章

C# DirectX 音频/视频播放“VFW_E_UNSUPPORTED_STREAM”

如何在 C# 中创建音频频谱

播放任何声音文件(或至少是常见的音频文件)

当另一个声音使用 XNA/XACT 结束时,如何立即播放一个声音?

如何从使用directx c# visual studio播放的视频中获取和处理每一帧(位图图像​​)

几种C#实现播放声音的方法