Condividi tramite


Metodo IXAudio2SourceVoice::Stop (xaudio2.h)

Arresta l'utilizzo dell'audio dalla voce corrente.

Sintassi

HRESULT Stop(
  [in] UINT32 Flags,
  [in] UINT32 OperationSet
);

Parametri

[in] Flags

Contrassegna che controllano la modalità di arresto della voce. Può essere 0 o quanto segue:

Valore Descrizione
XAUDIO2_PLAY_TAILS Continuare a generare l'output dell'effetto dopo l'arresto della voce. 

[in] OperationSet

Identifica questa chiamata come parte di un batch posticipato. Per altre informazioni, vedere la panoramica dei set di operazioni XAudio2 .

Valore restituito

Restituisce S_OK se ha esito positivo, in caso contrario, un codice di errore. Per le descrizioni dei codici di errore specifici di XAudio2, vedere Codici di errore XAudio2 .

Commenti

Tutti i buffer di origine accodati sulla voce e la posizione del cursore corrente vengono mantenuti. Ciò consente alla voce di continuare da dove è stata interrotta, quando viene riavviata. Il metodo IXAudio2SourceVoice::FlushSourceBuffers può essere usato per scaricare i buffer di origine in coda.

Per impostazione predefinita, qualsiasi output in sospeso dagli effetti vocali, ad esempio le code di riverbero, non viene riprodotto. La voce viene invece immediatamente sottoposta a rendering invisibile all'utente. Il flag XAUDIO2_PLAY_TAILS può essere usato per continuare a generare l'output dell'effetto dopo l'arresto della voce.

Una voce interrotta con il flag di XAUDIO2_PLAY_TAILS smette di usare buffer di origine, ma continua a elaborare gli effetti e inviare audio alle voci di destinazione. Una voce in questo stato può essere arrestata completamente chiamando Stop nuovamente con l'argomento Flags impostato su 0. Ciò consente di arrestare una voce con XAUDIO2_PLAY_TAILS, attendere tempo sufficiente per qualsiasi audio prodotto dagli effetti per terminare e quindi arrestare completamente la voce chiamando Stop nuovamente senza XAUDIO2_PLAY_TAILS. Questa tecnica consente alle voci con effetti di essere arrestati in modo normale, assicurando che le voci inattive non continueranno a essere elaborate dopo aver completato la produzione di audio.

L'arresto è sempre asincrono, anche se chiamato all'interno di un callback.

Nota XAudio2 non chiama mai i callback vocali per una voce se la voce viene arrestata (anche se è stata arrestata con XAUDIO2_PLAY_TAILS).
 

Requisiti della piattaforma

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)

Requisiti

   
Piattaforma di destinazione Windows
Intestazione xaudio2.h

Vedi anche

IXAudio2SourceVoice

Panoramica di XAPO