Audio Endpoint Properties

Header file Mmdeviceapi.h defines several properties of audio endpoint devices in Windows Vista and later. The Windows audio service sets the values of these properties. Clients can read these properties, but should not set them. Property values are stored as PROPVARIANT structures.

The recommended way of reading the properties of an audio input device is to use the APIs in the Windows.Devices.Enumeration namespace. These APIs are supported for Windows Store apps and desktop apps. For existing desktop apps that read device properties using the IMMDevice interface, see Device Properties. IMMDevice is not supported for Windows Store apps.

For code examples that show how to access the properties of an audio endpoint device, see the following topics:

For information about PROPVARIANT, see the Windows SDK documentation.

The following properties are specific to audio endpoint devices.

Property Description
PKEY_AudioEndpoint_Association Associates a kernel-streaming (KS) pin category with an audio endpoint device.
PKEY_AudioEndpoint_ControlPanelPageProvider Specifies the CLSID of the registered provider of the device-properties extension for the audio endpoint device.
PKEY_AudioEndpoint_Disable_SysFx Indicates whether system effects are enabled in the shared-mode stream that flows to or from the audio endpoint device.
PKEY_AudioEndpoint_FormFactor Indicates the physical attributes of the audio endpoint device.
PKEY_AudioEndpoint_FullRangeSpeakers Specifies the channel-configuration mask for the full-range speakers that are connected to the audio endpoint device.
PKEY_AudioEndpoint_GUID Supplies the DirectSound device identifier that corresponds to the audio endpoint device.
PKEY_AudioEndpoint_PhysicalSpeakers Defines the physical speaker configuration for the audio endpoint device.
PKEY_AudioEngine_DeviceFormat Specifies the device format, which is the format that the audio engine uses for the shared-mode stream that flows to or from the audio endpoint device.
PKEY_AudioEngine_OEMFormat Specifies the default format of the device that is used for rendering or capturing a stream. The values are populated by the OEM in an .inf file.
PKEY_AudioEndpoint_Supports_EventDriven_Mode Indicates whether the endpoint supports the event-driven mode. The values are populated by the OEM in an .inf file.
PKEY_AudioEndpoint_JackSubType Contains an output category GUID for an audio endpoint device.

The core audio APIs support additional properties that do not apply exclusively to audio endpoint devices. For more information about these additional properties, see Device Properties.

Audio Endpoint Devices

Programming Reference