IMFSampleGrabberSinkCallback::OnProcessSample 方法 (mfidl.h)
当采样器接收器收到新的媒体样本时调用。
语法
HRESULT OnProcessSample(
[in] REFGUID guidMajorMediaType,
[in] DWORD dwSampleFlags,
[in] LONGLONG llSampleTime,
[in] LONGLONG llSampleDuration,
[in] const BYTE *pSampleBuffer,
[in] DWORD dwSampleSize
);
parameters
[in] guidMajorMediaType
指定数据格式的主要类型。 有关可能值的列表,请参阅 主要媒体类型。
[in] dwSampleFlags
保留。
[in] llSampleTime
此示例的呈现时间,以 100 纳秒为单位。 如果示例没有演示时间,则此参数的值 _I64_MAX。
[in] llSampleDuration
样本的持续时间,以 100 纳秒为单位。 如果示例没有持续时间,则此参数的值 _I64_MAX。
[in] pSampleBuffer
指向包含示例数据的缓冲区的指针。
[in] dwSampleSize
pSampleBuffer 缓冲区的大小(以字节为单位)。
返回值
如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。
注解
如果在播放拓扑中使用 sample-grabber 接收器,此方法应快速返回,否则可能会干扰播放。 请勿在此方法中阻止线程、等待事件或执行其他冗长操作。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | mfidl.h |
Library | Mfuuid.lib |