介绍:本书是“DirectShow专业著作”丛书的第二本,侧重介绍了DirectShow技术在当前主要的几个领域中的应用,包括音视频采集、视频聊天、视频点播、视频叠加、媒体播放等。在介绍各种应用的同时,辅助以大量详尽的实例源代码。这些实例,不仅具有很强的实用价值和指导意义,更让读者理论联系实践,使学习DirectShow技术变得轻松自如。本书的配套光盘提供了DirectShow SDK 9.0的安装程序及书中各章节涉及的所有实例源代码。
本书结构合理,内容丰富新颖、条理清晰,适合广大的流媒体应用开发人员、系统设计人员、以及对Windows平台上多媒体处理感兴趣的编程爱好者学习和参考。
目录:
第1章 DirectShow系统 1
1.1 系统概述 1
1.2 使用GraphEdit 3
1.3 最后的话 6
第2章 音视频采集 9
2.1 功能介绍 9
2.2 通用采集 13
2.2.1 采集设备枚举 13
2.2.2 采集设备创建 25
2.2.3 开始视频预览 29
2.2.4 使用高效的VMR 45
2.2.5 选择输入端子 55
2.2.6 采集参数设置 64
2.2.7 支持数码摄像机 76
2.2.8 支持热插拔 82
2.2.9 支持即时抓图 93
2.2.10 采集到AVI文件 114
2.2.11 视频的压缩方案 118
2.3 电视接收 121
2.3.1 预备工作 121
2.3.2 电视选台 124
2.3.3 支持VBI 125
2.4 程序导读 130
2.4.1 一种不错的设计模式 130
2.4.2 程序结构 137
2.4.3 流程概要 141
第3章 网络应用 144
3.1 网络编程基础 144
3.1.1 TCP传输 145
3.1.2 UDP传输 166
3.1.3 IP组播技术 176
3.2 视频聊天 185
3.2.1 功能介绍 185
3.2.2 实现原理 187
3.2.3 采集设备自检 190
3.2.4 角色控制实现 204
3.2.5 开发网络发送Filter 223
3.2.6 开发网络接收Filter 230
3.2.7 程序导读 240
3.3 视频点播 244
3.3.1 功能介绍 244
3.3.2 实现原理 247
3.3.3 开发网络接收Filter 250
3.3.4 支持MPEG1、MP3 261
3.3.5 支持MPEG2 268
3.3.6 支持AVI 270
3.3.7 程序导读 275
第4章 视频叠加 311
4.1 视频抠像 311
4.1.1 抠像原理 311
4.1.2 抠像算法实现 312
4.1.3 MMX算法优化 318
4.1.4 开发抠像Filter 321
4.1.5 模拟实时源 339
4.1.6 应用演示 348
4.2 字符叠加 350
4.2.1 开发字符叠加Filter 350
4.2.2 与媒体播放集成 353
第5章 SDK源码赏析 361
5.1 DSNetwork例子 361
5.1.1 程序结构分析 361
5.1.2 模拟MPEG2-TS源 372
5.1.3 应用演示 380
5.2 VMR-9典型应用 385
5.2.1 位图叠加例子BitmapMix 385
5.2.2 字符叠加例子Ticker 396
5.2.3 流混合例子Blender 405
附录A DirectShow常见问题解答 411
A.1 一般性问题 411
A.2 编程问题 413
附录B PID扩展插件开发 420
B.1 PID应用原理 420
B.2 PID插件开发 421
B.3 PID插件的使用 429
附录C DES扩展Source(实现字符叠加) 432
C.1 自动化基础 433
C.2 字符叠加基础 433
C.3 Source Filter的开发 436
C.4 Source Filter的调试 448
C.5 DES应用举例 449
附录D 让Windows Media Player播放自定义格式文件 452
D.1 播放媒体文件的Filter Graph构建过程 452
D.2 两种解决方案 454
D.3 自定义格式文件的生成 455
D.4 Source Filter的开发 457
D.5 体验QQ文件的播放 471