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


Использование рендерера смешивания видео

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

С точки зрения как производительности, так и широты возможностей, фильтр Video Mixing Renderer (VMR) представляет следующее поколение в видео рендеринге на платформе Windows. VMR заменяет Overlay Mixer и Video Renderer, добавляя множество новых функций смешивания.

Существует две версии VMR:

  • VmR-7, который использует DirectDraw 7 для отрисовки.
  • VMR-9, использующий Direct3D 9.

VMR-7 доступен в Windows XP и более поздних версиях, но недоступен для распространения. VmR-9 доступен для распространения на всех платформах, поддерживаемых DirectX 9. Два фильтра VMR очень похожи в их реализации и интерфейсах, которые они предоставляют.

VMR-9 имеет собственный CLSID и собственный набор интерфейсов, структур и типов перечислений, которые не всегда идентичны соответствующим типам данных для VMR-7, из-за базовых различий между DirectDraw 7 и Direct3D 9. Интерфейсы VMR-9 заканчиваются "9", например IVMRStreamConfig9, а структуры и типы перечисления имеют "VMR9" в их имени, чтобы отличить их от типов данных, используемых с VMR-7.

Чтобы обеспечить обратную совместимость, VMR-9 не является отрисовщиком по умолчанию ни в одной системе. Чтобы использовать VMR-9, необходимо явно добавить его в граф фильтров с помощью метода IFilterGraph::AddFilter и настроить его перед подключением к любым вышестоящим фильтрам.

В этой статье содержатся следующие разделы. За исключением отмеченных, сведения в этих разделах применяются как к фильтрам VMR-7, так и к фильтрам VMR-9.

фильтр видео-рендеринга смешивания 7

фильтр 9 отрисовщика видео смешения видео