用C ++播放声音

时间:2010-11-28 20:06:10

标签: c++ audio

我需要用C ++播放声音。 它应该兼容所有平台。

谢谢,

goerdy

4 个答案:

答案 0 :(得分:4)

尝试OpenAL,FMOD或SDL_mixer。选择范围很广。

答案 1 :(得分:4)

std::cout << "\a\a\a\a\a\a\a\a";

)))

答案 2 :(得分:2)

我的建议是使用OpenAl(3D跨平台音频API)

它非常容易学习,并且意味着拥有与OpenGl类似的编程流程。它是免费的,并有不同的扩展,以利用声卡。 OpenAl有一个类似于OpenGl的Utility Toolkit(GLUT)的库,叫做freealut。它使事情更简单。

这可能是一个开始的好地方: http://www.devmaster.net/articles/openal/

该代码中的某些功能已弃用,但阅读文档后,您将能够更新它。

devmaster教程还教你如何将ogg vorbis(免版税)文件加载到内存中并播放它们。你需要下载并构建libvorbis和libogg才能做到这一点,但是有很好的文档,如果你使用的是Visual Studio,已经有了解决方案。

Creative Labs(最大的声卡制造商)是该项目的主要贡献者这一事实对它有利。硬件不会被忽略。

最后,请记住下载OpenAl SDK并链接到正确的库并包含目录。总有很多人要求存储在其中的特定文件。

答案 3 :(得分:0)

“兼容所有平台”是一个很高的订单。毕竟,“所有平台”包括汽车中的控制器,核电站中的调节器以及网络中的路由器。

如果您的意思是“所有桌面平台”,您可能会有更多的运气。虽然不可能在100%标准C ++中产生声音,但仍有可用的库。但是,我不认为即便是这些也会让你“所有平台”。你是否愿意接受“最常见的平台”?

相关问题