低级音频编程

Mid*_*das 1 audio low-level

我想知道; 像Cubase和Audacity这样的音频软件是否使用PlaySound调用?

我在哪里可以了解低级音频编程?至于我在网上找到的信息,MCI似乎是Windows中最低级别的音频API ...

谢谢

编辑:我不要求仅针对Windows的信息.

Fab*_*sen 7

有几种音频API可供选择.最古老和最广泛支持的是waveOutAPI - 查找waveOut以MSDN 开头的函数.一个稍微新一点的是DirectSound,它更倾向于游戏,但它的主要特点是waveOut是专业音频软件不使用的定位3D声音(它也应该具有比waveOut更低的延迟,但从未真正实现过).对于低延迟音频,有ASIO.专业音频应用程序支持此API,但并非所有驱动程序都支持(它是专业声卡的标准功能,但不是游戏或板载硬件).ASIO可以提供比waveOut或DirectSound低得多的延迟.最后,还有内核流媒体接口,它是仍可从用户模式代码访问的最低级音频接口.这是Windows内部混音器的直接管道,它将当前正在播放声音的所有应用的输出组合到发送到声卡的信号中.尽管如此,这几乎没有记载.有一个叫做ASIO4ALL(只是google it)的驱动程序,通过在内核流接口上实现ASIO API,在没有ASIO驱动程序的声卡上提供ASIO支持.