Расширение Xvideo

Расширение Xvideo

Расширение X video, чаще сокращаемое до XVideo или Xv обеспечивает механизм вывода видео в X Window System. Изначально протокол был разработан Девидом Карвером, а его текущая версия (вторая) была написана в Июле 1991. Основным его назначением и по нынешний день остаётся аппаратное масштабирование (в качестве аппаратуры подразумеваются видеокарты) воспроизводимого видео для просмотра его в полноэкранном режиме. Без XVideo эту работу пришлось бы целиком выполнять центральному процессору, что требовало бы больше ресурсов и могло бы приводить в ряде случаев к замедлению воспроизведения или ухудшению изображения. Кроме того расширение X video использует видеокарту для преобразования цветового пространства. С его помощью можно аппаратно регулировать яркость, контрастность и тон отображаемого видеопотока.

Для того чтобы использовать это расширение необходимы и достаточны три вещи:

  • Видеокарта должна поддерживать необходимые функции;
  • Её драйвер и X server поддерживает интерфейс XVideo;
  • Воспроизводящая видео программа написана с возможностью использования этого интерфейса.

Большинство современных видеокарт обеспечивают необходимые для XVideo функции. Обычно их называют поддержкой аппаратного масштабирования и ускорения преобразования аппаратным ускорением 2D графики. X server xdpyinfo. А для проверки, что текущая видеокарта поддерживает необходимые функции можно использовать программу xvinfo.

Содержание

Воспроизведение и обработка

Популярные программы для воспроизведения видео, используемые в X Window, такие как MythTV или

Несмотря на то, что протокол предоставляет возможности чтения и записи видеопотока с и на видеокарты, на сегодняшний день самыми востребованными функциями остаются XvPutImage и XvShmPutImage. Клиенты поочерёдно декодируют кадры и передают их видеокарте для аппаратного масштабирования, преобразования и отображения.

Отображение

После того, как изображение было отмасштабировано и подготовлено, остаётся только отобразить его. Существует несколько способов обеспечить ускорение вывода видео на этом этапе. И так как полное ускорение подразумевает, что видеокарта ответственна за масштабирование, преобразование и вывод видео, конкретный способ будет зависеть от того куда именно будет выводиться изображение.

Роль композитного оконного менеджера

В оконного менеджера. С правильно установленными драйверами GPU видеокарт от ATI или nVidia могут использоваться некоторыми оконными менеджерами, называемыми композитными оконными менеджерами, для того чтобы обрабатывать каждое отображаемое окно независимо от других. Это обеспечивается путём вывода содержимого каждого окна в специальный буфер и последующего объединения в единое изображение. В тот момент, когда отдельные окна обрабатываются в их собственном буфере, обработанное видеокартой видео может быть добавлено к ним на этом этапе посредством текстурного фильтра, до того момента, как окно будет окончательно нарисовано. XVideo может быть использован для ускорения вывода видео через расширения

Оконный менеджер Beryl, Compiz Fusion поступают аналогичным образом. Compiz Fusion включён в Ubuntu Linux 7.10 и более поздние версии. Он автоматически активируется, если система обнаруживает поддерживающее его оборудование.

Тем не менее, на компьютерах с ограниченной аппаратной поддержкой OpenGL, с отсутствующей поддержкой Framebuffer Object или pbuffer, как на системах использующих XGL, расширение Xv будет недоступно.

Проблемы с цветовым ключом

Причина, по которой оконные менеджеры не поддерживают смешение непосредственно, связана с тем, что очень трудно определить куда необходимо выводить видео поток, поскольку за время ускорения, содержимое экрана превращается в единое изображение. Единственным способом обеспечить вывод видео становится использование аппаратного оверлея с применением цветового ключа. После того, как все окна нарисованы, единственная доступная информация об окнах — это их размеры и координаты. Но для отображения видео так же необходима информация о том, как и какие окна друг друга перекрывают. Для этого программы, воспроизводящие видео, закрашивают область вывода сплошным цветом (допустим, зелёным). Затем, когда все окна выведены, перекрывающие окна могут закрыть часть окна проигрывателя видео, но видеокарте будет достаточно лишь просканировать определённые координаты экрана и если там находятся точки зелёного цвета, то в этом месте необходимо отобразить видео поток. Аналогичный способ использовался для вывода видео с аппаратным ускорением в операционной системе Windows XP (и более ранних версиях), потому что её оконный менеджер был столь сильно интегрирован с операционной системой, что ускорить его самого не представлялось возможным.

Таким образом, если оконный менеджер не является композитным, то для вывода видео используется аппаратный оверлей с цветовым ключом, как это описано в параграфе выше. Однако применение этого способа может сделать невозможным получение правильного снимка экрана с использующими Xvideo приложениями. Так же может оказаться невозможным вывод видео на второй монитор, если поддерживается только один аппаратный оверлей.

Проблемы с новыми видеокартами

Из-за выхода nVidia GeForce 8 серии. Все видеокарты GeForce 8800, включая 8800GT и 8800GTS теперь поддерживают только один текстурный оверлей на главном мониторе. Благодаря этому они не могут должным образом обеспечить вывод более одного потока видео с использованием аппаратного ускорения, вне зависимости от платформы.

Результатом стало плохое воспроизведение видео на операционных системах не поддерживающих DirectX 10, включая Windows XP и Linux с использованием XVideo. Эти изменения также навредили многим композитным менеджерам, включая Metacity.

См. также

  • XvMC — Компенсация движения X-Video

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "Расширение Xvideo" в других словарях:

  • Расширение X video — Расширение X video, чаще сокращаемое до XVideo или Xv обеспечивает механизм вывода видео в X Window System. Изначально протокол был разработан Девидом Карвером, а его текущая версия (вторая) была написана в Июле 1991. Основным его назначением и… …   Википедия

  • XVideo — Расширение X video, чаще сокращаемое до XVideo или Xv обеспечивает механизм вывода видео в X Window System. Изначально протокол был разработан Девидом Карвером, а его текущая версия (вторая) была написана в Июле 1991. Основным его назначением и… …   Википедия

  • Xvideo — Расширение X video, чаще сокращаемое до XVideo или Xv обеспечивает механизм вывода видео в X Window System. Изначально протокол был разработан Девидом Карвером, а его текущая версия (вторая) была написана в Июле 1991. Основным его назначением и… …   Википедия

  • X Window System — Тип оконная система Разработчик X.Org Foundation Операционная с …   Википедия

  • X-сервер — X Window System Тип оконная система Разработчик X.Org Foundation ОС различные Версия X11R7.4 23 сентября 2008 …   Википедия

  • X11 — X Window System Тип оконная система Разработчик X.Org Foundation ОС различные Версия X11R7.4 23 сентября 2008 …   Википедия

  • X11R6 — X Window System Тип оконная система Разработчик X.Org Foundation ОС различные Версия X11R7.4 23 сентября 2008 …   Википедия

  • XOrg — X Window System Тип оконная система Разработчик X.Org Foundation ОС различные Версия X11R7.4 23 сентября 2008 …   Википедия

  • X Server — X Window System Тип оконная система Разработчик X.Org Foundation ОС различные Версия X11R7.4 23 сентября 2008 …   Википедия

  • X Window — System Тип оконная система Разработчик X.Org Foundation ОС различные Версия X11R7.4 23 сентября 2008 …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»