IAVIStream::ReadFormat 方法 (vfw.h)

ReadFormat 方法从流中获取格式信息。 使用应用程序定义的缓冲区中的数据填充并返回 结构。 如果未提供缓冲区,则 确定检索格式数据的缓冲区所需的缓冲区大小。 当应用程序使用 AVIStreamReadFormat 函数时调用。

语法

HRESULT ReadFormat(
  LONG   lPos,
  LPVOID lpFormat,
  LONG   *lpcbFormat
);

参数

lPos

样本或帧的位置。

lpFormat

指向格式数据的缓冲区的指针。 指定 NULL 以请求所需的缓冲区大小。

lpcbFormat

指向接收 由 lpFormat 指定的缓冲区的大小(以字节为单位)的缓冲区的指针。 调用此方法时,此参数的内容指示 lpFormat 指定的缓冲区的大小。 当此方法将控制权返回给应用程序时,此参数的内容将指定读取的数据量或所需的缓冲区大小。

返回值

返回由 OLE 定义的 HRESULT。

注解

流中存储的数据类型决定了格式信息和包含格式信息的结构。 流处理程序应返回此结构中所有适用的格式信息,包括格式使用调色板时的调色板信息。 流处理程序不应使用 结构返回流数据。

标准视频流处理程序在 BITMAPINFOHEADER 结构中提供格式信息。 标准音频流处理程序在 PCMWAVEFORMAT 结构中提供格式信息。 其他数据流可以使用描述流数据的其他结构。

对于用 C++ 编写的处理程序, ReadFormat 具有以下语法:


HRESULT ReadFormat(LONG lPos, LPVOID lpFormat, 
    LONG *lpcbFormat) 
 

要求

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

另请参阅

自定义文件和Stream处理程序接口

自定义文件和Stream处理程序