Kodi

From Official Kodi Wiki
Revision as of 14:55, 12 February 2012 by 85.226.32.25 (talk)
Jump to navigation Jump to search

Template:Overlinked Template:Use dmy dates

XBMC Media Center
File:XBMC logo.svg
Xbmc 911.png
XBMC Media Center Home Screen
Developer(s) Team XBMC
Initial release 2003
Development status Active
Written in C++ core, with Python scripts as addons (plugins) from third-party developers
OS Linux, BSD, Mac OS X, Apple TV OS, Windows, iOS, (and MeeGo support is in development)
Platform ARM, PPC (PowerPC), x86 / IA-32, and x86-64, (and MIPS architecture support is in development[1])
Available in International (40+ languages to date)
Type Media Center, Media Player, Digital media receiver
License GNU GPL (GPLv2 or later)
Website xbmc.org

XBMC Media Center (formerly Xbox Media Center) is a free and open source cross-platform digital media hub and HTPC (Home theater PC) software with a 10-foot user interface designed to be a media player for the living-room TV using only a remote control as the input device. Its graphical user interface (GUI) allows the user to easily browse and viewe video, photos, podcasts, and music from a harddrive, optical disc, local network, and the internet using only a few buttons.[2][3][4][5] The XBMC project is managed by the non-profit technology consortium XBMC Foundation.[6][7][8]

It is a popular alternative to Microsoft's Windows Media Center and Apple's Front Row for HTPC use.[9][10][11][12][13][14] Similar to competing software like MediaPortal and MythTV, it has a skinnable as well as user-configurable interface and plugin support.[15][16][17] The latest stable release of XBMC also have an integrated digital distribution platform 'app store' / 'app market' called "Addons Manager" that has a growing list of community driven addon plugins for online content like YouTube, Hulu, Netflix, Grooveshark, Pandora Radio, as well and themes (skins) and more available from a common official repository, while still enabling third-party developers to also host their own unofficial repositories for addon plugins that any user can choose to add themselves if they like.[18][19][20][21]

XBMC was originally created as a media center application for the first-generation Xbox game console[3][4][22] but is now, since 2010, officially available as a native application for Linux, Mac OS X (Snow Leopard, Leopard, Tiger), iOS (iDevices that are jailbroken), Apple TV, and Microsoft Windows operating systems, running on most common processor architectures.[23] Also available is a bootable Live CD and Live USB standalone version referred to as "XBMC Live" which is made for easy setup on bare-metal installations and to be used for interactive demonstrations.[24][25][26]

In addition, as a leader in niche market of media center software, the source code from XBMC is used as an open platform application framework and technological convergence platform for others projects to base their Smart TV entertainment system, set-top boxes, interactive television for hotels, or home media center software on for over-the-top content use and more, and today at least Boxee, MediaPortal, Plex, 9x9 Player, and Voddler are separate derivative products that are all openly known to initially have forked the GUI engine and media player core parts of their software from XBMC's source code. While still using their own brand and customized interface, a few like Boxee and 9x9 Player, are also affiliate marketing their software/devices as "Designed for XBMC" and "Powered by XBMC" with official XBMC logo by certified approval from the XBMC Foundation and the Team-XBMC developers.[2][13][27][28][29]

Overview

XBMC (which has officially been rebranded to simply "XBMC" from its previous old name; "Xbox Media Center") supports most common audio, video, and image formats, playlists, audio visualizations, slideshows, weather forecasts reporting, and third-party plugins. It is network-capable (internet and LAN shares). Unlike proprietary media center applications like Windows Media Center from Microsoft, or other free-software media center applications such as MediaPortal and MythTV, XBMC Media Center does not yet include native Live TV or DVR/PVR recording functionality, nor an EPG TV-Guide interface of its own, it does however offer the possibility to integrate such functionality through third-party plugins[2][13][16][23] and an official native unified DVR/PVR frontend with EPG which via a common API will support multiple backends via PVR client addons is under development, with experimental builds already available.[30]

Through its plugin system, which is based on the Python programming language, XBMC is expandable via add-ons that include features such as television program guides, YouTube, Hulu, Netflix, Veoh, online movie trailer support, and Pandora Radio and Podcast streaming. XBMC also functions as a gaming platform by allowing users to play mini-games developed with Python, on any operating system.[2][13][23][31][32][33]

XBMC source code is distributed as open source under GPL (GNU General Public License),[23] it is sponsored via the tax-exempt registered non-profit organization, XBMC Foundation, and is developed by a global free software community of volunteering people working on XBMC for free in their spare time without being motivated by financial or material gain.[32][33][34][35][36][37][38][39]

Even though the original XBMC project no longer develops or supports XBMC for the Xbox, XBMC on the Xbox is still available via the third-party developer spin-off project "XBMC4Xbox", who forked the Xbox version of the software have completely taken over the development and support of XBMC for the old Xbox. The ending of Xbox support by the original project is also the reason that it has officially been renamed to simply "XBMC" from the old from "Xbox Media Center" name.[40][41][42][43] The Xbox version of XBMC also had the ability to launch console games, and homebrew applications such as emulators. Since the XBMC for Xbox version was never distributed, endorsed, or supported by Microsoft, it meant that XBMC for Xbox always required a modchip or softmod exploit to be able to run on the Xbox game-console.[3][4][22][23]

User interface screenshots from XBMC

All XBMC user interface to date are specifically designed for being controlled from far away with a remote control as the only input device.

Hardware requirements

XBMC has greater basic hardware requirements than traditional 2D style software applications: it needs a 3D capable GPU graphics hardware controller for all rendering. Powerful 3D GPU chips are common today in most modern computers, and even some set-top boxes and XBMC is designed to otherwise be resource efficient. It runs well on what (by Intel Atom standards) are relatively underpowered OpenGL 1.3 (with GLSL support), OpenGL ES 2.0 or Direct3D (DirectX) 9.0 capable systems that are IA-32/x86, x86-64, ARM, or PowerPC (G4 or later) CPU based.[2]

When software decoding of a Full HD 1080p high-definition video is performed by the system CPU, a dual-core 2 GHz or better CPU is required in order to allow for perfectly smooth playback without dropping frames or giving playback a jerky appearance. XBMC can however offload most of the video decoding process onto GPU graphics hardware controller that supports one of the following types of hardware-accelerated video decoding:[44] Intel's VAAPI, Nvidia's VDPAU, AMD's XvBA, Microsoft's DXVA, Apple's VDADecoder/VideoToolBox, OpenMAX, and Broadcom Crystal HD Enhanced Media Accelerator.[45] By taking advantage of such hardware-accelerated video decoding, XBMC can run well on most inexpensive, low-power systems which contain a modern GPU. However, Intel Core CPUs with integrated-GPU (or APUs) are not properly supported yet.

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 editing simple strings in an XML-file, which can then be submitted to XBMC's project management and bug tracking system tool for use by others. 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.[4][46][47]

Features

XBMC's Addons Manager and addons

XBMC features several open APIs to enable third-party developers to create capabilities which extend XBMC with a multitude of addons, such as audio and video streaming plugins for online sources, widget scripts, skins/themes, visualizations, screensavers, web scrapers, weather forecasts, web interfaces, and more. XBMC developers encourages users to make and submit their own addons to add additional media content and value-added services accessible from within XBMC.

XBMC's latest point-release, (codename: "Dharma"), features a new Addons Framework architecture and Addons Manager GUI client that connects to a decentralized digital distribution service platform that serves add-on apps and plug-ins which among other things provide online content to XBMC, the "Addons Manager" (or "Addons Browser") inside XBMC allows users to browse and download new addons directly from XBMC's GUI.

Many of these online content sources are in over-the-top content high definition services and use video streaming sites, such as Adobe Flash based content. XBMC has extensibility and integration with online sources for both free and premium streaming content, and offers content from everything from commercial video, to free educational programming, and media from individuals and small businesses.

Plugins and scripts (apps/gadgets/widgets)

XBMC features a Python Scripts Engine for addon extensions, WindowXML application framework (a XML-based widget toolkit for creating a GUI for apps / widgets) in a similar fashion to Apple Mac OS X Dashboard Widgets and Microsoft Gadgets in Windows Sidebar. Python widget scripts allow normal users to add new functionality to XBMC themselves, using Python scripting language. Current plugin scripts include functions like Internet-TV and movie-trailer browsers, weather forecast and cinemaguides, Over-the-top content video streaming services like YouTube, BBC iPlayer, Hulu, Netflix, Veoh, MLB.tv, Internet-radio-station browsers (example Pandora Radio, Xm radio, Sirius Satellite Radio), online picture sharing sites like Flickr, TV-guides (EPG), e-mail clients, instant messaging, train-timetables, home automation scripts to front-end control PVR software and hardware (like: MediaPortal, MythTV, TiVo, ReplayTV, Dreambox/DBox2), P2P file-sharing downloaders (BitTorrent), IRC, also casual games (sometimes also referred to as mini-games or party-games) such as Tetris, Snake, Space Invaders, Sudoku, and much more.[2][13][31][32][33]

Scrapers (web scraping for metadata)

XBMC has the built-in optional function to automatically download metadata information, cover art and other related media artwork online through its web scrapers that looks for media in the user's audio / video folders and their sub-directories. These "scrapers" are this way used as importers to obtain detailed information from various Internet resources about movies and television shows. It can get synopses, reviews, movie posters, titles, genre classification, and other similar data. XBMC GUI then provide a rich display for audio and video files that the scrapers has identified.

Scrapers use sites like themoviedb.org[48] or imdb.com to obtain thumbnails and information on movies, thetvdb.com for TV show posters and episode plots, CDDB (via freedb and Discogs, etc.) for audio CD track listings, and AMG for album thumbnails.[44]

Skins (themes)

Same as the majority of most applications that originated from a 'homebrew' scene, is skin-ability in the tradition of modifications and customization very popular among XBMC users. "Confluence" and "Project Mayhem" are the two official skins; "Confluence" is the default since version 9.11, and "Project Mayhem" was the previous default which is now in its third version, commonly known as "PM3.HD" (PM III High-Definition).[16]

Users can also create their own skin (or simply modify an existing skin) and share it with others via public websites that are used for XBMC skins trading and development.[2][33][49][50][51][52] Many such third-party skins exist that are well maintained by the community, and while some skins are originals with unique designs, most initially begin as a clones or an exact replica of other multimedia software interfaces, such as DivX Connected, Apple Front Row, Windows Media Center Edition (MCE), MediaPortal, Meedio/MeediOS, HDeeTV, Kaleidescape, Wii Channel Menu (Xii), Xbox 360 Blades (MC360), Xbox 360 New Xbox Experience (Xperience), and others.[15]

The flexibility offered by XBMC skinning-engine is also useful for third-party companies who wish to make derivative work of XBMC as it makes it easy to rebrand the environment or make deeper changes to the look and feel of the user interface.

Web Interfaces

Web Interface addons for XBMC normally allow browsing a media library remotely, to handle music playlists from a computer instead of television. Others allow remotely controlling the navigation of XBMC like a remote for remote controlling of an installed and concurrently-active XBMC session running on a computer if it runs on an internet tablet or similar device with a touch interface. And yet other still acts like a media manager to allow modifying metadata and artwork in XBMC's video and music libraries.

Application launcher

XBMC has a "My Programs" section which is meant to function as an application launcher for third-party software such as computer games and video game emulators, all from a nice GUI with thumbnail and different listings options. However while this feature was fully functioning on the Xbox version of XBMC, it is still in its infant stage on Linux, Mac OS X, and Windows, thus currently requiring third-party launcher plugins to function properly.[22]

Audio, video, and pictures playback and handling

XBMC can play media from CD/DVD media using an internal DVD-ROM drive. It can also play media from an internal built-in hard disk drive and SMB/SAMBA/CIFS shares (Windows File-Sharing), or stream them over ReplayTV DVRs/PVRs, UPnP (Universal Plug and Play) shares, or stream iTunes-shares via DAAP. XBMC can also take advantage of a broadband Internet connection if available to stream Internet-video-streams like YouTube, Hulu, Netflix, and Veoh, and play Internet-radio-stations (such as Pandora Radio). XBMC also includes the option to submit music usage statistics to Last.fm and Libre.fm. It also has music/video-playlist features, picture/image-slideshow functions, an MP3+CDG karaoke function and many audio-visualizations and screensavers. XBMC can in addition upscale/upconvert all standard-definition (480i/480p/576i/576p) resolution videos and output them to 720p, 1080i, and 1080p high-definition resolutions.[2][23][53]

Format support

XBMC can be used to play/view all common multimedia formats through its native clients and parsers. It can decode these audio and video formats in software or hardware, and optionally pass-through AC3/DTS audio, or encode to AC3 in real time from movies directly to S/PDIF digital output to an external audio-amplifier/receiver for decoding.[2][23]

Supported formats:

Video playback in detail

Video Library

The Video Library, one of the XBMC metadata databases, is a key feature of XBMC. It allows the organization of video content by information associated with the video files (e.g. movies and recorded TV Shows) themselves. This information can be obtained in various ways, like through scrapers (i.e. web scraping sites like IMDb, TheMovieDB, TheTVDB, etc.), and nfo files. Automatically downloading and displaying movie posters and fan art backdrops as background wallpapers. The Library Mode view allows users to browse their video content by categories; Genre, Title, Year, Actors and Directors.[2][16]

Video player cores

XBMC uses two different multimedia video player 'cores' for video-playback. The first video-player 'core' for video-playback is an in-house developed cross-platform media player, "DVDPlayer", originally designed to play back DVD-Video movies, and this includes support native for DVD-menus, (based on the free open source libraries code libdvdcss and libdvdnav). This FFmpeg based video-player 'core' today supports all widespread mainstream formats. One relatively unusual feature of this DVD-player core is the capability to on-the-fly pause and play DVD-Video movies that are stored in ISO and IMG DVD-images or DVD-Video (IFO/VOB/BUP) images (even directly from uncompressed RAR and ZIP archives), from either local harddrive storage or network-share storage.[2][13][16]

The second video-player 'core' for video-playback in XBMC is another in-house developed open source player, "DSPlayer", which today is only used as an experimental video player in a Git development branch of XBMC for Windows and not in any other versions of XBMC. This "DSPlayer" is a Direct Show based media player which with the help of FFmpeg can play practically all common media formats and in addition also make XBMC for Windows handle all formats and containers normally supported in Windows with the help of third-party proprietary Direct Show filters installed on the system.[58]

Audio playback in detail

Music Library

The Music Library, one of the XBMC metadata databases, is another key feature of XBMC. It allows the organization of a music collection to allow searching, and creating smart playlists by information stored in music file ID meta tags, like title, artist, album, production year, genre, and popularity. Automatically downloading and displaying album covers and fan art backdrops as background wallpapers.[2][16]

Audio player cores

For music playback, XBMC includes its own in-house developed audio-player, "PAPlayer" (which stands for "Psycho-Acoustic Audio Player"), and this audio-player core's most notable features are on-the-fly resampling of the audio frequency, gapless playback, crossfading, ReplayGain, cue sheet and Ogg Chapter support. The "PAPlayer" audio-player handles a very large variety of audio file-formats, and it also supports most different tagging standards. XBMC also have support for most popular karaoke computer file formats, and is able to play and display timed song lyrics graphics/text from CD+G, LRC, and KAR files.[23]

Digital picture/image display in detail

XBMC handles all common digital picture/image formats with the options of panning/zooming and slideshow with "Ken Burns Effect", with the use of CxImage open source library code. XBMC can also handle CBZ (ZIP) and CBR (RAR) comic book archive files, this feature lets users view/read, browse and zoom the pictures of comics pages these contain without uncompressing them first.[4]

Mobile remote control software associated with XBMC

XBMC Remote for Android is a free and open source official app released by Team-XBMC on the Android Market for Android devices, It also allows for browsing the media library, and allows for remote controlling of an installed and concurrently-active XBMC session running on a computer via the Android's device touchscreen user interface.[59][60][61]

Several third-party developers have also released multiple unofficial XBMC remote control apps for Android, Symbian, Windows Mobile, and Windows Phone devices, as well Apple iOS devices such as iPad, iPod Touch, and iPhone. Some of these remote control apps are made specifically for controlling XBMC, while some universal remote control apps are capable of controlling many different media center and media player applications, and some of these third-party remote apps cost money while others are free.[62][63][64][65][66][67][68]

Official Team-XBMC ports of XBMC

Due to the dated hardware of the first-generation Xbox game console, that XBMC was originally designed for, and a desire to expand the project's end-user and developer-base many official ports of XBMC to computer operating-systems and hardware platforms now exist. Through the processing power of modern computer hardware, XBMC is able to decode high-definition video up to and beyond 1080p resolutions, bypassing hardware limitations of the Xbox version of XBMC.

However in the latest official release of XBMC there is hardware accelerated video decoding for DXVA, VDPAU, VAAPI GPU hardware video decoding, as well as hardware accelerated video decoding via ARM NEON, and OpenMAX, Broadcom Crystal HD.[13][69][70] The source code for XBMC is constantly updated on a daily basis by developers in a public subversion repository, this public subversion repository does therefore always contain more features and function than the most recent 'stable' releases.

XBMC platforms

XBMC Live
Compatible with IA-32/x86 and x86-64 based computers, no prerequisite of an operating-system since this is bundled with XBMC Live.
XBMC for BSD
Compatible with FreeBSD and other similar BSD UNIX derivatives like PC-BSD, for IA-32/x86, x86-64, PowerPC (G4 or later), and ARM-based computers.
XBMC for iOS
Compatible with Apple Inc's iDevices that uses Apple A4 or Apple A5 (ARM-based processor) have a jailbroken iOS operating-system, these devices include the second-generation Apple TV (a.k.a. Apple TV 2), iPhone 4, fourth-generation iPod Touch, the iPad and the iPad 2.
XBMC for Linux
Compatible with IA-32/x86, x86-64, PowerPC (G4 or later), and ARM-based computers or SoC (System-on-a-Chip) with supported Linux operating-systems that has all the required hardware resources and software dependencies installed.
XBMC for Mac
Compatible with PowerPC (G4 or later), IA-32/x86 and x86-64 based Mac computers running Mac OS X (Snow Leopard, Leopard or Tiger), and the Apple TV.
XBMC for Windows
Compatible with Windows XP, Windows Vista, and Windows 7.
XBMC for Xbox
Compatible with the original first-generation Xbox game-console from Microsoft. The Xbox version is no longer a supported platform by Team-XBMC, it had its EOL on 27 May 2010, so see the XBMC4Xbox fork instead.

XBMC Live

XBMC Live 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 well as for interactive demonstrations.[24][25][26][71] As of version 11.0 (Eden) XBMC Live 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).[72]

As a Live CD, the system does not need to be permanently installed to a hard disk drive, as most operating systems would. Instead, the computer can simply be booted with the XBMC Live CD when media playback is desired. This is a reasonable approach for those who do not need media playback services while performing other tasks with the same computer, or for users who wish to repurpose older computers as media center, and for those seeking a free alternative to Windows Media Center, or for those who simply want to try out the XBMC Media Center software for the first time without having to install anything. The Microsoft MCE Remote and IR-receiver dongle for Windows Media Center works with XBMC Live directly out of the box, which mean that Windows Media Center users with these can try out the XBMC Live without requiring any additional hardware.[24][25][26]

Following the principles of Mythbuntu, KnoppMyth, Mythdora, and GeeXboX, XBMC Live is also designed to simplify a permanent installation of XBMC Media Center onto a computer to be used as a dedicated HTPC (Home Theater PC) in the living-room, as such the user can directly install XBMC Media Center from the bootable XBMC Live CD to either a USB flash drive or to an internal hard disk drive as it comes with a complete instant on (Linux based) embedded operating system. When installed onto a USB flash drive or internal hard disk drive, XBMC Live has the ability to save settings and make updates to XBMC Media Center and the operating-system back onto the USB flash drive or hard disk drive that it is installed onto. This is not possible when running XBMC Live off a CD-ROM as they are read-only and any changes to settings are only temporary meaning that they get reset back to defaults once the system is rebooted.[24][25][26]

XBMC for BSD

XBMC for BSD, which is a full port of XBMC to BSD UNIX operating-systems. Compatible with FreeBSD and other similar derivatives like PC-BSD, for IA-32/x86, x86-64, PowerPC (G4 or later), and ARM-based computers, including hardware accelerated video decoding via VDPAU API on Nvidia's GPUs and VAAPI API for AMD/ATI Radeon.[73][74][75][76][77]

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 with all Apple Inc's iDevice's that uses Apple A4 or Apple A5 (ARM-based) processors with a jailbroken iOS operating-system. These iDevices include the second-generation Apple TV (a.k.a. Apple TV 2), iPhone 4, iPhone 4s, fourth-generation iPod Touch, iPad and the iPad 2.[78][79][80][81][82][83][84][85][86]

XBMC for Linux

XBMC for Linux is primarily developed for Ubuntu Linux and XBMC's developers' own "XBMC Live" (Live CD Linux distribution prepackaged with XBMC as a preconfigured media center software appliance operating-system). 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 prerequired dependency libraries are installed first. XBMC for Linux is currently the only stable version of XBMC to support hardware accelerated video decoding, and this 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, Broadcom Crystal HD on systems with supporting hardware.[69][70] Development version of XBMC for Linux is available at Launchpad as PPA (Personal Package Archive) for the standard Ubuntu Desktop version 8.04 and later, as well as DEB packages for Debian.

XBMC for Mac

XBMC for Mac runs natively on Mac OS X (Lion, Snow Leopard, Leopard, Tiger), as well as on the Apple TV. 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 Broadcom Crystal HD.[69][70]

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.[69][70]

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[87][88] is now supported although this enhancement currently only runs on Windows Vista and Windows 7 due to the author's currently using the DXVA 2.0 API which is not supported in Windows XP.[89]

XBMC for Xbox

The 9.04 (codename: Babylon) point-release version of XBMC for Xbox, now obsolete, was released on 6 May 2009 as the last official version of XBMC for Xbox. The original developers of XBMC have since issued a statement said that they will no longer develop or support XBMC for Xbox as part of the XBMC project as of the 27 May 2010. The development of XBMC for Xbox ended because the focus for all Team XBMC developers has completely shifted to the Linux, Mac, and Windows versions of XBMC instead.

Even though the original XBMC project no longer develops or supports XBMC for the Xbox, an XBMC version for the Xbox is still available via the third-party developer spin-off project "XBMC4Xbox", who have completely taken over the development and support of XBMC for the old Xbox.[40][41][42][43]

XBMC for Xbox was never an authorized/signed Microsoft product, therefore a modification of the Xbox is required in order to run XBMC on an Xbox game-console. XBMC for Xbox can be run as an application (like any Xbox game), or as a dashboard that appears directly when the Xbox is turned on.[3][4][22][23] Since XBMC for Xbox was part of an open source software program, its development source code was stored on a publicly accessible subversion repository. Accordingly, unofficial executable builds from the subversion repository are often released by third-parties on sites unaffiliated with the official XBMC project. It should be noted, however, that executable builds from development versions typically contain bugs not present in the most recent 'stable' release versions of XBMC for Xbox.[4][22]

Commercial XBMC Systems

The developers of XBMC state that as long as the GPL licensing of the XBMC software is respected they would love for XBMC to run on as many third-party hardware platforms and operating systems as possible, as "Powered by XBMC" branded devices and systems. With XBMC being pre-installed as a third-party software component that commercial and non-commercial companies and ODM/OEM's can use royalty-free on their own hardware, hardware such as set-top boxes from cable-TV companies, Blu-ray Disc and DVD players, game-consoles, or embedded computers and SoC (System-on-a-Chip) built-in to television sets for web-enabled TVs, and other entertainment devices for the living room entertainment system, home cinema, or similar uses.[90]

Below is a list of third-party companies who sell hardware bundled with XBMC Media Center or XBMC Live pre-install, or sell uninstalled systems that specifically claim to be XBMC-compatible. Many of these third-party companies help submit bug fixes and new features back upstream to the original XBMC project.[90]

AIRIS Telebision

AIRIS Telebision, sold by Telebision in Spain and designed specifically for the Spanish market, is a nettop based on Nvidia Ion chipset, preinstalled Ubuntu base with XBMC for Linux and a customized AEON skin and Spanish plugins. Other than the modified skin, what is unique with the AIRIS Telebision's XBMC build is that it comes with a digital distribution service platform that they call their "App Store" which lets users download new Spanish plugins and updates for existing plugins. Telebision also lets users download a Live CD version of their software as freeware, which lets users install their Telebision distribution on any Nvidia Ion based computer.

BryteWerks Model One Projector

BryteWerks Model One Projector is a 1080p HD digital video projector designed for home cinema use, it has an integrated Home Theater PC running a custom version of XBMC. In addition it features a remote control, as well as a 720p 8.9-inch touch screen panel display on the back of the projector that allows you to control the system. It also have a built-in WiFi and Ethernet adapters, as well as a slot-loaded Blu-ray Disc player, and includes a 500GB Solid State Drive and an additional internal 2TB hard disk drive can be added. [91][92][93][94][95]

Lucida TV II

Lucida TV II, made by LUCIDQ inc, is a nettop based on Nvidia Ion chipset which can be ordered with Xubuntu and XBMC software installed.

Marusys MS630S and MS850S

Marusys MS630S and MS850S are high-definition PVR-ready set-top-boxes with the ability to run Linux-based media players like XBMC, and Marusys is advertising these two devices as compatible with XBMC.[96][97][98]

Myka ION

Myka ION is a fanless Nvidia Ion based set-top device designed to bring internet television and media stored on the home network to the living-room, it comes pre-installed with XBMC Media Center, Boxee, and Hulu Desktop as applications that can be started from the main menu.[99][100][101][102][103][104][105]

Modified Konstructs MK-X1

The MK-X1 by Modified Konstructs is an Nvidia Ion based set-top device based on Acer Aspire Revo that comes pre-loaded with XBMC, and the device has a recommended retail price of $300(US).[106]

Neuros LINK

Neuros LINK made by Neuros Technology is an open Ubuntu-based set-top device and media extender designed to bring internet television and other video to the television, it comes pre-install with XBMC Media Center.[13][107]

Pulse-Eight

Pulse-Eight Limited sells both custom and off the shelf hardware solutions primarily designed for XBMC, such as remote controls, HTPC systems and accessories, including a custom HTPC PVR set-top-box pre-installed with XBMC that they call "PulseBox"[108][109][110][111][112] Pulse-Eight also offers free performance tuned embedded versions of XBMC that they call "Pulse" which is based on OpenELEC and a custom PVR-build of XBMC that is meant to on your dedicated HTPC system.[113][114][115][116]

VeuBox

VeuBox by CaptiveWorks Inc. is an Nvidia Ion based set-top device pre-installed with XBMC Media Center, Hulu Desktop, SopCast, TVUnetworks, and Firefox as applications that can be started from the main menu. The underlying operating-system is Gentoo Linux, and CaptiveWorks is marketing the VeuBox as an open platform.[117][118][119]

Xtreamer Ultra

Xtreamer Ultra, manufactured by the South Korean company Unicorn Information Systems, is a nettop based on Nvidia Ion chipset which came be ordered with OpenELEC and XBMC software pre-installed.[120][121]

Zotac MAG and ZBOX series

Since 10 September 2010, ZOTAC is shipping a software bundle that they call "ZOTAC Boost XL" with all their new motherboards and Mini-PCs, such as Zotac's "ZBOX" and "MAG" series of Nettops which Zotac also does demos of with XBMC.[122][123] This "ZOTAC Boost XL" software bundle consist of the software applications; Auslogics BoostSpeed, Cooliris, Kylo (HDTV-optimized Web Browser), and XBMC Media Center.[124][125]

Zotac's "ZBOX" and "MAG" series of small Mini-PCs are nettop's based on Intel, AMD, or Nvidia graphics, and they are all sold in both as complete ready-to-use computer and as barebone computers (without memory and hard drive). Zotac Zbox ID33, ID34, ID81, ID80 and AD04 are all specifically marketed towards the HTPC market, with some coming with slot-loading Blu-ray Disc optical disc drive, and some with a remote control.[126][127][128]

Third-party forks and derivative work of XBMC

XBMC Media Center source code have over the years become a popular software to fork and use as an application framework platform for others to base their own media center software on, as if XBMC were a GUI toolkit, windowing system, or window manager. Today at least Boxee, MediaPortal, Plex, 9x9 Player, and Voddler are separate derivative products that are all openly known to initially have forked the GUI (Graphical User Interface) and media player part of their software from XBMC's source code. Most of these third-party forks and derivative work of XBMC is said to still assist with submitting bug fixes upstream and sometimes help getting new features backported to the original XBMC project so that others can utilize it as well, shared from one main source.[2][29]

During the period from late 2010 and first half of 2011 different independent third-party developers also announced their development on ports of XBMC to MeeGo,[129][130][131][132][133][134][135][136][137][136][138][137][138][139][139] OtherOS (for Cell microprocessor),[140] Broadcom BCM2835 SoC based devices (like Raspberry Pi[141]),[142][143][144] as well as to Networked Media Tank[145] and other Sigma Designs (MIPS architecture) based SoC devices.[146][147][148][149][150]

9x9 Player for 9x9CloudTV

9x9 Player (by Santa Clara, CA based 9x9Network) is an open source software media player client for 9x9Network's 9x9CloudTV peer-to-peer TV delivery network over internet. The frontend of this media player client uses XBMC's source code as its application framework platform,[151] and 9x9Network as a company is also an official sponsor of the XBMC development project.[152][153]

Boxee

Boxee, (produced by startup company Boxee Inc.), is a freeware and partially open source software cross-platform media center and entertainment hub with social networking features that is a commercial fork of XBMC software.[154][155][156] Boxee now supports Windows, Linux, and OSX, with the first Alpha made available on 16 June 2008. Boxee as a company is also an official sponsor of the XBMC development project.[2][29][157][158][159][160][161][162] The last version was 1.5. There will be no more versions of the desktop versions, with new emphasis on the Boxee Box.[163]

GeeXboX

GeeXboX is a free and open source Live USB/Live CD based Linux distribution providing a HTPC software suite for personal computers and ARM-devices that since version 2.0 comes with a pre-configured version of XBMC media center as its media player and GUI.[164][165]

iConsole

iConsole (formerly known under the project codename "Full Circle"), produced by startup company MechaWorks, is a freeware and partially open source media center and entertainment hub with video game console features that is initially a fork of XBMC and Boxee software.[166][167][168][169][170][171] The first public Alpha release will be as a Linux based distribution, primarily designed to be installed on a computer's empty harddive to make a computer in to a dedicated HTPC, similar to that of the XBMC Live distro but specifically targeted to a minimum set-top box hardware setup.[166][168][170][171][172]

MediaPortal

MediaPortal is free and open source software media center written for Microsoft Windows that is initially based on forked XBMC source code by Erwin Beckers (a.k.a. Frodo, who was also one of the original founders of XBMC) in February 2004. The reason for this fork to Microsoft Windows was to get away from hardware and software platform limitations of the Xbox game-console platform that XBMC development started on, mainly because of the Xbox inability to support TV-tuner adapters natively as Erwin wanted PVR functionality. Now after several years and innumerable feature changes there has been almost a complete re-design of the source code, however the skinning engine of MediaPortal 1.X.X still remains very similar to that of the original XBMC software making it relatively easy for people to port skins/themes back and forth between the two projects, something that is done quite frequently.[2][29][173]

Plex

On 21 May 2008, XBMC developer Elan Feingold forked the source code of XBMC and started a new project called Plex, (previously this Mac OS X port of XBMC was informally known as the "OSXBMC" project). Feingold said that he would still try to collaborate with most Team-XBMC members behind the scenes and at least try to keep Plex skinning engine compatible with XBMC skins.[2][28][29][174][175] While Plex began as a free software hobby project, since 2010 it is commercial software (freeware) that is today owned and developed by a single for-profit startup company, Plex, Inc., and today parts of what Plex offers is closed source proprietary software. The Linux, Macintosh, and Windows servers and clients are free, and offer their Android and iOS clients for a small one-time charge.[176][177][178]

Feingold was the Team-XBMC member who first initiated the Mac OS X port of XBMC, but soon after he left the original XBMC project due to what was arguably a falling-out with rest of Team-XBMC's developer members over the team's majorities feeling that the XBMC project should aim for strict adherence to the GPL and always keep to an open-source software mindset. This disagreement is claimed to be one of the main factors that led Elan to leave the XBMC project and create the Plex fork.[29][174][179][180][181][182]

XBMC4STB project by Vu+

Vu+ (or VUplus), is produced by a Korean multimedia vendor, which is a manufacturer of Linux-powered DVB satellite, terrestrial digital television receivers (set-top box) that all currently uses Enigma2 for Dreambox based software as firmware.

In September 2011 Vu+ Day in Amsterdam it was announced that the next-generation Vu+ DVB satellite receivers to be released publicly in the end of 2012 will be using XBMC Media Center software for its GUI, a development project that they call "XBMC4STB" (XBMC for Set-Top-Boxes), with beta releases of both the software and hardware said to be made available to XBMC developers before then .[183]

Voddler

Voddler is a commercial video-on-demand service and client software streaming movies and television programming, similar to Spotify and Grooveshark but for video. From its first release at 1 July 2009 up until 24 February 2010, Voddler's media player software was initially based on a fork of the XBMC open source code.[27][29][184][185][186][187] Voddler violated the license for XBMC's source code by neglecting to release all of their modifications that they used in their application as required per the GPL, and they have been publicly criticized for this.[188][189][190][191][192][193][194][195][196] Voddler's newer media player software is since 8 March 2010 now instead based on the Adobe Air closed-source application platform.

ONEvision by at-visions

ONEvision by at-visions Informationstechnologie GmbH, (an international system integration and IT soutsourcing firm for hotels), ONEvision is a commercial fork of XBMC for use as hotel television system software in hotel environments and in the hospitality industry for in-room entertainment. It offers a platform for in-room service bookings and an IPTV interface, with custom theme branding. ONEvision is currently used throughout Europe and Asia at hotels such as Hyatt EMEA, Ramada Vienna, RIMC International, DWA Bratanki, Rogner International, EH&A, Heritage Hotel Hallstatt, St. Martins Therme, and Heiltherme Bad Waltersdorf. Template:As of, at-visions as a company is also an official sponsor of the XBMC development project.[197][198][199][200][201]

OpenELEC

OpenELEC (short for "Open Embedded Linux Entertainment Center") is a free and open source embedded operating system providing a complete media center software suite that comes with a pre-configured version of XBMC and third-party addons with retro video game console emulators and PVR plugins. OpenELEC is an extremely small and very fast booting Linux based distribution, primarily designed to be booted from flash memory card such as CompactFlash or a solid-state drive, similar to that of the XBMC Live distro but specifically targeted to a minimum set-top box hardware setup based on an Intel x86 processor and graphics.[202][203][204][205][206][207][120][121]

Element OS

Element OS is a free embedded operating system designed for use on a Home Theater PC (HTPC) which is connected to a HDTV. Element OS is a Linux based distribution similar to that of the XBMC Live distro, however it comes preloaded with dozens of applications for listening to, viewing, and managing music, videos, photos, and internet media. XBMC is the pre-installed default media center, but Boxee and Hulu Desktop are also installable.[208]

Sabayon Linux

Sabayon Linux is a full Linux distribution that among other applications comes with a preinstalled and preconfigured "ready-to-use" version of XBMC Media Center.[209]

yaVDR

yaVDR (which name originated from the abbreviation "yet another VDR") is an Ubuntu-based Linux (i386) distribution designed for Home Theater PC (HTPC) with TV tuner card for DVR (Digital Video Recorder) capabilities. yaVDR comes preinstalled and preconfigured "ready-to-use" version of XBMC Media Center from the "PVR" Subversion development branch as its primary front-end media player interface, with VDR (Video Disk Recorder) integrated as its PVR back-end server. It also features xine as an alternative front-end media player interface to XBMC.[210][211]

XBMC4XBox

XBMC4Xbox is a third-party developer spin-off project of XBMC, with still active development and support of the Xbox platform. This project was created as a fork of XBMC as a separate project to continue having a version of XBMC for the Xbox hardware platform. It was not started by official members of the official XBMC project, nor will it be suppoted by the Official Team XBMC in any way. It started when support for the Xbox branch was officially dropped by Team XBMC, which was announced on 27 May 2010.[40][41][42][43]

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.

The online user manual and is wiki-based and community driven, and it also works as a basic developers guide for getting a good overview of XBMC's architecture, however to as with most non-profit software project, to delve deeper into programming, looking at the actual source code and the comments in that code is needed.[4]

Architecture

XBMC Architecture Overview Schematic.

XBMC is a cross-platform software application programmed mainly in C++, XBMC partially uses SDL (Simple DirectMedia Layer) multimedia framework and OpenGL graphics rendering under XBMC for Linux and Mac OS X, while XBMC for Windows based uses Microsoft DirectX multimedia framework and Direct3D rendering, as did the Xbox version of XBMC. Some of XBMC's own libraries as well as many third-party libraries that XBMC depend on are also written in C programming-language, but are then most of the time used with a C++ wrapper or loaded via XBMC's own DLL loader.[13][44]

Because of XBMC's origin with the constraints on the hardware and environment of the old Xbox platform, all software development of XBMC has always been focused on reserving the limited resources that existed on the Xbox hardware and an embedded system, (which was only a 733 MHz Intel Pentium III and 64MB of RAM in total as shared memory), the main hindrance of which has been the amount of available system RAM and graphics memory at any one time. Due to this it means that XBMC is programmed to be very resource efficient and can therefore run on very low-end and cheap hardware, especially when compared to other media center software design for HTPC use.[4]

But because of its origins from the Xbox game-console, XBMC's graphics renderer runs in a game-loop environment rather than using event-driven and on-demand rendering, meaning that it is constantly re-drawing the GUI even when nothing is changing on-screen. This results in very high CPU and high GPU usage, which can easily be observed on low-end machines, and hence high temperatures, fan activity and high power consumption. Work is however ongoing to make XBMC run using much less resources on embedded systems, which will indirectly benefit non-embedded systems as well.

Portability

While it is true that XBMC has a very portable code base, with its trunk (or mainline source code tree) is today officially only available for IA-32/x86, x86-64, PowerPC (G4 or later), and ARM-based processor architecture platforms,[212][213] and XBMC GUI requires a Direct3D, OpenGL, OpenGL ES, EGL, or DirectFB[214] with hardware accelerated graphics GPU and device drivers that support DirectX 9, GLES 2.0, or OpenGL 1.3 or later with GLSL in order to render the GUI at an acceptable frame rate to the human eye (which is 24 frames per second or faster). XBMC is thus officially not yet available for the MIPS processor architecture,[215] nor does it as of yet support DRI (Direct Rendering Infrastructure) or DirectFB rendering without OpenGL/GLES hardware accelerated graphics support,[44][214][216] even though MIPS, DirectFB, and DRI is the most popular processor architecture and DRI rendering technologies used today by modern stand-alone digital media players, such as those based on Sigma Designs and Realtek chipsets.[217] An XBMC port to MIPS processor architecture is however currently being worked on by the XBMC development team.[215]

Python scripts as plugins and addons (widgets/gadgets)

XBMC features an embedded Python Scripts Engine (currently based on Python version 2.4) and its own WindowXML application framework, which together form an XML-based widget toolkit for which can extend the capability of XBMC by creating a GUI for widgets in a similar fashion to Apple Mac OS X Dashboard Widgets and Microsoft Gadgets in Windows Sidebar. Python widget scripts allow non-developers to themselves create new add-ons functionality to XBMC, (using the easy to learn Python high-level scripting language), without knowledge of the complex C/C++ programming language that the rest of the XBMC software is written in. Current plugin scripts add-ons include functions like Internet-TV and movie-trailer browsers, cinema guides, and over-the-top content video streaming services like YouTube, Hulu, Netflix, Veoh, and Internet-radio-station browsers (example Pandora Radio), and much more.[13]

API (Application Programming Interface)

Other than the APIs (Application programming interfaces) available to python scripts and addon plugins, XBMC features several other APIs for controlling XBMC remotely or from an external applications. These APIs includes a JSON-RPC server, D-Bus server, HTTP Web API (HTTPAPI), Web server, UPnP AV media server (with UPnP MediaServer ControlPoint, UPnP MediaRenderer DCP, UPnP RenderingControl DCP, and UPnP Remote User Interface server), and a multi-protocol Event Server[57] for remote controls.

GUI-engine and skinning (themes)

XBMC is noted as having a very flexible GUI toolkit and robust framework for its GUI, with its underlying complex graphical design and layout library (named "libGUI" in XBMC) it provides a simple abstraction layer between the application code and the interface, while allowing an extremely flexible dynamic layouts and animations that is easy to work with and make it possible to create completely unique skins for XBMC.[2][15][16][33][49][50][51][52]

Skin example code in XAML

The skin files are written in XAML, using a standard XML base, making theme-skinning and personal customization very accessible.[2][15][16][33][49][50][51][52]

Current Software Limitations

This is a list of software limitations currently in the XBMC source code.

Reception

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

History

XBMC Media Center is the successor to the popular Xbox Media Player (XBMP) software. Xbox Media Player development stopped on 13 December 2003, by which time its successor, XBMC, was ready for its debut, renamed as it was growing out of its 'player' name and into a 'center' for media playback. The first stable release of XBMC was on 29 June 2004, with the official release of XboxMediaCenter 1.0.0. This announcement also encouraged everyone using XBMP or XBMC Beta release to update, as all support for those previous versions would be dropped, and they would only officially support version 1.0.0. Not featured in XBMP, the addition of embedded Python was given the ability to draw interface elements in the GUI, and allowed user and community generated scripts to be executed within the XBMC environment.[4]

With the release of 1.0.0 in the middle of 2004, work continued on the XBMC project to add more features, such as support for iTunes features like DAAP and Smart Playlists, as well as lots of improvements and fixes. The second stable release of XBMC, 1.1.0, was released on 18 October 2004. This release included support for more media types, file types, container formats, as well as video playback of Nullsoft streaming videos and karaoke support (CD-G).[4]

After two years of heavy development, XBMC announced a stable point final release of XBMC 2.0.0 on 29 September 2006. Even more features were packed into the new version with the addition of RAR and zip archive support, a brand new player interface with support for multiple players. Such players include PAPlayer, the new audio/music player with crossfade, gapless playback and ReplayGain support, and the new DVDPlayer with support for menu and navigation support as well as ISO/img image parsing. Prior to this point release, XBMC just used a modified fork of MPlayer for all of its media needs, so this was a big step forward. Support for iTunes 6.x DAAP, and Upnp Clients for streaming was also added. A reworked Skinning Engine was included in this release to provide a more powerful way to change the appearance of XBMC. The last two features include read-only support for FAT12/16/32 formatted USB Mass Storage devices, and a "skinnable" 3D visualizer.

The release of XBMC 2.0.1 on 12 November 2006 contained numerous fixes for bugs that made it through the 2.0.0 release. This also marked the change from CVS to SVN (Subversion) for the development tree.

On 29 May 2007, the team behind XBMC put out a call for developers interested in porting XBMC to the Linux operating system. Since a few developers on Team-XBMC had already begun porting parts of XBMC over to Linux using SDL and OpenGL as a replacement for DirectX, which XBMC was using heavily on the Xbox version of XBMC.[158][159][223][224]

Development on the SVN codebase is continuing and the versioning scheme has been changed to reflect the release year and month, i.e. 8.10, 9.04, 9.11, 10.05, etc.

On 27 May 2010, the team behind XBMC announced the splitting of the Xbox branch into a new project; "XBMC4Xbox" which will continue the development and support of XBMC for the old Xbox hardware platform as a separate project, with the original XBMC project no longer offering any support for the Xbox.[40][41][42][43]

Releases

Color Meaning
Red Old releases
Green Current release
Blue Future releases
Version Release date Codename Significant changes XBMC Live based on
1.0.0 29 June 2004 N/A
1.1.0 18 October 2004
  • ITU H.261, creative labs yuv (cyuv), supermac cinepak (cvid), quicktime, on2 vp4, 3ivx d4 / 3vi1 mpeg-4 video support
  • Container support for nsa, raw audio in .mov, .ac3, .dts and dts-wav
  • Zoom/stretch options: zoom, stretch 4x3 or 14x9 or 16x9, original size, custom
  • Volume control
  • Tags parsing and display for wma, m4a, mp4 and aac (mpeg-4 audio) audio-files
  • International-language fonts for subtitles via ttf-fonts
  • Audio CD Ripper, backup cdda's to hdd in wav, ogg or mp3 (lame) format
  • Karaoke cdg-file and audio cue sheets (.cue) support
  • iIunes music shares via DAAP (network stream from Apple iTunes)
  • XBMC's xbmsp-client code updated to support "auto-discovery of xbmsp servers"
  • Auto-temperature and fan-speed control options
  • Network-configuration and setup via GUI
  • Emergency recovery console (enables the ftp-server during fatal errors)
  • Profiles for settings
  • Mouse support and virtual-keyboard
  • LCD-display output extended to also support xaddons lcd-mods and xecuter3 lcd
N/A
2.0.0 29 September 2006
  • Reworked skinning engine.
  • DVD-Video menu/navigation support (with ISO/IMG image parsing) through internally developed core
  • RAR/ZIP archive parsing
  • New audio/music-player (PAPlayer) with crossfade, gapless playback and ReplayGain support
  • Karaoke CDG-file display
  • Xored Trainer Engine (gaming-cheats) (not ported from Xbox)
  • XLink Kai (online-gaming) front-end (depreciated)
  • Added iTunes 6.x DAAP and UPnP-client
  • Read-only support for FAT12/16/32 formatted USB Mass Storage Devices up to 4GB in size
  • Brand new "skinnable" 3D visualizer.
N/A
8.10 15 November 2008 Atlantis
  • Cross platform support adding support for Linux, Mac OS X, and Windows
  • Brand new High Definition skin “PM3.HD”
  • "XBMC Live" bootable CD with unified hard disk/USB flash disk installer
  • The XBMC profile
  • Integration of iTunes and iPhoto media (OS X exclusive).
Ubuntu 8.10 (Intrepid Ibex)
9.04 6 May 2009 Babylon
  • PPC (PowerPC) support for Mac OS X (PowerPC G4 or later)
  • VDPAU (Nvidia's Video Decode and Presentation API for Unix)
  • New Karaoke features
  • Officially dropped support for Xbox
  • Updated codecs and major bug-fixes for DVD-Video playback core
  • More Media Info Scrapers
  • Improved FanArt support
  • Revamped skinning engine
Ubuntu 9.04 (Jaunty Jackalope)
9.11 24 December 2009 Camelot
  • Revamped user interface via the new default skin “Confluence“
  • DirectX support by default for the Windows platform
  • A complete reorganization of the settings menus uniformed across skins
  • Automatic video information extraction
  • Out of the box support for new remotes
  • Smoother video playback performance
  • All scrapers updated
  • Increased subtitle and Karaoke lyric support
  • Support for CoreAudio API (OS X exclusive)
  • AC3 and DTS digital audio pass-through to SP/DIF on Apple TV (thanks to CoreAudio)
Ubuntu 9.10 (Karmic Koala)
10.0 and 10.1 18 December 2010 Dharma
  • Unified Addon framework
  • Addon Browser GUI for installation and management of third-party addons, skin, and scripts
  • Team XBMC's official Addons Repository with Addon FanArt support
  • Update Notifications
  • Movie Sets (option to group movie collections)
  • WebM/VP8 codec
  • Gesture support to XBMC's GUI Engine
  • Unencrypted Blu-ray Disc support
  • Broadcom Crystal HD video acceleration support (All Platforms)
  • Windows Touch API support (Windows 7 touch features and functions)
  • DXVA 2.0 (DirectX Video Acceleration) (Windows Vista/7 exclusive)
  • WASAPI (Windows Audio Session API) for raw bitstream output (Windows Vista/7 exclusive)
  • High-Quality Bicubic and Lanczos Upscalers (Video Resamplers) as Direct3D HLSL (Windows Vista/7 exclusive) and OpenGL GLSL Shaders
  • Direct3D port of the OpenGL Spectrum 3D Audio Visualization for DirectX (Windows Vista/7 exclusive)
  • AVisual Studio 2010 Express edition and Visual Studio 2010 non-Express edition support (Windows Vista/7 exclusive)
  • ARM processor architecture (Linux exclusive)
  • VAAPI (Video Acceleration API) support (Linux exclusive)
  • OpenMAX Video Acceleration support (Linux exclusive)
  • NEON (ARM) Video Acceleration support (Linux exclusive)
  • Apple VDADecoder Video Acceleration support (OS X exclusive requires Snow Leopard and NVIDIA 9400 or later)
  • OpenGL ES 2.0 compliance
  • JSON-RPC, JSON API
  • RTMPE and RTMPTE
  • Microhttpd Web Server replaces old GoAhead and Spyce code
  • SSH file transfer protocol (sftp) via libssh
  • MySQL database backend
Ubuntu 10.04 (Lucid Lynx)
11.0 Release Target Date: 2011 Eden
  • iOS port for Apple TV 2G, iPhone, iPod Touch, and iPad
  • Dirty Regions rendering for texture support to skinning engine[225]
  • Efficiency improvements to reduce high cpu/gpu usage
  • Default skin changed to a horizontal home layout
  • New RenderCapture type to the Python script framework
  • Combined Files and Library mode for videos
  • Playback of ISO image files for Blu-ray Disc support
  • Slingbox playback over the network support
  • Peripheral manager controller under settings
  • Consumer Electronics Control (CEC) support for HDMI
  • Improved Apple VDADecoder Video Acceleration support
  • Improved Touch / Gesture API and Mouse support
  • Improved ARM processor architecture support
  • Improved OpenMAX Video Decoding Acceleration support
  • Improved OpenGL ES and EGL support
  • Improved JSON-RPC API compliant with JSON-RPC 2.0 specs
  • Improved VDPAU performance
  • VDPAU HQ Upscaling support (require NVIDIA's capable GPU)
  • H.264 accelerated video decoding via Apple's VideoToolBox API
  • JPEG accelerated video decoding via Apple's VideoToolBox API
  • Added basic DRC (Dynamic Range Compression) volume limiter
  • AirPlay/AirTunes target support
  • Extended Addons API adding extension points for Service Addons
  • Ability for all addons to provide their own web interface
  • Removed native weather forecast scraper, use weather addons instead
  • Added support for multiple simultaneous HID device mappings
  • FFmpeg upgraded (libavformat and libavcodec)
Lubuntu 11.10 (Oneiric Ocelot)
12.0 Release Target Date: 2012 Frodo
  • MIPS processor architecture support (Sigma Designs reference)[215]
  • DirectFB via Mesa and DRM for OpenGL ES 2.0 support[214]
  • BSD port FreeBSD, PC-BSD and other similar BSD platforms
  • Unified PVR front-end with seamless DVR and EPG client GUI
  • Unified PVR back-end framework and API for multiple PVR servers
  • New unified "AudioEngine" audio abstraction framework and API
  • Combined Files and Library mode for music
  • Combined Files and Library mode for photos
  • Extend Addons API to support (closed source) binary addons
  • Add WebSocket support for JSON-RPC and to Addons API[226]
  • Optimize the GUI rendering engine of XBMC for embedded devices
  • Add Bluetooth settings to the GUI[227]
  • Add WiFi and network configuration settings to the GUI[228][229]
  • Add MySQL database settings to the GUI[230]
  • Direct Show based video player for Windows operating systems[58]
  • Blu-ray HDMV menu support (but not BD-J / BD-Live menus)[231]
  • Native XvBA accelerated video decoding for AMD/ATI GPUs[45]
  • Upgrade FFmpeg (libavcodec and libavformat) libraries
  • Remove the old HTTP API in favour of the new JSON-RPC API
?

[232][233][234]

Legality

Template:Globalize The "XBMC Foundation", the non-profit organization behind the XBMC project, is legally represented by the SFLC (Software Freedom Law Center), which assists XBMC project and its developers legal matters such as copyright, trademark, and branding questions, as well as economic issues such as handling donations and sponsors that help the project with expenses for dedicated hosting service, and activities such as going to trade fairs and computer expos to tech demo XBMC, meeting with potential new developers, gain publicity to attract additional users, and more.[235][236][237][238]

Copyright

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.

Back when Team XBMC supported it, executable versions of XBMC for Xbox could not be legally distributed. This is because XBMC for Xbox required Microsoft's Xbox Development Kit in order to be compiled. The only publicly available executable versions of XBMC for Xbox were compiled and distributed by third parties. This limitation was given as one of the reasons the group eventually dropped Xbox support from XBMC.[40] XBMC binaries for all other platforms that XBMC supports (Linux, Mac OS X, Windows, and iOS) are legal to distribute by the XBMC project.[3][4][22][23][44]

Other

XBMC can also optionally be compiled with libdvdcss to support playing back DVD-Video movies encrypted using the CSS (Content Scramble System) encryption. Since it is not a member of DVD Forum, the XBMC project is not contractually obliged to insert user operation prohibition such as disallowing fast-forward or skipping during trailers and ads in DVD-Videos. However, without membership in the DVD Forum, the project also cannot make XBMC play DVD-Video's encrypted with CSS (Content Scramble System) except by using the libdvdcss library, which code was created by reverse-engineering. The legal status of libdvdcss is thus questionable in several nations, the distribution of executable versions of XBMC containing which was built with this library is likely to run afoul of the DMCA (Digital Millennium Copyright Act) in the U.S. and the EU Copyright Directive in European Union member countries which have incorporated it into national law. For example, many Linux distributions do not contain libdvdcss (for example Debian, Fedora, SUSE Linux, and Ubuntu) due to fears of running afoul of DMCA-style laws, however they still often provide the tools to let the users install it themselves.[13][44]

See also

Template:Commons category Template:Portal

References

Template:Reflist

External links

Template:Commons category

Template:Home theater PC (application software) Template:FOSS Template:Linux-distro

ca:XBMC de:XBMC Media Center es:Xbox Media Center fr:XBMC Media Center it:Xbox Media Center hu:XBMC nl:XBMC no:Xbox Media Center pl:XBMC ru:XBMC fi:Xbox Media Center sv:XBMC Media Center

  1. Template:Cite web
  2. 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 Template:Cite web
  3. 3.0 3.1 3.2 3.3 3.4 Template:Cite web
  4. 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10 4.11 Template:Cite web
  5. http://xbmcmediacenter.com xbmcmediacenter.com an unofficial fan site for XBMC
  6. Template:Cite web
  7. Template:Cite web
  8. Template:Cite web
  9. Template:Cite web
  10. Template:Cite web
  11. Template:Cite web
  12. 13.00 13.01 13.02 13.03 13.04 13.05 13.06 13.07 13.08 13.09 13.10 Template:Cite web
  13. Template:Cite web
  14. 15.0 15.1 15.2 15.3 Template:Cite web
  15. 16.0 16.1 16.2 16.3 16.4 16.5 16.6 16.7 Template:Cite web
  16. Template:Cite web
  17. Template:Cite web
  18. Template:Cite web
  19. Template:Cite web
  20. Template:Cite web
  21. 22.0 22.1 22.2 22.3 22.4 22.5 http://www.o-sd.com/hardcoregamermag/publicPDF/HGM_Aug.pdf Review of XBMC in Hardcore Gamer Magazine
  22. 23.0 23.1 23.2 23.3 23.4 23.5 23.6 23.7 23.8 23.9 Template:Cite web Cite error: Invalid <ref> tag; name "FLOSS Media Center State of the Art" defined multiple times with different content
  23. 24.0 24.1 24.2 24.3 Template:Cite web
  24. 25.0 25.1 25.2 25.3 Template:Cite web
  25. 26.0 26.1 26.2 26.3 Template:Cite web
  26. 27.0 27.1 Template:Cite web
  27. 28.0 28.1 Template:Cite web
  28. 29.0 29.1 29.2 29.3 29.4 29.5 29.6 Template:Cite web
  29. Template:Cite web
  30. 31.0 31.1 http://code.google.com/p/xbmc-addons/ XBMC-Addons on Google Code (Addon plugins for XBMC)
  31. 32.0 32.1 32.2 http://www.xbmczone.com/ XBMC Zone (third-party Addon extensions for XBMC)
  32. 33.0 33.1 33.2 33.3 33.4 33.5 http://passion-xbmc.org/ Passion XBMC (third-party Addon extensions for XBMC)
  33. Template:Cite web
  34. http://xbmc.nu xbmc.nu – Swedish XBMC fan site and community
  35. http://xbmc.fr xbmc.fr – French XBMC fan site and community
  36. http://xbmc.de xbmc.de – German XBMC fan site and community
  37. http://xbmcfreak.nl xbmcfreak.nl – Dutch XBMC fan site and community
  38. http://xbmcsvn.com xbmcsvn.com – Nightly Unofficial Builds from SVN All Branches
  39. 40.0 40.1 40.2 40.3 40.4 Template:Cite web
  40. 41.0 41.1 41.2 41.3 Template:Cite web
  41. 42.0 42.1 42.2 42.3 Template:Cite web
  42. 43.0 43.1 43.2 43.3 Template:Cite web
  43. 44.0 44.1 44.2 44.3 44.4 44.5 44.6 44.7 Template:Cite web
  44. 45.0 45.1 Template:Cite web
  45. [1]Template:Dead link
  46. https://github.com/xbmc/xbmc/tree/master/language language at master from xbmc / language – GitHub
  47. http://simonpena.com/blog/mswl/butaca-imdb-and-tmdb/ Butaca IMDb, and TMDb
  48. 49.0 49.1 49.2 Template:Cite web
  49. 50.0 50.1 50.2 Template:Cite web
  50. 51.0 51.1 51.2 http://www.teamrazorfish.co.uk MediaStream
  51. 52.0 52.1 52.2 http://blackbolt.x-scene.com Team Blackbolt
  52. Template:Cite web
  53. https://github.com/xbmc/xbmc/commit/ae7b0b54384485e85124bc33c0743ed7cad627a4 add airplay implementation from boxee project
  54. https://github.com/xbmc/xbmc/pull/447 Airtunes support for ios/osx/linux
  55. http://rtmpdump.mplayerhq.hu/ RTMPDump used by XBMC
  56. 57.0 57.1 http://wiki.xbmc.org/index.php?title=EventServer EventServer
  57. 58.0 58.1 https://github.com/xbmc/xbmc/pull/591 DSPlayer directshow based player
  58. Template:Cite web
  59. Template:Cite web
  60. Template:Cite web
  61. Template:Cite web
  62. Template:Cite web
  63. Template:Cite web
  64. Template:Cite web
  65. Template:Cite web
  66. Template:Cite web
  67. Template:Cite web
  68. 69.0 69.1 69.2 69.3 Template:Cite web
  69. 70.0 70.1 70.2 70.3 Template:Cite web
  70. Template:Cite web
  71. Template:Cite web
  72. Template:Cite web
  73. Template:Cite web
  74. Template:Cite web
  75. Template:Cite web
  76. http://www.freebsd.org/cgi/cvsweb.cgi/ports/multimedia/xbmc/ ports/multimedia/xbmc/
  77. Template:Cite web
  78. Template:Cite web
  79. Template:Cite web
  80. Template:Cite web
  81. Template:Cite web
  82. Template:Cite web
  83. Template:Cite web
  84. Template:Cite web
  85. Template:Cite web
  86. Template:Cite web
  87. Template:Cite web
  88. Template:Cite web
  89. 90.0 90.1 http://xbmc.org/about/commercial-use/ Commercial use of XBMC
  90. Template:Cite web
  91. Template:Cite web
  92. Template:Cite web
  93. Template:Cite web
  94. Template:Cite web
  95. Template:Cite web
  96. Template:Cite web
  97. Template:Cite web
  98. Template:Cite web
  99. Myka ION – The Fanless NettopTemplate:Dead link
  100. Template:Cite web
  101. Myka ION Media Center
  102. Template:Cite web Template:Dead link
  103. Template:Cite web
  104. Template:Cite web
  105. Template:Cite web
  106. Template:Cite web
  107. Template:Cite web
  108. Template:Cite web
  109. Template:Cite web
  110. Template:Cite web
  111. Template:Cite web
  112. http://packages.pulse-eight.net Pulse-Eight Packages
  113. http://pulse.pulse-eight.net Pulse by Pulse-Eight
  114. http://blog.pulse-eight.com/ Pulse-Eight Blog
  115. https://github.com/Pulse-Eight Pulse-Eight Public Code Repositories on GitHub
  116. Template:Cite web
  117. Template:Cite web
  118. Template:Cite web
  119. 120.0 120.1 Template:Cite web
  120. 121.0 121.1 http://www.linuxfordevices.com/c/a/News/OpenELEC-and-Xtreamer-Ultra/
  121. Template:Cite web
  122. Template:Cite web
  123. Template:Cite web
  124. Template:Cite web
  125. Template:Cite web
  126. Template:Cite web
  127. Template:Cite web
  128. Template:Cite web
  129. Template:Cite web
  130. Template:Cite web
  131. Template:Cite web
  132. Template:Cite web
  133. Template:Cite web
  134. Template:Cite web
  135. 136.0 136.1 http://wiki.meego.com/MeeGo_Smart_TV_for_Trimslice MeeGo Smart TV for Trimslice
  136. 137.0 137.1 http://www.madeo.co.uk/?p=851 XBMC + MeeGo hardfp on trimslice – nvidia tegra2 (MeeGo TV)
  137. 138.0 138.1 http://www.youtube.com/watch?v=rfhiz_ORbwE XBMC + MeeGo hardfp on trimslice – nvidia tegra2 (MeeGo TV)
  138. 139.0 139.1 https://build.pub.meego.com/package/show?package=xbmc-gles&project=home%3Aarfoll%3Axbmc-testing xbmc-gles
  139. Template:Cite web
  140. Template:Cite web
  141. Template:Cite web
  142. XBMC Live USB PersistentTemplate:Dead link
  143. Template:Cite web
  144. Template:Cite web
  145. Template:Cite web
  146. Template:Cite web
  147. Template:Cite web
  148. http://www.engadget.com/2011/01/05/sigma-designs-announces-direct-xmbc-support-for-wild-next-gen-st/ Home Entertainment Sigma Designs announces direct XBMC support for wild next-gen streamers
  149. Sigma Designs will have direct XBMC support for next-gen streamersTemplate:Dead link
  150. Template:Cite web
  151. Template:Cite web
  152. Template:Cite web
  153. Template:Cite web
  154. Template:Cite web
  155. Template:Cite web
  156. Template:Cite web
  157. 158.0 158.1 Template:Cite web
  158. 159.0 159.1 Template:Cite web
  159. Template:Cite web
  160. Template:Cite web
  161. Template:Cite web
  162. Template:Cite web
  163. Template:Cite web
  164. Template:Cite web
  165. 166.0 166.1 Template:Cite web
  166. Template:Cite web
  167. 168.0 168.1 Template:Cite web
  168. Template:Cite web
  169. 170.0 170.1 Template:Cite web
  170. 171.0 171.1 Template:Cite web
  171. Template:Cite web
  172. Template:Cite web
  173. 174.0 174.1 Template:Cite web
  174. Template:Cite web
  175. Template:Cite web
  176. Template:Cite web
  177. Template:Cite web
  178. Template:Cite web
  179. Template:Cite web
  180. Template:Cite web
  181. Template:Cite web
  182. Template:Cite web
  183. Template:Cite web
  184. Template:Cite web
  185. Template:Cite web
  186. Template:Cite web
  187. Template:Cite web
  188. Template:Cite news
  189. Template:Cite web
  190. Template:Cite news
  191. Template:Cite web
  192. Template:Cite web
  193. Template:Cite news
  194. Template:Cite web
  195. Template:Cite news
  196. Template:Cite web
  197. Template:Cite web
  198. ONEvisionTemplate:Dead link
  199. Template:Cite web
  200. Template:Cite web
  201. Template:Cite web
  202. Template:Cite web
  203. Template:Cite web
  204. Template:Cite web
  205. http://www.openelec.tv OpenELEC.tv Official Website
  206. Template:Cite web
  207. http://www.elementmypc.com Element OS Official Website
  208. Template:Cite web
  209. Template:Cite web
  210. Template:Cite web
  211. Template:Cite web
  212. http://elinux.org/BeagleBoard/GSoC/2010_Projects/XBMC BeagleBoard/GSoC/2010 Projects/XBMC
  213. 214.0 214.1 214.2 https://github.com/xbmc/xbmc/pull/454 directfb: Initial support
  214. 215.0 215.1 215.2 https://github.com/xbmc/xbmc/pull/455 Add mips arch
  215. Template:Cite web
  216. Template:Cite web
  217. Template:Cite web
  218. Template:Cite web
  219. Template:Cite web
  220. Template:Cite web
  221. Template:Cite web
  222. http://www.gizmodo.com.au/2010/10/history-of-boxee-and-boxee-was-born-slowly/ History Of Boxee: And Boxee Was Born, Slowly
  223. http://www.gizmodo.com.au/tags/history-of-boxee/ History of boxee
  224. Template:Cite web
  225. https://github.com/xbmc/xbmc/pull/511 add websocket support for JSON-RPC
  226. https://github.com/xbmc/xbmc/pull/369 Add Bluetooth settings GUI
  227. https://github.com/xbmc/xbmc/pull/303 Wifi improvements
  228. https://github.com/xbmc/xbmc/pull/131 Network enhancements
  229. https://github.com/xbmc/xbmc/pull/451 Mysql gui
  230. https://github.com/xbmc/xbmc/pull/464 Hdmv menus support for bluray
  231. Template:Cite web
  232. Template:Cite web
  233. http://xbmc.org XBMC Blog
  234. Template:Cite web
  235. Template:Cite web
  236. Template:Cite web
  237. Template:Cite web