Метод 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 |