IMFClock::GetCorrelatedTime 方法 (mfidl.h)
擷取與系統時間相互關聯的上次時鐘時間。
語法
HRESULT GetCorrelatedTime(
[in] DWORD dwReserved,
[out] LONGLONG *pllClockTime,
[out] MFTIME *phnsSystemTime
);
參數
[in] dwReserved
保留的 必須是零。
[out] pllClockTime
以時鐘頻率單位接收最後一個已知的時鐘時間。
[out] phnsSystemTime
接收系統時間,其對應於 pllClockTime 中傳回的時鐘時間,以 100 奈秒為單位。
傳回值
方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | 描述 |
---|---|
|
此方法已成功。 |
|
時鐘沒有時間來源。 |
備註
在某些固定間隔內,時鐘會與其內部時鐘刻度與系統時間相互關聯。 (系統時間是高解析度性能計數器所傳回的時間。) 此方法會傳回:
- 與系統時間相互關聯的最近時鐘時間。
- 執行相互關聯的系統時間。
系統時間會以 phnsSystemTime 參數傳回,而且一律以 100 奈秒的單位表示。
若要瞭解時鐘與其時鐘時間與系統時間相互關聯的頻率,請呼叫 GetProperties。 相互關聯間隔會在 MFCLOCK_PROPERTIES 結構的 qwCorrelationRate 成員中提供。 如果 qwCorrelationRate 為零,表示每當呼叫 GetCorrelatedTime 時,時鐘就會執行相互關聯。 否則,您可以藉由從上次相互關聯的時間推斷來計算目前的時鐘時間。
某些時鐘支援透過 IMFRateControl 介面的速率變更。 如果是,時鐘時間會以頻率×目前速率的速度前進。 如果時鐘未公開 IMFRateControl 介面,則速率一律為1.0。
針對簡報時鐘,時鐘時間是簡報時間,而且一律相對於 IMFPresentationClock::Start中指定的開始時間。 您也可以呼叫 IMFPresentationClock::GetTime 來取得簡報時間。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | mfidl.h |
程式庫 | Mfuuid.lib |