Windows Media编程导向
|
|
|
|
|
| 书 名 Windows Media编程导向
|
| 作 者 陆其明 |
| 出 版 社 清华大学出版社 |
| 书 号 302-10944-3 |
| 责任编辑 |
|
开本 |
16 |
| 出版时间 |
2005年5月 |
字数 |
487千字 |
| 装 帧 |
平装 |
印张 |
20 |
| 带 盘 |
否 |
页数 |
309 |
|
| 定 价 |
¥39.0 |
|
|
| 普通会员 |
¥31.2
|
|
|
| 银牌会员 |
¥31.2
|
|
|
| 金牌会员 |
¥30.4
|
|
|
| 批量购书 |
电话:
010-51287918 |
|
|
|
|
|
|
|
Windows Media编程导向
内容提要 |
|
|
这是一本介绍Microsoft公司Windows Media编程技术的专著。《Windows Media编程导向
》结构合理,内容由浅入深地探讨了使用Windows Media Format SDK进行流媒体编程的方方面面,包括Windows Media在流媒体应用领域中的解决方案、先进的ASF文件格式、Windows Media编解码器以及Windows Media文件的生成、读取、编辑、流化、数字版权管理等。 《Windows Media编程导向
》对于一线程序开发人员具有重要的指导意义,对于流媒体应用方案设计人员和对流媒体技术感兴趣的编程爱好者都具有一定的参考价值。
|
|
|
|
Windows Media编程导向
目录 |
|
第1部分 Windows Media概论 第1章 流媒体来了 3 1.1 什么是流媒体 3 1.2 流媒体技术 4 1.3 Windows Media 6 第2章 了解SDK系统 9 2.1 SDK系统概述 9 2.2 SDK基本概念 11 2.2.1 输入、输出、流 11 2.2.2 数据格式 14 2.2.3 媒体类型 17 2.2.4 Sample数据包 22 2.2.5 时间戳 25 2.2.6 比特率 27 2.2.7 内容缓冲 28 2.2.8 网络协议 30 2.2.9 媒体内容发布 34 2.3 SDK编程梗概 35 2.3.1 开发环境配置 35 2.3.2 实用的宏定义 37 2.3.3 COM库的初始化 39 2.3.4 COM接口扩展方案 40 2.3.5 回调接口的实现 41 2.3.6 异步函数调用的同步 45 2.3.7 接口函数的两遍调用 47 2.3.8 宽字符与ANSI字符 48 2.3.9 奇妙的do-while循环 49 第3章 ASF文件格式 52 3.1 ASF文件结构 52 3.1.1 头对象 54 3.1.2 数据对象 56 3.1.3 索引对象 57 3.2 ASF系统特性 57 3.2.1 流编号 57 3.2.2 流类型 58 3.2.3 流互斥 60 3.2.4 流优先级 61 3.2.5 带宽共享 61 3.2.6 数据单元扩展 62 3.2.7 SMPTE时间码 62 3.2.8 标记 63 3.2.9 元数据 63 3.3 ASF与Windows Media 64 第4章 Windows Media编解码器 66 4.1 编解码器概述 66 4.1.1 枚举系统中的编解码器 66 4.1.2 实例程序:ListWMCodecs 68 4.2 编解码基本概念 69 4.2.1 CBR编码 69 4.2.2 VBR编码 69 4.2.3 两遍编码 70 4.2.4 视频复杂度 71 4.2.5 设备兼容模板 73 4.2.6 实例程序:ListCodecProps 76 4.3 Windows Media编码软件 78 4.3.1 文件格式转换 78 4.3.2 实况流编码 81 4.3.3 屏幕捕捉 82 4.3.4 网络流化 82 第5章 Profile描述 84 5.1 Profile概述 84 5.1.1 实例程序:ListProps 84 5.1.2 小工具:ShowProfile 89 5.2 系统Profile 90 5.2.1 系统Profile枚举 92 5.2.2 系统Profile本地化 98 5.2.3 实例程序:ListSysProfiles 99 5.3 Profile管理 100 5.3.1 获取ASF文件的Profile 100 5.3.2 使用系统Profile 100 5.3.3 保存Profile到文件 101 5.3.4 从文件装载Profile 102 5.3.5 创建全新的Profile 103 第6章 元数据 105 6.1 元数据概述 105 6.2 获取元数据 105 6.3 ID3支持 108 第2部分 Windows Media应用编程 第7章 Windows Media文件的读取 113 7.1 异步读取 113 7.1.1 读取过程概述 113 7.1.2 识别输出编号 114 7.1.3 选择输出格式 116 7.1.4 随机定位 124 7.1.5 读取器性能统计 125 7.1.6 Sample内存优化 126 7.1.7 实例程序:WmvPlayer 137 7.1.8 实例程序:WmaPlayer 140 7.2 同步读取 145 7.2.1 实例程序:WmSyncRead 145 7.3 Windows Media文件复制 148 7.3.1 实例程序:WmCopy 149 第8章 Windows Media文件的生成 153 8.1 生成Windows Media文件 153 8.1.1 创建Profile 153 8.1.2 确定编码模式 163 8.1.3 识别输入编号 165 8.1.4 设置输入格式 167 8.1.5 视频编码即时预览 173 8.1.6 生成器性能统计 173 8.1.7 自定义接收器 176 8.1.8 实例程序:FilterASFWriter 184 8.2 两遍编码 186 8.3 水印叠加 188 8.3.1 DMO简介 188 8.3.2 水印组件开发 188 8.3.3 水印组件枚举 192 8.3.4 应用演示 195 8.4 图片视频流 197 8.4.1 实例程序:WmImages 203 8.5 屏幕录制 204 8.5.1 屏幕采集方法 204 8.5.2 实例程序:WmScreen 208 8.6 使用第三方编码器 209 8.6.1 实例程序:FilterASFMuxer 209 8.6.2 典型应用:DivX流保存为ASF 209 第9章 Windows Media文件的编辑 211 9.1 元数据编辑 211 9.1.1 获取属性 211 9.1.2 修改属性 214 9.1.3 增加属性 217 9.1.4 删除属性 218 9.1.5 实例程序:WmEditor 219 9.2 复杂属性 221 9.2.1 获取歌词 222 9.2.2 编辑歌词 224 9.2.3 实例程序:WmLyrics 226 9.3 使用标记 227 9.4 文件索引 229 第10章 Windows Media网络应用 231 10.1 流媒体发布模型 231 10.1.1 广播发布 232 10.1.2 点播发布 238 10.2 网络流化 240 10.2.1 本机广播 241 10.2.2 推发布 242 10.2.3 实例程序:WmStreaming 247 10.3 客户端播放 250 10.3.1 流式播放 251 10.3.2 下载播放 252 10.3.3 另存为本地文件 252 10.4 视频会议广播系统 254 10.4.1 系统方案设计 254 10.4.2 流化组件开发 255 10.4.3 系统演示 256 第3部分 Windows Media高级主题 第11章 数字版权管理 261 11.1 初识DRM 261 11.2 支持DRM 263 11.2.1 获取许可证 263 11.2.2 实例程序:DRMPlayer 272 第12章 Windows Media与DirectShow 277 12.1 为什么需要DirectShow 277 12.2 QASF Filters 278 12.2.1 WM ASF Reader 278 12.2.2 WM ASF Writer 279 12.3 精确到帧的定位 280 第4部分 附 录 附录A Windows Media Format SDK常用GUID对照表 287 附录B Windows Media Format SDK的主要对象与接口 292 附录C Windows Media Format SDK的主要功能函数 302
|
|
|
|
|
|
|
Windows Media编程导向
前言 |
|
这是一本专门写给程序员的书,更确切地说,是一位在多媒体编程与应用领域默默工作、跌打滚爬多年的程序员,写给更多的需要类似经验、但又不想如此痛苦的程序员的书。冀望能以我个人的程序实践,指引你的编程之路,共铸属于我们自己的程序人生! 《Windows Media编程导向
》介绍的是Microsoft公司的流媒体技术。所谓流媒体,主要特点就是边下载边观看,以流的形式进行数字媒体的传送,从而使人们可在线欣赏到连续不断的多媒体内容。随着近年来网络宽带化的发展,流媒体技术作为多媒体与网络领域的交叉学科,得到了迅速的发展。人们已经不再满足于信息高速公路中仅有文本、图像或声音这类简单的信息,而越来越希望看到更直观、更丰富的新一代信息表现形式,这就是流媒体。目前,流媒体的典型应用有视频点播、视频会议、远程教育、数字图书馆等。 当前市场上主流的流媒体技术有三种,分别是RealNetworks公司的RealMedia、Apple公司的QuickTime和Microsoft公司的Windows Media。RealNetworks公司早在20世纪90年代中期就首先推出了流媒体技术,它的RealMedia技术性能出色,在市场上处于主导地位,并且拥有最多的用户数量,但架设一套RealMedia流媒体应用系统需要较高的费用;Apple公司的QuickTime是一个非常老牌的媒体技术,是数字媒体领域事实上的工业标准,它依托自己的Mac操作系统的便利,也拥有不少相对稳定的用户;Microsoft公司起步最晚,但却是后起之秀,它的Windows Media技术不是最好的,但依托自己的Windows操作系统在PC上的垄断地位,很快便取得了一定的市场份额,并有持续增长的趋势。另外,在Windows平台上架设一套Windows Media流媒体应用系统的费用相当低廉。互联网的发展已经证明,市场并不永远属于先来的开拓者。随着Microsoft公司在Windows Media上的继续投入,我们有理由相信,Windows Media在不久的将来很有可能成为最好的流媒体技术。因此,对于那些有意于或者已经致力于多媒体应用开发的程序员来说,学习Windows Media编程技术是很重要的,也是很有必要的。 《Windows Media编程导向
》在编写过程中,把易学性和实用性作为基本原则,力求给读者带来愉快而高效的学习体验。《Windows Media编程导向
》主要内容分三大部分:第一部分,Windows Media概论,第1章~第6章,首先从总体上介绍流媒体技术的前景及其面临的挑战,进而介绍Microsoft公司的Windows Media技术给出的解决方案及Windows Media SDK系统,希望读者通过这部分的学习能够对Windows Media技术有个初步的了解;第二部分,Windows Media应用编程,第7章~第10章,从编程的角度介绍如何使用Windows Media Format SDK,包括Windows Media文件的生成、读取、编辑、网络流化等,希望读者通过这部分的学习能够掌握Windows Media常用的各项编程技术;第三部分,Windows Media高级主题,第11章~第12章,介绍Windows Media的数字版权管理,Windows Media与DirectShow的交叉应用等内容。 《Windows Media编程导向
》对于一线的多媒体程序开发人员具有重要的指导意义。在开始学习《Windows Media编程导向
》之前,读者最好已经掌握了面向对象的编程思想和方法,具备比较扎实的VC编程基础,以及对COM组件模型的基本理解和应用能力;有DirectShow开发经验的则更佳。《Windows Media编程导向
》对于流媒体系统方案设计人员也具有一定的参考价值。 由于《Windows Media编程导向
》是一本技术专著,在编写程序实例时不免遇到一些麻烦。所幸的是,在我最困难的时候得到了Microsoft MVP项目的大力支持,他们是Neil Leslie、Sean O’Driscoll、Cally Ko,还有我们中国的MVP Lead张文雅,以及后来的技术支持工程师龚睿。感谢所有这些朋友!荣膺MVP(微软最有价值专家)让我受益良多,也使我更有信心能为读者奉上一部精品。此外,《Windows Media编程导向
》在编写过程中还参考了《流媒体和视频服务器》(钟玉琢等编著,清华大学出版社,2003年)一书。世纪音频网站负责人苏信东也提供了友好帮助。 最后,还要感谢一些人。感谢北京科海电子出版社的夏非彼老师对我一如既往的关心和支持。感谢我的爱人第三次为我的书设计如此漂亮的封面。感谢我的老板、我的同事们,是你们的努力,营造了一个如此具有创造性的工作环境,使我的成长一步一步跨上更高的台阶。由于Windows Media技术仍然处于一个不断完善和发展的阶段,限于本人的学识水平,书中的不足和错误在所难免,恳请读者不吝批评指正。 注:《Windows Media编程导向
》的配套光盘提供Windows Media Format 9/9.5 SDK安装程序,以及书中各章节涉及的所有实例源代码。这些实例的开发环境如下:Windows XP操作系统,VC 6.0或Visual Studio 2003 .NET,Windows Media Format 9.0 SDK(部分实例需要9.5以上版本),DirectX 9.0 SDK(开发DirectShow Filter项目时需要)等。 陆其明 2005年4月于上海
|
|
|
|
|
|
Windows Media编程导向
调换货原则 |
|
|
|
|
查看评论 |
|
|
|
发布评论 |
|
|
|
|
| |
|
|
|
|