- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、前略
/document/viewdoc/?id=1483)阅读基础:少量的COM编程的基础知识,了解如何调用COM组件的方法,最好掌握哪怕一丁点的ATL。本章目的:了解DirectX组件架构,学习编写简单的DirectShow程序。
二、DirectX与DirectShow
????首先看下面两段关于DirectX和DirectShow相关内容的摘要:
????Windows系统的架构下,我们不能如Dos般随心所欲的控制硬件,而希望游戏、影像开发人员对内核的理解都达到驱动编程人员的水平,是一件苛求的事情,但是为此将失去广大市场的关键问题必然要产生解决的办法,因此,DirectX或其他不同名的相同技术的出现是件必然的。????有些读者可能会对驱动编程的基础文章涉及DirectX的必要性有所疑问,确实,DirectX并不是学习驱动编程的一个障碍,笔者在初次的学习中也从未意识过要了解这方面的内容。但是换一个角度,如果你看到鸡窝里的五个鸡蛋,我们是不是很有理由猜测这是由五只母鸡组成的五好家庭?因此我们可很牵强的认为DirectX如同内核的外部据点,如果我们拔除了,必然有更大的把握向内核发动总攻。????笔者把DirectX加入本系列文章的另一个重要原因是——DirectX确实有值得炫耀的资本。对于编程人员来说,它的COM接口简直可用“优雅”来评价,当你用着如苦瓜般的IMarshal接口时,不妨来看看什么样的接口值得这样的评价。我挑选了DirectX里一个很有意思的部分——DirecShow来作为突破口,讲述如何“Direct”——直接的控制视频设备。????学习的进阶大略上可分为四个部分:学习调用组件、捕获和编辑影像、学习编写过滤器、掌握媒体格式的高阶部分。限于能力,只介绍前两个部分。读者不要满足于学会使用DirctShow,而是通过DirctShow的具体功能猜测系统驱动的功能,甚至设备的构成,减轻将来主攻驱动时的负担,此即由外而内的学习方法。????笔者将掠人之美,使用参考资料1提供的示例阐明编程的基本思路。三、DirectShow基础和GraphEdit
????在Windows系统中,DirectShow以COM组件的形式存在,下图描绘了DirectShow组件、硬件以及系统组件的关系(Leagcy为传统或遗留,旧的之意)。????现在我们只需了解DirectShow里包含了两大类型的对象:三类“Filter”(源、转换、渲染过滤器),以及由这些过滤器集组成提供特定功能的“Filter Graph”,这个Graph不妨看成是包含Filter的一个容器。????为了从可视化的角度理解DirectShow工作的方式,我们可使用SDK附带的GraphEdit工具。它最基本的功能是利用系统里已经安装的解码器,使用DirectShow组件来播放媒体文件,并直观的显示播放流程。下面演示一下如何播放一个媒体文件。????GraphEdit的界面如图:?
????从菜单文件——渲染媒体文件…里选择你要播放的文件,这里我们选择一个微软支持的avi格式文件ff8-full-ending.avi,则界面上出现:????每一个DirectShow组件都以矩形框表示,Input、Output针(pin)作为每个过滤器的输入或输出。通常情况下,源(左上角的ffi_full_ending.avi)、渲染过滤器(Video Renderer和Default DirectSound Device)是必须的,转换过滤器根据实际情况可选。从菜单图表——插入过滤器…可以看到所有可用的过滤器。????上图隐含了DirctShow的“智能选择”功能,即如果你提供了任何两个逻辑关联的渲染器(如MPC – Avi Splitter和Video Renderer),DirectShow会自动查找之间的可用组件,形成一个正常的播放流程。读者如果想真正掌握DirectShow,应该学会手工添加、连接合适的过滤器而不仅仅依赖于“智能选择”功能。????由图可知,avi文件被播放前,经过分离器的分离,形成视频和音频两个部分,它们再选择合适的解码器,最后分别送到系统默认的渲染过滤器上进行渲染,影像就显现于屏幕上了。????点一下界面上绿色三角的播放键,则可以欣赏我们的影片了。
????这一切出乎意料的简单,这使我们不由产生了这么一个想法——DirctShow的初级应用也是非常简单的,事实正是如此。在进价的第一部分,我们学习如何通过调用组件,完成一个媒体文件的播放。
四、进价之一——组件的调用
????本篇将要接触到下表组件的调用,详细的信息可参考Msdn上的说明,这些基础工作留给有心的读者来完成吧:
IID CREATE CLSI
您可能关注的文档
- 散文阅读基本知识.doc
- 散装船装港吃水差调整的快捷技巧.doc
- 2019春上海科教版品社五下《校园红绿灯》word教案.doc
- 2019春上海科教版品社五下《生命多么可贵》word教案.doc
- 数值计算技巧论文.docx
- 2019春上海科教版品社五下《科技是把双刃箭》word教案.doc
- 2019春上海科教版品社五下《第一单元 爱美丽的生命》word单元备课.doc
- 2019春上海科教版品社五下《第三单元 不能忘记的历史》word教案.doc
- 2019春上海科教版品社六上《第3课 真正的友谊》word教案.doc
- 2019春上海科教版品社四下《主题2 我们时刻在呼吸》word教案.doc
- 2025至2030年中国高速光纤手机市场现状分析及前景预测报告.docx
- 2025至2030年中国停经装置配件市场现状分析及前景预测报告.docx
- 2025至2030年中国箱式滚珠轴承市场现状分析及前景预测报告.docx
- 2025至2030年中国沉降片针块市场现状分析及前景预测报告.docx
- 2025至2030年中国音响功放机用晶体管市场现状分析及前景预测报告.docx
- 2025年综合类-助理人力资源管理师(三级)-助理人力资源管理师(三级)-人力资源管理师(二级)-第.docx
- 2025年综合类-会计-新生儿的临床用药历年真题摘选带答案(5卷单选题100题).docx
- 2025至2030年中国干线用户放大器市场现状分析及前景预测报告.docx
- 2025至2030年中国网球场地清洁器市场现状分析及前景预测报告.docx
- 2025至2030年中国日用品工艺用水设备市场现状分析及前景预测报告.docx
最近下载
- 电能“发、输、变、配、用”五环节简介.pptx VIP
- 先进算力中心建设规划方案.docx VIP
- 安装钳工基础知识全集课件.ppt VIP
- 部编版六年级语文上册第三单元 习作_____让生活更美好 课件(共32张PPT).pptx VIP
- 医疗器械唯一标识管理制度(UDI).docx VIP
- 感术行动专项实施方案.docx VIP
- 企业案例广州超算中心 企业案例广州超算中心、项目建设规划、项目需求分析 1.3项目建设规划.docx VIP
- 音频处理软件:Adobe Audition二次开发_17.社区资源与支持.docx VIP
- 数控铣床第一章 数控铣床概述.ppt VIP
- 偏差报告单【范本模板】.doc VIP
文档评论(0)