Поделиться через


Метод IXAudio2EngineCallback::OnCriticalError (xaudio2.h)

Вызывается при возникновении критической системной ошибки, которая требует закрытия и перезапуска XAudio2.

Синтаксис

void OnCriticalError(
  HRESULT Error
);

Параметры

Error

Код ошибки, возвращенный XAudio2.

Возвращаемое значение

None

Remarks

Если указать идентификатор определенного устройства в параметре szDeviceId в IXAudio2::CreateMasteringVoice или использовать флаг XAUDIO2_NO_VIRTUAL_AUDIO_CLIENT, возникнет критическая ошибка, и onCriticalError возникает, если базовое устройство отрисовки WASAPI становится недоступным. Это может произойти, например, при отключении гарнитуры или динамика или при удалении аудиоустройства USB. После возникновения критической ошибки обработка звука останавливается и все последующие вызовы XAudio2 завершаются ошибкой. Единственный способ восстановления в этой ситуации — освободить экземпляр XAudio2 и создать новый.

Если вы указали параметр NULL или szDeviceId для IXAudio2::CreateMasteringVoice, система использует виртуальный аудио-клиент для представления конечной точки звука. В этом случае, если базовое устройство отрисовки WASAPI становится недоступным, система автоматически выбирает новое устройство отрисовки звука для отрисовки, обработка звука продолжается, а OnCriticalError не вызывается.

В семействе мобильных устройств всегда используется виртуальный аудио-клиент, а OnCriticalError никогда не вызывается, независимо от значений, которые вы предоставляете для CreateMasteringVoice.

Сведения о методах интерфейса IXAudio2EngineCallback см. в разделе Обратные вызовы XAudio2 .

Требования к платформе

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); Пакет SDK для DirectX (XAudio 2.7)

Требования

   
Целевая платформа Windows
Header xaudio2.h

См. также раздел

IXAudio2EngineCallback

Обратные вызовы в XAudio2