我想用 C++ 输出音频流(异步)。
我已经看过here , here ,和here但它已经过时并且链接已损坏。
我确信这是一个简单的任务,但我在网络上找不到任何地方可以做到这一点。我更喜欢整洁、面向 STL 的东西(例如我可以像在屏幕上写入一样写入的设备?)。由于我使用的是 VC2013,我可以使用 Windows 预编译头,但更愿意避免使用它。
谢谢
更新:
我试图接近 STL,但从表面上看,我做不到,所以我会坚持使用 Windows API。
PlaySound 不合适,因为我的数据不在文件中,而是在内存的缓冲区中。
我尝试过使用 waveOutWrite
但我想顺序播放两个声音,即在 t=0 时启动声音 2 秒,在 t=1 时启动声音 3 秒(重叠)
最佳答案
输出音频的方式有很多种,我无法在此一一列举。
由于您使用的是 Windows,因此您可以使用 MS API,例如 Core Audio或DirectSound .
您还可以使用跨平台 API,例如 FMOD Ex .
无论如何,输出音频并不困难,但也并非微不足道;对于一个正常工作的音频流示例,您应该期望约 10 个 API 调用。
关于C++ 音频输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27505887/