ICDraw 関数 (vfw.h)
ICDraw 関数は、描画用のイメージを展開します。
構文
DWORD VFWAPIV ICDraw(
HIC hic,
DWORD dwFlags,
LPVOID lpFormat,
LPVOID lpData,
DWORD cbData,
LONG lTime
);
パラメーター
hic
圧縮解除器へのハンドル。
dwFlags
展開フラグ。 次の値が定義されています。
値 | 説明 |
---|---|
ICDRAW_HURRYUP | データはバッファーに格納され、画面に描画されません。 このフラグは、最も高速な圧縮解除に使用します。 |
ICDRAW_NOTKEYFRAME | 現在のフレームはキー フレームではありません。 |
ICDRAW_NULLFRAME | 現在のフレームにはデータが含まれないため、前のフレームを再描画する必要があります。 |
ICDRAW_PREROLL | ビデオの現在のフレームは、再生を開始する前に発生します。 たとえば、フレーム 10 で再生が開始され、フレーム 0 が最も近い前のキー フレームである場合、フレーム 0 から 9 は 、ICDRAW_PREROLL フラグが設定された状態でドライバーに送信されます。 ドライバーは、フレーム 10 を正しく表示するには、このデータが必要です。 |
ICDRAW_UPDATE | 前に受信したデータに基づいて画面を更新します。 このフラグを使用する場合は、 lpDataを NULL に 設定します。 |
lpFormat
データの入力形式を含む BITMAPINFOHEADER 構造体へのポインター。
lpData
入力データへのポインター。
cbData
入力データのサイズ (バイト単位)。
lTime
このフレームを描画する時間 (サンプル)。 ビデオ データの単位はフレームです。 再生速度の定義については、ICDRAWBEGIN 構造体の dwRate メンバーと dwScale メンバーを参照してください。
戻り値
成功した場合 はICERR_OK 、それ以外の場合はエラーを返します。
解説
フレームの描画を開始するには、 ICM_DRAW_START メッセージを送信するか、 ICDrawStart マクロを使用します。 描画を開始する前に、アプリケーションで必要なフレーム数をバッファーに格納する必要があります。 この値を取得するには、 KM_GETBUFFERSWANTED メッセージを送信します (または ICGetBuffersWanted マクロを使用します)。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | vfw.h |
Library | Vfw32.lib |
[DLL] | Msvfw32.dll |