Функция MFGetTopoNodeCurrentType (mfidl.h)

Возвращает тип носителя для потока, связанного с узлом топологии.

Синтаксис

HRESULT MFGetTopoNodeCurrentType(
        IMFTopologyNode *pNode,
        DWORD           dwStreamIndex,
        BOOL            fOutput,
  [out] IMFMediaType    **ppType
);

Параметры

pNode

Указатель на интерфейс IMFTopologyNode .

dwStreamIndex

Идентификатор запрашиваемого потока. Этот параметр интерпретируется следующим образом:

  • Узлы преобразования. Значение представляет собой отсчитываемый от нуля индекс входного или выходного потока.
  • Все остальные типы узлов: значение должно быть равно нулю.

fOutput

Если задано значение TRUE, функция получает тип вывода. Если значение РАВНО FALSE, функция получает тип входных данных. Этот параметр интерпретируется следующим образом:

  • Выходные узлы: значение должно иметь значение TRUE.
  • Исходные узлы: значение должно иметь значение FALSE.
  • Tee nodes: значение игнорируется.
  • Узлы преобразования. Если значение равно TRUE, параметр dwStreamIndex является индексом для выходного потока. В противном случае dwStreamIndex — это индекс входного потока.

[out] ppType

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

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

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

Код возврата Описание
S_OK
Метод выполнен успешно.
MF_E_INVALIDSTREAMNUMBER
Недопустимый индекс потока.

Комментарии

Эта функция получает фактический тип носителя из объекта, связанного с узлом топологии. Параметр pNode должен указывать узел, принадлежащий полностью разрешенной топологии. Если узел принадлежит частичной топологии, скорее всего, функция завершится ошибкой.

Узлы tee не имеют связанного объекта для запроса. Для тройных узлов функция получает тип входных данных узла, если он доступен. В противном случае, если тип входных данных недоступен, функция получает тип носителя основного выходного потока узла. Основной выходной поток определяется атрибутом MF_TOPONODE_PRIMARYOUTPUT .

Требования

   
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа Windows
Header mfidl.h
Библиотека Mf.lib
DLL Mf.dll

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

Функции Media Foundation