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
程式庫 Mfuuid.lib

另請參閱

IMFMediaSink

媒體接收