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
Mesa (computer graphics)
(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!
=== Implementations of video acceleration APIs === There are three possible ways to do the calculations necessary for the encoding and decoding of video streams: # use a software implementation of a video compression or decompression algorithm (commonly called a CODEC) and execute this software on the ''C''PU # use a software implementation of a video compression or decompression algorithm (commonly called a CODEC) and execute this software on the ''G''PU (the [[rendering (computer graphics)|3D rendering engine]]) # use a complete (or partial) hardware implementation of a video compression or decompression algorithm; it has become very common to integrate such [[ASICs]] into the chip of the GPU/CPU/SoC and therefore abundantly available; for marketing reasons companies have established brands for their ASICs, such as [[PureVideo]] (Nvidia), [[Unified Video Decoder]] (AMD), [[Video Coding Engine]] (AMD), [[Quick Sync Video]] (Intel), [[Texas Instruments DaVinci|DaVinci]] (Texas Instruments), [[CedarX]] (Allwinner), [[Broadcom Crystal HD|Crystal HD]] (Broadcom); some ASICs are available for licensing as [[semiconductor intellectual property core]]; usually different versions implement different video compression and/or video decompression algorithms; support for such ASICs usually belong into the kernel driver, to initialize the hardware and do low-level stuff. Mesa, which runs in user-space, houses the implementations of several [[API]]s for software, e.g. [[VLC media player]], [[GStreamer]], [[HandBrake]], etc., to conveniently access such ASICs: * [[Video Acceleration API]] (VAAPI) β the most common API for Linux, used by AMD and Intel * [[Video Decode and Presentation API for Unix]] (VDPAU) β used by Nvidia * [[DirectX Video Acceleration]] (DXVA) β Microsoft Windows-only * [[OpenMAX IL]] β designed by Khronos Group for video compression * [[Distributed Codec Engine]] (DCE) β designed by Texas Instruments * [[X-Video Bitstream Acceleration]] (XvBA) β extension to [[X video extension|Xv]] - succeeded by VAAPI * [[X-Video Motion Compensation]] (XvMC) β extension to [[X video extension|Xv]] - succeeded by VAAPI For example, [[nouveau (software)|Nouveau]], which has been developed as part of Mesa, but also includes a Linux kernel component, which is being developed as part of the Linux kernel, supports the [[PureVideo]]-branded ASICs and provides access to them through [[VDPAU]] and partly through [[XvMC]].<ref>{{cite web |url=https://nouveau.freedesktop.org/wiki/VideoAcceleration/ |title=Nouveau Video Acceleration |work=[[freedesktop.org]]}}</ref> The free radeon driver supports [[Unified Video Decoder]] and [[Video Coding Engine]] through VDPAU and OpenMAX.<ref>{{cite web |url=http://xorg.freedesktop.org/wiki/RadeonFeature/ |title=Radeon Feature Matrix |work=[[freedesktop.org]]}}</ref> [[V4L2]] is a [[Linux API|kernel-to-user-space interface]] for video bit streams delivered by webcams or TV tuners. Due to [[patent]] concerns regarding the [[H.264]], [[H.265]] and [[VC-1]] video codecs, [[Fedora Linux]] disabled support for VAAPI acceleration for those in its build of Mesa in September 2022.<ref>{{Cite web |title=Fedora Linux Disabling Mesa's H.264 / H.265 / VC1 VA-API Support Over Legal Concerns |url=https://www.phoronix.com/news/Fedora-Disable-Bad-VA-API |access-date=2022-10-01 |website=Phoronix |language=en}}</ref>
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)