Metodo IAudioSessionControl::GetState (audiopolicy.h)
Il metodo GetState recupera lo stato corrente della sessione audio.
Sintassi
HRESULT GetState(
[out] AudioSessionState *pRetVal
);
Parametri
[out] pRetVal
Puntatore a una variabile in cui il metodo scrive lo stato della sessione corrente. Lo stato deve essere uno dei valori di enumerazione AudioSessionState seguenti:
AudioSessionStateActive
AudioSessionStateInactive
AudioSessionStateExpired
Questi valori indicano che lo stato della sessione è attivo, inattivo o scaduto rispettivamente. Per altre informazioni, vedere la sezione Osservazioni.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Se ha esito negativo, i codici restituiti possibili includono, ma non sono limitati a, i valori visualizzati nella tabella seguente.
Codice restituito | Descrizione |
---|---|
|
Il parametro pRetVal è NULL. |
|
Il dispositivo endpoint audio è stato scollegato o l'hardware audio o le risorse hardware associate sono state riconfigurate, disabilitate, rimosse o altrimenti non disponibili per l'uso. |
|
Il servizio audio Di Windows non è in esecuzione. |
Commenti
Questo metodo indica se lo stato della sessione è attivo, inattivo o scaduto. Lo stato è attivo se la sessione ha uno o più flussi in esecuzione. Lo stato cambia da attivo a inattivo quando l'ultimo flusso in esecuzione nella sessione si arresta. Lo stato della sessione viene modificato in scadenza quando il client elimina l'ultimo flusso nella sessione rilasciando tutti i riferimenti all'oggetto stream.
Il programma Sndvol visualizza i controlli volume e disattivazione per le sessioni che si trovano negli stati attivi e inattivi. Quando scade una sessione, Sndvol smette di visualizzare i controlli per tale sessione. Se una sessione è scaduta in precedenza, ma lo stato della sessione viene modificato in attivo (perché un flusso della sessione inizia l'esecuzione) o inattivo (perché un client assegna un nuovo flusso alla sessione), Sndvol riprende a visualizzare i controlli per la sessione.
Il client crea un flusso chiamando il metodo IAudioClient::Initialize . Al momento della creazione di un flusso, il client assegna il flusso a una sessione. Una sessione inizia quando un client assegna il primo flusso alla sessione. Inizialmente, la sessione si trova nello stato inattivo. Lo stato della sessione viene modificato in attivo quando il primo flusso della sessione inizia l'esecuzione. La sessione termina quando un client rilascia il riferimento finale all'ultimo oggetto di flusso rimanente nella sessione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | audiopolicy.h |