미니 드라이버는 스트림을 다른 미니 드라이버에서 만든 클록과 동기화할 수 있습니다. 여러 스트림을 한 클록에 동기화할 수 있습니다. 핀이 이러한 마스터 클록을 사용하거나 생성하는 경우 미니 드라이버는 KSPROPERTY_STREAM_MASTERCLOCK 지원해야 합니다. 클라이언트는 이 속성을 사용하여 핀에 대한 마스터 클록을 설정할 수도 있습니다. 렌더링 및 캡처 작업을 수행하는 핀은 마스터 클록을 자주 사용합니다. 미니 드라이버는 종료 시 클록 참조를 해제할 책임이 있습니다.
마스터 클록에 대한 인터페이스는 메서드, 속성 및 이벤트를 지원하는 파일 개체입니다.
파일 개체에 대한 모든 쿼리는 PASSIVE_LEVEL만 사용할 수 있습니다. 그러나 클록 위치 쿼리는 파일 개체가 유효한 한 DISPATCH_LEVEL에서 사용할 수 있는 직접 함수 호출 포인터를 통해 지원됩니다. 이 직접 호출은 컨텍스트 매개 변수로 클록의 파일 개체에 전달되어야 합니다.
파일 핸들은 IRP_MJ_CREATE 핀 생성을 수행하는 것과 마찬가지로 필터 핀 인스턴스에 대한 만들기 요청을 통해 획득됩니다. 요청은 자체 컨텍스트 정보를 사용하여 파일 핸들을 생성합니다. 이는 핀에 대한 파일 핸들이 생성되는 방식과 유사합니다. 그런 다음 이 파일 핸들이 호출자에게 다시 전달되고 커널 모드 필터에 대한 마스터 클록을 설정하는 데 사용할 수 있습니다. 필터에 그래프의 마스터 클록이 할당될 때 핀 인스턴스는 부모 파일 개체를 쿼리하여 마스터 클록을 소유하고 있는지 확인할 수 있습니다.
필터에 이 마스터 클록에 대한 파일 핸들이 제공되면 속성을 쿼리하는 데 사용할 수 있습니다. 마스터 클록이 커널 모드 필터를 기반으로 하는 경우 마스터 클록의 커널 모드 부분에 대한 파일 핸들을 쿼리하는 인터페이스를 지원해야 합니다. 인터페이스가 지원되지 않는 경우 클록이 사용자 모드 기반이며 커널 모드 필터가 동기화할 수 없는 것으로 간주됩니다.
DirectShow 프록시 필터가 마스터 클록 핸들을 요청한 뒤, 이를 기본 커널 모드 필터 파일 핸들에 전달합니다. 커널 모드 필터는 기본 파일 개체를 참조합니다. 필터에 마스터 클록이 이미 있는 경우 파일 개체를 역참조하고 새 핸들을 사용합니다. 이렇게 하려면 필터가 중지 상태여야 합니다.
마스터 클록 개체의 실제 시간은 하드웨어 기반인 경우가 많습니다. 마스터 클록을 표시하는 필터에 실제 클록이 없으면 제공된 데이터의 타임스탬프를 기준으로 스트림 시간이 진행됩니다. 이러한 상황에서는 데이터 부족으로 인해 타임스탬프를 중지할 수 있습니다.
마스터 클록 뒤의 실제 시간은 원격일 수 있으며, 이 경우 정확한 판독값을 제공하는 것은 로컬 프록시의 책임입니다. 예를 들어 프록시는 1394 연결에서 지연을 보상하거나 네트워크를 통해 평균 지연을 처리해야 합니다. 또한 다른 커널 필터가 동일한 1394 버스의 두 번째 디바이스에 대한 프록시인 경우 두 디바이스는 마스터 클록과 상호 작용하는 프라이빗 방법을 협상할 수 있습니다. 이러한 경우 디바이스는 호환성을 확인하기 위해 프라이빗 인터페이스를 사용하여 클록 유형을 결정해야 합니다.