次の方法で共有


既定のクロック

カーネル ストリーミング ミニドライバーは 、KsAllocateDefaultClockEx を呼び出して、既定のクロック構造を割り当てて初期化できます。 または、 KsAllocateDefaultClock を呼び出すことができます。これは KsAllocateDefaultClockEx のラッパーであり、非クロック メンバーの既定のパラメーターを使用します。 KsAllocateDefaultClockEx を使用して既定のクロックを初期化した後、KsCreateDefaultClock を呼び出します。

既定のクロックは KSPROPSETID_Clockをサポートしており、フィルター ピンによって提示される他のクロックと同様にアクセスできます。 ただし、基になるデータ構造はフィルターピンによって作成され、そのピンと作成されたクロックのインスタンスによって共有されます。 クロックは、現在の状態と共有構造内の他の要素を更新するためにピンに依存します。 既定のクロックは、通知要求とクロック クエリを処理します。

このクロックを提供するフィルター上のピンにマスター クロックが割り当てられている場合、そのピンはこのクロックを所有します。 ピンは、他のクロック実装が割り当てられているかのように、クロック ファイル オブジェクトを参照する必要があります。 既定のクロックは、インスタンスの作成時にピンのファイル オブジェクトを参照しません。 代わりに、共通クロック構造の初期割り当てと、クロックで開かれた各ファイル オブジェクトに基づいて、内部参照カウントが保持されます。 クロックの所有者がクロック構造を解放した場合でも、すべてのファイル オブジェクトが閉じられるまでその位置に残ります。 ピンは、標準クロック インターフェイスを経由するのではなく、既定のクロック オブジェクトに直接アクセスできます。

ミニドライバーは 、KSPROPERTY_CLOCK_FUNCTIONTABLE プロパティをサポートして、参照クロック時間を確認するメカニズムをユーザー モード クライアントに提供できます。 このプロパティは、これを可能にする関数ポインターを構造体に格納し、正確なレート マッチングをサポートします。

また、ミニドライバーは、指定したピンでレートの変更が許可されている場合、 KSPROPERTY_STREAM_RATE プロパティをサポートします。

カーネル ストリーミング プロキシ インターフェイスを使用するアプリケーションは、 IKsClockPropertySet インターフェイスのメソッドを呼び出して、レート マッチングのために他の場所で使用できる物理クロックの時刻を取得および設定します。

関連情報については 、品質管理 を参照してください。