- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于DirectShow技术的媒体播放器
摘要:介绍了DirectShow技术的基本概念和Filter Graph及其组成,提出了一个基于DirectShow技术的媒体播放器的设计,并构建了过滤器图表,同时文中详细叙述了软件开发的实现框架。本文以VC + + 6.0和DirectShow技术开发媒体播放器,并给出了关键代码的示例。
关键词:DirecShow;Filter;Filter Graph;媒体播放器
中图分类号:TP37文献标识码:A文章编号:1009-3044(2008)18-2pppp-0c
Media Player Based on DirectShow Technology
QIN Xiao-mei, ZHANG Yi-bo
(Henan Economy and Trade Vocational College,Zhenzhou 450053,China)
Abstract: This thesis mainly introduces the basic concept of DirectShow technology, and Filter Graph with its composition, the thesis suggests a media player based on DirectShow technology one, and designs filter graph. The realization frame of software development is discussed at the same time detailedly in the main body of this thesis. VC + + 6.0 and DirectShow technology is used in the course of programming. the key code of the program is also available.
Key words:DirecShow;Filter;Filter Graph;Media Player
1 引言
DirectX软件开发包是微软公司提供的一套在Windows平台上开发高性能图形、声音、输入输出和网络游戏的编程接口,DirectShow是DirectX家族的成员之一,DirectShow可以实现高质量的音视频采集、编辑、编码、解码和播放。DirectShow是基于COM 的,它为程序人员从Windows平台上音视频信息的网络传输、硬件差异、同步性中解脱出来,软件开发者只要按照DirectShow COM接口来编写程序,不用关心硬件设备、不同媒体格式的差别、编解码的实现细节等,极大地降低了多媒体应用程序开发的复杂度,目前DirectShow在多媒体应用中发挥着重要作用。
2 DirectShow概述
DirectShow是一个开放的应用框架,是一套基于COM的编程接口。图 1是DirectShow的系统功能。图中最大的一块就是DireceShow系统,它的基本工作原理就是流水线:将Filter串联在一起,交由Filter Graph Manager统一管理。系统的输入为文件、硬件板块、网络数据等,系统的输出为声卡、显卡、本地文件系统、网络。
图1 DiretShow系统
3 Filter Graph及其组成
3.1 DirectShow的Filter
DirectShow是基于模块化,每个功能模块都采取COM组件方式,称为Filter。DirectShow提供了一系列标准的模块用于应用开发,开发者也可以开发自己的Filter来扩展DirectShow的应用。下面我们用一个例子来说明如何采取Filter来播放一个AVI的视频文件。从文件读取数据,形成字节流(这个工作由源Filter完成),检查AVI数据流的头格式,然后通过AVI分割Filter将音视频流分开。根据压缩格式的不同,选取不同的Decoder Filters解码视频流,重画视频图像。通过Renderer Filter将音频流送到声卡进行播放,一般采用缺省的 DirectSound Device Filter。流程见下图 2。
图2 AVI文件播放流程
从图 2看,每一个Filter 都和其他的一个或者两个Filter 相连接,连接点也是COM对象,称为Pin。Filter通过Pin将数据从一个Filter传递到另一个Filter,从而可以使数据在Filter的链表中流动。
3.2 Filter
您可能关注的文档
最近下载
- 行政编制事业编制参公管理企业编制.doc VIP
- 参公、行政编制与事业编制的区别(修正版).docx VIP
- 22D701-3电缆桥架安装(26.9MB)(26.85MB)5ce2e72e69780631(1).pdf VIP
- 学堂在线 日语与日本文化 章节测试答案.docx VIP
- 危险化学品企业工艺平稳性关键SOP、一般SOP示例.pdf VIP
- 精密与特种加工技术(第3版):热作用特种加工技术PPT教学课件.pptx
- 公、行政编制与事业5编制的区别(修正版).doc VIP
- 港珠澳大桥主体工程桥梁工程钢箱梁制造新工艺及关键技术.ppt VIP
- 社区矫正心理测试.docx VIP
- 西双版纳傣自治州“十三五”规划研究报告.doc VIP
文档评论(0)