


IntPtr fetched = Marshal.AllocCoTaskMem(4) Private IPin GetPin(PinDirection pinDir, IBaseFilter filter) Vw.put_WindowStyle(WindowStyle.Child | WindowStyle.ClipSiblings | WindowStyle.ClipChildren) Set the video preview to be the videoFeed panel InPin = GetPin(PinDirection.Input, videoRendererFilter) ĬaptureGraph.RenderStream(PinCategory.Preview, MediaType.Video, videoRendererFilter, null, null) OutPin = GetPin(PinDirection.Output, "Preview", smartTeeFilter) Graph.AddFilter(videoRendererFilter, "Video Renderer") VideoRendererFilter = (IBaseFilter)new VideoRenderer() Create video renderer filter, add it to graph, connect smartTee Preview pin to video renderer's input pin IPin inPin = GetPin(PinDirection.Input, smartTeeFilter) IPin outPin = GetPin(PinDirection.Output, "Video", elgatoFilter) Graph.AddFilter(smartTeeFilter, "Smart Tee") SmartTeeFilter = (IBaseFilter)new SmartTee() Hover over clone with, and select display 2. In the second box below, right click on the primary display, marked with a big 1. In the select displays you want to use box, you should see your main monitor, and one called Elgato. Create smart tee filter, add to graph, connect Elgato's video out to smart tee in On the left sidebar, click on Set up multiple displays. Graph.AddFilter(elgatoFilter, "Elgato Video Capture Filter")
Streaming with elgato game capture hd software windows#
The interface for Elgato Game Capture HD 2.5.2 for macOS is shown below, but the interface for Elgato Game Capture HD 3.5 for Windows is extremely similar. Type comType = Type.GetTypeFromCLSID(elgatoGuid) ĮlgatoFilter = (IBaseFilter)Activator.CreateInstance(comType) Elgato Game Capture HD has a Facebook Live Streaming option in the Live Streaming section. Graph = (IFilterGraph2)new FilterGraph() ĬaptureGraph = (ICaptureGraphBuilder2)new CaptureGraphBuilder2() Initialize filter graph and capture graph Set the video size to use for capture and recording using DirectShowLib ĭsROTEntry rot //Used for remotely connecting to graph Here is an example of creating a simple graph and previewing the Elgato's video stream. I know this is an old question, but in case anyone else stumbles across it it is quite easy to use the video stream from an Elgato capture card in C# with DirectShow.
