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


Метод CBaseRenderer.GetMediaPositionInterface

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Метод GetMediaPositionInterface извлекает указатели интерфейса IMediaPosition и IMediaSeeking фильтра.

Синтаксис

virtual HRESULT GetMediaPositionInterface(
   REFIID riid,
   void   **ppv
);

Параметры

riid

Идентификатор ссылки на интерфейс.

Ppv

Адрес переменной, получающей указатель интерфейса.

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

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

Код возврата Описание
S_OK
Успешно.
E_OUTOFMEMORY
Недостаточно памяти.
E_NOINTERFACE
Интерфейс не поддерживается.

Комментарии

Фильтр делегирует все команды поиска объекту CRendererPosPassThru, который передает их вышестоящий. Этот метод создает объект CRendererPosPassThru , если он еще не существует, и запрашивает у него запрошенный интерфейс.

Переменная-член CBaseRenderer::m_pPosition хранит указатель на объект CRendererPosPassThru .

Требования

Требование Значение
Заголовок
Renbase.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

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

Класс CBaseRenderer