Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
X video extension
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Display == After video has been scaled and prepared for display on the video card, it must be displayed. There are a few possible ways to display accelerated video at this stage. Since full acceleration means that the video controller is responsible for scaling, converting, and drawing the video, the technique used depends entirely on what the video is being drawn onto. === The role of window manager support and compositing === Under X, how video is finally drawn depends largely on the [[X window manager]] in use. With properly installed drivers, and [[graphics processing unit|GPU]] hardware such as supported [[Intel]], [[ATI (brand)|ATI]], and [[nVidia]] chip sets, some [[window managers]], called [[compositing window manager]]s, allow windows to be separately processed and then rendered (or composited). This involves all windows being rendered to separate output buffers in memory first, and later combined to form a complete graphical interface. While in (video) memory, individual windows can be transformed separately, and accelerated video may be added at this stage using a texture filter, before the window is composited and drawn. XVideo can also be used to accelerate video playback during the drawing of windows using an OpenGL [[Framebuffer Object]] or pbuffer. [[Metacity]], an [[X window manager]] uses compositing in this way. The compositing can also make use of 3D pipelines accelerations such as GLX_EXT_texture_from_pixmap. Among other things, this process allows many video outputs to share the same screen without interfering with each other. Other [[compositing window manager]]s such as [[Compiz]] also use compositing. However, on a system with limited OpenGL acceleration function, specifically the lack of an OpenGL [[Framebuffer Object]] or [[pbuffer]], the use of an OpenGL environment like [[Xgl]] makes xv hardware accelerations impossible. === The disadvantages of chroma keying === In the event that the window manager doesn't directly support compositing, it is more difficult to isolate where the video stream should be rendered, because by the time it can be accelerated the output has already been turned into a single image. The only way to do this is usually to employ a post processed [[hardware overlay]], using [[chroma keying]]. After all of the windows have already been drawn, the only pieces of information we have available are the size and position of the video window's canvas. A third piece of information is required to indicate which parts of the video window's canvas are obscured by other windows and which are not. Therefore, the video player draws its canvas using a solid color (we'll say green), and this color becomes a makeshift third dimension. When all windows have been drawn, windows covering the video player will block out the green color. When the video stream is added to the output, the graphics card can simply scan the co-ordinates of the canvas. When it encounters green, it knows it has found a visible portion of the video window, and only draws those portions of the video. This same process was also the only available option to render hardware accelerated video under [[Microsoft]] [[Windows XP]] and earlier, since its window management features were so deeply embedded into the operating system that accelerating them would have been impossible. If the window manager doesn't support compositing, post processed [[hardware overlay]]s using [[chroma keying]] as described in the previous paragraph can make it impossible to produce a proper [[screenshot]]s of Xvideo applications. It can also make it impossible to view this kind of playback on a secondary display when only one overlay is allowed at the hardware level. {{further information|Stacking window manager}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)