X-Video Bitstream Acceleration
{{short description|Arbitrary extension of the X video extension}}
X-Video Bitstream Acceleration (XvBA), designed by AMD Graphics for its Radeon GPU and APU, is an arbitrary extension of the X video extension (Xv) for the X Window System on Linux operating-systems.{{cite web |url=https://www.phoronix.com/scan.php?page=article&item=amd_xvmc_xvba |title=AMD's X-Video Bitstream Acceleration |author=Michael Larabel |date=28 October 2008 |website=Phoronix }} XvBA API allows video programs to offload portions of the video decoding process to the GPU video-hardware. Currently, the portions designed to be offloaded by XvBA onto the GPU are currently motion compensation (MC) and inverse discrete cosine transform (IDCT), and variable-length decoding (VLD) for MPEG-2, MPEG-4 ASP (MPEG-4 Part 2, including Xvid, and older DivX and Nero Digital), MPEG-4 AVC (H.264), WMV3, and VC-1 encoded video.{{cite web |url=https://events.linuxfoundation.org/images/stories/pdf/lceu2012_debski.pdf |title=Video4Linux2: Path to a Standardized Video Codec API |author=Kamil Dębski |date=2012 |access-date=2013-12-04 |archive-date=2014-01-06 |archive-url=https://web.archive.org/web/20140106032317/https://events.linuxfoundation.org/images/stories/pdf/lceu2012_debski.pdf |url-status=dead }}
XvBA is a direct competitor to NVIDIA's Video Decode and Presentation API for Unix (VDPAU) and Intel's Video Acceleration API (VA API).{{cite web |url=https://www.phoronix.com/scan.php?page=article&item=xorg_vdpau_vaapi |title=A NVIDIA VDPAU Back-End For Intel's VA-API |author=Michael Larabel |date=3 February 2009 |website=Phoronix }}
In November 2009 an XvBA backend for Video Acceleration API (VA API) was released,{{cite web |url=https://www.phoronix.com/scan.php?page=article&item=amd_xvba_vaapi |title=AMD's UVD2-based XvBA Finally Does Something On Linux |author=Michael Larabel |date=3 November 2009 |website=Phoronix }} which means any software that supports VA API will also support XvBA.
On 24 February 2011, an official XvBA SDK (Software Development Kit) was publicly released alongside a suite of open source tools by AMD.{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=OTEzNg |title=AMD Opens Up XvBA! Their Catalyst Linux Video API |author=Michael Larabel |date=25 February 2011 |website=Phoronix }}
Device drivers
Each hardware video GPU capable of XvBA video acceleration requires a X11 software device driver to enable these features. Currently only AMD's ATI Radeon graphics cards hardware that have support for Unified Video Decoder version 2.0 or later (primarily the Radeon HD 4000 series or later) are supported by the proprietary ATI Catalyst device driver.{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=Njc4OA |title=Yes, Catalyst 8.10 Is Out There |author=Michael Larabel |date=16 October 2008 |website=Phoronix }}{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=Njc4Ng |title=UVD Is Enabled For Linux In Catalyst 8.10 |author=Michael Larabel |date=15 October 2008 |website=Phoronix }}{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=NjcwMA |title=AMD's UVD2 & XvMC For Linux? |author=Michael Larabel |date=4 September 2008 |website=Phoronix }}
Software supporting XvBA natively
- XBMC Media Center{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=MTAyODU |title=XBMC Project Implements AMD XvBA Interface |author=Michael Larabel |date=14 December 2011 |website=Phoronix }}
- OpenELEC{{cite web |url=http://openelec.tv/component/k2/item/215-progress-on-the-fusion-project-xvba-support |title=Progress on the Fusion project - XVBA support |date=12 December 2011 |website=OpenELEC |archive-url=https://web.archive.org/web/20120316041210/http://openelec.tv/component/k2/item/215-progress-on-the-fusion-project-xvba-support |archive-date=16 March 2012 }}
- MPlayer can be compiled to support XvBA
See also
- Video Acceleration API (VA API) - is an open source software library with XvBA backend support
- UVD (Unified Video Decoder) - is the video decoding unit from ATI Technologies to support hardware (GPU) decode
- Nvidia PureVideo - the bit-stream technology from NVIDIA used in their graphics chips to accelerate video decoding on hardware GPU.
- VDPAU (Video Decode and Presentation API for Unix) - competing API by NVIDIA
- DirectX Video Acceleration (DxVA) API - Microsoft Windows's accelerated video decoding API
- OpenMAX IL (Open Media Acceleration Integration Layer) - a royalty-free cross-platform media abstraction API from the Khronos Group
- X-Video Motion Compensation (XvMC)
- Distributed Codec Engine ({{code|libcde}}) is a Texas Instruments API for the video codec esystem'sn OMAP based embedded systems
References
{{reflist|2}}
External links
- [http://developer.amd.com/zones/opensource/Pages/default.aspx AMD's open source page, containing a link to their XvBA SDK and Tools]
- [http://xvbat.sourceforge.net/ XvBA Tools open source library, tools, and example code for accessing XvBA]
{{AMD graphics}}
{{XWinSys}}
Category:Application programming interfaces