O que há de novo para APIs de áudio principal no Windows 7
As APIs de áudio principal foram introduzidas no Windows Vista, que forneceu um novo conjunto de componentes de áudio de modo de usuário que um aplicativo cliente pode usar para renderizar ou capturar fluxos de áudio com recursos de áudio aprimorados. Para obter uma visão geral desse conjunto de APIs, consulte Sobre as APIs de áudio principais do Windows.
As APIs Core Audio foram melhoradas no Windows 7. A tabela a seguir resume os novos recursos e os aprimoramentos nas APIs de áudio principal:
Recurso | Descrição |
---|---|
Melhorias genéricas | Os seguintes recursos foram aprimorados no Windows 7:
|
Dispositivo de comunicação (Novo) | Nesta versão, um novo tipo de dispositivo foi adicionado ao painel de controle Sons : dispositivo de comunicação . Este dispositivo é usado principalmente para comunicações, ou seja, para fazer ou receber chamadas telefônicas no computador. Um aplicativo de comunicação pode usar componentes Core Audio para obter uma referência ao ponto de extremidade do dispositivo de comunicação padrão e renderizar fluxos de áudio para fins de comunicação. O sistema operacional considera o fluxo aberto em um dispositivo de comunicação como um fluxo de comunicação. As operações WASAPI em um fluxo de comunicação são semelhantes a qualquer outro fluxo de áudio. Para obter mais informações, consulte Trabalhando com funções de dispositivo. |
Atenuação de fluxo ou desvio de áudio (Novo) | Ducking automático ou atenuação de fluxo é um novo recurso no Windows 7 que se destina a aplicativos VoIP e Comunicação Unificada. Por padrão, o sistema operacional reduz a intensidade de um fluxo de áudio quando um fluxo de comunicação, como uma chamada telefônica, é recebido no dispositivo de comunicação por meio do computador. As opções de volume são definidas pelo usuário no painel de controle Som . Novas APIs foram adicionadas no SDK do Windows que permitem que os aplicativos substituam o comportamento padrão de ducking. Para obter mais informações sobre como implementar um recurso de ducking personalizado, consulte Providing a Custom Ducking Behavior. |
Roteamento de fluxo (Novo) | No Windows 7, as APIs de áudio principal foram aprimoradas para transferir um fluxo de áudio perfeitamente de um dispositivo existente para um novo ponto de extremidade de áudio padrão. Conjuntos de APIs de áudio de alto nível que usam APIs de áudio principais, como Media Foundation, DirectSound e APIs WAVE, implementam o recurso de roteamento de fluxo. Os aplicativos de mídia que usam esses conjuntos de API para reproduzir ou capturar um fluxo usam a implementação padrão e não precisam modificar o aplicativo. No entanto, se seu aplicativo de mídia usa APIs de áudio principal diretamente, o aplicativo precisa fornecer a implementação de roteamento de fluxo. Para fazer isso, o aplicativo deve manipular novos eventos que foram adicionados que notificam um cliente WASAPI quando o dispositivo padrão é conectado ou removido. Para obter mais informações sobre esse recurso, consulte Roteamento de fluxo. |
Áudio do Modo de Usuário Protegido (PUMA) (Aprimorado) | O PUMA foi atualizado para o Windows 7 para fornecer os seguintes recursos:
|
A estrutura extensível WAVEFORMAT foi estendida para a estrutura WAVEFORMATEXTENSIBLE_IEC61937 (Novo) | No Windows 7, uma nova estrutura foi adicionada para suportar transmissões IEC 61937. WAVEFORMATEXTENSIBLE_IEC61937 estende a estrutura WAVEFORMATEXTENSIBLE para armazenar dois conjuntos de características de fluxo de áudio: o formato de áudio codificado antes da transmissão e as características do fluxo de áudio depois de ter sido decodificado. A nova estrutura especifica explicitamente o número efetivo de canais, o tamanho da amostra e a taxa de dados de um formato não PCM. Com essas informações, um aplicativo pode inferir o nível de qualidade do fluxo não-PCM depois que ele é descompactado e reproduzido. Para obter mais informações, consulte Representando formatos para transmissões IEC 61937. |
IAudioClient::Initialize (Melhorado) | O método IAudioClient::Initialize foi aprimorado para indicar erros específicos que podem ocorrer ao abrir um fluxo de áudio. Os novos códigos de erro são:
|
IAudioCaptureClient::GetBuffer e IAudioRenderClient::GetBuffer (Aprimorado) | Os métodos IAudioCaptureClient::GetBuffer e IAudioRenderClient::GetBuffer foram aprimorados para retornar o código de erro AUDCLNT_E_BUFFER_ERROR que indica que o buffer de ponto de extremidade no modo exclusivo não foi recuperado. Para obter mais informações, consulte Comentários em IAudioCaptureClient::GetBuffer e IAudioRenderClient::GetBuffer. |
Capacidade de detecção de tomada (Melhorado) | Uma nova interface no Windows 7, IKsJackDescription2, estende IKsJackDescription. Usando a nova interface, a pilha de áudio ou um aplicativo pode obter informações adicionais de tomada. Isso inclui a capacidade de detecção da tomada e se o formato do dispositivo foi alterado dinamicamente. |
Exemplos do Windows (Novo) | Novos exemplos foram adicionados ao SDK do Windows que demonstram o uso das APIs de áudio principal. Para obter mais informações, consulte Exemplos de SDK que usam as APIs de áudio principais. |
Principais Novas Interfaces
As seguintes interfaces são novas para o Windows 7:
- IAudioClock2
- IAudioClockAdjustment
- IAudioEndpointVolumeEx
- IAudioSessionManager2
- IAudioSessionControl2
- IAudioSessionEnumerator
- IAudioSessionNotification
- IAudioVolumeDuckNotification
- IKsJackDescription2
- IKsJackSinkInformações
Tópicos relacionados