Диспетчер видеопортов
[Функция, связанная с этой страницей, DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngineи аудио и видеозахват в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код MediaPlayer, IMFMediaEngine и аудио-видеозахват в Media Foundation вместо DirectShowпо возможности. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Фильтр диспетчера видеопортов (VPM) позволяет фильтру 7 (VMR-7) использовать устройства записи видео или аппаратные декодеры, использующие видеопорт. Видеопорт — это прямое аппаратное подключение к графической микросхеме. Это позволяет передавать видео непосредственно на графический чип без перехода по системной шине.
Заметка
Диспетчер видеопортов несовместим с VMR-9, так как VMR-9 не поддерживает видеопорты.
Ярлык | Ценность |
---|---|
Интерфейсы фильтров | IAMVideoDecimationProperties, IBaseFilter, IKsPropertySet, IQualProp, IVPManager |
Типы носителей входных закреплений | MEDIATYPE_Video, MEDIASUBTYPE_VPVideo или MEDIASUBTYPE_VPVBI FORMAT_None |
Интерфейсы входных закреплений | IKsPin, IKsPropertySet, IMemInputPin, IPin, IPinConnection, IQualityControl |
Типы носителей выходного пин-кода | MEDIATYPE_Video, FORMAT_VideoInfo2 |
Интерфейсы выходных закреплений | IPin, IQualityControl |
Фильтрация CLSID | CLSID_VideoPortManager |
Заслуги | MERIT_NORMAL |
категории фильтра | CLSID_LegacyAmFilterCategory |
Замечания
Диспетчер видеопортов объединяет функциональные возможности порта видеофайла фильтра overlay Mixer и функциональные возможности VBI Surface Allocator. VPM выделяет видеопорты и поверхности и синхронизирует запись данных из видеопорта. Он разрешает запись на основе видео на основе порта, которая не зависит от отрисовки. Если требуется предварительная версия, VPM координируется с VMR-7 для отображения захваченных данных видеопорта. Если в системе присутствует видеопорт, фильтр записи требует дополнительных буферов для извлечения данных VBI из видеопотока. Эти буферы предоставляются VPM. После извлечения данных VBI фильтр получает его на отдельном закреплении для фильтров, таких как декодировщик CC. На следующем рисунке показаны VPM и его подключения в графе фильтров.
сегмент графа фильтра диспетчера видеопортов
Построитель DVD Graph добавляет VPM в граф фильтров автоматически при обнаружении видеопорта в системе. После добавления в граф VPM используется объект DirectDraw, предоставляемый отрисовщиком Видеосмешивания для выделения двух или трех поверхностей. Эти поверхности получают цифровые кадры из фильтра записи вышестоящего потока. В ответ на уведомления о событиях в режиме пользователя, отправленные при наличии данных на поверхности, VPM выполняет автоматическую перерезку на внеэкранную поверхность, предоставляемую VMR.
Тот факт, что VPM использует несколько поверхностей для входных буферов, означает, что для него требуется больше VRAM, чем предыдущая реализация видеопорта DirectShow. Дополнительная полоса пропускания из VPM в VMR-7 требует дополнительной пропускной способности памяти видео. И поскольку аппаратное автоматическое переворачивание больше не используется, существует теоретический потенциал для удаленных кадров, но эмпирические доказательства свидетельствуют о том, что это не происходит.
Связанные разделы