Freigeben über


IXAudio2EngineCallback::OnCriticalError-Methode (xaudio2.h)

Wird aufgerufen, wenn ein kritischer Systemfehler auftritt, der erfordert, dass XAudio2 geschlossen und neu gestartet wird.

Syntax

void OnCriticalError(
  HRESULT Error
);

Parameter

Error

Von XAudio2 zurückgegebener Fehlercode.

Rückgabewert

Keine

Bemerkungen

Wenn Sie die ID eines bestimmten Geräts im szDeviceId-Parameter für IXAudio2::CreateMasteringVoice angeben oder das flag XAUDIO2_NO_VIRTUAL_AUDIO_CLIENT verwenden, tritt ein kritischer Fehler auf, und OnCriticalError wird ausgelöst, wenn das zugrunde liegende WASAPI-Renderinggerät nicht mehr verfügbar ist. Dies kann beispielsweise auftreten, wenn ein Headset oder Lautsprecher nicht angeschlossen ist oder wenn ein USB-Audiogerät entfernt wird. Sobald ein kritischer Fehler aufgetreten ist, wird die Audioverarbeitung beendet, und alle weiteren Aufrufe von XAudio2 schlagen fehl. Die einzige Möglichkeit, in dieser Situation wiederherzustellen, besteht darin, die XAudio2-instance freizugeben und eine neue zu erstellen.

Wenn Sie den PARAMETER NULL oder szDeviceId für IXAudio2::CreateMasteringVoice angegeben haben, verwendet das System einen Virtual Audio Client, um den Audioendpunkt darzustellen. Wenn in diesem Fall das zugrunde liegende WASAPI-Renderinggerät nicht mehr verfügbar ist, wählt das System automatisch ein neues Audiorenderinggerät für das Rendern aus, die Audioverarbeitung wird fortgesetzt, und OnCriticalError wird nicht ausgelöst.

Auf der Mobilen Gerätefamilie wird immer ein Virtual Audio Client verwendet, und OnCriticalError wird nie ausgelöst, unabhängig von den Werten, die Sie für CreateMasteringVoice angeben.

Informationen zu den Methoden der IXAudio2EngineCallback-Schnittstelle finden Sie im Abschnitt XAudio2-Rückrufe .

Plattformanforderungen

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

Requirements (Anforderungen)

   
Zielplattform Windows
Kopfzeile xaudio2.h

Weitere Informationen

IXAudio2EngineCallback

XAudio2-Rückrufe