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 |