Partager via


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

La méthode GetFrequency obtient la fréquence de l’appareil.

Syntaxe

HRESULT GetFrequency(
  [out] UINT64 *pu64Frequency
);

Paramètres

[out] pu64Frequency

Pointeur vers une variable UINT64 dans laquelle la méthode écrit la fréquence de l’appareil. Pour plus d'informations, consultez la section Notes.

Valeur retournée

Si la méthode réussit, retourne S_OK. En cas d’échec, les codes de retour possibles incluent, sans s’y limiter, les valeurs indiquées dans le tableau suivant.

Code de retour Description
E_POINTER
Le paramètre pu64Frequency a la valeur NULL.
AUDCLNT_E_DEVICE_INVALIDATED
Le périphérique de point de terminaison audio a été débranché, ou le matériel audio ou les ressources matérielles associées ont été reconfigurés, désactivés, supprimés ou autrement indisponibles.
AUDCLNT_E_SERVICE_NOT_RUNNING
Le service audio Windows n’est pas en cours d’exécution.

Remarques

La fréquence de l’appareil est la fréquence générée par l’horloge matérielle de l’appareil audio. Cette méthode indique la fréquence de l’appareil en unités compatibles avec celles de la position de l’appareil que la méthode IAudioClock ::GetPosition signale. Par exemple, si, pour un flux particulier, la méthode GetPosition exprime la position p sous forme de décalage d’octet, la méthode GetFrequency exprime la fréquence f en octets par seconde. Pour n’importe quel flux, le décalage en secondes par rapport au début du flux peut toujours être calculé de manière fiable en tant que p/f , quelles que soient les unités dans lesquelles p et f sont exprimés.

Dans Windows Vista, la fréquence de l’appareil signalée par les appels successifs à GetFrequency ne change jamais pendant la durée de vie d’un flux.

Si l’horloge générée par un périphérique audio s’exécute à une fréquence nominalement constante, la fréquence peut encore varier légèrement au fil du temps en raison d’une dérive ou d’une gigue par rapport à une horloge de référence. L’horloge de référence peut être une horloge murale ou l’horloge système utilisée par la fonction QueryPerformanceCounter . La méthode GetFrequency ignore ces variations et signale simplement une fréquence constante. Toutefois, la position signalée par la méthode IAudioClient ::GetPosition prend en compte toutes ces variations pour signaler une valeur de position précise chaque fois qu’elle est appelée. Pour plus d’informations sur QueryPerformanceCounter, consultez la documentation du Kit de développement logiciel (SDK) Windows.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête audioclient.h

Voir aussi

IAudioClock, interface

IAudioClock ::GetPosition