当前位置:
文档之家› DirectSound开发手册
DirectSound开发手册
中华视频网: Ffmpeg 工程组: 佰锐科技:
DirectSound 开发指南
作者:智慧的鱼
中华视频网 整理
一、DirectSound 简介(Introduction to DirectSound)
六、Wave 文件格式以及底层操作函数 API 使用技巧 .................................................. 36
6.1RIFF 文件结构 .........................................................................................................................36 6.2WAVE 文件结构 .......................................................................................................................38 6.3avi 文件结构 .............................................................................................................................39 6.4 多媒体文件输入输出 ..............................................................................................................39 6.5 波形音频的编程(wave 系列函数) .....................................................................................40 6.6AVI 编程 ...................................................................................................................................40
五、DirectSound 接口函数和指针简介 ........................................................................... 35
5.1DSound 常用的接口指针 .........................................................................................................35 5.2Dsound 函数 .............................................................................................................................35 5.3Dsound 常用的结构 .................................................................................................................36
DirectSound 开发指南
作者:智慧的鱼
中华视频网 整理
绪言
DirectSound 是微软多媒体技术 DirectX 的组成部分,封装了大量音频处理 API 函数, 它可以提供快速的混音、 硬件加速功能, 并且可以直接访问相关设备, 当然,最主要的是它提供的功能与现有的设备驱动程序保持兼容性。 重放, 也可以通过控制硬件和相应的 DirectSound 允许进行波型声音的捕获、 驱动来获得更多的服务。 DirectSound 的优势当然和 DirectX 的其它组件一样——速度,它允许你最大 效率的使用硬件,并拥有良好的兼容性。 中华视频网 ( ) 一直致力于语音视频技术的研究和推广, 由于目前有关 DirectX 系列的编程资料比较少,最主要的参考资料还是 DirectX SDK 文档,特别是对于初学者来说,相对来说比较难以入门。早期也收编过多 篇“智慧的鱼”的文章,鉴于本册《DirectSound 开发指南》是一篇比较实用的 关于 DirectSound 编程手册,特收集整理成册,以供后来者学习。 非常感谢“智慧的鱼”前期的辛勤劳动和无私的分享精神!
#include <windows.h> #include <mmsystem.h> #include <mmreg.ht;
如果你还想使用 Dsound 的 API 的话, 那么你就要在你的 vc 开发环境中添加 Dsound..lib 库, 如果你的程序还提示有很多的外部链接找不到, 那么我建议你可以将下面的库都添加到你的 工程中 comctl32.lib dxerr9.lib winmm.lib dsound.lib dxguid.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib,这些是我从 Dsound 提供的例子中得到的,肯定够你用的,ok,开发环境配置 好了。 下面我们简单的来学习一下如果通过 Directsound 的 API 播放声音,既然是 breif overview, 那么详细的内容你可以参考下面的一节内容,这里只是简单的介绍一下播放声音的步骤。 第一步,创建一个设备对象。 在你的代码中你可以通过调用 DirectSoundCreat8 函数来创建一个支持 IDirectSound8 接口 的对象,这个对象通常代表缺省的播放设备。当然你可以枚举可用的设备,然后将设备的 GUID 传递给 DirectSoundCreat8 函数。 注意,Directsound 虽然基于 COM,但是你并不需要初始化 com 库,这些 Directsound 都帮 你做好了,当然,如果你使用 DMOs 特技,你就要自己初始化 com 库了,切记。 第二步,创建一个辅助 Buffer,也叫后备缓冲区
3.1Dsound 设备对象(DirectSound Devices) ...................................................................................6 3.2Dsound 的 buffer 对象(DirectSound Buffers) ............................................................................9 3.3Using WAV Data .......................................................................................................................15 3.43-D Sound .................................................................................................................................16 3.5 增加声音特技 Using Effects ...................................................................................................21 3.6 录制 Capturing Waveforms......................................................................................................22
DirectSound 开发指南
作者:智慧的鱼 编辑:中华视频网
中华视频网: 佰锐科技:
DirectSound 开发指南
作者:智慧的鱼
中华视频网 整理
目 录
绪言 ....................................................................................................................................... 3 一、DirectSound 简介( 简介(Introduction to DirectSound) ................................................ 4 二、DirectSound 初体验( 初体验(Getting Started with DirectSound) ................................... 4 三、DirectSound 实用开发技巧 Using DirectSound........................................................ 5
四、DirectSound 开发高级技巧 ....................................................................................... 28
4.1Dsound 驱动模型(DirectSound Driver Models) .................................................................28 4.2 设置硬件的扩展属性(System Property Sets) ....................................................................28 4.3Property Sets for DirectSound Buffers......................................................................................28 4.4 如何优化 Directsound(Optimizing DirectSound Performance) .........................................30 4.5 向主缓冲区写数据(Writing to the Primary Buffer) ...........................................................32