Método IAudioSessionControl::GetState (audiopolicy.h)
El método GetState recupera el estado actual de la sesión de audio.
Sintaxis
HRESULT GetState(
[out] AudioSessionState *pRetVal
);
Parámetros
[out] pRetVal
Puntero a una variable en la que el método escribe el estado de sesión actual. El estado debe ser uno de los siguientes valores de enumeración AudioSessionState :
AudioSessionStateActive
AudioSessionStateInactive
AudioSessionStateExpired
Estos valores indican que el estado de sesión está activo, inactivo o expirado, respectivamente. Para obtener más información, vea la sección Comentarios.
Valor devuelto
Si el método se realiza correctamente, devuelve S_OK. Si se produce un error, los posibles códigos de retorno incluyen, pero no están limitados a, los valores que se muestran en la tabla siguiente.
Código devuelto | Descripción |
---|---|
|
El parámetro pRetVal es NULL. |
|
El dispositivo de punto de conexión de audio se ha desconectado o el hardware de audio o los recursos de hardware asociados se han reconfigurado, deshabilitado, quitado o no están disponibles para su uso. |
|
El servicio de audio de Windows no se está ejecutando. |
Comentarios
Este método indica si el estado de la sesión está activo, inactivo o expirado. El estado está activo si la sesión tiene una o varias secuencias que se están ejecutando. El estado cambia de activo a inactivo cuando se detiene la última secuencia en ejecución de la sesión. El estado de sesión cambia a expirado cuando el cliente destruye la última secuencia de la sesión liberando todas las referencias al objeto de secuencia.
El programa Sndvol muestra los controles de volumen y silenciación de las sesiones que se encuentran en los estados activos e inactivos. Cuando una sesión expira, Sndvol deja de mostrar los controles de esa sesión. Si una sesión ha expirado anteriormente, pero el estado de sesión cambia a activo (porque una secuencia de la sesión comienza a ejecutarse) o inactiva (porque un cliente asigna una nueva secuencia a la sesión), Sndvol reanuda la visualización de los controles de la sesión.
El cliente crea una secuencia llamando al método IAudioClient::Initialize . En el momento en que crea una secuencia, el cliente asigna la secuencia a una sesión. Una sesión comienza cuando un cliente asigna la primera secuencia a la sesión. Inicialmente, la sesión está en estado inactivo. El estado de sesión cambia a activo cuando la primera secuencia de la sesión comienza a ejecutarse. La sesión finaliza cuando un cliente libera la referencia final al último objeto de secuencia restante de la sesión.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | audiopolicy.h |