KS_VBI_FRAME_INFO 構造体 (ksmedia.h)
KS_VBI_FRAME_INFO構造体は、垂直ブランキング間隔 (VBI) ストリームのKSSTREAM_HEADER構造を拡張します。
構文
typedef struct tagKS_VBI_FRAME_INFO {
ULONG ExtendedHeaderSize;
DWORD dwFrameFlags;
LONGLONG PictureNumber;
LONGLONG DropCount;
DWORD dwSamplingFrequency;
KS_TVTUNER_CHANGE_INFO TvTunerChangeInfo;
KS_VBIINFOHEADER VBIInfoHeader;
} KS_VBI_FRAME_INFO, *PKS_VBI_FRAME_INFO;
メンバー
ExtendedHeaderSize
この構造体のサイズを指定します。
dwFrameFlags
キャプチャされたフレームに関する追加情報を示すフラグを指定します。 キャプチャ中、ミニドライバーは、このメンバーを ksmedia.h で定義されている次のいずれかの値に設定します。
フラグ | 説明 |
---|---|
KS_VBI_FLAG_FIELD1 | 2 フィールド シーケンスの最初のフィールドを示します |
KS_VBI_FLAG_FIELD2 | 2 フィールド シーケンスの 2 番目のフィールドを示します |
KS_VBI_FLAG_MV_PRESENT | マクロ ビジョン保護スキームを示します |
KS_VBI_FLAG_MV_HARDWARE | Macrovision ハードウェアのサポートを示します |
KS_VBI_FLAG_MV_DETECTED | マクロ ビジョンが検出されたことを示します |
KS_VBI_FLAG_TVTUNER_CHANGE | TvTunerChangeInfo メンバー構造に有効なデータが含まれていることを示します |
KS_VBI_FLAG_VBIINFOHEADER_CHANGE | VBIInfoHeader メンバー構造に有効なデータが含まれていることを示します |
PictureNumber
現在の図番号を表すカウントを指定します。 KSSTATE_ACQUIREへの移行時に、この値を初期化または更新します。
DropCount
キャプチャされなかった画像の数を指定します。 ビデオをキャプチャするときに、ミニドライバーはこのメンバーを設定します。 フレームをキャプチャする必要があるが、キャプチャされなかった場合は常に、このカウンターをインクリメントする必要があります。この状態は通常、キャプチャ中にバッファーが使用できなかった場合に発生します。 KSSTATE_ACQUIREへの移行時に、この値を初期化または更新します。
dwSamplingFrequency
サンプリング周波数をヘルツ (Hz) で指定します。
TvTunerChangeInfo
国/地域コード、アナログ ビデオ標準、チャネルなど、現在の VBI データ ソースに関する情報を指定します。 このメンバーは、 dwFrameFlags で KS_VBI_FLAG_TVTUNER_CHANGE フラグが指定されている場合にのみ有効です。
VBIInfoHeader
開始行、終了行、サンプリング頻度、ビデオ標準など、現在の VBI データ ソースに関する情報を指定します。 このメンバーは、 dwFrameFlags で KS_VBI_FLAG_VBIINFOHEADER_CHANGE フラグが指定されている場合にのみ有効です。
注釈
KS_VBI_FRAME_INFO構造体は、キャプチャされたフレームに関する情報を返す方法と、VBI デコーダーにチューニング情報を提供する方法を提供します。
PictureNumber メンバー数は、ストリームを開くために使用される形式に基づいて、現在の画像の数を表します。 この数は、デバイスに応じて、次の 2 つの方法のいずれかで計算されます。
ストリームが開始されてからの時間を測定し、フレーム期間で除算します。 この方法は、独自のクロックを提供しないデバイスに適しています。 例: PictureNumber = (CurrentStreamTime - StartStreamTime) / FrameDuration
キャプチャされたフレームの数と削除されたフレームの数をまとめて追加します。 この方法は、独自のクロックを提供するデバイスに適しています。 例: PictureNumber = FramesCaptured + FramesDropped
PictureNumber と DropCount を計算するときは、ストリームを開いたときに指定されたフレーム期間を使用することが重要です。これは、デバイスが実際にイメージを生成する速度と必ずしも一致しない場合があります。 たとえば、USB カメラでは 7.5 fps の画像のみが生成されますが、クライアントは 8 fps でストリームを開く可能性があります。 この場合、すべての計算で 8 fps の数値を使用する必要があります。 PictureNumber と DropCount の更新の詳細については、「ビデオのキャプチャ」を参照してください。
dwSamplingFrequency メンバーは Microsoft VBI コーデックでは使用されませんが、他の WDM コーデックで使用できます。 VBIInfoHeader と同じである必要があります。SamplingFrequency メンバー。 ミニドライバーは、 dwFrameFlags メンバーのKS_VBI_FLAG_VBIINFOHEADER_CHANGE ビットを設定し、 dwSamplingFrequency を含むすべてのメンバーを VBIInfoHeader 構造体に入力することで、サンプリング頻度の変化を示します。
要件
要件 | 値 |
---|---|
Header | ksmedia.h (Ksmedia.h を含む) |
こちらもご覧ください
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示