本文介紹了使用WindowsAPI實(shí)現(xiàn)播放PCM音頻的方法,同前面一篇使用WindowsAPI獲取錄音音頻的方法原理具有相似之處,這里就不再詳細(xì)介紹具體的函數(shù)與結(jié)構(gòu)體的參數(shù),相同的部分加以省略,只介紹主要的功能部分代碼。如下所示:
1. waveOutGetNumDevs
2. waveOutGetDevCaps
3. waveOutOpen
回調(diào)函數(shù):
void CALLBACK PlayCallback(HWAVEOUT hwaveout, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2);
4. waveOutPrepareHeader
5. waveOutWrite:執(zhí)行后立即開(kāi)始播放,當(dāng)前緩沖區(qū)播放完成會(huì)調(diào)用回調(diào)函數(shù)
這里需要注意:
為了能夠?qū)崿F(xiàn)連續(xù)播放效果,在第4部需要準(zhǔn)備兩個(gè)或兩個(gè)以上的播放數(shù)據(jù)。
感興趣的朋友可以對(duì)比前面的文章手動(dòng)調(diào)試一下本文所述實(shí)例。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注