IKsInterfaceHandler::KsCompleteIo 方法 (ksproxy.h)
KsCompleteIo 方法清理扩展标头,并在输入和输出(I/O)完成后释放媒体示例。
语法
HRESULT KsCompleteIo(
[in, out] PKSSTREAM_SEGMENT StreamSegment
);
参数
[in, out] StreamSegment
指向 KSSTREAM_SEGMENT 结构的指针,该结构包含要完成的流段的标头信息。
返回值
如果成功,则返回 NOERROR;否则,返回错误代码。
言论
KsCompleteIo 方法放弃分配的内存、更新媒体示例,并递减代理的等待项计数。
KsCompleteIo 方法必须确定 IKsInterfaceHandler::KsProcessMediaSamples 方法从KSSTREAM_SEGMENT结构的 IoOperation 成员完成的 I/O作的类型。 如果 I/O作从流(KSIOOPERATION 枚举类型的KsIoOperation_Read)读取数据,KsCompleteIo 执行以下作,将示例从输出引脚传送到连接的输入引脚:
- 反映 IMediaSample 接口中的流标头信息。
- 调用输出引脚的 IKsPin::KsDeliver 方法来传送示例。 KsDeliver 释放示例,以便在将缓冲区排队到设备时,如果样本是最后一个样本,则可以检索该示例。 然后输入引脚完成 I/O,并且可以安全地释放示例。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | ksproxy.h (包括 Ksproxy.h) |