资源描述:
《基于directshow流媒体采集和播放系统设计和实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第44卷增刊2中山大学学报(自然科学版)Vol144Sup122005年11月ACTASCIENTIARUMNATURALIUMUNIVERSITATISSUNYATSENINov12005X基于DirectShow流媒体采集和播放系统设计和实现李智芳,黄超(中山大学电子与通信工程系,广东广州510275)摘要:阐述了DirectShow的体系结构。研究了开发基于DirectShow应用系统的一般方法,着重于流媒体采集和播放的关键技术:DirectShow过滤器和过滤器图表的构建及管理。提出了一种基于DirectShow流媒体采集和
2、播放系统结构,并通过对系统的需求分析,得到系统的功能。实现了基于DirectShow流媒体采集和播放系统。实践证明,DirectShow简化了流媒体应用系统的开发,缩短了开发周期。关键词:流媒体;DriectShow;采集;播放;视频;音频中图分类号:TP32;TN911173文献标识码:A文章编号:052926579(2005)S220166204流媒体(streamingmedia)的出现使人们避免摄像机等;支持各种格式如AVI、ASF、MPEG、了收听、收看网上节目时漫长的下载等待过程,有DV;能够兼容未知的硬件设备。Dire
3、ctShow体系结了流媒体网络用户就可以边看边下载。流媒体已经构如图1,图中给出了应用程序,DirectShow组件广泛地应用于在线电视、视频点播、远程教育、在和DirectShow所支持的一些硬件和软件关系。线影院等。目前支持流媒体播放和采集的最为流行为了满足流媒体所需要的数据流量,Direct-产品有MicrosoftMedia、RealMedia和QuickTime。特show尽可能地使用Directdraw和DirectSound。别是Microsoft公司不仅为用户提供免费的流媒体播Directshow通过以时间戳(Tim
4、eStamped)样本的形放器下载,而且为用户提供二次开发流媒体系统提式封装媒体数据来使视音频同步。为了处理各种格供免费的SDK(SoftwareDevelopmentKit)即Directx式媒体和各种硬件,Directshow模块结构。在模块SDK。用户可以利用DirectxSDK定制适合自己需要结构中应用混合和匹配不同软件组件称为过滤器的流媒体系统。(filter)。如图所示DirectShow过滤器与各种不同的Directx已经发展到DirectxV910。DirectxSDK设备通信并控制他们。包括声卡,电视卡、VFWV9
5、10中包含了支持流媒体开发的工具包Direct-多媒体数字编码器,及视频显示及声卡,因此Show。DirectShow是Microsoft为MicrosoftWindows平Directshow把应用与这些设备内部细节隔离开来。台流媒体提供结构体系。它提供了高质量的多媒体DirectShow也为某些文件格式提供原有的压缩和解流的录制和播放,支持各种媒体格式,包括ASF,压缩。MPEG,AVI,MP3,WAV等几乎所有当前流行的媒体格式,支持使用WDM(WindowsDriverModel)设[1-4]备录制。DirectShow简化
6、了基于Windows平台的数字媒体的应用开发。将应用与复杂的数据传输、硬件差异和同步隔离开来。同时,它为需要定制应用解决方案提供底层流控制结构。用户也可以创建自己的DirectShow组件以支持新的媒体格式。1DirectShow体系结构图1DirectShow系统结构DirectShow主要解决的问题是:快速处理媒体Fig11ArchitectureofDirectShow流所包含的大量数据;音频和视频同步;处理来自各种源数据如本地文件、计算机网络、广播电视、X收稿日期:2005-09-01作者简介:李智芳(1966年生),男,硕
7、士,讲师;E-mail:isslzf@zsu1edu1cn©1994-2008ChinaAcademicJournalElectronicPublishingHouse.Allrightsreserved.http://www.cnki.net增刊2李智芳等:基于DirectShow流媒体采集和播放系统设计和实现167能够从多种信号源俘获视频和音频信号,如电视2DirectShow应用开发方法卡、摄像头、磁带录放机、VCD(DVD)播放机等DirectShow单元是称为过滤器(Filter)的软件视音频设备。并能够按照事先创建的录制
8、表自动定组件。过滤器是可以在媒体流上执行操作的软件组时录制。②素材信息管理功能:存储待播放的素材件。如DirectShow过滤器能够读文件;从视频捕获信息,素材信息包括素材名称,编号,长度,所在设备获得视频;对各种不同的格式进行解码,