XBMC

XBMC Media Center is an award-winning free and open source cross-platform software media player and entertainment hub for digital media for HTPCs (Home theater PCs). It uses a 10-foot user interface designed to be a media player for the living-room, using a remote control as the primary input device. Its graphical user interface (GUI) allows the user to easily browse and view videos, photos, podcasts, and music from a harddrive, optical disc, local network, and the internet using only a few buttons. The XBMC project is managed by the non-profit XBMC Foundation, and developed by volunteers located around the world. Since its creation in 2003 more than 60 software developers have contributed to XBMC, and 100-plus translators have worked to expand its reach, making it available in more than 60 languages.

XBMC was originally created as a media center application for the first-generation Xbox game console (no longer supported) but is now officially available as a native application for Android, Linux, Mac OS X, iOS (iDevices and Apple TV 2), and Windows operating systems, running on most common processor architectures.

Video demos
Check out this excellent introduction video by Lifehacker.com:


 * Additional video demos
 * XBMC beginners guide - an introduction and tour by XBMC.org forum user fredphoesh

Overview of features
For additional information about specific add-ons, see Category:All add-ons.

Language support
XBMC includes full support for many different languages by default. XBMC's structure is such that if the language is not available, or not up-to-date, it can be made by signing up at XBMC Main Translation Project (Frodo), Currently the existing supported languages are Afrikaans, Basque, Brazilian Portuguese, Bulgarian, Catalan, Simplified Chinese, Traditional Chinese, Croatian, Czech, Danish, Dutch, English, American English, Esperanto, Finnish, French, German, Greek, Hebrew, Hungarian, Icelandic, Indonesian, Italian, Japanese, Korean, Maltese, Norwegian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Mexican Spanish, Swedish, Thai, Turkish and Ukrainian.

Official Team-XBMC ports of XBMC
Through the processing power of modern computer hardware (by CPU or by hardware video decoding), XBMC is able to decode high-definition video up to and beyond 1080p resolutions, bypassing hardware limitations of the original (now discontinued) Xbox version of XBMC.

However in the latest official release of XBMC there is hardware accelerated video decoding for DXVA, VDPAU, VAAPI, VDA, and VTB GPU hardware video decoding, as well as hardware accelerated video decoding via ARM NEON, OpenMAX, and Broadcom Crystal HD.


 * XBMCbuntu
 * XBMCbuntu is a free Ubuntu-based Linux distribution with XBMC for Linux already installed and pre-configured, providing a complete packaged media center software suite for all IA-32/x86-based personal computers. XBMC Live uses XBMC Media Center for all media playback and is implemented as a bootable Live CD primarily designed for bare-metal installations to achieve instant on type boot. As of version 11.0 (Eden) XBMCbuntu will be based on Lubuntu instead of Ubuntu Desktop, (this is because Lubuntu is "lighter, less resource hungry and more energy-efficient" than the standard Ubuntu distribution).


 * XBMC for Android
 * XBMC for Android is a full port of the complete XBMC application to Google's Android operating-system, was first announced and its source code released publicly on 13 June 2012. This is a full port of XBMC's C++ and C source code with all its dependencies to Android with a build-system that was designed to handle multiple processor architectures, like ARM, MIPS, and x86 with the Android NDK (Native Development Kit for Android) without using a single line of Java, and the XBMC.APK is running natively under Android as a Native Activity application. Hardware accelerated video decoding on Android is currently only officially available for Amlogic AML8726-M SoC based devices, such as Pivos XIOS DS Media Play which have been used as the reference hardware platform during the development so far. XBMC source code for Android must be compiled with CrystaX's unofficial fork of the Android NDK which includes additional Glibc (GNU libc) features like wide character, off_t, C++ exception handling, and more, which XBMC for Android code currently requires to compile correctly but is not supported by Google's Android NDK. This is also the real reason why XBMC for Android does not support Google TV, since the Android NDK is yet not available for the Google TV it means that XBMC can not be compiled for it today.


 * XBMC for iOS
 * XBMC for iOS, which is a full port of XBMC to Apple's iOS operating-system, was first announced and released publicly on 20 January 2011. It supports both 720p and 1080p hardware accelerated video decoding of H.264 videos, and is compatible several Apple's iDevice's and Apple TVs (black) that uses Apple A4 or higher SoC processors with a jailbroken iOS operating-system.


 * XBMC for Linux
 * XBMC for Linux is primarily developed for Ubuntu Linux. Third-party packages for most other Linux distributions are however available, and it is also possible to compile XBMC Media Center from scratch for any Linux distribution as long as the pre-required dependency libraries are installed first. Hardware video decoding is achieved via the VDPAU API on Nvidia's GPUs, and via the VAAPI API for AMD/ATI Radeon, S3 Graphics, and Intel's newer Integrated Graphics Processors, as well as hardware accelerated video decoding via OpenMAX, ARM NEON, and Broadcom Crystal HD on systems with supporting hardware.


 * XBMC for Mac
 * XBMC for Mac runs natively on Mac OS X, as well as on the Apple TV 1. 1080p playback can be achieved on Apple computers either via software decoding on the CPU if it is powerful enough, or by hardware accelerated video decoding via Apple's VDA API or Broadcom Crystal HD.


 * 1080p playback on the first-generation Apple TV (a.k.a. "ATV1") can only be achieved by hardware accelerated video decoding via Broadcom Crystal HD, the user must replace the ATV's internal WiFi adapter with a Broadcom Crystal HD PCI Express Mini (mini-PCIe) card in order to activate this functionality.


 * XBMC for Windows
 * XBMC for Windows runs natively on Windows XP, Windows Vista, and Windows 7, it is a 32-bit application but runs on 64-bit Windows and hardware as well, however it is not yet optimized for that architecture so there is no performance gain when running on 64-bit Windows. 1080p playback can be achieved on Windows based computers either via software decoding on the CPU if it's powerful enough, or by hardware accelerated video decoding.


 * Hardware video decoding via DirectX Video Acceleration is now supported although this enhancement currently only runs on Windows Vista and Windows 7 since it utilizes the DXVA 2.0 API which is not supported in Windows XP.

Awards


XBMC won two SourceForge 2006 Community Choice Awards. In the 2007 Community Choice Awards, XBMC was nominated finalist in six categories. Also in the 2008 Community Choice Awards XBMC won an award for Best Project for Gamers.

Programming and developing
XBMC is a non-profit and free software community driven open-source software project that is developed only by volunteers in their spare time without any monetary gain. The team of developers leading the development of XBMC, "Team-XBMC", encourage anyone and everyone to submit their own source code patches for new features and functions, improve existing ones, or fix bugs to the XBMC project.

XBMC's source code for all its supported platforms is made publicly available by Team XBMC under the open source GNU General Public License Version 2 license. The group currently maintains a Git repository for this source code.