Question

What we need is to create a Virtual Audio Device that combines the mic from a usb webcam with a set of usb speakers.

We want this Virtual Audio Device to act the same way as a headset acts. That is, if we are in Lync > Tools > Options > Audio Device, we want the Virtual Audio Device to appear in the main drop down menu, which only displays devices that have both a mic and speakers.

We have looked into the following solutions:

  • Use TopoEdit to create a Virtual Audio Device.
  • This is a GUI so it doesn't work for us.

  • Use Virtual Audio Cable to create a Virtual Audio Device.

  • This is a GUI so it doesn't work for us.

  • Use DirectShow to "spoof" an audio device.

  • This will involve using the Filter Graph.
  • A downside is that DirectShow is deprecated in favor of MS Media Foundation.

  • Use MS Media foundation to "spoof" an audio device.

  • The downside is that the documentation is poor.

  • Write a Virtual Audio Device driver.

  • E.g. Microsoft Virtual Audio Device Driver Sample

If we got what we really wanted, we would combine:

1 a Media Device that has a mic, and 2 a Media Device that has speakers, into 3 a Virtual Media Device that has both speakers and a mic.

Was it helpful?

Solution

Since you are going to make your device available to Lync, you need to first check the API which Lync, or even specific version of Lync, is using for audio capture. Most likely it's DirectShow or Media Foundation for video, and DirectShow, Media Foundation or MMDevice API for audio. Also, it might so happen that in different environment and/or different Lync versions different APIs are used. Chances are high that you might need to provide a virtual device on several APIs.

It is only a virtual audio device driver which will be picked by all APIs, but its creation is likely to be more complicated than all alternate options together.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top