次の方法で共有


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

こちらもご覧ください

IXAudio2Voice