Método IAudioClock::GetFrequency (audioclient.h)

El método GetFrequency obtiene la frecuencia del dispositivo.

Sintaxis

HRESULT GetFrequency(
  [out] UINT64 *pu64Frequency
);

Parámetros

[out] pu64Frequency

Puntero a una variable UINT64 en la que el método escribe la frecuencia del dispositivo. 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 códigos de retorno posibles incluyen, entre otros, los valores que se muestran en la tabla siguiente.

Código devuelto Descripción
E_POINTER
El parámetro pu64Frequency es NULL.
AUDCLNT_E_DEVICE_INVALIDATED
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 dejado de estar disponible para su uso.
AUDCLNT_E_SERVICE_NOT_RUNNING
El servicio de audio de Windows no se está ejecutando.

Comentarios

La frecuencia del dispositivo es la frecuencia generada por el reloj de hardware en el dispositivo de audio. Este método informa de la frecuencia del dispositivo en unidades que son compatibles con las de la posición del dispositivo que informa el método IAudioClock::GetPosition . Por ejemplo, si, para una secuencia determinada, el método GetPosition expresa la posición p como desplazamiento de bytes, el método GetFrequency expresa la frecuencia f en bytes por segundo. Para cualquier secuencia, el desplazamiento en segundos desde el inicio de la secuencia siempre se puede calcular de forma confiable como p/f , independientemente de las unidades en las que se expresen p y f .

En Windows Vista, la frecuencia del dispositivo notificada por llamadas sucesivas a GetFrequency nunca cambia durante la vigencia de una secuencia.

Si el reloj generado por un dispositivo de audio se ejecuta con una frecuencia nominalmente constante, la frecuencia puede variar ligeramente con el tiempo debido al desfase o vibración con respecto a un reloj de referencia. El reloj de referencia puede ser un reloj de pared o el reloj del sistema utilizado por la función QueryPerformanceCounter . El método GetFrequency omite estas variaciones y simplemente informa de una frecuencia constante. Sin embargo, la posición notificada por el método IAudioClient::GetPosition tiene en cuenta todas estas variaciones para informar de un valor de posición preciso cada vez que se llama a él. Para obtener más información sobre QueryPerformanceCounter, consulte la documentación de Windows SDK.

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 audioclient.h

Consulte también

IAudioClock (interfaz)

IAudioClock::GetPosition