Interfaccia IAudioMeterInformation (endpointvolume.h)
L'interfaccia IAudioMeterInformation rappresenta un misuratore di picco in un flusso audio da o verso un dispositivo endpoint audio. Il client ottiene un riferimento all'interfaccia IAudioMeterInformation su un oggetto endpoint chiamando il metodo IMMDevice::Activate con il parametro iid impostato su REFIID IID_IAudioMeterInformation.
Se il dispositivo adattatore che trasmette dati audio da o verso il dispositivo endpoint implementa un misuratore di picco hardware, l'interfaccia IAudioMeterInformation usa tale contatore per monitorare i livelli di picco nel flusso audio. Se il dispositivo audio non dispone di un misuratore di picco hardware, il motore audio implementa automaticamente il misuratore di picco nel software, in modo trasparente al client.
Se un dispositivo ha un contatore di picco hardware, un client può usare i metodi nell'interfaccia IAudioMeterInformation per monitorare i livelli di picco del dispositivo sia in modalità condivisa che in modalità esclusiva. Se un dispositivo non dispone di un contatore di picco hardware, un client può usare questi metodi per monitorare i livelli di picco del dispositivo in modalità condivisa, ma non in modalità esclusiva. In modalità esclusiva, il client e il dispositivo scambiano direttamente i dati audio, ignorando il contatore del picco software. In modalità esclusiva, un contatore di picco software segnala sempre un valore di picco pari a 0,0.
Per determinare se un dispositivo ha un contatore di picco hardware, chiamare il metodo IAudioMeterInformation::QueryHardwareSupport .
Per un dispositivo endpoint di rendering, l'interfaccia IAudioMeterInformation monitora i livelli di picco nel flusso di output prima che il flusso venga attenuato dai controlli del volume dell'endpoint. Analogamente, per un dispositivo endpoint di acquisizione, l'interfaccia monitora i livelli di picco nel flusso di input prima che il flusso venga attenuato dai controlli del volume dell'endpoint.
I valori di picco segnalati dai metodi nell'interfaccia IAudioMeterInformation vengono normalizzati nell'intervallo compreso tra 0,0 e 1,0. Ad esempio, se un flusso PCM contiene campioni a 16 bit e il valore di campione di picco durante un determinato periodo di misurazione è -8914, il valore assoluto registrato dal misuratore di picco è 8914 e il valore di picco normalizzato segnalato dall'interfaccia IAudioMeterInformation è 8914/32768 = 0,272.
Per un esempio di codice che usa l'interfaccia IAudioMeterInformation , vedi Metri di picco.
Ereditarietà
L'interfaccia IAudioMeterInformation eredita dall'interfaccia IUnknown . IAudioMeterInformation include anche questi tipi di membri:
Metodi
L'interfaccia IAudioMeterInformation include questi metodi.
IAudioMeterInformation::GetChannelsPeakValues Il metodo GetChannelsPeakValues ottiene i valori di esempio di picco per tutti i canali nel flusso audio. |
IAudioMeterInformation::GetMeteringChannelCount Il metodo GetMeteringChannelCount ottiene il numero di canali nel flusso audio monitorati dai contatori di picco. |
IAudioMeterInformation::GetPeakValue Il metodo GetPeakValue ottiene il valore di esempio di picco per i canali nel flusso audio. |
IAudioMeterInformation::QueryHardwareSupport Il metodo QueryHardwareSupport esegue una query sul dispositivo endpoint audio per le relative funzioni supportate dall'hardware. (IAudioMeterInformation.QueryHardwareSupport) |
Requisiti
Client minimo supportato | Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | endpointvolume.h |