IXAudio2EngineCallback::OnCriticalError メソッド (xaudio2.h)
XAudio2 を閉じて再起動する必要がある重大なシステム エラーが発生した場合に呼び出されます。
構文
void OnCriticalError(
HRESULT Error
);
パラメーター
Error
XAudio2 によって返されるエラー コード。
戻り値
なし
解説
szDeviceId パラメーターで特定のデバイスの ID を IXAudio2::CreateMasteringVoice に指定するか、XAUDIO2_NO_VIRTUAL_AUDIO_CLIENT フラグを使用すると、重大なエラーが発生し、基になる WASAPI レンダリング デバイスが使用できなくなった場合は OnCriticalError が発生します。 これは、ヘッドセットやスピーカーが取り外された場合や、USB オーディオ デバイスが取り外された場合などに発生する可能性があります。 重大なエラーが発生すると、オーディオ処理が停止し、XAudio2 のそれ以降のすべての呼び出しが失敗します。 この状況で回復する唯一の方法は、XAudio2 インスタンスを解放し、新しいインスタンスを作成することです。
IXAudio2::CreateMasteringVoice に NULL または szDeviceId パラメーターを指定した場合、システムは仮想オーディオ クライアントを使用してオーディオ エンドポイントを表します。 この場合、基になる WASAPI レンダリング デバイスが使用できなくなった場合、システムはレンダリング用に新しいオーディオ レンダリング デバイスを自動的に選択し、オーディオ処理は続行され、 OnCriticalError は発生しません。
モバイル デバイス ファミリでは、CreateMasteringVoice に指定した値に関係なく、仮想オーディオ クライアントが常に使用され、OnCriticalError は発生しません。
IXAudio2EngineCallback インターフェイス メソッドの詳細については、「XAudio2 コールバック」セクションを参照してください。
プラットフォームの要件
Windows 10 (XAudio2.9);Windows 8、Windows Phone 8 (XAudio 2.8);DirectX SDK (XAudio 2.7)必要条件
対象プラットフォーム | Windows |
ヘッダー | xaudio2.h |