Класс CRenderedInputPin
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Класс CRenderedInputPin является базовым классом для реализации входной закрепления в отрисовщике. Этот класс предназначен для фильтров отрисовщика, которые не являются производными от класса CBaseRenderer . (Фильтры, производные от CBaseRenderer, должны использовать класс CRendererInputPin для входного контакта.)
Чтобы использовать этот класс, необходимо выполнить по крайней мере следующее:
- Объявите новый класс pin, который наследует CRenderedInputPin.
- В классе pin объявите критически важный объект раздела для хранения блокировки потоковой передачи. Для этой цели можно использовать класс CCritSec . Дополнительные сведения см. в разделе Потоки и критические разделы.
- Переопределите CRenderedInputPin::EndOfStream для удержания блокировки потоковой передачи.
- Реализуйте методы IMemInputPin::Receive, CBasePin::CheckMediaType и CBasePin::GetMediaType .
- В фильтре реализуйте CBaseFilter::GetPin , чтобы вернуть экземпляр класса pin.
Этот класс можно использовать в отрисовщике, который имеет несколько входных контактов. Этот класс наследует класс CBaseInputPin .
Защищенные переменные-члены | Описание |
---|---|
m_bAtEndOfStream | Указывает, был ли достигнут конец потока. |
m_bCompleteNotified | Указывает, отправил ли закрепление событие EC_COMPLETE в диспетчер фильтров Graph. |
Открытые методы | Описание |
Активных | Уведомляет закрепление о том, что фильтр теперь активен. |
CRenderedInputPin | Метод конструктора. |
Выполнить | Уведомляет закрепление о том, что фильтр запущен. |
Методы IPin | Описание |
EndFlush | Завершает операцию очистки. |
EndOfStream | Уведомляет контакт о том, что дополнительные данные не ожидаются, пока фильтр не получит новую команду выполнения. |
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|