Partilhar via


Interfaces de áudio principais

Esta referência de programação para o Core Audio SDK inclui as seguintes interfaces:

MMDevice API

A API do Dispositivo Multimídia do Windows (MMDevice) permite que os clientes de áudio descubram dispositivos de ponto de extremidade de áudio, determinem seus recursos e criem instâncias de driver para esses dispositivos. O arquivo de cabeçalho Mmdeviceapi.h define as interfaces na API MMDevice. Para obter mais informações, consulte Sobre a API MMDevice.

A tabela a seguir lista as interfaces MMDevice disponíveis com o Core Audio SDK para Windows Vista.

Interface Descrição
IMMevice Representa um dispositivo de áudio.
IMMDeviceCollection Representa uma coleção de dispositivos de áudio.
IMMDeviceEnumerador Fornece métodos para enumerar dispositivos de áudio.
IMMEndpoint Representa um dispositivo de ponto de extremidade de áudio.
IMMNotificationClient Fornece notificações quando um dispositivo de ponto de extremidade de áudio é adicionado ou removido, quando o estado ou as propriedades de um dispositivo são alterados ou quando há uma alteração na função padrão atribuída a um dispositivo.

WASAPI

A WASAPI (API de Sessão de Áudio do Windows) permite que os aplicativos cliente gerenciem o fluxo de dados de áudio entre o aplicativo e um dispositivo de ponto de extremidade de áudio. Os arquivos de cabeçalho Audioclient.h e Audiopolicy.h definem as interfaces WASAPI. Para obter mais informações, consulte Sobre o WASAPI.

A tabela a seguir lista as interfaces WASAPI disponíveis com o Core Audio SDK para Windows Vista e posterior.

Interface Descrição
IActivateAudioInterfaceAsyncOperation Representa uma operação assíncrona ativando uma interface WASAPI e fornece um método para recuperar os resultados da ativação.
Aplica-se a partir do Windows 8.
IActivateAudioInterfaceCompletionHandler Fornece um retorno de chamada para indicar que a ativação de uma interface WASAPI está concluída.
Aplica-se a partir do Windows 8.
IAudioCaptureClient Permite que um cliente leia dados de entrada de um buffer de ponto de extremidade de captura.
IAudioClient Permite que um cliente crie e inicialize um fluxo de áudio entre um aplicativo de áudio e o mecanismo de áudio ou o buffer de hardware de um dispositivo de ponto de extremidade de áudio.
IAudioClock Permite que um cliente monitore a taxa de dados de um fluxo e a posição atual no fluxo.
IAudioClock2
Permite que um cliente obtenha a posição atual do dispositivo.
IAudioClockAdjustment
Permite que um cliente defina a taxa de amostragem de um fluxo.
IAudioRenderClient Permite que um cliente grave dados de saída em um buffer de ponto de extremidade de renderização.
IAudioSessionControl Permite que um cliente configure os parâmetros de controle para uma sessão de áudio e monitore eventos na sessão.
IAudioSessionControl2
Permite que um cliente obtenha informações sobre a sessão de áudio.
IAudioSessionManager Permite que um cliente acesse os controles de sessão e os controles de volume para sessões de áudio entre processos e específicas do processo.
IAudioSessionManager2
Gerencia todas as submisturas, incluindo enumeração e notificação de submixes. Ele também fornece suporte para notificações de evasão.
IAudioSessionEnumerator
Permite que um cliente enumere sessões de áudio.
IAudioStreamVolume Permite que um cliente controle e monitore os níveis de volume de todos os canais em um fluxo de áudio.
IChannelAudioVolume Permite que um cliente controle os níveis de volume de todos os canais na sessão de áudio à qual o fluxo pertence.
ISimpleAudioVolume Permite que um cliente controle o nível de volume mestre de uma sessão de áudio.
IAudioSessionEventos Fornece notificações de eventos relacionados à sessão, como alterações no nível de volume, nome para exibição e estado da sessão.
IAudioSessionNotification
Envia notificações quando ocorrem alterações na sessão.
IAudioVolumeDuckNotification
Envia notificações sobre alterações pendentes de desvio do sistema.

DeviceTopology API

A API DeviceTopology fornece aos aplicativos cliente a capacidade de atravessar as topologias de hardware funcionais de dispositivos de renderização e captura de áudio. O arquivo de cabeçalho Devicetopology.h define as interfaces na API DeviceTopology. Para obter mais informações, consulte Topologias de dispositivo e API DeviceTopology.

A tabela a seguir lista as interfaces DeviceTopology disponíveis com o Core Audio SDK para Windows Vista e posterior.

Interface Descrição
IAudioAutoGainControl Fornece acesso a um controle de ganho automático de hardware (AGC).
IAudioBass Fornece acesso a um controle de nível de graves de hardware.
IAudioChannelConfig Fornece acesso a um controle de configuração de canal de hardware.
IAudioInputSelector Fornece acesso a um controle multiplexador de hardware (seletor de entrada).
IAudioLoudness Fornece acesso a um controle de compensação de "loudness".
IAudioMidrange Fornece acesso a um controle de nível intermediário de hardware.
IAudioMudo Fornece acesso a um controle de mudo de hardware.
IAudioOutputSelector Fornece acesso a um controle de demultiplexador de hardware (seletor de saída).
IAudioPeakMeter Fornece acesso a um controle de medidor de pico de hardware.
IAudioTreble Fornece acesso a um controle de nível agudo de hardware.
IAudioVolumeLevel Fornece acesso a um controle de volume de hardware.
IConnector Representa um ponto de conexão entre componentes.
IControlInterface Representa uma interface de controle em uma peça (subunidade ou conector).
IDeviceSpecificProperty Representa uma propriedade específica do dispositivo de um conector ou subunidade.
IDeviceTopologia Fornece acesso à topologia de um dispositivo de áudio.
IKsFormatSupport Fornece informações sobre os formatos de dados de áudio que são suportados por uma conexão de E/S configurada por software (normalmente um canal DMA) entre o dispositivo de áudio e a memória do sistema.
IKsJackDescrição Fornece informações sobre as tomadas ou conectores internos que fornecem uma conexão física entre um dispositivo em um adaptador de áudio e um dispositivo de ponto de extremidade externo ou interno (por exemplo, um microfone ou CD player).
IKsJackDescription2
Fornece acesso conveniente à propriedade KSPROPERTY_JACK_DESCRIPTION2 de um conector para um dispositivo de ponto de extremidade.
IKsJackSinkInformações
Fornece informações sobre o coletor de tomada se o conector for suportado pelo hardware.
Artesão Representa uma parte (conector ou subunidade) de uma topologia de dispositivo.
IPartsList Representa uma lista de peças (conectores e subunidades).
IPerChannelDbLevel Representa uma interface de controle de subunidade genérica que fornece controle por canal sobre o nível de volume, em decibéis, de um fluxo de áudio ou de uma banda de frequência em um fluxo de áudio.
ISubunit Representa uma subunidade de hardware (por exemplo, um controle de nível de volume) que fica no caminho de dados entre um cliente e um dispositivo de ponto de extremidade de áudio.
IControlChangeNotify Fornece notificações quando o status de uma peça (conector ou subunidade) é alterado.

EndpointVolume API

A API EndpointVolume permite que clientes especializados controlem e monitorem os níveis de volume de dispositivos de ponto de extremidade de áudio. O arquivo de cabeçalho Endpointvolume.h define as interfaces na API EndpointVolume. Para obter mais informações, consulte EndpointVolume API .

A tabela a seguir lista as interfaces EndpointVolume disponíveis com o Core Audio SDK para Windows Vista.

Interface Descrição
IAudioEndpointVolume Representa os controles de volume no fluxo de áudio de ou para um dispositivo de ponto de extremidade de áudio.
IAudioEndpointVolumeEx
Fornece controles de volume no fluxo de áudio de ou para um ponto de extremidade do dispositivo.
IAudioMeterInformation Representa um medidor de pico no fluxo de áudio de ou para um dispositivo de ponto de extremidade de áudio.
IAudioEndpointVolumeCallback Fornece notificações quando o nível de volume ou o estado de silenciamento de um dispositivo de ponto de extremidade de áudio é alterado.

Referência de programação