Bagikan melalui


IMFClock::Metode GetCorrelatedTime (mfidl.h)

Mengambil waktu jam terakhir yang berkorelasi dengan waktu sistem.

Sintaks

HRESULT GetCorrelatedTime(
  [in]  DWORD    dwReserved,
  [out] LONGLONG *pllClockTime,
  [out] MFTIME   *phnsSystemTime
);

Parameter

[in] dwReserved

Dicadangkan, harus nol.

[out] pllClockTime

Menerima waktu jam terakhir yang diketahui, dalam satuan frekuensi jam.

[out] phnsSystemTime

Menerima waktu sistem yang sesuai dengan waktu jam yang dikembalikan dalam pllClockTime, dalam unit 100 nanodetik.

Nilai kembali

Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.
MF_E_CLOCK_NO_TIME_SOURCE
Jam tidak memiliki sumber waktu.

Keterangan

Pada interval tetap, jam menghubungkan tanda waktu internalnya dengan waktu sistem. (Waktu sistem adalah waktu yang dikembalikan oleh penghitung kinerja resolusi tinggi.) Metode ini mengembalikan:

  • Waktu jam terbaru yang berkorelasi dengan waktu sistem.
  • Waktu sistem ketika korelasi dilakukan.
Waktu jam dikembalikan dalam parameter pllClockTime dan dinyatakan dalam satuan frekuensi jam. Jika metode IMFClock::GetClockCharacteristics jam mengembalikan bendera MFCLOCK_CHARACTERISTICS_FLAG_FREQUENCY_10MHZ , frekuensi jam adalah 10 MHz (setiap tanda centang jam adalah 100 nanodetik). Jika tidak, Anda bisa mendapatkan frekuensi jam dengan memanggil IMFClock::GetProperties. Frekuensi diberikan pada anggota qwClockFrequency dari struktur MFCLOCK_PROPERTIES yang dikembalikan oleh metode tersebut.

Waktu sistem dikembalikan dalam parameter phnsSystemTime , dan selalu dinyatakan dalam unit 100 nanodetik.

Untuk mengetahui seberapa sering jam menghubungkan waktu jamnya dengan waktu sistem, panggil GetProperties. Interval korelasi diberikan pada anggota qwCorrelationRate dari struktur MFCLOCK_PROPERTIES . Jika qwCorrelationRate adalah nol, itu berarti jam melakukan korelasi setiap kali GetCorrelatedTime dipanggil . Jika tidak, Anda dapat menghitung waktu jam saat ini dengan mengekstrapolasi dari waktu terakhir yang berkorelasi.

Beberapa jam mendukung perubahan laju melalui antarmuka IMFRateControl . Jika demikian, waktu jam maju pada kecepatan frekuensi × laju saat ini. Jika jam tidak mengekspos antarmuka IMFRateControl , lajunya selalu 1,0.

Untuk jam presentasi, waktu jam adalah waktu presentasi, dan selalu relatif terhadap waktu mulai yang ditentukan dalam IMFPresentationClock::Start. Anda juga bisa mendapatkan waktu presentasi dengan memanggil IMFPresentationClock::GetTime.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header mfidl.h
Pustaka Mfuuid.lib

Lihat juga

IMFClock

MFTIME