Reputation: 3718
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
Upvotes: 3
Views: 2111
Reputation: 1
Please use StreamControl method of ICaptureGraphBuilder2, it provides you to control any filter in your Graph individually.
Upvotes: 0
Reputation: 61
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.
Upvotes: 3
Reputation: 15232
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.
Upvotes: 3