我有一个项目,我需要记录使用DirectShow从摄像头的视频,但我需要能够停止录制,同时预览继续运行。Directshow的记录/预览问题
我使用WPFMediaKit
http://wpfmediakit.codeplex.com/
的问题是,当我录制视频暂停功能还停留在预览窗格中的应用
我是新来的DirectShow,任何建议,就如何是可以解决这个问题或解决方案
非常感谢你。
PS我使用C#& WPF
我有一个项目,我需要记录使用DirectShow从摄像头的视频,但我需要能够停止录制,同时预览继续运行。Directshow的记录/预览问题
我使用WPFMediaKit
http://wpfmediakit.codeplex.com/
的问题是,当我录制视频暂停功能还停留在预览窗格中的应用
我是新来的DirectShow,任何建议,就如何是可以解决这个问题或解决方案
非常感谢你。
PS我使用C#& WPF
我不知道该WPFMediaKit,但基本上当你要开始/停止录制,同时保持预览,您将需要两个图,有所为那些之间的连接图表。看看pdf document的GMFBridge页面。
如果当您开始/停止录制,不想用的东西就像一个2图GMFBridge方法,您可以接受预览瞬间的停顿,你可以断开该视频捕捉源过滤器上的捕获引脚(假设你正在使用单独的预览和源过滤器中的捕获引脚)或断开捕获子图的文件写入器链部分。
这里的问题是必须FilterGraph动态暂停可以改变其拓扑结构进行之前,所以你需要:
暂停图 断开或重新连接文件写入链 恢复图
在我的经历暂时停顿不是很明显。
谢谢你,我把周末和合并GMFBridge与WPFMediaKit它的伟大工程一起,我希望我可以释放以此为WPFMediaKit开源项目补丁并帮助人们在未来,我愿意与任何询问 – 2011-06-07 11:21:28
的人分享代码@David这是一个很好的答案,你至少应该加入它。 – yms 2011-06-09 22:32:52
请使用ICaptureGraphBuilder2的StreamControl方法,它为您提供单独控制在图形中的任何过滤器。
您是否尝试过创建两个图?一个用于预览,另一个用于录制? – yms 2011-06-01 16:43:43
我现在用的是WPFMEdiaKit控制,我不知道DirectShow中发现舒服,所以我猜他们在控制 – 2011-06-01 21:18:19