AVStream フィルターは、ピン上のクロックをサポートします。
AVStream ピンがクロックを公開していることを示すには、KSFILTER_DESCRIPTOR の PinDescriptors メンバーにある最初の KSPIN_DESCRIPTOR_EX の Flags メンバーに KSPIN_FLAG_IMPLEMENT_CLOCK を設定します。
また、KSPIN_DISPATCH 内の KSCLOCK_DISPATCH 構造体へのポインターも指定します。
クロック要求を行うには、 IKsReferenceClock インターフェイスで定義されているメソッドを使用します。 KsPinGetReferenceClockInterface を呼び出すことで、IKsReferenceClock インターフェイスを取得できます。 AVStream ミニドライバーは、完了時にインターフェイスを解放する役割を担います。
KSSTREAM_HEADERの PresentationTime フィールドに配置するタイマー値を取得するには、IKsReferenceClock::GetCorrelatedTime を呼び出します。
クロックが選択されている場合でも、クロックは GraphEdit に表示されません。
クロックが選択されていることを確認するには、 IKsReferenceClock メソッドの呼び出しによって、KSCLOCK_DISPATCHで指定されたディスパッチ ルーチンの呼び出しが生成されることを確認します。
フィルター グラフ マネージャーは、グラフが一時停止状態に遷移したときにクロックを選択します。 プッシュ ソースであるフィルター (キャプチャ フィルターなど) は、クロック プロバイダーとして優先されます。