IMFStreamSink::P rocessSample 方法 (mfidl.h)
将示例传送到流。 媒体接收器处理示例。
语法
HRESULT ProcessSample(
[in] IMFSample *pSample
);
parameters
[in] pSample
指向包含流有效数据的样本的 IMFSample 接口的指针。
返回值
该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
媒体接收器处于错误状态以接收示例。 例如,预滚动已完成,但演示时钟尚未启动。 |
|
该示例的时间戳无效。 请参阅“备注”。 |
|
媒体接收器已暂停或停止,无法处理示例。 |
|
未设置演示时钟。 调用 IMFMediaSink::SetPresentationClock。 |
|
该示例没有时间戳。 |
|
流接收器尚未初始化。 |
|
已调用媒体接收器的 Shutdown 方法。 |
|
此流已从媒体接收器中删除,不再有效。 |
注解
当流接收器发送 MEStreamSinkRequestSample 事件时调用此方法。
此方法可能出于各种原因返回MF_E_INVALID_TIMESTAMP,具体取决于媒体接收器的实现:
- 负时间戳。
- 在同一流) 内向后跳转 (时间戳。
- 一个流的时间戳与同一媒体接收器中另一个流的时间戳偏移过远, (例如,) 多路复用流的存档接收器。
要求
最低受支持的客户端 | Windows Vista [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2008 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | mfidl.h |
Library | Mfuuid.lib |