Jam Master
Minidriver dapat menyinkronkan aliran ke jam yang dibuat oleh minidriver lain; beberapa aliran dapat disinkronkan ke satu jam. Jika pin menggunakan atau menghasilkan jam master seperti itu, minidriver harus mendukung KSPROPERTY_STREAM_MASTERCLOCK. Klien juga dapat menggunakan properti ini untuk mengatur jam master untuk pin. Pin yang melakukan operasi penyajian dan pengambilan sering menggunakan jam master. Minidriver bertanggung jawab untuk merilis referensi jam setelah penghentian.
Antarmuka ke jam master adalah objek file yang mendukung metode, properti, dan peristiwa.
Semua kueri terhadap objek file hanya tersedia pada PASSIVE_LEVEL. Namun, kueri posisi jam juga didukung melalui penunjuk panggilan fungsi langsung yang tersedia di DISPATCH_LEVEL, yang valid selama objek file valid. Panggilan langsung ini harus diteruskan ke objek file jam sebagai parameter konteks.
Handel file diperoleh melalui permintaan buat pada instans pin filter, sebanyak pembuatan pin dilakukan oleh IRP_MJ_CREATE. Permintaan menyebabkan handel file dibuat, sama seperti handel file ke pin dibuat, dengan informasi konteksnya sendiri. Handel file ini kemudian diteruskan kembali ke pemanggil dan dapat digunakan untuk mengatur jam master untuk filter mode kernel. Pada saat filter sedang diberi jam master grafik, instans pin dapat meminta objek file induk untuk menentukan apakah ia memiliki jam master.
Ketika filter diberikan handel file ke jam master ini, filter kemudian dapat digunakan untuk mengkueri properti. Jika jam master didasarkan pada filter mode kernel, jam tersebut harus mendukung antarmuka untuk mengkueri handel file ke bagian mode kernel dari jam master. Jika antarmuka tidak didukung, maka diasumsikan bahwa jam berbasis mode pengguna, dan filter mode kernel tidak dapat menyinkronkannya.
Filter proksi DirectShow yang meminta handel jam master kemudian meneruskannya ke handel file filter mode kernel yang mendasarnya. Filter mode kernel mereferensikan objek file yang mendasar. Jika filter sudah memiliki jam master, filter akan mendereferensikan objek file dan menggunakan handel baru. Untuk melakukan ini, filter harus dalam status Berhenti.
Waktu fisik pada objek jam master sering kali berbasis perangkat keras. Jika filter yang menyajikan jam master tidak memiliki jam fisik, maka waktu streaming berlangsung sesuai dengan stempel waktu data yang disajikan. Dalam situasi seperti itu, stempel waktu dapat berhenti karena kurangnya data.
Waktu fisik di belakang jam master mungkin jarak jauh, dalam hal ini adalah tanggung jawab proksi lokal untuk memberikan pembacaan yang akurat. Misalnya, proksi memiliki tanggung jawab untuk mengimbangi penundaan di seluruh koneksi 1394, atau rata-rata penundaan di seluruh jaringan. Selain itu, jika beberapa filter kernel lainnya adalah proksi untuk perangkat kedua pada bus 1394 yang sama, kedua perangkat dapat menegosiasikan metode privat untuk berinteraksi dengan jam master. Dalam kasus seperti itu, perangkat harus menggunakan antarmuka privat untuk menentukan jenis jam untuk memverifikasi kompatibilitas.