Méthode IAudioClock2 ::GetDevicePosition (audioclient.h)
La méthode GetDevicePosition obtient la position actuelle de l’appareil, en images, directement à partir du matériel.
Syntaxe
HRESULT GetDevicePosition(
[out] UINT64 *DevicePosition,
[out] UINT64 *QPCPosition
);
Paramètres
[out] DevicePosition
Reçoit la position de l’appareil, en images. La position reçue est une valeur non traitées que la méthode obtient directement à partir du matériel. Pour plus d'informations, consultez la section Notes.
[out] QPCPosition
Reçoit la valeur du compteur de performances au moment où l’appareil de point de terminaison audio a lu la position de l’appareil récupérée dans le paramètre DevicePosition en réponse à l’appel GetDevicePosition .
GetDevicePosition convertit la valeur du compteur en unités de temps de 100 nanosecondes avant de l’écrire dans QPCPosition.
QPCPosition peut être NULL si le client n’a pas besoin de la valeur du compteur de performances.
Pour plus d'informations, consultez la section Notes.
Valeur retournée
Si la méthode réussit, retourne S_OK.
Code de retour | Description |
---|---|
|
Le paramètre DevicePosition a la valeur NULL. |
|
Le point de terminaison audio a été déconnecté. |
|
La méthode IAudioClient ::Start n’a pas été appelée pour ce flux. |
Remarques
Cette méthode s’applique uniquement aux flux en mode partagé.
Cette méthode récupère deux valeurs corrélées de position de flux :
- Position de l’appareil. Le client récupère la position de l’appareil non traité dans DevicePosition. Il s’agit de la position de flux de l’exemple qui est en cours de lecture sur les haut-parleurs (pour un flux de rendu) ou en cours d’enregistrement via le microphone (pour un flux de capture). Le taux d’échantillonnage du point de terminaison de l’appareil peut être différent du taux d’échantillonnage du format de combinaison utilisé par le client. Pour récupérer la position de l’appareil à partir du client, appelez IAudioClock ::GetPosition.
- Compteur de performances. Le client récupère le compteur de performances dans QPCPosition. GetDevicePosition obtient la valeur du compteur en appelant la fonction QueryPerformanceCounter au moment où l’appareil de point de terminaison audio stocke la position du flux dans le paramètre DevicePosition de la méthode GetDevicePosition . GetDevicePosition convertit la valeur du compteur en unités de temps de 100 nanosecondes. Pour plus d’informations sur QueryPerformanceCounter et QueryPerformanceFrequency, consultez la documentation SDK Windows.
- Multipliez la valeur du compteur brut par 10 000 000.
- Divisez le résultat par la fréquence de compteur obtenue à partir de QueryPerformanceFrequency.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | audioclient.h |