Directshow recording/preview problem

笑着哭i 提交于 2019-12-02 00:22:47

问题


I have a project where I need to record a video using DirectShow from a webcam, but I need to be able to stop recording while the preview continues to run.

I am using WPFMediaKit

http://wpfmediakit.codeplex.com/

The problem is that when I record a video the pause function also pauses the preview pane in the application

I am new to DirectShow, any suggestions how is can address this issue or a solution

Thank you very much.

P.S I use C# & WPF


回答1:


I don't know about the WPFMediaKit, but basically when you want to start/stop recording while keeping the preview, you will need two graphs, and something to connect between those graphs. Take a look at the pdf document at the GMFBridge page.




回答2:


If you can accept a momentary pause in preview when you start/stop recording and don't want to use something like a 2 graph GMFBridge approach, you can disconnect either the capture pin on the video capture source filter (assuming you are using separate preview and a capture pins from your source filter) or disconnect the File Writer chain portion of your capture sub-graph.

The issue here is the filtergraph must be paused before changes can be made to its topology, so you'd need to:

Pause Graph Disconnect or Reconnect File Writer chain Resume Graph

In my experience the temporary pause is not very noticeable.




回答3:


Please use StreamControl method of ICaptureGraphBuilder2, it provides you to control any filter in your Graph individually.



来源:https://stackoverflow.com/questions/6203651/directshow-recording-preview-problem

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!