Freigeben über


IXAudio2Voice::D estroyVoice-Methode (xaudio2.h)

Zerstört die Stimme. Beendet ggf. die Stimme und entfernt sie aus dem XAudio2-Diagramm.

Syntax

\\ void DestroyVoice();

Rückgabewert

Diese Methode gibt keinen Wert zurück.

Bemerkungen

Wenn eine andere Stimme derzeit Audio an diese Stimme sendet, schlägt die Methode fehl.

DestroyVoice wartet darauf, dass sich der Audioverarbeitungsthread im Leerlauf befindet, sodass es etwas dauern kann (in der Regel nicht mehr als ein paar Millisekunden). Dies ist erforderlich, um sicherzustellen, dass die Stimme keine Rückrufe mehr macht oder Audiodaten liest, sodass die Anwendung diese Ressourcen sicher freigeben kann, sobald der Anruf zurückgegeben wird.

Um Unterbrechungen des Titelthreads durch einen blockierenden DestroyVoice-Aufruf zu vermeiden, kann die Anwendung Stimmen in einem separaten, nicht kritischen Thread zerstören, oder die Anwendung kann Sprachpoolstrategien verwenden, um Stimmen wiederzuverwenden, anstatt sie zu zerstören. Beachten Sie, dass Stimmen nur mit Audio wiederverwendet werden können, das dasselbe Datenformat und die gleiche Anzahl von Kanälen aufweist, mit denen die Stimme erstellt wurde. Eine Stimme kann Audiodaten mit anderen Abtastraten als die der Stimme wiedergeben, indem ixAudio2SourceVoice::SetFrequencyRatio mit einem entsprechenden Ratio-Parameter aufgerufen wird.

Es ist ungültig, DestroyVoice innerhalb eines Rückrufs aufzurufen (also IXAudio2EngineCallback oder IXAudio2VoiceCallback).

Plattformanforderungen

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

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile xaudio2.h

Weitere Informationen

IXAudio2Voice