关键词:wmf sdk;视频播放器;visual c++
1 wmf sdk简介
windows media是microsoft公司开发的流媒体技术,已经成为一个数字媒体的专业平台。windows media format sdk是一组底层应用程序编程接口 (api),它处理使用 asf 结构的数据。windows media format sdk 是 windows media 的核心,windows media player、windows media encoder 和 windows media services 均使用它来提供核心文件 i/o、联网和数字版权管理 (drm) 支持。
2 wmf sdk体系结构
wmf sdk采用了面向对象的设计,是一套完全基于com组件模型的高级开发包。它引入的生成器,读取器,编辑器等对象屏蔽了asf数据格式、网络传输控制等较为底层的流媒体技术实现细节,留下比较上层的编程接口给开发者使用。
windows media format sdk 具有许多处理 asf 文件的功能,但其核心功能是读写文件。本文主要介绍这两大基本任务体系结构。
2.1 生成器结构
使用 windows media format sdk 构建的应用程序将源媒体样本传递给生成器。生成器使用配置文件对象中指定的设置对文件进行编码。配置文件对象定义已编码文件的格式,包括每个流的详细信息以及应如何处理流的信息。大多数音频和视频流由一种 windows media 编码解码器来处理。但是,编码管理器首先用一种转换器来处理数据,为压缩做准备。当样本可以放入文件时,先传递给多路复用器,多路复用器根据演示时间从所有流中隔行扫描样本并将数据打包。多路复用器创建的位流被传送到一个接收器,接收器为最终目的地处理 i/o,不管它是磁盘上的文件还是 internet 或其他网络广播。
2.2 读取器结构
读取过程与数据写入过程基本上相同,不过顺序是相反的。读取器连接到源,源可以是文件、网络连接或自定义源。拆分器处理文件的数据部分,将数据分成单个流样本,然后将样本解压缩(如果启用了 drm 保护),并通过相应的 windows media 编码解码器来处理。默认情况下,读取器内部会自动选择合适的解码器对asf流数据进行解压缩。
3 wmf sdk编程开发环境配置
wmf sdk仅适合c/c++编程语言,开发平台可以是vc++6.0或visual .本文介绍vc6.0的设置方法。
打开vc++6.0,选择菜单命令的tools→options,单击directories,在show directories for下拉菜单中选择 include files,然后将sdk的安装路径放在vc标准路径之前。
在开发应用程序项目时,对vc6.0 debug版本还需要如下设置:选择菜单命令project中的settings,进入标签link,在category下拉列表中选择general,把和 文件添加到object/library modules中,并选中ignore all default libraries。
4 流媒体播放器的设计
①用vc++6.0应用程序向导建立一个基于对话框的mfc程序,取名mymediaplayer,其它选项都基于默认设置。
②向对话框中添加控件,调整对话框布局。
③在project菜单中选择setting命令,选择link选项卡,在object/library modules输入,文件,这是编译使用mci接口的多媒体程序所必须的。
④在编程时,要添加工程文件wmsdk.h。wmsdk.h定义了sdk中的接口,常量,数据结构,枚举变量和guid等。
⑤向该工程的各个成员函数添加代码。主要有主程序类的初始化函数oninitdialog(),功能按钮open()(打开),onplay()(播放)、onpause()(暂停)、onstop()(停止)、和getheaderattribute(),retrieveattributes()
5 结束语
应用windows media format sdk技术可以快速、稳定地开发具有高性能要求的多媒体程序,是非常行之有效的方法。本文分析了wmf sdk关键技术的结构和功能,介绍了sdk开发环境的配置,并采用visual c++编程语言和sdk技术开发了一个多媒体视频播放器,实现了较好的视频播放效果。
参考文献
[1]李博轩. visual c + + 多媒体开发指南[m]. 北京:清华大学出版社, 2000.
[2]george shepherd,scot wingo著, 赵剑云,卿瑾译. 深入解析mfc[m].北京:中国电力出版社,2003.
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。 返回电子论文列表