如何在 Mac OS X 上使用C++播放声音
How do I play sounds with C++ on Mac OS X?
我正在更新二十年前编写的C++程序,以运行涉及声音精确启动和停止的科学实验。该程序还需要能够控制播放音量,暂停声音或在指定位置启动声音,循环声音指定的次数以及控制通道映射。
研究人员希望在现代Mac OS X上运行该程序,但我以前从未在Mac上进行过任何开发。在Mac上C++实现上述目标的最简单方法是什么?
CoreAudio
似乎太复杂了。 NSSound
似乎拥有我想要的所有功能,但据我所知,它仅在 Objective-C 中可用?是否可以将Objective-C与C++混合使用?还是我应该考虑使用 QuickTime
SDK?
感谢您的任何帮助。
是的,你可以混合使用Objective-C和C++。 它是一种称为Objective-C++的混合语言。 如果NSSound
具有您需要的所有功能,那就去做吧;如果没有,CoreAudio是要走的路。 设置和集成更大的库(如QuickTime,OpenAL或FMOD)将更具挑战性。
是的,你可以混合使用Objective-C和C++。Objective-C只是添加了一些东西的C,同样的东西可以叠加在C++之上,而不是得到Objective-C++(特别是Objective-C++没有Objective-C中的C功能,但没有C++)。
如果您需要非常低的延迟,直接使用 CoreAudio 可能会很有用。
另一种选择可能是OpenAL,它可以作为另一个内置框架OpenAL.framework使用。
相关文章:
- 如何在C++中播放声音?
- 有没有办法毫不拖延地播放声音?
- 在不打开应用程序的情况下在MinGW c++中播放声音(.wav)文件
- 如何在QT中飞溅之前播放声音?
- 计时器达到零时如何播放声音?
- 使用MinGW播放声音
- 如何从McIsendstring()中解决此错误并使其播放声音
- 如何在 c++ 中播放声音
- 视觉 在C++中正确使用播放声音功能
- 切换音频设备时播放声音的SDL问题
- 有没有一种简单的方法可以使用SFML在后台线程中播放声音
- 如何使用7.1音频系统sfml播放声音
- 在做其他事情时,在C 中播放声音
- 当Windows XP(32位,SP3)播放声音时,随机应用程序暂停半秒钟
- 在 DirectX Windows 8 应用中播放声音
- C 确定是否播放声音
- 播放 C/C++ 声音的最简单方法
- 无法使用适用于Android的Qt使手机播放声音或振动
- 与CocosDenshion一起按顺序播放声音
- Qt c++在按键时播放声音 - 几秒钟后停止工作