AudioSessionState Enumeration
Previous | Next |
AudioSessionState Enumeration
The AudioSessionState enumeration defines constants that indicate the current state of an audio session.
typedef enum _AudioSessionState { AudioSessionStateInactive = 0, AudioSessionStateActive = 1, AudioSessionStateExpired = 2 } AudioSessionState;
Members
AudioSessionStateInactive
The audio session is inactive. (It contains at least one stream, but none of the streams in the session is currently running.)
AudioSessionStateActive
The audio session is active. (At least one of the streams in the session is running.)
AudioSessionStateExpired
The audio session has expired. (It contains no streams.)
Remarks
When a client opens a session by assigning the first stream to the session (by calling the IAudioClient::Initialize method), the initial session state is inactive. The session state changes from inactive to active when a stream in the session begins running (because the client has called the IAudioClient::Start method). The session changes from active to inactive when the client stops the last running stream in the session (by calling the IAudioClient::Stop method). The session state changes to expired when the client destroys the last stream in the session by releasing all references to the stream object.
The system volume-control program, Sndvol, displays volume controls for both active and inactive sessions. Sndvol stops displaying the volume control for a session when the session state changes to expired. For more information about Sndvol, see Audio Sessions.
The IAudioSessionControl::GetState and IAudioSessionEvents::OnStateChanged methods use the constants defined in the AudioSessionState enumeration.
For more information about session states, see Audio Sessions.
Requirements
Client: Windows Vista
Header: Include Audiosessiontypes.h
See Also
- Enumerations and Constants
- IAudioClient::Initialize
- IAudioClient::Start
- IAudioClient::Stop
- IAudioSessionControl::GetState
- IAudioSessionEvents::OnStateChanged
Previous | Next |