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