IMMDevice interface
The IMMDevice interface encapsulates the generic features of a multimedia device resource. In the current implementation of the MMDevice API, the only type of device resource that an IMMDevice interface can represent is an audio endpoint device.
A client can obtain an IMMDevice interface from one of the following methods:
- IMMDeviceCollection::Item
- IMMDeviceEnumerator::GetDefaultAudioEndpoint
- IMMDeviceEnumerator::GetDevice
For more information, see IMMDeviceCollection Interface.
After obtaining the IMMDevice interface of an audio endpoint device, a client can obtain an interface that encapsulates the endpoint-specific features of the device by calling the IMMDevice::QueryInterface method with parameter iid set to REFIID IID_IMMEndpoint. For more information, see IMMEndpoint Interface.
For code examples that use the IMMDevice interface, see the following topics:
Members
The IMMDevice interface inherits from the IUnknown interface. IMMDevice also has these types of members:
Methods
The IMMDevice interface has these methods.
Method | Description |
---|---|
Activate |
Creates a COM object with the specified interface. |
GetId |
Gets a string that identifies the device. |
GetState |
Gets the current state of the device. |
OpenPropertyStore |
Gets an interface to the device's property store. |
Requirements
Minimum supported client |
Windows Vista [desktop apps only] |
---|---|
Minimum supported server |
Windows Server 2008 [desktop apps only] |
Header |
|
See also
- Core Audio Interfaces
- IMMDeviceCollection Interface
- IMMDeviceCollection::Item
- IMMDeviceEnumerator::GetDefaultAudioEndpoint
- IMMDeviceEnumerator::GetDevice
- IMMEndpoint Interface
- MMDevice API