IXAudio2Voice::D estroyVoice メソッド (xaudio2.h)
音声を破棄します。 必要に応じて、音声を停止し、XAudio2 グラフから削除します。
構文
\\ void DestroyVoice();
戻り値
このメソッドは値を返しません。
解説
現在、他の音声がこの音声に音声を送信している場合、メソッドは失敗します。
DestroyVoice は オーディオ処理スレッドがアイドル状態になるまで待機するため、少し時間がかかる場合があります (通常は数ミリ秒以下)。 これは、音声がコールバックを行ったり、オーディオ データを読み取ったりしなくなることを保証するために必要です。そのため、呼び出しが返されるとすぐに、アプリケーションでこれらのリソースを安全に解放できます。
ブロック中の DestroyVoice 呼び出しによるタイトル スレッドの中断を回避するために、アプリケーションは別の重要でないスレッドの音声を破棄するか、アプリケーションで音声プール戦略を使用して、音声を破棄するのではなく再利用できます。 音声は、同じデータ形式で、音声が作成されたチャネルの数が同じオーディオでのみ再利用できることに注意してください。 音声は、適切な比率パラメーターを使用して IXAudio2SourceVoice::SetFrequencyRatio を呼び出すことによって、音声とは異なるサンプル レートでオーディオ データを再生できます。
コールバック内から DestroyVoice を呼び出す ( つまり、IXAudio2EngineCallback または IXAudio2VoiceCallback) は無効です。
プラットフォームの要件
Windows 10 (XAudio2.9);Windows 8、Windows Phone 8 (XAudio 2.8);DirectX SDK (XAudio 2.7)要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | xaudio2.h |