IMFASFSplitter::GetNextSample 方法 (wmcontainer.h)

分析数据后,从高级系统格式 (ASF) 拆分器检索示例。

语法

HRESULT GetNextSample(
  [out] DWORD     *pdwStatusFlags,
  [out] WORD      *pwStreamNumber,
  [out] IMFSample **ppISample
);

参数

[out] pdwStatusFlags

接收以下值之一。

含义
ASF_STATUSFLAGS_INCOMPLETE
可以检索更多示例。 在循环中调用 GetNextSample ,直到 pdwStatusFlags 参数收到值零。
Zero
没有其他示例准备就绪。 调用 IMFASFSplitter::P arseData 向拆分器提供更多输入数据。

[out] pwStreamNumber

如果 方法返回 ppISample 参数中的示例,则此参数接收样本所属的流数。

[out] ppISample

接收指向已分析样本的 IMFSample 接口的指针。 调用方必须释放接口。 如果没有准备好示例,此参数将 接收 NULL 值

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码 说明
S_OK
方法成功。
MF_E_ASF_INVALIDDATA
缓冲区中的 ASF 数据无效。
MF_E_ASF_MISSINGDATA
ASF 数据存在差距。

注解

在调用此方法之前,请调用 IMFASFSplitter::P arseData 向拆分器提供输入数据。 如果输入不包含完整示例的足够数据,则 GetNextSample 方法会成功,但在 ppISample 参数中返回 NULL

ASF 拆分器跳过未选择流的示例。 若要选择流,请调用 IMFASFSplitter::SelectStreams

要求

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

另请参阅

ASF 拆分器

IMFASFSplitter