IMFSampleGrabberSinkCallback2::OnProcessSampleEx 方法 (mfidl.h)

当采样器接收器收到新的媒体样本时调用。

语法

HRESULT OnProcessSampleEx(
  [in] REFGUID       guidMajorMediaType,
  [in] DWORD         dwSampleFlags,
  [in] LONGLONG      llSampleTime,
  [in] LONGLONG      llSampleDuration,
  [in] const BYTE    *pSampleBuffer,
  [in] DWORD         dwSampleSize,
  [in] IMFAttributes *pAttributes
);

parameters

[in] guidMajorMediaType

指定数据格式的主要类型 GUID。 有关可能值的列表,请参阅 主要媒体类型

[in] dwSampleFlags

示例标志。 sample-grabber 接收器通过调用媒体样本的 IMFSample::GetSampleFlags 方法获取此参数的值。

[in] llSampleTime

此示例的呈现时间,以 100 纳秒为单位。 如果示例没有演示时间,则此参数的值 _I64_MAX

[in] llSampleDuration

样本的持续时间,以 100 纳秒为单位。

如果示例没有持续时间,则此参数的值 _I64_MAX

[in] pSampleBuffer

指向包含示例数据的缓冲区的指针。

[in] dwSampleSize

pSampleBuffer 缓冲区的大小(以字节为单位)。

[in] pAttributes

指向 IMFAttributes 接口的 指针。 使用此接口获取此示例 (的属性(如果有任何) )。 有关示例属性的列表,请参阅 示例属性

返回值

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

如果在播放拓扑中使用 sample-grabber 接收器,此方法应快速返回,否则可能会干扰播放。 请勿在此方法中阻止线程、等待事件或执行其他冗长操作。

要求

   
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 mfidl.h

另请参阅

IMFSampleGrabberSinkCallback2