Метод IAudioSessionEvents::OnStateChanged (audiopolicy.h)

Метод OnStateChanged уведомляет клиента об изменении состояния потоковой активности сеанса.

Синтаксис

HRESULT OnStateChanged(
  [in] AudioSessionState NewState
);

Параметры

[in] NewState

Новое состояние сеанса. Значение этого параметра является одним из следующих значений перечисления AudioSessionState :

AudioSessionStateActive

AudioSessionStateInactive

AudioSessionStateExpired

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

Если метод завершается успешно, возвращает значение S_OK. В противном случае функция возвращает код ошибки.

Комментарии

Клиент не может создать событие изменения состояния сеанса. Система всегда является источником события этого типа. Таким образом, в отличие от некоторых других методов IAudioSessionEvents , этот метод не предоставляет параметр контекста.

Система изменяет состояние сеанса с неактивного на активное в момент открытия клиентом первого потока в сеансе. Клиент открывает поток, вызывая метод IAudioClient::Initialize . Система изменяет состояние сеанса с активного на неактивное, когда клиент закрывает последний поток в сеансе. Клиент, освобождающий последнюю ссылку на объект IAudioClient , закрывает поток, связанный с объектом .

Пример кода, реализующий методы в интерфейсе IAudioSessionEvents , см. в разделе События аудиосеанса.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header audiopolicy.h

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

Интерфейс IAudioClient

IAudioClient::Initialize

Интерфейс IAudioSessionEvents