当前位置:  开发笔记 > 编程语言 > 正文

声音处理:应该使用DirectSound还是直接使用Win32 API?

如何解决《声音处理:应该使用DirectSound还是直接使用Win32API?》经验,为你挑选了2个好方法。

我将在以下位置进行申请:

从麦克风录音并在输入上进行一些实时处理

播放MP3文件(常规歌曲),但实时处理输出

我偶尔也会需要在这首歌上播放其他声音,但是我想我可以通过简单地添加缓冲区来做到这一点。

简而言之,我需要同时具有用于记录和播放的循环缓冲区,并且需要每20毫秒左右将即将播放的新数据“馈入”输出缓冲区。

我一直在看DirectSound,但似乎并没有太大帮助。读取和写入输出缓冲区似乎与Win32非常相似,唯一似乎可以帮助在主歌曲上播放“其他声音”的地方。

我应该使用DirectSound,还是应该直接使用原始Windows API?
DirectSound会为我做任何事情吗?

提前致谢!



1> Gregor Brand..:

Directsound API为您提供更好的实时控制。它们也是Windows中使用声音的受支持方式。我的印象是win32 api被弃用了,但是我对此可能是错的。

这个问题很接近你

/sf/ask/17360801/

DirectSound是Windows最好的音频抽象层吗?

最后但并非最不重要的一点,这就是微软必须说的 http://msdn.microsoft.com/zh-cn/library/dd370784(VS.85).aspx



2> joshperry..:

都不行 :)

故事是DirectSound替代了WaveOut,但DirectSound在Vista中已作为DirectAPI加入了DirectInput,并已被WASAPI取代。DirectSound和waveOut在Vista中的用户空间WASAPI之上实现。在XP上,waveOut和DirectSound将馈入相同的内核级Mixer API。

为了整合所有这些接口,请看一下OpenAL之类的东西,它是受支持的音频标准,与OpenGL相同。

推荐阅读
赛亚兔备_393
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有