IFilterGraph2::ReconnectEx 方法 (strmif.h)
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 ReconnectEx
中断现有引脚连接,并使用指定的媒体类型将其重新连接到同一引脚。
应用程序不应调用此方法。 它在图形生成过程中由筛选器调用。
语法
HRESULT ReconnectEx(
[in] IPin *ppin,
[in] const AM_MEDIA_TYPE *pmt
);
参数
[in] ppin
指向要断开连接和重新连接的引脚的指针。
[in] pmt
指向要重新连接的媒体类型的指针。 指定 NULL 以使用现有媒体类型。
返回值
返回 HRESULT 值。 可能的值包括以下值。
返回代码 | 说明 |
---|---|
|
成功。 |
|
Pin 未连接。 无错误。 |
|
失败。 |
|
NULL 指针参数。 |
|
筛选器未停止,但在处于运行状态时不支持重新连接。 |
注解
筛选器可以调用此方法,以便重新协商引脚连接。 方法在单独的线程上执行。 在调用此方法之前,请在另一个引脚上调用 IPin::QueryAccept ,以确保重新连接尝试成功。 除非 QueryAccept 返回S_OK,否则不要调用此方法。 否则,由于重新连接是异步执行的,因此即使 ReconnectEx
方法成功,重新连接也可能失败,从而使筛选器图处于不一致状态。
此方法通过指定媒体类型改进了 IFilterGraph::Reconnect 方法。 这使得重新连接更有可能成功。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | strmif.h (包括 Dshow.h) |
Library | Strmiids.lib |