Skip to main content

XAudio2CreateWithSharedContexts

Cria um novo objeto XAudio2 e retorna um ponteiro para sua interface IXAudio2.

Sintaxe

Parâmetros

ppXAudio2   _Outptr_
Tipo: IXAudio2**
Se a operação for bem-sucedida, retorna um ponteiro para um objeto IXAudio2. Flags   _In_
Tipo: UINT32
Sinalizadores que especificam o comportamento do objeto IXAudio2. XAudio2Processor   _In_
Tipo: XAUDIO2_PROCESSOR
Um valor do tipo XAUDIO2_PROCESSOR que especifica qual CPU usar. Passar XAUDIO2_USE_DEFAULT_PROCESSOR permite que o XAudio2 escolha o processador ideal em tempo de execução. Especificar um processador pode interferir na capacidade do agendador de agendar threads de forma eficaz entre os processadores. Em vez disso, passe o valor XAUDIO2_USE_DEFAULT_PROCESSOR. SharedShapeContexts   _In_
Tipo: PXAUDIO2_SHARED_SHAPE_CONTEXTS
Ponteiro para SHARED_SHAPE_CONTEXTS. Esse parâmetro é específico do XBOX One e permite que um título compartilhe recursos de SHAPE e XMA com o XAudio2. O padrão é NULL.

Valor de retorno

Tipo: XAUDIO2_STDAPI Se a função for bem-sucedida, retornará S_OK. Se um ou mais argumentos forem inválidos, a função retornará um código de erro.

Comentários

XAudio2CreateWithSharedContexts funciona da mesma forma que a função XAudio2Create. Ela usa um parâmetro extra para permitir que o estado do SHAPE (Scalable Hardware Audio Processing Engine) no XBOX One seja compartilhado entre várias instâncias de IXAudio2. PXAUDIO2_SHARED_SHAPE_CONTEXTS é um ponteiro para o estado compartilhado. O XAudio2 usa contextos SHAPE para a reprodução de XMA. Como recurso, o XMA foi introduzido com o XBOX 360. Se você usa o XAudio2 para reproduzir áudio XMA na versão para XBOX 360 do seu jogo, ou em um jogo de XBOX One baseado no antigo XBOX One Software Development Kit, é essencial saber que o Microsoft Game Development Kit (GDK) continua dando suporte a XMA e a contextos SHAPE. Para reproduzir áudio no formato XMA, seu aplicativo não precisa usar o sinalizador XAudio2CreateWithSharedContexts, pois a instância do XAudio2 cria os próprios contextos SHAPE. XAudio2CreateWithSharedContexts é otimizado para aplicativos que têm várias instâncias do XAudio2. Ele permite que o aplicativo aloque um único conjunto de contextos SHAPE e os compartilhe de forma eficiente entre as instâncias.
O parâmetro XAudio2Processor deve usar o ponteiro XAUDIO2_USE_DEFAULT_PROCESSOR para permitir que o sistema faça a seleção de processador apropriada, a menos que o aplicativo tenha sido projetado para selecionar um processador específico.
O parâmetro XAudio2Create e a função XAudio2CreateWithSharedContexts usam sinalizadores aplicáveis a jogos que reproduzem somente áudio no formato XMA. Um aplicativo não consegue reproduzir conteúdo XMA se o sinalizador XAUDIO2_DO_NOT_USE_SHAPE for usado. Com o XBOX 360, o áudio XMA é decodificado no software ou no hardware, o que requer contextos SHAPE. A nova versão do Microsoft Game Development Kit (GDK) dá suporte à decodificação de XMA no hardware. Especificar esse sinalizador efetivamente interromperá a reprodução de XMA. Se a função chamar os próprios contextos SHAPE, ela usará o sinalizador XAUDIO2_DO_NOT_SHARE_SHAPE_CONTEXTS para especificar que os contextos SHAPE são para uso exclusivo dessa instância do XAudio2. Não é recomendável especificar esse sinalizador quando os contextos SHAPE não forem fornecidos (por exemplo, ao invocar XAudio2Create), pois, quando o XAudio2 cria os próprios contextos SHAPE, eles são compartilhados. Você também pode usar o sinalizador XAUDIO2_EXCLUDE_FROM_GAME_DVR_CAPTURE. Definir esse sinalizador impede que o DVR de jogos grave o áudio da voz de masterização. O cabeçalho também define o sinalizador AUDCLNT_STREAMFLAGS_EXCLUDE_FROM_GAME_DVR_CAPTURE. Passe esse sinalizador para IAudioClient::Initialize para impedir que o DVR de jogos grave o áudio reproduzido por esse IAudioClient. Se o seu jogo usa o XAudio2, use o sinalizador XAUDIO2_EXCLUDE_FROM_GAME_DVR_CAPTURE para essa finalidade. Para obter mais informações, consulte Introdução ao XAudio2.

Requisitos

Cabeçalho: xaudio2Xbox.h Biblioteca: xaudio2.lib Plataformas compatíveis: consoles da família XBOX One e consoles XBOX Series

Documentação conceitual

Confira também

Visão geral do XAudio2
Principais conceitos do XAudio2
xaudio2xbox
Last modified on October 6, 2026