Freigeben über


IAudioClock::GetFrequency-Methode (audioclient.h)

Die GetFrequency-Methode ruft die Gerätehäufigkeit ab.

Syntax

HRESULT GetFrequency(
  [out] UINT64 *pu64Frequency
);

Parameter

[out] pu64Frequency

Zeiger auf eine UINT64-Variable , in die die Methode die Gerätehäufigkeit schreibt. Weitere Informationen finden Sie in den Hinweisen.

Rückgabewert

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, können mögliche Rückgabecodes die in der folgenden Tabelle gezeigten Werte umfassen, sind jedoch nicht darauf beschränkt.

Rückgabecode Beschreibung
E_POINTER
Der Parameter pu64Frequency ist NULL.
AUDCLNT_E_DEVICE_INVALIDATED
Das Audioendpunktgerät wurde getrennt, oder die Audiohardware oder die zugehörigen Hardwareressourcen wurden neu konfiguriert, deaktiviert, entfernt oder anderweitig für die Verwendung nicht verfügbar gemacht.
AUDCLNT_E_SERVICE_NOT_RUNNING
Der Windows-Audiodienst wird nicht ausgeführt.

Hinweise

Die Gerätehäufigkeit ist die Frequenz, die von der Hardwareuhr im Audiogerät generiert wird. Diese Methode meldet die Gerätehäufigkeit in Einheiten, die mit denen der Geräteposition kompatibel sind, die die IAudioClock::GetPosition-Methode meldet. Wenn die GetPosition-Methode für einen bestimmten Stream beispielsweise die Position p als Byteoffset ausdrückt, gibt die GetFrequency-Methode die Häufigkeit f in Bytes pro Sekunde aus. Für jeden Stream kann der Offset in Sekunden ab Dem Start des Datenstroms unabhängig von den Einheiten, in denen p und f ausgedrückt werden, immer zuverlässig als p/f berechnet werden.

In Windows Vista ändert sich die Gerätehäufigkeit, die von aufeinander folgenden Aufrufen von GetFrequency gemeldet wird, während der Lebensdauer eines Datenstroms nie.

Wenn die von einem Audiogerät generierte Uhr mit einer nominal konstanten Frequenz ausgeführt wird, kann die Häufigkeit im Laufe der Zeit aufgrund von Drift oder Jitter im Hinblick auf eine Referenzuhr noch geringfügig variieren. Die Referenzuhr kann eine Wanduhr oder die Systemuhr sein, die von der QueryPerformanceCounter-Funktion verwendet wird. Die GetFrequency-Methode ignoriert solche Variationen und meldet einfach eine konstante Häufigkeit. Die von der IAudioClient::GetPosition-Methode gemeldete Position berücksichtigt jedoch alle derartigen Variationen, um bei jedem Aufruf einen genauen Positionswert zu melden. Weitere Informationen zu QueryPerformanceCounter finden Sie in der Dokumentation zum Windows SDK.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile audioclient.h

Weitere Informationen

IAudioClock-Schnittstelle

IAudioClock::GetPosition