IMFMediaSink::RemoveStreamSink 方法 (mfidl.h)

从媒体接收器中删除流接收器。

语法

HRESULT RemoveStreamSink(
  [in] DWORD dwStreamSinkIdentifier
);

参数

[in] dwStreamSinkIdentifier

要删除的流的标识符。 调用 IMFMediaSink::AddStreamSink 以添加流接收器时定义流标识符。

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码 说明
S_OK
方法成功。
E_INVALIDARG
无法删除此特定流接收器。
MF_E_INVALIDSTREAMNUMBER
流号无效。
MF_E_NOT_INITIALIZED
媒体接收器尚未初始化。
MF_E_SHUTDOWN
已调用媒体接收器的 Shutdown 方法。
MF_E_STREAMSINKS_FIXED
此媒体接收器具有一组固定的流接收器。 无法删除Stream接收器。

注解

调用此方法后,相应的流接收器对象不再有效。 IMFMediaSink::GetStreamSinkByIndexIMFMediaSink::GetStreamSinkById 方法将不再返回该流接收器。 如果通过调用 AddStreamSink) 添加另一个流 (,则可以重复使用流标识符。

并非所有媒体接收器都支持此方法。 如果媒体接收器不支持此方法, IMFMediaSink::GetCharacteristics 方法将返回MEDIASINK_FIXED_STREAMS标志。

在某些情况下,媒体接收器支持此方法,但不允许删除每个流接收器。 (例如,它可能不允许删除流 0。)

要求

要求
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
目标平台 Windows
标头 mfidl.h
Library Mfuuid.lib

另请参阅

IMFMediaSink

媒体接收器