《Visual C++.NET多媒体应用开发技术》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:李博轩等编著
  • 出 版 社:北京:国防工业出版社
  • 出版年份:2002
  • ISBN:7118029114
  • 页数:429 页
图书介绍:

第1章 多媒体编程基础 1

1.1 Windows多媒体技术 1

1.1.1 GDI+ 1

1.1.2 MCI 6

1.2 DirectX技术 7

1.2.1 DirectX的优越性 8

1.2.2 DirectX 8.1的新特性 8

1.2.3 DirectX 8.1组件 9

1.2.4 DirectX工具 9

1.2.5 使用COM 12

1.2.6 使用回调函数 21

1.2.7 版本检查 22

1.2.8 编译DirectX应用程序 25

1.2.9 调试DirectX应用程序 26

本章小结 29

第2章 GDI+ 30

2.1 GDI+概述 30

2.1.1 GDI+的结构 30

2.1.2 GDI+接口的结构 31

2.2 直线、曲线和形状 31

2.2.1 矢量图概述 31

2.2.3 椭圆和圆弧 33

2.2.2 画笔、直线和矩形 33

2.2.4 多边形 34

2.2.5 三次样条 34

2.2.6 贝塞尔曲线 36

2.2.7 路径 37

2.2.8 画刷和实心图形 38

2.2.9 开放和闭合曲线 38

2.2.10 区域 39

2.2.11 裁剪 40

2.2.13 直线和曲线的抗混叠(保真) 41

2.3 图像、位图和图元文件 41

2.2.12 压平路径 41

2.3.1 位图类型 42

2.3.2 图元文件 44

2.3.3 绘制、定位和克隆图像 45

2.3.4 裁剪和缩放图像 46

2.3.5 图像编码器 46

2.3.6 多帧图像 49

2.4 坐标系和坐标变换 52

2.4.1 坐标系的类型 52

2.4.2 转换矩阵 54

2.4.3 复合变换 54

2.4.4 全局和局部变换 55

2.4.5 图像容器 56

2.5 再着色 59

2.5.1 使用颜色矩阵 59

2.5.2 平移颜色 61

2.5.3 缩放颜色 62

2.5.4 旋转颜色 64

2.5.5 剪切颜色 66

2.5.6 使用颜色重映射表 67

2.6 GDI+输出 68

2.6.1 将GDI+输出发送给打印机 68

2.6.2 显示打印对话框 71

2.6.3 优化打印 73

本章小结 74

第3章 多媒体文件I/O 75

3.1 多媒体文件I/O概述 75

3.1.1 基础服务 75

3.1.2 缓冲服务 76

3.1.3 RIFF服务 78

3.1.4 定制服务 80

3.2 使用多媒体文件I/O 80

3.2.1 打开多媒体文件 80

3.2.3 搜索文件中的新位置 81

3.2.4 修改I/O缓冲区尺寸 81

3.2.2 创建和删除多媒体文件 81

3.2.5 访问文件I/O缓冲区 82

3.2.6 生成4字符代码 83

3.2.7 创建RIFF信息块 83

3.2.8 搜索RIFF块 84

3.2.9 搜索子块 84

3.2.10 对RIFF文件执行文件I/O 85

3.2.11 执行内存文件I/O 87

3.2.12 安装定制I/O过程 88

3.2.13 与其他应用程序共享I/O过程 88

本章小结 88

4.1.1 命令字符串 89

第4章 MCI编程基础 89

4.1 MCI命令字符串和消息 89

4.1.2 命令消息 90

4.2 MCI命令的分类 91

4.2.1 系统命令 91

4.2.2 必要命令 92

4.2.3 基础命令 92

4.2.4 扩展命令 92

4.3 MCI函数、宏和消息 93

4.4 MCI标志 94

4.4.1 Wait标志 94

4.4.4 命令快捷方式 95

4.4.3 Test标志 95

4.4.2 Notify标志 95

4.5 MCI设备 96

4.5.1 设备控制 96

4.5.2 播放和定位 96

4.5.3 设备类型 97

4.5.4 设备名 97

4.5.5 MCI命令的驱动程序支持 98

4.5.6 驱动程序的默认行为 98

4.5.7 特定设备的命令集 98

4.6.1 打开设备 101

4.6 操作MCI设备 101

4.6.2 获取与设备相关的信息 103

4.6.3 获取MCI系统信息 104

4.6.4 播放设备 104

4.6.5 录制 105

4.6.6 停止、暂停和恢复设备 106

4.6.7 关闭设备 107

本章小结 107

第5章 波形音频 108

5.1 波形音频概述 108

5.1.1 波形音频文件的质量 108

5.1.2 波形音频文件的格式 109

5.1.3 波形音频的处理函数 112

5.2 使用MessageBeep播放波形音频 113

5.3 使用PlaySound播放波形音频 113

5.4 使用MCI播放波形音频 116

5.4.1 波形音频常用MCI命令和标志 116

5.4.2 波形音频的MCI编程步骤 117

5.4.3 建立处理波形音频的类 119

5.5 设计一个波形音频播放器 125

5.5.1 创建应用程序框架 125

5.5.2 完成应用程序功能设计 127

5.6.1 波形低级设备函数 135

5.6 使用低级设备函数播放波形音频 135

5.6.2 低级波形设备函数编程 137

本章小结 138

第6章 MIDI 139

6.1 MIDI概述 139

6.1.1 MIDI消息 139

6.1.2 MIDI文件的格式 140

6.2 使用MCI播放MIDI 141

6.2.1 MIDI常用MCI命令和标志 141

6.2.2 MIDI的MCI编程步骤 142

6.2.3 建立处理MIDI的类 144

6.3.1 创建应用程序框架 155

6.3 设计一个MIDI播放器 155

6.3.2 完成应用程序功能设计 156

6.4 使用低级设备函数播放MIDI音频 163

6.4.1 MIDI低级设备函数 163

6.4.2 MIDI低级设备函数编程 164

本章小结 165

第7章 CD音频 166

7.1 CD音频概述 166

7.2 使用MCI播放CD 166

7.2.1 CD常用MCI命令和标志 167

7.2.2 CD音频的MCI编程步骤 168

7.2.3 建立处理CD音频的类 169

7.3 设计一个CD音频播放器 184

7.3.1 创建应用程序框架 184

7.3.2 完成应用程序功能设计 185

本章小结 193

第8章 数字视频 194

8.1 数字视频概述 194

8.2 使用MCI播放数字视频 194

8.2.1 数字视频常用MCI命令和标志 195

8.2.2 数字视频的MCI编程步骤 197

8.2.3 建立处理数字视频的类 200

8.3.1 创建应用程序框架 212

8.3 设计数字视频播放器 212

8.3.2 完成应用程序功能设计 214

本章小结 222

第9章 设计媒体播放器 223

9.1 制作处理媒体文件的动态链接库 223

9.1.1 动态链接库概述 223

9.1.2 制作自己的动态链接库 224

9.2 设计媒体播放器 225

9.2.1 建立应用程序框架 225

9.2.2 应用程序的设计 227

本章小结 236

10.1.1 MCIWnd窗口的用户界面 237

第10章 MCIWnd窗口类 237

10.1 MCIWnd窗口类概述 237

10.1.2 播放多媒体 238

10.1.3 播放控制 240

10.1.4 多媒体录制 241

10.1.5 播放增强 241

10.1.6 错误消息和通告 244

10.1.7 与MCI设备进行通信 245

10.2 使用MCIWnd窗口类 246

10.2.1 创建MCIWnd窗口 246

10.2.2 自动化播放 247

10.2.3 暂停和恢复播放 248

10.2.4 限制播放范围 249

10.2.5 使用MCIWnd进行录制 251

10.2.6 定制记录处理 251

10.2.7 裁剪图像 253

10.2.8 扩展图像 254

10.2.9 扩展图像和窗口 255

本章小结 256

第11章 音频/视频压缩管理器 257

11.1 ACM概述 257

11.1.1 映射波形音频设备 257

11.1.3 音频压缩管理器函数和结构 258

11.1.2 音频压缩管理器的工作方式 258

11.1.4 由系统调用的函数 259

11.2 使用ACM 259

11.2.1 获取描述滤波程序的字符串 259

11.2.2 为选择滤波器生成对话框 261

11.2.3 为选择指定类型的格式生成对话框 262

11.2.4 为选择受限格式生成对话框 263

11.2.5 为选择保存格式生成对话框 263

11.2.6 为选择录制格式生成对话框 263

11.2.7 转换数据格式 263

11.2.9 查找指定格式 264

11.2.10 查找指定驱动程序 264

11.2.8 多步格式转换 264

11.2.11 在应用程序中添加驱动程序 265

11.2.12 生成非标准格式 265

11.3 VCM概述 265

11.3.1 VCM结构 266

11.3.2 压缩/解压缩程序和渲染程序的系统项 266

11.3.3 VCM服务 266

11.4 使用VCM 271

11.4.1 定位并打开压缩程序和解压缩程序 272

11.4.2 安装压缩程序和解压缩程序 273

11.4.3 配置压缩程序和解压缩程序 273

11.4.5 确定压缩程序的输出格式 274

11.4.4 获取与压缩程序和解压缩程序相关的信息 274

11.4.6 压缩数据 275

11.4.7 确定解压缩程序的输出格式 276

11.4.8 解压缩数据 276

11.4.9 确定驱动程序是否能处理输入格式 277

11.4.10 准备绘制数据 277

11.4.11 绘制数据 278

11.4.12 监测压缩程序和解压缩程序的进程 279

本章小结 280

第12章 AVIFile和视频捕捉 281

12.1 AVI函数和宏概述 281

12.1.1 函数数据类型和返回值 281

12.1.2 AVIFile操作 282

12.1.3 流操作 283

12.2 使用AVIFile函数和宏 288

12.2.1 打开AVI文件 288

12.2.2 打开AVI文件中的流并关闭文件 289

12.2.3 从AVI文件中读取流 290

12.2.4 执行流读写 290

12.2.5 使用编辑函数和剪贴板 293

12.3 视频捕捉概述 294

12.3.1 实现简单的视频捕捉 295

12.3.2 基础捕捉选项 295

12.3.3 捕捉窗口 296

12.3.4 音频和视频捕捉 297

12.3.5 捕捉时使用的文件和缓冲区 299

12.3.6 捕捉的其他类型 301

12.3.7 高级捕捉选项 303

12.3.8 AVICap回调函数 305

12.4 使用视频捕捉 306

12.4.1 创建捕捉窗口 306

12.4.2 连接捕捉驱动程序 306

12.4.3 枚举已安装的捕捉驱动程序 307

12.4.4 获取捕捉驱动程序的性能 307

12.4.5 获取捕捉窗口的状态 307

12.4.7 获取和设置视频格式 308

12.4.6 显示设置视频特征的对话框 308

12.4.9 启用视频覆盖 309

12.4.10 命名捕捉文件 309

12.4.11 格式化视频捕捉 309

12.4.8 预览视频 309

12.4.12 修改视频捕捉设置 310

12.4.13 捕捉数据 310

12.4.14 添加信息块 310

12.4.15 为应用程序加入回调函数 311

12.4.16 创建状态回调函数 312

12.4.17 创建错误回调函数 312

本章小结 313

12.4.18 创建帧回调函数 313

第13章 Direct3D 314

13.1 Direct3D的新特性 314

13.1.1 Direct3D 8.0的新特性 314

13.1.2 Direct3D 8.1的新特性 315

13.2 Direct3D结构 316

13.2.1 硬件抽象层 316

13.2.2 系统整合 317

13.2.3 可编程顶点着色引擎结构 317

13.2.4 可编程像素着色引擎结构 318

13.3.1 3D坐标系 319

13.3 顶点数据 319

13.3.2 3D图元 320

13.3.3 矩形 321

13.3.4 矢量、顶点和四元数 321

13.3.5 面和顶点法线向量 322

13.3.6 三角内插子 324

13.3.7 三角形光栅化规则 324

13.4 创建Direct3D设备 326

13.4.1 创建窗口 327

13.4.2 初始化Direct3D 327

13.4.3 处理系统消息 328

13.4.4 渲染和显示场景 329

13.4.5 关闭应用程序 330

13.4.6 完整的示例代码 331

13.5 渲染顶点 334

13.5.1 定制顶点类型 334

13.5.2 设置顶点缓冲区 335

13.5.3 渲染显示器 336

13.5.4 完整的示例代码 337

13.6 3D变换 341

13.6.1 定义世界变换矩阵 341

13.6.3 定义投影变换矩阵 342

13.6.4 完整的示例代码 342

13.6.2 定义视图变换矩阵 342

13.7 创建和使用光照 348

13.7.1 初始化场景几何体 348

13.7.2 设置材质和光照 349

13.7.3 完整的示例代码 350

13.8 使用纹理 356

13.8.1 定义定制的顶点格式 357

13.8.2 初始化屏幕几何体 357

13.8.3 渲染场景 358

13.8.4 完整的示例代码 359

13.9.1 载入Mesh对象 365

13.9 使用Mesh 365

13.9.2 渲染Mesh对象 366

13.9.3 卸载Mesh对象 367

13.9.4 完整的示例代码 367

本章小结 373

第14章 DirectX音频 374

14.1 DirectX音频简介 374

14.1.1 DirectX音频的新特性 374

14.1.2 DirectX音频的功能 376

14.1.3 DirectX音频的基础概念 377

14.1.4 DirectX音频的基本使用步骤 379

14.2 播放音频文件 379

14.2.1 执行初始化 380

14.2.2 载入文件 381

14.2.3 播放文件 382

14.2.4 关闭程序 382

14.3 使用音频路径 383

14.3.1 创建音频路径 383

14.3.2 获取缓冲区 384

14.3.3 修改缓冲区参数 385

本章小结 385

第15章 Directlnput 386

15.1 DirectInput简介 386

15.1.1 DirectInput的新特性 386

15.1.4 DirectInput对象与Windows的交互 387

15.1.2 DirectInput的功能 387

15.1.3 DirectInput对象 387

15.1.5 DirectInput的基本使用步骤 388

15.2 使用键盘 389

15.2.1 创建DirectInput对象 389

15.2.2 创建DirectInput键盘设备 390

15.2.3 设置键盘数据格式 390

15.2.4 设置键盘行为 390

15.2.5 获取对键盘的访问 391

15.2.6 获取键盘数据 391

15.2.8 可重用的DirectInput函数 392

15.2.7 关闭DirectInput系统 392

15.3.1 创建DirectInput鼠标设备 394

15.3 使用鼠标 394

15.3.2 设置鼠标数据格式 395

15.3.3 设置鼠标行为 395

15.3.4 为鼠标准备缓冲输入 396

15.3.5 管理对鼠标的访问 397

15.3.6 获取鼠标的缓冲数据 398

15.3.7 完整的程序代码 400

15.4.1 枚举游戏杆 420

15.4.2 创建DirectInput游戏杆设备 420

15.4 使用游戏杆 420

15.4.3 设置游戏杆数据格式 421

15.4.4 设置游戏杆行为 421

15.4.5 获取对游戏杆的访问 423

15.4.6 获取游戏杆数据 423

15.5 使用力反馈设备 424

15.5.1 枚举力反馈设备 424

15.5.2 创建DirectInput力反馈设备 425

15.5.3 枚举效果 426

15.5.4 创建效果 427

本章小结 429