音频开发
gkzscs
熱愛創新,不走尋常路。忠於游戲,喜歡《雙截龍》、《三國志》、《仙劍奇俠傳》、《LOL》等等……
希望能找到一起玩的小夥伴~
展开
-
WAVE播放
注意事项1.使用mmioRead函数读取WAV文件数据时,在文件指针到了尾部以后,或者读取的数据不够的时候,即使初始化了缓冲区,它也会随机填充数据。因此,pHdr->dwBufferLength不能大于真实的数据长度,否则播放最后一个数据块时会引起噪音。2.在waveOutOpen函数使用回调函数时,注意waveOutReset死锁的问题。3.在调用waveOutWrite函数播放音频原创 2017-01-02 14:36:27 · 39656 阅读 · 0 评论 -
WAVE录音
波形音频的录制与播放相似,同样需要使用回调机制。WAVE录音的基本流程1.查询系统使用具备录制波形音频的输入设备,调用waveInGetNumDevs函数来获取设备数目;2.检查波形音频输出设备性能以确定设备是否支持所需录制的波形音频格式,调用waveInGetDevCaps函数;3.打开波形音频输入设备,调用waveInOpen函数;4.构造WAVE音频信息头结构WAVEHD原创 2017-01-02 15:00:03 · 39424 阅读 · 0 评论 -
DirectSound回放
DirectSound回放的基本流程1.创建DirectSound对象;2.设置设备的协作等级;3.创建缓冲区并设置播放格式;4.调用播放和控制函数实现声音的播放和控制。详细步骤:1.枚举系统输出声音设备,调用DirectSoundEnumerate函数;2.创建DirectSound对象,调用全局函数DirectSoundCreate8可以创建一个IDirectSou原创 2017-01-03 16:13:11 · 39306 阅读 · 0 评论 -
DirectSound录音的基本流程
DirectSound录音的基本流程1.枚举系统录音设备,调用DirectSoundCaptureEnumerate函数;2.创建设备对象,调用DirectSoundCaptureCreate8或DirectSoundFullDuplexCreate8函数可直接创建;3.获取录音设备的性能,调用IDirectSoundCapture8::GetCaps方法;4.创建录音缓冲区,调用原创 2017-01-03 16:47:34 · 39834 阅读 · 0 评论