IPinConnection::NotifyEndOfStream 方法 (strmif.h)
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 NotifyEndOfStream
在发生下一个流结束条件时从引脚请求通知。
语法
HRESULT NotifyEndOfStream(
[in] HANDLE hNotifyEvent
);
参数
[in] hNotifyEvent
图钉将发出信号的事件对象的句柄。
返回值
返回 HRESULT 值。 可能的值包括以下值。
返回代码 | 说明 |
---|---|
|
事件句柄为 NULL,但没有要重置的现有事件句柄。 |
|
已设置事件句柄。 (如果事件句柄为 NULL,则取消事件通知。) |
注解
此方法使调用方能够通过以此引脚结尾的筛选器图的一部分推送数据。
例如,假设调用方将数据从一个筛选器上名为“A”的输出引脚推送到另一个筛选器上的名为“B”的输入引脚,可能还有中间筛选器连接它们。 将发生以下事件序列。
- 调用方阻止引脚 A 处的数据流。
- 它在引脚 B 上调用
NotifyEndOfStream
。 - 它在连接到引脚 A 的输入引脚上调用 IPin::EndOfStream 。
- 当剩余数据通过任何中间筛选器向下游传输时,这些筛选器会传播流结束通知。
- 当引脚 B 收到流结束通知时,它会向 hNotifyEvent 参数中给定的事件发出信号。 此时,调用方可以安全地重新配置引脚 A 和引脚 B 之间的图形。
调用方有责任使用 NULL 事件句柄再次调用此方法来取消通知。
筛选器图在 IGraphConfig::Reconnect 方法中调用此方法。 如果应用程序或筛选器使用 IGraphConfig::Reconfigure 方法) 对图形 (执行任何专用的动态重新配置,则它可能会首先调用此方法,以便将数据推送到正在重新配置的图形部分。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | strmif.h (包括 Dshow.h) |
Library | Strmiids.lib |