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


Общие сведения о сетях представления видео

Диспетчер представления видео (VidPN), который является компонентом подсистемы графического ядра DirectX (Dxgkrnl.sys), отвечает за управление коллекцией мониторов и других устройств отображения, подключенных к адаптеру дисплея. К обязанностям руководителя VidPN относятся следующие:

  • Реагируйте на горячее подключение и отключение мониторов.

  • Поддерживайте и обновляйте набор доступных режимов отображения по мере изменения набора подключенных мониторов.

  • Управление ассоциацией между поверхностями рендеринга и видеовыходами на дисплейном адаптере; например, клонирование изображений и расширение рабочего стола на несколько мониторов.

  • Настройте набор доступных устройств отображения и режимы отображения при открытии или закрытии крышки на ноутбуке.

  • Настройте набор доступных устройств и режимы отображения, когда ноутбук находится в док-станции или без неё.

Оборудование на адаптере дисплея, ответственное за считывание отрендеренного содержимого из видеопамяти и его вывод на видеоисточники, называется презентационной подсистемой адаптера дисплея. Видеотрансляционная сеть (VidPN) — это программное обеспечение подсистемы презентационного адаптера дисплея.

Ключевыми элементами подсистемы презентационного адаптера дисплея являются представления (основные цепочки поверхностей) и выходные данные видео. В модели VidPN представление называется источником представления, а выходные данные видео называются целевым объектом видео.

Путь представления видео — это связь между источником видео и целевым объектом представления видео. VidPN моделирует связь между источниками и целевыми объектами, поддерживая набор путей видеопрезентации. Набор путей называется топологией VidPN.

Обратите внимание, что целевые объекты представления видео не являются мониторами (или другими внешними устройствами отображения), подключенными к адаптеру дисплея. Целевые объекты представления видео — это сами соединители вывода видео.

На следующей схеме показан VidPN.

Схема, иллюстрирующая сеть представления видео (VidPN) с источниками, целевыми объектами и соединителями.

VidPN, показанный на предыдущей схеме, содержит три целевых объекта видео: соединитель DVI, соединитель HD15 и соединитель S-видео. Топология VidPN представлена линиями, соединяющими два источника с тремя целевыми объектами. Топология указывает, что источник 1 подключен к целевому объекту DVI, а источник 2 подключен как к целевым объектам HD15, так и к S-видео. Содержимое, отображаемое в источнике 2, представлено в виде клонированного представления на устройствах отображения, подключенных к соединителям HD15 и S-video.

Каждый источник представления видео поддерживает определенный набор форматов поверхности, называемых режимами источника. Чтобы отслеживать режимы источника, поддерживаемые различными источниками видео, VidPN поддерживает исходный режим для каждого источника видео. Исходный режим, заданный для конкретного источника видео, не является статическим; он изменяется по мере изменения топологии и изменяется в соответствии с режимами, выбранными для других источников видео.

Модель работает аналогично для целей, представленных в видео. Каждый целевой объект представления видео поддерживает определенный набор форматов видео сигналов, называемых целевыми режимами, и VidPN поддерживает целевой режим для каждого представления видео. Целевой режим, установленный для конкретного видеоцелевого объекта, меняется по мере изменения топологии и выбора режимов для других видеоцелевых объектов.

Роль драйвера минипорта отображения

Адаптер дисплея имеет один или несколько кодеков вывода видео (например, CRTC), которые считываются из источников видео и размещают соответствующие сигналы видео на целевых объектах видео. В любой момент времени кодек видеовыхода может считывать не более чем из одного источника видео; однако этот кодек может подавать видеосигнал на несколько целевых объектов видео (клонированное представление). Диспетчер VidPN занимается связями между источниками видео и целевыми объектами видео, но не занимается ролью кодеков видеовыхода. Решения о том, какие кодеки вывода видео считываются из определенного источника видео, полностью контролируются драйвером минипорта дисплея. Например, предположим, что в адаптере дисплея есть два кодека вывода видео, а диспетчер VidPN запрашивает драйвер мини-порта отображения для реализации топологии, показанной на следующей схеме.

Схема топологии VidPN с двумя источниками, подключенными к трем целевым объектам.

На следующей схеме показан один из способов, которым драйвер мини-порта отображения может назначить кодеки вывода видео для источников видео.

Схема, на которой показан драйвер, назначающий CRTC1 HD15 для источника 1, а CRTC2 — HD15 и S-Video для источника 2.

Обратите внимание, что режим клонирования (HD15, S-видео) на предыдущей схеме обрабатывается одним CRTC. Теперь предположим, что выход HD15, подключенный к CRTC1, больше не нужен. Затем драйвер минипорта дисплея может реализовать режим клонирования, настроив видео кодеки для вывода, как показано на следующей схеме.

Схема, показывающая альтернативное использование кодеков вывода видео с двумя CRTCs для режима дублирования.

Реализация представления клона с двумя CRTCs имеет некоторые преимущества по сравнению с его реализацией с одним CRTC. Например, при использовании двух CRTC выходы HD15 и S-видео могут иметь разные разрешения и частоты обновления.

Важно отметить, что диспетчер VidPN не владеет информацией о том, как кодеки вывода видео на адаптере дисплея назначаются источникам видео-сигнала и целям. Диспетчер VidPN знает только связи между источниками и целевыми объектами. Базовые составные связи, связанные с кодеками вывода видео, известны только драйверу минипорта отображения.