Virtual Sound Cards & Media Devices Driver



-->

Microsoft Media Foundation supports audio and video capture. Video capture devices are supported through the UVC class driver and must be compatible with UVC 1.1. Audio capture devices are supported through Windows Audio Session API (WASAPI).

A capture device is represented in Media Foundation by a media source object, which exposes the IMFMediaSource interface. In most cases, the application will not use this interface directly, but will use a higher-level API such as the Source Reader to control the capture device.

Advantages of kernel-mode virtual device driver over the kernel-mode filter driver. The kernel-mode virtual device driver can record in accelerated mode and in silent mode. If the kernel-mode virtual device driver is used, usually you can configure your system and sound applications so that only the application’s sounds will be recorded. Virtual Sound Card For Windows 10 free download - Sound Card Analyzer, PDF Reader for Windows 10, Facebook for Windows 10, and many more programs.

Also, as a loopback virtual sound card, Virtual Audio Streaming can create a virtual audio cable/channel between two audio applications. For example, you can pipe the sound of RealPlayer into a MP3 encoder without any quality loss. Mix microphone and stereo mix (what u hear) Virtual Audio Streaming automatically mix all sounds it receives. Virtual Sound Card For Windows 10 free download - Sound Card Analyzer, PDF Reader for Windows 10, Facebook for Windows 10, and many more programs.

Enumerate Capture Devices

To enumerate the capture devices on the system, perform the following steps:

Virtual Sound Card Download

  1. Call the MFCreateAttributes function to create an attribute store.

  2. Set the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE attribute to one of the following values:

    ValueDescription
    MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_GUIDEnumerate audio capture devices.
    MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_GUIDEnumerate video capture devices.
  3. Call the MFEnumDeviceSources function. This function allocates an array of IMFActivate pointers. Each pointer represents an activation object for one device on the system.

  4. Call the IMFActivate::ActivateObject method to create an instance of the media source from one of the activation objects.

The following example creates a media source for the first video capture device in the enumeration list:

Download drivers for smartphones for free. Operating System Versions: Windows XP, 7, 8, 8.1, 10 (x64, x86) Category: Devices. Subcategory: smartphones. Popular Drivers. TV-tuners webcams other devices printers. Are you tired of looking for the drivers for your devices? DriverPack Online will find and install the drivers. Android USB drivers are a necessary tool in your PC and Mac. They act as a bridge between your mobile device and your PC helping them to interact and communicate. The USB drivers help in connecting our phones to your computer and performing tasks like transferring photos and other data. A mobile phone, known as a cell phone in North America, is a portable telephone that can make and receive calls over a radio frequency link while the user is moving within a telephone service area. The radio frequency link establishes a connection to the switching systems of a mobile phone operator, which provides access to the public switched telephone network (PSTN). Download Xlntidea Mobile Phones & Portable Devices driver. Portable Device Drivers Download free download - Internet Download Manager, CopyTrans Drivers Installer, Download App, and many more programs.

You can query the activation objects for various attributes, including the following:

  • The MF_DEVSOURCE_ATTRIBUTE_FRIENDLY_NAME attribute contains the display name of the device. The display name is suitable for showing to the user, but might not be unique.
  • For video devices, the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_SYMBOLIC_LINK attribute contains the symbolic link to the device. The symbolic link uniquely identifies the device on the system, but is not a readable string.
  • For audio devices, the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID attribute contains the audio endpoint ID of the device. The audio endpoint ID is similar to a symbolic link. It uniquely identifies the device on the system, but is not a readable string.

The following example takes an array of IMFActivate pointers and prints the display name of each device to the debug window:

If you already know the symbolic link for a video device, there is another way to create the media source for the device:

  1. Call MFCreateAttributes to create an attribute store.
  2. Set the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE attribute to MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_GUID.
  3. Set the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_SYMBOLIC_LINK attribute to the symbolic link.
  4. Call either the MFCreateDeviceSource or MFCreateDeviceSourceActivate function. The former returns an IMFMediaSource pointer. The latter returns an IMFActivate pointer to an activation object. You can use the activation object to create the source. (An activation object can be marshaled to another process, so it is useful if you want to create the source in another process. For more information, see Activation Objects.)

The following example takes the symbolic link of a video device and creates a media source.

There is an equivalent way to create an audio device from the audio endpoint ID:

  1. Call MFCreateAttributes to create an attribute store.
  2. Set the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE attribute to MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_GUID.
  3. Set the MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID attribute to the endpoint ID.
  4. Call either the MFCreateDeviceSource or MFCreateDeviceSourceActivate function.

The following example takes an audio endpoint ID and creates a media source.

Download

Virtual Device Driver App

Use a capture device

After you create the media source for a capture device, use the Source Reader to get data from the device. The Source Reader delivers media samples that contain the capture audio data or video frames. The next step depends on your application scenario:

  • Video preview: Use Microsoft Direct3D or Direct2D to display the video.
  • File capture: Use the Sink Writer to encode the file.
  • Audio preview: Use WASAPI.

If you want to combine audio capture with video capture, use the aggregate media source. The aggregate media source contains a collection of media sources and combines all of their streams into a single media source object. To create an instance of the aggregate media source, call the MFCreateAggregateSource function.

Shut down the capture device

Virtual Sound Cards & Media Devices Drivers

When the capture device is no longer needed, you must shut down the device by calling Shutdown on the IMFMediaSource object you obtained by calling MFCreateDeviceSource or IMFActivate::ActivateObject. Failure to call Shutdown can result in memory links because the system may keep a reference to IMFMediaSource resources until Shutdown is called.

If you allocated a string containing the symbolic link to a capture device, you should release this object as well.

Virtual Device Driver Download

Virtual sound cards & media devices drivers

Related topics