Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16499430
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:02:50

下载本文示例代码
  摘要:本篇文档主要讲述如何使用GraphEdit来模拟构建graph图,测试你的filter。     GraphEdit概述  GraphEdit是一个很有用的工具,可以用来构建graph图。通过GraphEdit,你可以在开发代码之前进行一下体验,你也可以装载一个你的应用程序创建的Graph文件。如果你想开发一个自己的filter,GraphEdit 给你提供了一个快速测试的方法:将你的filter添加到graph中,然后运行graph。如果你是一个Directshow的初学者,那么通过GraphEdit你可以熟悉Filter和Dshow的特性。  下面图表演示了GraphEdit如何构建了一个简单的graph。 图1  每一个矩形代表一个Filter,每一个filter的边上的小矩形代表了pin,输入pin在filter的左边,输出pin在Filter的右边,箭头代表两个pin的连接方向。  通过GraphEdit,你可以做到下面的事情:  1、可视化的创建一个Graph,可以动态的拖拉来调整filter。  2、可以模拟如何构建一个graph。  3、运行,停止,暂停,see一个graph。  4、可以看看你的机器上都注册了那些filter,以及这些filter的信息  5、查看filter的属性页  6、查看pin连接时采用的媒体类型。  使用GraphEdit  如果你安装了DirectX的SDK,GraphEdit就会出现在你的开始菜单中找到GraphEdit,启动它。如下图 图2  构建一个文件回放的Graph  GraphEdit可以自动的构建一个文件回放Graph。这个特性其实类似于在应用程序中调用IGraphBuilder::RenderFile方法。从文件菜单中,选择Render Media File,然后出现一个文件选择对话框,选择一个多媒体文件后单击打开,GraphEdit会自动地建立一个Filter Graph来播放你选择的文件。  你也可以播放一个网络上媒体文件,从文件菜单中,选择Render URL,也会出现一个选择URL的对话框。其他同上。  构建一个普通的Graph图  使用你机器上注册的filter,GraphEdit可以构建一个普通的Filter graph,从Graph菜单中,选择Insert Filters,会出现一个对话框,如下图: 图3  在这个对话框中列出了所有在你机器上注册的Filter的信息。选择filter的名字,然后单击Insert Filters按钮,或者双击filter的名字,filter就会自动添加到graph中,添加完filter以后,你就拖动鼠标,将一个Filter的输出pin和另一个Fiter的输入pin连接起来。如果pin接受这个连接,GraphEdite就会用一个带箭头的  下面的图是一个捕捉桌面的graph图 图4  Run the Graph  当你在GraphEdit中构建好一个Filter graph的时候,你可以让你的graph运行一下看是否和你期望的一样。Graph菜单中包含了Play,Pause,和Stop命令,这些命令会触发IMediaControl。  接口的Run, Pause, and Stop,GraphEdit的工具栏也有代表这三个命令的按钮,见下图,单击第一个按钮就开始运行你的Graph图了 图 5  注:GraphEdit的Stop命令首先会暂停Graph,然后Seek到时间的零点(我们坚定graph是可Seek的)。对于文件的回放,这个命令会将视频窗口的图像设置为第一桢,然后GraphEdit才调用IMediaControl::Stop.  查看属性View Property Pages  一些Filter提供了属性页可以让用户设置Filter的属性。鼠标右键单击filter,在弹出的菜单上选择Properties,就会弹出Filter的属性页设置对话框,用户可以从这里设置属性。 图6图7共2页。 1 2 :   摘要:本篇文档主要讲述如何使用GraphEdit来模拟构建graph图,测试你的filter。     GraphEdit概述  GraphEdit是一个很有用的工具,可以用来构建graph图。通过GraphEdit,你可以在开发代码之前进行一下体验,你也可以装载一个你的应用程序创建的Graph文件。如果你想开发一个自己的filter,GraphEdit 给你提供了一个快速测试的方法:将你的filter添加到graph中,然后运行graph。如果你是一个Directshow的初学者,那么通过GraphEdit你可以熟悉Filter和Dshow的特性。  下面图表演示了GraphEdit如何构建了一个简单的graph。 图1  每一个矩形代表一个Filter,每一个filter的边上的小矩形代表了pin,输入pin在filter的左边,输出pin在Filter的右边,箭头代表两个pin的连接方向。  通过GraphEdit,你可以做到下面的事情:  1、可视化的创建一个Graph,可以动态的拖拉来调整filter。  2、可以模拟如何构建一个graph。  3、运行,停止,暂停,see一个graph。  4、可以看看你的机器上都注册了那些filter,以及这些filter的信息  5、查看filter的属性页  6、查看pin连接时采用的媒体类型。  使用GraphEdit  如果你安装了DirectX的SDK,GraphEdit就会出现在你的开始菜单中找到GraphEdit,启动它。如下图 图2  构建一个文件回放的Graph  GraphEdit可以自动的构建一个文件回放Graph。这个特性其实类似于在应用程序中调用IGraphBuilder::RenderFile方法。从文件菜单中,选择Render Media File,然后出现一个文件选择对话框,选择一个多媒体文件后单击打开,GraphEdit会自动地建立一个Filter Graph来播放你选择的文件。  你也可以播放一个网络上媒体文件,从文件菜单中,选择Render URL,也会出现一个选择URL的对话框。其他同上。  构建一个普通的Graph图  使用你机器上注册的filter,GraphEdit可以构建一个普通的Filter graph,从Graph菜单中,选择Insert Filters,会出现一个对话框,如下图: 图3  在这个对话框中列出了所有在你机器上注册的Filter的信息。选择filter的名字,然后单击Insert Filters按钮,或者双击filter的名字,filter就会自动添加到graph中,添加完filter以后,你就拖动鼠标,将一个Filter的输出pin和另一个Fiter的输入pin连接起来。如果pin接受这个连接,GraphEdite就会用一个带箭头的  下面的图是一个捕捉桌面的graph图 图4  Run the Graph  当你在GraphEdit中构建好一个Filter graph的时候,你可以让你的graph运行一下看是否和你期望的一样。Graph菜单中包含了Play,Pause,和Stop命令,这些命令会触发IMediaControl。  接口的Run, Pause, and Stop,GraphEdit的工具栏也有代表这三个命令的按钮,见下图,单击第一个按钮就开始运行你的Graph图了 图 5  注:GraphEdit的Stop命令首先会暂停Graph,然后Seek到时间的零点(我们坚定graph是可Seek的)。对于文件的回放,这个命令会将视频窗口的图像设置为第一桢,然后GraphEdit才调用IMediaControl::Stop.  查看属性View Property Pages  一些Filter提供了属性页可以让用户设置Filter的属性。鼠标右键单击filter,在弹出的菜单上选择Properties,就会弹出Filter的属性页设置对话框,用户可以从这里设置属性。 图6图7共2页。 1 2 : 下载本文示例代码


DirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建GraphDirectShow入门之模拟构建Graph
阅读(170) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~