m_mmr = waveOutOpen(0,WAVE_MAPPER,&m_Format,0,0,WAVE_FORMAT_QUERY);
if( MMSYSERR_NOERROR != m_mmr )
{
return PLAY_USUAL_ERROR;
}
m_mmr = waveOutOpen(&m_hWaveOut,WAVE_MAPPER,&m_Format,(DWORD)waveOutProc,(DWORD)this,CALLBACK_FUNCTION); waveOutSetVolume(m_hWaveOut,lVol)
我播放的声音是G.726解码后,通过waveOutPrepareHeader进行播放的。调用waveOutSetVolume(m_hWaveOut,lVol),系统声音也跟着减小。怎样能独立起来?音频播放以前没做过。在网上也找不到相关资料,我想问一下有没有更好的音频播放方式。
还有就是怎么修改音频的音量的,音频流里应该有管理本文件音量的标志吧。有什么算法吗?有什么电子书没有,我想把音频学得深一点。不知道怎么搜索编程相关的音频播放的书。
if( MMSYSERR_NOERROR != m_mmr )
{
return PLAY_USUAL_ERROR;
}
m_mmr = waveOutOpen(&m_hWaveOut,WAVE_MAPPER,&m_Format,(DWORD)waveOutProc,(DWORD)this,CALLBACK_FUNCTION); waveOutSetVolume(m_hWaveOut,lVol)
我播放的声音是G.726解码后,通过waveOutPrepareHeader进行播放的。调用waveOutSetVolume(m_hWaveOut,lVol),系统声音也跟着减小。怎样能独立起来?音频播放以前没做过。在网上也找不到相关资料,我想问一下有没有更好的音频播放方式。
还有就是怎么修改音频的音量的,音频流里应该有管理本文件音量的标志吧。有什么算法吗?有什么电子书没有,我想把音频学得深一点。不知道怎么搜索编程相关的音频播放的书。
查 MSDN ,waveOutSetVolume 是改变波形设备的音量,不是改变文件或者音频数据。
波形音频,通过改变数据,可以使波形变小。欲知详情,请看这本书:『Windows程序设计』的倒数第二章『声音与音乐』下载地址:http://blog.csdn.net/zaodt/archive/2007/11/25/1901332.aspx