共用方式為


IXAudio2EngineCallback::OnCriticalError 方法 (xaudio2.h)

如果在發生需要關閉並重新啟動 XAudio2 的重大系統錯誤時呼叫。

語法

void OnCriticalError(
  HRESULT Error
);

參數

Error

XAudio2 傳回的錯誤碼。

傳回值

備註

如果您在 szDeviceId 參數中提供特定裝置的識別碼給 IXAudio2::CreateMasteringVoice 或使用 XAUDIO2_NO_VIRTUAL_AUDIO_CLIENT 旗標,則會發生重大錯誤,如果基礎 WASAPI 轉譯裝置無法使用,則會引發 OnCriticalError 。 例如,當頭戴式裝置或喇叭解除叢集或移除 USB 音訊裝置時,就會發生此情況。 發生重大錯誤之後,音訊處理會停止,而所有對 XAudio2 的進一步呼叫都會失敗。 在此情況下復原的唯一方法是釋放 XAudio2 實例,並建立新的實例。

如果您指定 Null 或 szDeviceId 參數給 IXAudio2::CreateMasteringVoice,則系統會使用虛擬音訊用戶端來代表音訊端點。 在此情況下,如果基礎 WASAPI 轉譯裝置無法使用,系統會自動選取新的音訊轉譯裝置進行轉譯、繼續音訊處理,而且不會引發 OnCriticalError

在行動裝置系列上,一律會使用虛擬音訊用戶端,而且不論您提供給CreateMasteringVoice的值為何,都不會引發OnCriticalError

如需 IXAudio2EngineCallback 介面方法的相關資訊,請參閱 XAudio2 Callbacks 一節。

平臺需求

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

規格需求

   
目標平台 Windows
標頭 xaudio2.h

另請參閱

IXAudio2EngineCallback

XAudio2 回呼