Interfaces de audio principales

Esta referencia de programación para core Audio SDK incluye las siguientes interfaces:

MMDevice API

La API de dispositivos multimedia de Windows (MMDevice) permite a los clientes de audio detectar dispositivos de punto de conexión de audio, determinar sus funcionalidades y crear instancias de controlador para esos dispositivos. El archivo de encabezado Mmdeviceapi.h define las interfaces de la API MMDevice. Para obtener más información, consulte Acerca de MMDevice API.

En la tabla siguiente se enumeran las interfaces MMDevice disponibles con core Audio SDK para Windows Vista.

Interfaz Descripción
IMMDevice Representa un dispositivo de audio.
IMMDeviceCollection Representa una colección de dispositivos de audio.
IMMDeviceEnumerator Proporciona métodos para enumerar dispositivos de audio.
IMMEndpoint Representa un dispositivo de punto de conexión de audio.
IMMNotificationClient Proporciona notificaciones cuando se agrega o quita un dispositivo de punto de conexión de audio, cuando cambia el estado o las propiedades de un dispositivo, o cuando hay un cambio en el rol predeterminado asignado a un dispositivo.

WASAPI

La API de sesión de audio de Windows (WASAPI) permite a las aplicaciones cliente administrar el flujo de datos de audio entre la aplicación y un dispositivo de punto de conexión de audio. Los archivos de encabezado Audioclient.h y Audiopolicy.h definen las interfaces WASAPI. Para obtener más información, consulte Acerca de WASAPI.

En la tabla siguiente se enumeran las interfaces WASAPI disponibles con core Audio SDK para Windows Vista y versiones posteriores.

Interfaz Descripción
IActivateAudioInterfaceAsyncOperation Representa una operación asincrónica que activa una interfaz WASAPI y proporciona un método para recuperar los resultados de la activación.
Se aplica a partir de Windows 8.
IActivateAudioInterfaceCompletionHandler Proporciona una devolución de llamada para indicar que la activación de una interfaz WASAPI está completa.
Se aplica a partir de Windows 8.
IAudioCaptureClient Permite a un cliente leer datos de entrada de un búfer de punto de conexión de captura.
IAudioClient Permite a un cliente crear e inicializar una secuencia de audio entre una aplicación de audio y el motor de audio o el búfer de hardware de un dispositivo de punto de conexión de audio.
IAudioClock Permite a un cliente supervisar la velocidad de datos de una secuencia y la posición actual en la secuencia.
IAudioClock2
Permite a un cliente obtener la posición actual del dispositivo.
IAudioClockAdjustment
Permite a un cliente establecer la frecuencia de muestreo de una secuencia.
IAudioRenderClient Permite a un cliente escribir datos de salida en un búfer de punto de conexión de representación.
IAudioSessionControl Permite a un cliente configurar los parámetros de control para una sesión de audio y supervisar eventos en la sesión.
IAudioSessionControl2
Permite a un cliente obtener información sobre la sesión de audio.
IAudioSessionManager Permite a un cliente acceder a los controles de sesión y a los controles de volumen para sesiones de audio específicas del proceso y entre procesos.
IAudioSessionManager2
Administra todas las submezclas, incluida la enumeración y la notificación de submezclas. También proporciona compatibilidad con notificaciones de pato.
IAudioSessionEnumerator
Permite a un cliente enumerar sesiones de audio.
IAudioStreamVolume Permite a un cliente controlar y supervisar los niveles de volumen de todos los canales de una secuencia de audio.
IChannelAudioVolume Permite a un cliente controlar los niveles de volumen de todos los canales de la sesión de audio a la que pertenece la secuencia.
ISimpleAudioVolume Permite a un cliente controlar el nivel de volumen maestro de una sesión de audio.
IAudioSessionEvents Proporciona notificaciones de eventos relacionados con la sesión, como cambios en el nivel de volumen, el nombre para mostrar y el estado de sesión.
IAudioSessionNotification
Envía notificaciones cuando se producen cambios en la sesión.
IAudioVolumeDuckNotification
Envía notificaciones sobre los cambios pendientes de pato del sistema.

DeviceTopology API

La API DeviceTopology proporciona a las aplicaciones cliente la capacidad de recorrer las topologías de hardware funcionales de los dispositivos de representación y captura de audio. El archivo de encabezado Devicetopology.h define las interfaces de la API DeviceTopology. Para más información, consulte Topologías de dispositivos y API deviceTopology.

En la tabla siguiente se enumeran las interfaces deviceTopology disponibles con core Audio SDK para Windows Vista y versiones posteriores.

Interfaz Descripción
IAudioAutoGainControl Proporciona acceso a un control automático de ganancia de hardware (AGC).
IAudioBass Proporciona acceso a un control de bajo de hardware.
IAudioChannelConfig Proporciona acceso a un control de configuración de canal de hardware.
IAudioInputSelector Proporciona acceso a un control de multiplexador de hardware (selector de entrada).
IAudioLoudness Proporciona acceso a un control de compensación de "voz alta".
IAudioMidrange Proporciona acceso a un control de nivel medio de hardware.
IAudioMute Proporciona acceso a un control de exclusión de hardware.
IAudioOutputSelector Proporciona acceso a un control de demultiplexer de hardware (selector de salida).
IAudioPeakMeter Proporciona acceso a un control de medidor máximo de hardware.
IAudioTreble Proporciona acceso a un control de nivel de treble de hardware.
IAudioVolumeLevel Proporciona acceso a un control de volumen de hardware.
IConnector Representa un punto de conexión entre componentes.
IControlInterface Representa una interfaz de control de una parte (subunidad o conector).
IDeviceSpecificProperty Representa una propiedad específica del dispositivo de un conector o subunidad.
IDeviceTopology Proporciona acceso a la topología de un dispositivo de audio.
IKsFormatSupport Proporciona información sobre los formatos de datos de audio compatibles con una conexión de E/S configurada por software (normalmente un canal DMA) entre el dispositivo de audio y la memoria del sistema.
IKsJackDescription Proporciona información sobre los conectores o conectores internos que proporcionan una conexión física entre un dispositivo en un adaptador de audio y un dispositivo de punto de conexión externo o interno (por ejemplo, un micrófono o reproductor de CD).
IKsJackDescription2
Proporciona un acceso cómodo a la propiedad KSPROPERTY_JACK_DESCRIPTION2 de un conector a un dispositivo de punto de conexión.
IKsJackSinkInformation
Proporciona información sobre el receptor del conector si el conector es compatible con el hardware.
IPart Representa una parte (conector o subunit) de una topología de dispositivo.
IPartsList Representa una lista de elementos (conectores y subunidades).
IPerChannelDbLevel Representa una interfaz de control de subunidad genérica que proporciona control por canal sobre el nivel de volumen, en decibelios, de una secuencia de audio o de una banda de frecuencia en una secuencia de audio.
ISubunit Representa una subunidad de hardware (por ejemplo, un control de nivel de volumen) que se encuentra en la ruta de acceso de datos entre un cliente y un dispositivo de punto de conexión de audio.
IControlChangeNotify Proporciona notificaciones cuando cambia el estado de un elemento (conector o subunidad).

EndpointVolume API

La API EndpointVolume permite a los clientes especializados controlar y supervisar los niveles de volumen de los dispositivos de punto de conexión de audio. El archivo de encabezado Endpointvolume.h define las interfaces de la API EndpointVolume. Para obtener más información, consulte EndpointVolume API .

En la tabla siguiente se enumeran las interfaces EndpointVolume disponibles con core Audio SDK para Windows Vista.

Interfaz Descripción
IAudioEndpointVolume Representa los controles de volumen de la secuencia de audio hacia o desde un dispositivo de punto de conexión de audio.
IAudioEndpointVolumeEx
Proporciona controles de volumen en la secuencia de audio hacia o desde un punto de conexión de dispositivo.
IAudioMeterInformation Representa un medidor máximo en la secuencia de audio hacia o desde un dispositivo de punto de conexión de audio.
IAudioEndpointVolumeCallback Proporciona notificaciones cuando cambia el estado de silenciamiento o nivel de volumen de un dispositivo de punto de conexión de audio.

Referencia de programación