Compartilhar via


Referência de DDI de dispositivos de áudio

Visão geral da tecnologia de referência de DDI de dispositivos de áudio.

Para desenvolver a Referência de DDI de Dispositivos de Áudio, você precisa desses cabeçalhos:

Para obter diretrizes de programação para essa tecnologia, consulte:

Enumerações

 
APO_FLAG

A enumeração APO_FLAG define constantes usadas como sinalizadores por um objeto de processamento de áudio (APO).
APO_LOG_LEVEL

Especifica o nível de um evento APO registrado com IAudioProcessingObjectLoggingService::ApoLog.
APO_NOTIFICATION_TYPE

Especifica o tipo de um APO_NOTIFICATION.
APO_REFERENCE_STREAM_PROPERTIES

Especifica as propriedades do fluxo de loopback para o método de retorno de chamada IApoAcousticEchoCancellation2::GetDesiredReferenceStreamProperties.
AUDIO_SYSTEMEFFECT_STATE

Especifica o estado de um efeito de áudio sAPO (Objeto de Processamento de Áudio) de Efeitos do Sistema.
DEVICE_ORIENTATION_TYPE

Especifica valores de orientação do dispositivo para notificações do tipo APO_NOTIFICATION_TYPE_DEVICE_ORIENTATION.
KSPROPERTY_AUDIOEFFECTSDISCOVERY

A enumeração KSPROPERTY_AUDIOEFFECTSDISCOVERY define uma constante usada pela lista de APOs (objetos de processamento de áudio).

Funções

 
AcceptInput

Fornece entrada para o APO em uma de suas entradas auxiliares.
AddAuxiliaryInput

Adiciona uma entrada auxiliar ao APO e fornece parâmetros de inicialização.
AERT_Allocate

A função utilitário AERT_Allocate aloca e bloqueia um segmento de memória para uso por objetos de processamento de áudio.
AERT_Free

A função utilitário AERT_Free libera (libera) memória que foi bloqueada pela função AERT_Allocate, para uso por objetos de processamento de áudio para processar dados de áudio.
ApoLog

Registra um evento do APO.
APOProcess

O método APOProcess faz com que o APO faça uma passagem de processamento.
CalcInputFrames

O método CalcInputFrames retorna o número de quadros de entrada que um APO requer para gerar um determinado número de quadros de saída.
CalcOutputFrames

O método CalcOutputFrames retorna o número de quadros de saída que um APO requer para um determinado número de quadros de entrada.
Confirmar

Depois que uma alteração for feita, esse método salvará as alterações.
CreateAudioMediaType

A função CreateAudioMediaType usa o formato especificado pelo chamador para criar um objeto de tipo de mídia que descreve o formato de áudio.
CreateAudioMediaTypeFromUncompressedAudioFormat

A função CreateAudioMediaTypeFromUncompressedAudioFormat usa as informações fornecidas na estrutura UNCOMPRESSEDAUDIOFORMAT para criar um objeto de tipo de mídia que descreve o formato de áudio.
GetApoNotificationRegistrationInfo

Chamado pelo sistema para permitir que os clientes se registrem para receber retornos de chamada de notificação para notificações de ponto de extremidade do APO e efeito do sistema.
GetApoNotificationRegistrationInfo2

Chamado pelo sistema para permitir que os clientes se registrem para receber retornos de chamada de notificação para notificações de ponto de extremidade do APO e efeito do sistema. Esse método adiciona um parâmetro que pode ser usado para determinar os tipos de notificações com suporte na versão do Windows em execução no dispositivo atual.
GetAt

Obtém uma chave de propriedade da matriz de propriedades de um item.
GetAudioFormat

O método GetAudioFormat retorna a estrutura WAVEFORMATEX para o formato de dados de áudio.
GetControllableSystemEffectsList

Implementado pelos efeitos de áudio do objeto de processamento de áudio de efeitos do sistema (sAPO) para permitir que o chamador obtenha a lista atual de efeitos.
GetCount

Esse método retorna uma contagem do número de propriedades anexadas ao arquivo.
GetDesiredReferenceStreamProperties

Solicita um conjunto de propriedades para o fluxo de loopback, se houver suporte no ponto de extremidade de áudio associado.
GetEffectsList

O método GetEffectsList é usado para recuperar a lista de efeitos de processamento de áudio que estão ativos no momento e armazena um evento a ser sinalizado se a lista for alterada.
Getformat

O método GetFormat recupera uma representação IAudioMediaType de um formato personalizado.
GetFormatCount

O método GetFormatCount recupera o número de formatos personalizados compatíveis com o objeto de processamento de áudio de efeitos do sistema (sAPO).
GetFormatRepresentation

O método GetFormatRepresentation recupera uma representação de cadeia de caracteres do formato personalizado para que ele possa ser exibido em uma interface do usuário.
GetInputChannelCount

GetInputChannelCount retorna a contagem de canais de entrada (samples por quadro) para este APO.
GetLatency

O método GetLatency retorna a latência para esse APO. Latência é a quantidade de tempo que leva um quadro para percorrer a passagem de processamento de um APO.
GetPreferredInputFormat

Função de retorno de chamada que permite que APOs especifiquem um formato de entrada preferencial para o formato de saída fornecido.
GetPreferredOutputFormat

Função de retorno de chamada que permite que APOs especifiquem um formato de saída preferencial para o formato de entrada fornecido.
GetRealTimeWorkQueue

Obtém a ID de uma fila de trabalho que o APO pode usar para agendar tarefas que precisam ser executadas em uma prioridade em tempo real.
GetRegistrationProperties

GetRegistrationProperties retorna as propriedades de registro do objeto de processamento de áudio (APO).
GetUncompressedAudioFormat

O IAudioMediaType::GetUncompressedAudioFormat retorna informações sobre o formato de dados de áudio.
GetValue

Esse método recupera os dados de uma propriedade específica.
HandleNotification

Chamado pelo sistema para notificar os clientes sobre alterações em pontos de extremidade do APO ou efeitos do sistema.
Initialize

O método Initialize inicializa o APO e dá suporte a dados de comprimento variável.
IsCompressedFormat

O método IsCompressedFormat determina se o formato de dados de áudio é um formato compactado.
IsEqual

O método IsEqual compara dois tipos de mídia e determina se eles são idênticos.
IsInputFormatSupported

Verifica se um formato de entrada auxiliar específico tem suporte do APO.
IsInputFormatSupported

Esse método negocia com o mecanismo de áudio do Windows Vista para estabelecer um formato de dados para o fluxo de dados de áudio.
IsOutputFormatSupported

O método IsOutputFormatSupported é usado para verificar se há suporte para um formato de saída específico.
LockForProcess

O método LockForProcess é usado para verificar se o APO está bloqueado e pronto para processar dados.
RemoveAuxiliaryInput

Remove uma entrada auxiliar do APO.
Redefinir

O método Reset redefine o APO para seu estado original. Esse método não causa alterações nos objetos de conexão anexados à entrada ou à saída do APO.
SetAudioDeviceModulesManager

Chamado pelo sistema para passar uma instância de IAudioDeviceModulesManager para APOs (Objetos de Processamento de Áudio) que implementam a interface IAudioDeviceModulesClient .
SetAudioSystemEffectState

Implementado pelos efeitos de áudio do objeto de processamento de áudio de efeitos do sistema (sAPO) para permitir que o chamador defina o estado dos efeitos.
SetValue

Esse método define um valor de propriedade ou substitui ou remove um valor existente.
UnlockForProcess

O método UnlockForProcess libera o bloqueio que foi imposto ao APO pelo método LockForProcess.

Interfaces

 
IApoAcousticEchoCancellation

Essa interface é implementada por APOs para habilitar cenários de cancelamento de eco acústico (AEC).
IApoAcousticEchoCancellation2

Estende IAcousticEchoCancellation para permitir que APOs especifiquem as propriedades desejadas do fluxo de referência.
IApoAuxiliaryInputConfiguration

Fornece métodos que as APOs podem implementar para que o mecanismo de áudio possa adicionar e remover fluxos de entrada auxiliares.
IApoAuxiliaryInputRT

A interface em tempo real usada para conduzir as entradas auxiliares de um APO.
IAudioDeviceModulesClient

APOs (Objetos de Processamento de Áudio) implementam essa interface para obter uma referência a uma instância IAudioDeviceModulesManager .
IAudioMediaType

A interface IAudioMediaType expõe métodos que permitem que um sAPO obtenha informações usadas para negociar com o mecanismo de áudio para o formato de dados de áudio apropriado.
IAudioProcessingObject

Os SAPOs (Objetos de Processamento de Áudio) de Efeitos do Sistema normalmente são usados ou chamados de threads de processo em tempo real.
IAudioProcessingObjectConfiguration

A interface IAudioProcessingObjectConfiguration é usada para configurar o APO. Essa interface usa seus métodos para bloquear e desbloquear o APO para processamento.
IAudioProcessingObjectLoggingService

Representa um serviço de registro em log para APOs.
IAudioProcessingObjectNotifications

Implementado pelos clientes para registrar e receber notificações comuns relacionadas ao áudio para notificações de efeito de sistema e ponto de extremidade do APO.
IAudioProcessingObjectNotifications2

Implementado pelos clientes para registrar e receber notificações comuns relacionadas ao áudio para notificações de efeito de sistema e ponto de extremidade do APO. Essa interface adiciona a capacidade de determinar os tipos de notificações com suporte na versão do Windows em execução no dispositivo atual.
IAudioProcessingObjectPreferredFormatSupport

Essa interface é implementada por APOs para permitir que eles especifiquem formatos de entrada ou saída preferenciais.
IAudioProcessingObjectRT

Essa interface pode operar no modo em tempo real e seus métodos podem ser chamados de threads de processamento em tempo real.
IAudioProcessingObjectRTQueueService

Representa um serviço de fila de trabalho em tempo real para APOs.
IAudioSystemEffects

A interface IAudioSystemEffects usa os métodos básicos herdados do IUnknown e deve implementar um método Initialize.
IAudioSystemEffects2

A interface IAudioSystemEffects2 foi introduzida com Windows 8.1 para recuperar informações sobre os objetos de processamento em um determinado modo.
IAudioSystemEffects3

Implementado por clientes que exigem que uma estrutura APOInitSystemEffects3 seja passada para o método IAudioProcessingObject::Initialize.
IAudioSystemEffectsCustomFormats

A interface IAudioSystemEffectsCustomFormats tem suporte no Windows Vista e em versões posteriores do Windows.
Ipropertystore

Essa interface expõe métodos usados para enumerar e manipular valores de propriedade.

Estruturas

 
AcousticEchoCanceller_Reference_Input

Contém informações expandidas relativas à configuração atual do AEC (Cancelamento de Eco Acústico).
APO_NOTIFICATION

Representa uma notificação para uma alteração em um ponto de extremidade do APO ou efeitos do sistema.
APO_NOTIFICATION_DESCRIPTOR

Especifica uma notificação de APO solicitada.
APO_REG_PROPERTIES

A estrutura APO_REG_PROPERTIES é usada por IAudioProcessingObject::GetRegistrationProperties para retornar as propriedades de registro de um objeto de processamento de áudio (APO).
APOInitBaseStruct

A estrutura APOInitBaseStruct é o cabeçalho de inicialização base que deve preceder outros dados de inicialização em IAudioProcessingObject::Initialize.
APOInitSystemEffects

A estrutura APOInitSystemEffects é passada para o APO de efeitos do sistema para inicialização.
APOInitSystemEffects2

A estrutura APOInitSystemEffects2 foi introduzida com Windows 8.1, para tornar possível fornecer contexto de inicialização adicional ao objeto de processamento de áudio (APO) para inicialização.
APOInitSystemEffects3

Fornece parâmetros de inicialização de APO, estendendo APOInitSystemEffects2 para adicionar a capacidade de especificar um provedor de serviços para registro em log.
AUDIO_ENDPOINT_PROPERTY_CHANGE_APO_NOTIFICATION_DESCRIPTOR

Especifica uma notificação do APO de alteração de propriedade do ponto de extremidade.
AUDIO_ENDPOINT_PROPERTY_CHANGE_NOTIFICATION

Representa uma notificação do APO de alteração de propriedade.
AUDIO_ENDPOINT_VOLUME_APO_NOTIFICATION_DESCRIPTOR

Especifica uma notificação de APO de volume de ponto de extremidade.
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION

Representa uma notificação de APO de alteração de volume de ponto de extremidade de áudio.
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2

Representa uma notificação de APO de alteração de volume de ponto de extremidade de áudio. Essa é uma versão atualizada do AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION que fornece informações adicionais sobre o evento de alteração de volume.
AUDIO_ENVIRONMENT_STATE_CHANGE_NOTIFICATION

Representa uma notificação do APO de alteração do ambiente de áudio.
AUDIO_MICROPHONE_BOOST_APO_NOTIFICATION_DESCRIPTOR

Especifica uma notificação de APO de aumento de microfone de ponto de extremidade.
AUDIO_MICROPHONE_BOOST_NOTIFICATION

Representa uma notificação de APO de aumento de microfone de áudio.
AUDIO_SYSTEMEFFECT

Representa um efeito de áudio sAPO (objeto de processamento de áudio) de efeitos do sistema.
AUDIO_SYSTEMEFFECTS_PROPERTY_CHANGE_NOTIFICATION

Representa uma notificação do APO de efeito de áudio do sistema.
AUDIO_VOLUME_NOTIFICATION_DATA2

Representa informações sobre um evento de notificação de alteração de volume. Essa estrutura é usada pela estrutura AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2.
KSP_PINMODE

A estrutura KSP_PINMODE especifica a propriedade pin e os modos de processamento de áudio com suporte para uma fábrica de pinos.
MDEVICECAPSEX

A estrutura MDEVICECAPSEX contém informações de funcionalidade do dispositivo para drivers de dispositivo PnP (Plug and Play).
MIDIOPENDESC

A estrutura MIDIOPENDESC é uma estrutura preenchida pelo cliente que fornece informações sobre como abrir um dispositivo MIDI.
UNCOMPRESSEDAUDIOFORMAT

A estrutura UNCOMPRESSEDAUDIOFORMAT especifica a taxa de quadros, a máscara de canal e outros atributos do formato de dados de áudio descompactado.
WAVEFORMATEX

A estrutura WAVEFORMATEX especifica o formato de dados de um fluxo de áudio de onda.