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. |