在C++中,在窗口中播放示例缓冲区最常见的方式是什么

What is most common way to play sample buffer in windows in C++?

本文关键字:常见 方式 是什么 缓冲区 C++ 窗口 播放      更新时间:2023-10-16

我正在开发一个跨平台的音频编辑器(C++),它具有特定于平台的AudioDevice类实现。这个类播放内存缓冲区中的声音。主要操作系统是Linux,但有时我也会关注windows端口。

当前的windows实现使用waveOutOpen()waveOutPrepareHeader()waveOutWrite()接口,我认为它已被弃用(我不知道确切的原因)。但最重要的是,这个界面仍然在Windows7中得到支持和工作,我不认为微软会扼杀它的原因

不管怎样,我应该换一个更好的界面吗?

wave函数已经被弃用好几年了(主要是在NT平台上支持DirectX之后)。您应该使用DirectX(DirectSound和/或DirectShow)API。

http://msdn.microsoft.com/en-us/library/windows/desktop/ee416960(v=vs.85).aspx

http://msdn.microsoft.com/en-us/library/windows/desktop/dd375454(v=vs.85).aspx