IKsReferenceClock 介面 (ks.h)
IKsReferenceClock 介面是所有針腳上的 AVStream 提供的 COM 樣式介面。 針腳會將要求傳遞至主時鐘。
繼承
IKsReferenceClock 介面繼承自 IUnknown 介面。
方法
IKsReferenceClock 介面具有這些方法。
IKsReferenceClock::GetCorrelatedPhysicalTime IKsReferenceClock::GetCorrelatedPhysicalTime 方法會查詢目前實體時間的相關參考時鐘,並擷取相互關聯的系統時間。 |
IKsReferenceClock::GetCorrelatedTime IKsReferenceClock::GetCorrelatedTime 方法會查詢目前數據流時間的相關參考時鐘,並取得相互關聯的系統時間。 |
IKsReferenceClock::GetPhysicalTime IKsReferenceClock::GetPhysicalTime 方法會查詢目前實體時間的相關參考時鐘。 |
IKsReferenceClock::GetResolution IKsReferenceClock::GetResolution 方法會查詢相關聯的參考時鐘以取得其解析。 |
IKsReferenceClock::GetState IKsReferenceClock::GetState 方法會查詢其目前串流狀態的相關參考時鐘。 |
IKsReferenceClock::GetTime IKsReferenceClock::GetTime 方法會查詢目前時間的相關參考時鐘。 |
備註
minidriver 可以藉由呼叫 KsPinGetReferenceClockInterface 來取得 IKsReferenceClock 介面。 因為這是 COM 樣式的介面, KsPinGetReferenceClockInterface 會呼叫 QueryInterface,接著會叫用 AddRef 以遞增介面指標。 這表示當 minidriver 完成 IKsReferenceClock 介面時,minidriver 必須藉由呼叫 Release 加以釋放。
以 C 撰寫的用戶端會看到 IKsReferenceClock 介面作為結構,其中包含函式數據表的指標,而不是 C++ 抽象基類。 以 C++ 撰寫的用戶端可能會執行下列動作:
PIKSREFERENCECLOCK RefClock;
if (NT_SUCCESS (
KsPinGetReferenceClockInterface (
Pin,
&RefClock)
) {
... RefClock -> GetCorrelatedTime (...);
RefClock -> Release ();
}
不過,以 C 撰寫的用戶端會改為執行下列動作:
PIKSREFERENCECLOCK RefClock;
If (NT_SUCCESS (
KsPinGetReferenceClockInterface (
Pin,
&RefClock)
) {
... RefClock -> lpVtbl -> GetCorrelatedTime (...);
RefClock -> lpVtbl -> Release ();
}
如需詳細資訊,請參閱 AVStream概觀。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | ks.h |