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


Класс CBaseInputPin

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

Иерархия классов cbaseinputpin

Класс CBaseInputPin является абстрактным базовым классом для реализации входных контактов. Этот класс добавляет поддержку интерфейса IMemInputPin в дополнение к поддержке интерфейса IPin , предоставляемой CBasePin.

Чтобы использовать этот класс, наследуйте новый класс и переопределите по крайней мере следующие методы:

В зависимости от функции закрепления может потребоваться переопределить дополнительные методы в CBaseInputPin или CBasePin.

Защищенные переменные-члены Описание
m_pAllocator Указатель на распределитель памяти.
m_bReadOnly Флаг, указывающий, создает ли распределитель образцы мультимедиа только для чтения.
m_bFlushing Флаг, указывающий, выполняется ли в данный момент закрепление.
m_SampleProps Свойства последнего примера.
Открытые методы Описание
CBaseInputPin Метод конструктора.
~CBaseInputPin Метод деструктора.
BreakConnect Освобождает контакт из соединения.
IsReadOnly Запрашивает, использует ли распределитель примеры мультимедиа только для чтения.
IsFlushing Запрашивает, выполняется ли очистка фильтра в данный момент.
CheckStreaming Определяет, может ли контакт принимать примеры. Виртуальной.
PassNotify Передает сообщение контроля качества соответствующему объекту.
Неактивно Уведомляет закрепление о том, что фильтр больше не активен. Виртуальной.
SampleProps Извлекает свойства последнего примера.
Методы IPin Описание
BeginFlush Начинает операцию очистки.
EndFlush Завершает операцию очистки.
Методы IMemInputPin Описание
GetAllocator Извлекает распределитель памяти, предложенный этим контактом.
NotifyAllocator Указывает распределитель для соединения.
GetAllocatorRequirements Извлекает свойства распределителя, запрошенные входным пин-кодом.
Receive Получает следующий пример мультимедиа в потоке.
ReceiveMultiple Получает несколько выборок в потоке.
ReceiveCanBlock Определяет, могут ли блокироваться вызовы метода CBaseInputPin::Receive .
Методы IQualityControl Описание
Уведомление Получает сообщение о контроле качества.

Требования

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