首页 > 代码库 > 使用WindowsAPI实现播放PCM音频的方法
使用WindowsAPI实现播放PCM音频的方法
这篇文章主要介绍了使用WindowsAPI实现播放PCM音频的方法,很实用的一个功能,需要的朋友可以参考下
<iframe id="h57167j05x473u2866688" src="http://pos.baidu.com/s?pss=1353x2198&ti=%E4%BD%BF%E7%94%A8WindowsAPI%E5%AE%9E%E7%8E%B0%E6%92%AD%E6%94%BEPCM%E9%9F%B3%E9%A2%91%E7%9A%84%E6%96%B9%E6%B3%95_C%20%E8%AF%AD%E8%A8%80_%E8%84%9A%E6%9C%AC%E4%B9%8B%E5%AE%B6&ps=674x179&drs=3&cpl=0&chi=0&cce=true&cec=gb2312&tlm=1490779267&uc=1366x728&pis=-1x-1&sr=1366x768&ccd=32&cja=true&cmi=0&col=zh-cn&cdo=-1&tcn=1494300087&di=u2866688&dc=2&dcb=___adblockplus&dtm=HTML_POST&tpr=1494300086936&ari=2&ctxant=0&exps=111000&dis=0<u=http%3A%2F%2Fwww.jb51.net%2Farticle%2F53860.htm<r=%20https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DySkxVY5pMglVVuXCSNnjiL6PRl7w8M0Uw3jQrqVXL_6XZIe2dfp7mBX-LOTfwSag%26wd%3D%26eqid%3Dc80afe040000d8430000000659113514&conwid=680&conhei=100" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" align="center,center" width="680" height="100"></iframe>
本文介绍了使用WindowsAPI实现播放PCM音频的方法,同前面一篇使用WindowsAPI获取录音音频的方法原理具有相似之处,这里就不再详细介绍具体的函数与结构体的参数,相同的部分加以省略,只介绍主要的功能部分代码。如下所示:
1. waveOutGetNumDevs
2. waveOutGetDevCaps
3. waveOutOpen
回调函数:
?
1 | void CALLBACK PlayCallback(HWAVEOUT hwaveout, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2); |
4. waveOutPrepareHeader
5. waveOutWrite:执行后立即开始播放,当前缓冲区播放完成会调用回调函数
这里需要注意:
为了能够实现连续播放效果,在第4部需要准备两个或两个以上的播放数据。
感兴趣的朋友可以对比前面的文章手动调试一下本文所述实例。
使用WindowsAPI实现播放PCM音频的方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。