MediaFoundation.Net by Dean Netherton

<PackageReference Include="MediaFoundation.Net" Version="2.0.0.32" />

.NET API 356,864 bytes

 IMFCaptureSource

public interface IMFCaptureSource
int AddEffect(int dwSourceStreamIndex, out object pUnknown)

int GetAvailableDeviceMediaType(int dwSourceStreamIndex, int dwMediaTypeIndex, out IMFMediaType ppMediaType)

int GetCaptureDeviceActivate(MF_CAPTURE_ENGINE_DEVICE_TYPE mfCaptureEngineDeviceType, out IMFActivate ppActivate)

int GetCaptureDeviceSource(MF_CAPTURE_ENGINE_DEVICE_TYPE mfCaptureEngineDeviceType, out IMFMediaSource ppMediaSource)

int GetCurrentDeviceMediaType(int dwSourceStreamIndex, out IMFMediaType ppMediaType)

int GetDeviceStreamCategory(int dwSourceStreamIndex, out MF_CAPTURE_ENGINE_STREAM_CATEGORY pStreamCategory)

int GetDeviceStreamCount(out int pdwStreamCount)

int GetMirrorState(int dwStreamIndex, out bool pfMirrorState)

int GetService(Guid rguidService, Guid riid, out object ppUnknown)

int GetStreamIndexFromFriendlyName(int uifriendlyName, out int pdwActualStreamIndex)

int RemoveAllEffects(int dwSourceStreamIndex)

int RemoveEffect(int dwSourceStreamIndex, object pUnknown)

int SetCurrentDeviceMediaType(int dwSourceStreamIndex, IMFMediaType pMediaType)

int SetMirrorState(int dwStreamIndex, bool fMirrorState)