Tag: wpf mediakit

如何使用WPF MediaKit或类似程序从使用DES创建的DirectShowfilter图形渲染到WPF控件?

我使用C#和DirectShow.net开发了一个简单的video编辑器。 截至目前,我有一个使用DirectShow编辑服务构建的DirectShowfilter图。 我的应用程序根据需要控制图形,运行,暂停和停止预览窗口中的播放。 在编辑会话中,图表会根据用户添加,删除或修改媒体的请求而更改。 目前我使用包装在WindowsFormsHost中的PictureBox来预览已编辑的video。 但我真的想尝试使用Jeremiah Morril的WPF MediaKit。 (http://wpfmediakit.codeplex.com) 最初的思路(我的暴力方法)是将IGraphBuilder和IPin从我的图形传递到WPF MediaKit中的MediaUriPlayer.cs中的OpenSource()函数,以便添加VMR9渲染器并连接到我现有的图形而不是创建在原始OpenSource()中完成的新图形。 这没有很好地解决,并且在尝试各种组合后我放弃了,并且大部分时间都将“COM对象与其底层RCW分离”错误。 在最初的失败后,我搜索并在http://videorendererelement.codeplex.com上看到了Morrill的类似VideoRendererElement。 似乎将样本抓取器添加到我的DirectShow图形并使用它将样本发送到VideoRendererElement并不太难。 这就像VideoRendererElement中包含的网络摄像头示例。 最后,我想知道是否有可能以相同的方式使用来自WPF MediaKit的任何较新的控件,即将样本从我的图形中的样本抓取器传递到MediaUriElement,DvdPlayerElement或其他控件来自WPF MediaKit集合。 基本上我的问题是:任何人都可以建议使用WPF MediaKit或VideoRenderingElement来实现此示例抓取器方案吗? 或者也许有人可以建议一种更好的方法让我的DES制作filter图形呈现为WPF控件…