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

References

{{reflist|2}}