Поделиться через


Метод IMFMediaSink::AddStreamSink (mfidl.h)

Добавляет новый приемник потока в приемник мультимедиа.

Синтаксис

HRESULT AddStreamSink(
  [in]  DWORD         dwStreamSinkIdentifier,
  [in]  IMFMediaType  *pMediaType,
  [out] IMFStreamSink **ppStreamSink
);

Параметры

[in] dwStreamSinkIdentifier

Идентификатор нового потока. Значение является произвольным, но должно быть уникальным.

[in] pMediaType

Указатель на интерфейс IMFMediaType , указывающий тип носителя для потока. Этот параметр может принимать значение NULL.

[out] ppStreamSink

Получает указатель на интерфейс IMFStreamSink нового приемника потока. Вызывающий объект должен освободить интерфейс .

Возвращаемое значение

Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.

Код возврата Описание
S_OK
Метод выполнен успешно.
MF_E_INVALIDSTREAMNUMBER
Указанный идентификатор потока недопустим.
MF_E_SHUTDOWN
Был вызван метод Shutdown приемника мультимедиа.
MF_E_STREAMSINK_EXISTS
Приемник потока с тем же идентификатором потока уже существует.
MF_E_STREAMSINKS_FIXED
Этот приемник мультимедиа имеет фиксированный набор потоковых приемников. Невозможно добавить новые приемники потоков.

Комментарии

Не все приемники мультимедиа поддерживают этот метод. Если приемник мультимедиа не поддерживает этот метод, метод IMFMediaSink::GetCharacteristics возвращает флаг MEDIASINK_FIXED_STREAMS.

Если pMediaType имеет значение NULL, используйте интерфейс IMFMediaTypeHandler , чтобы задать тип носителя. Вызовите IMFStreamSink::GetMediaTypeHandler , чтобы получить указатель на интерфейс.

Требования

   
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header mfidl.h
Библиотека Mfuuid.lib

См. также раздел

IMFMediaSink

Приемники мультимедиа