1

I'm having problems with the Directshow.net library and Windows 7.

In some PC (only if in Device Manager > Controllers Sound, video, listed: "High Definition Audio Device") only detect 1 mic when Skype, MSN, and Recording Devices, lists at least two; when executes this code:

Filter audioDevice = null;
if (capture != null)
audioDevice = capture.AudioDevice;

"audioDevice" only have the first mic (internal mic or rear mic), and don't retrieve de second mic (front mic -jack-) or vice versa.

Someone has solved or know another library to capture Video and Audio from C#??

gokuhs
  • 130
  • 11

1 Answers1

2

There is little to solve here. DirectShow.NET uses DirectShow, which in turn uses Audio Capture Filter, which uses legacy audio APIs to capture audio. Skype instead uses WASAPI, latest and greatest audio capture API in Windows Vista+ (falls back to older APIs in Windows XP-).

There is only one workaround available: to write proprietary audio capture filter backed by WASAPI.

Roman R.
  • 68,205
  • 6
  • 94
  • 158
  • mmm, thanks for you answer,Do you know where I can start looking to create the Audio capture Filter? – gokuhs Nov 19 '12 at 14:05
  • You are unlikely to be able to do it in .NET since APIs are native. You need Windows SDK, and [samples](http://msdn.microsoft.com/en-us/library/windows/desktop/dd375468%28v=vs.85%29.aspx) from there. `PushSource` is typical sample for those who want to inject data into DirectShow pipeline. – Roman R. Nov 19 '12 at 14:08