(vfw.h) 的 ICCOMPRESS 结构

ICCOMPRESS 结构包含用于ICM_COMPRESS消息的压缩参数。

语法

typedef struct {
  DWORD              dwFlags;
  LPBITMAPINFOHEADER lpbiOutput;
  LPVOID             lpOutput;
  LPBITMAPINFOHEADER lpbiInput;
  LPVOID             lpInput;
  LPDWORD            lpckid;
  LPDWORD            lpdwFlags;
  LONG               lFrameNum;
  DWORD              dwFrameSize;
  DWORD              dwQuality;
  LPBITMAPINFOHEADER lpbiPrev;
  LPVOID             lpPrev;
} ICCOMPRESS;

成员

dwFlags

用于压缩的标志。 定义了以下值:

名称 说明
ICCOMPRESS_KEYFRAME
应将输入数据视为关键帧。

lpbiOutput

指向 BITMAPINFOHEADER 结构的指针,该结构包含输出 (压缩) 格式。 biSizeImage 成员必须包含压缩数据的大小。

lpOutput

指向驱动程序应在其中写入压缩数据的缓冲区的指针。

lpbiInput

指向 BITMAPINFOHEADER 结构的指针,该结构包含输入 (未压缩) 格式。

lpInput

指向包含输入数据的缓冲区的指针。

lpckid

包含 AVI 文件中数据的区块标识符的地址。 如果此成员的值不为 NULL,驱动程序应为对应于 AVI 文件中使用的区块标识符的区块标识符指定一个双字符代码。

lpdwFlags

包含 AVI 索引标志的地址。 如果返回的帧是关键帧,驱动程序应设置 AVIIF_KEYFRAME 标志。

lFrameNum

要压缩的帧数。

dwFrameSize

压缩此帧所需的最大大小(以字节为单位)。 size 值用于可在压缩图像大小和图像质量之间进行权衡的压缩方法。 为此成员指定零以使用默认设置。

dwQuality

质量设置。

lpbiPrev

指向包含上一帧格式的 BITMAPINFOHEADER 结构的指针,该格式通常与输入格式相同。

lpPrev

指向包含上一帧的输入数据的缓冲区的指针。

注解

执行临时压缩的驱动程序使用上一帧中的数据 (在 lpbiPrevlpPrev 成员中找到,) 从当前帧中删除冗余数据。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
标头 vfw.h

另请参阅

ICM_COMPRESS

视频压缩管理器

视频压缩结构