Revive the Multimedia XPerience with XBMC

The dropping prices of computer hardware are a definite help in building decent home-theatre systems with ease. Media centre computer software helps to enhance the viewing experience, as they employ features with great eye candy. Also, there is a range of media centre solutions and software that we can choose from today.

Here, we’ll take a look at one of the most prominent open source media centre applications—XBMC.
I tested XBMC on the following set-up:

  • Processor: AMD Phenom X4 9950 BE @ 3.1GHz | AMD Phenom II X2 550 BE @ 4GHz
  • Motherboard: AMD 790GX with ATI HD 3300 IGP | ATI Radeon HD4770 dedicated
  • RAM: 4GB DDR2 800 MHz RAM running @ 1090MHz
  • Monitor: Samsung S2233SW with 1920×1080, 16:9 (full high definition) resolution
  • Sound card: Realtek ALC888 8 channel audio
  • Speakers: Klipsch Promedia GMX 2.1 | Altec Lansing MX5021
  • Operating systems: Ubuntu 9.04 64 bit, Mandriva 2009.1 KDE 32 bit, Sabayon 4.2 KDE 64 bit and Dreamlinux 3.5
  • Driver: ATI Catalyst 9.6 used in all OS

The XBMC Media Centre, formerly the Xbox Media Centre, started as a two-man army under the name of Xbox Media Player. Initially restrained to Xbox consoles, the project came to an end on December 13, 2003 and was succeeded by the highly acclaimed XBMC Media Centre, which had a team of almost 200 developers and translators working on it.

Figure 1: The XBMC interface

Figure 1: The XBMC interface

Figure 2: Playing a 1080p (HD) movie

Figure 2: Playing a 1080p (HD) movie

XBMC is built on the high-quality and complex OpenGL interface written in C++. Despite being a media centre application, XBMC lacks rudimentary media centre features like support for PVR recording and TV guides, which is a serious let down for any media centre application. Although it offers similar features with the help of third-party plug-ins, this is never a very reliable solution.

Prerequisites

XBMC is a very resource-demanding application due to the highly complex OpenGL implementation it comes with. The website doesn’t provide the system requirements for the application but it is advisable to have a 2 GHz or above CPU, 2GB RAM and a decent graphics card with Open GL support. Though in my rig, I had no problem with the player except for some annoying bugs that hindered executing the program.

Make sure you install all the proprietary graphics drivers before using it. Users planning to run Blue-ray or HD movies should have a 3 GHz multi-core CPU or a GPU capable of hardware acceleration.

With the system resources out of the way, it’s time to figure out the installation source. Unlike the Xbox media player (its previous version), XBMC is available for almost all operating systems. It is available for Xbox consoles, Linux, Windows, MacOS, Apple TV and as a live CD. You can also grab the latest build from SVN and compile it if packages are not available for your distro.

Although it lists Linux as a supported OS, it only provides packages for Ubuntu. I will try to cover the installation in brief, but if packages are not available for your OS, then you will have to resort to compiling from source. Fortunately, many distros provide packages for XBMC or they ship it as the main media centre application. Here are some of the distros that have pre-compiled binaries for XBMC:

  1. Ubuntu
  2. Mandriva
  3. openSUSE
  4. Sabayon
  5. Dreamlinux

For notes on installation, see the box.

Installation notes
  • You can get the latest Ubuntu builds from the Ubuntu PPA. In order to install, first select the Ubuntu version you have and generate the repository from the above link. Navigate to GNOME menu→System→Administration→Software Sources. Under the ‘Third Party Software’ tab, add the main and source repositories. Once done, you need to add the security keyring for XBMC—copy everything from here and save it as a normal text file. Back to the Software Sources window, under the ‘Authenticate’ tab, add the text file and reload repositories. Now, search for xbmc using Synaptic and install it.
  • Mandriva users need to add a new repository: Mandriva Italian Backports (MIB). Select the Mandriva version and CPU architecture, copy-paste the commands in a terminal as the root and you are good to go. Search for XBMC and install it. Note that you will have to install some extra packages in order to make XBMC run without throwing fits or aborting automatically. Open a terminal and type the following commands as the super user: urpmi -a curl curl-devel.
  • openSUSE users need to enable Packman repositories, or you can directly download XBMC packages from Packman website.
  • If you have the latest versions of Sabayon and Dreamlinux, XBMC will come pre-installed. Dreamlinux XFCE users need to install XBMC from a binary file located at www.dreamlinux.com.br/download.html.

Once installed, XBMC should launch without a problem.

Rock n’ roll in eye candy

Post installation, the application launches in windowed mode—only Sabayon opens it in full screen, or ‘Party Mode’ as I like to call it. Clicking on the maximise button, maximises the window. After pondering over various possible shortcut keys, I finally got the solution—you need to hit the (back slash) key for a full-screen media centre view.

The XBMC interface is quite lucid with very well laid out categories. The player menu has been segregated into videos, music, photos, weather, scripts and settings. The first three options will ask you to add media sources while it auto detects any externally attached medium. On the downside, it cannot read Flash drives above 4GB because it still follows USB 1.1 standards, and that too, only FAT-formatted drives. So, if you’re in the habit of using EXT3/NTFS formatted Flash drives, you’re out of luck.

Figure 3: Navigating music collection

Figure 3: Navigating music collection

Figure 4: Navigating video collection

Figure 4: Navigating video collection

The player has very unique display options. You can navigate through your collection with small or big icons, and these come with a variety of exquisite effects and some gorgeous cover flow effects. Pretty much everything is available for you to make the most out of your well-managed collection.

The music player is very good, but I find the volume not as loud as it could be. Even cranking the volume to full from the XBMC settings does not have much effect on the overall volume output. However, the beauty of the player is that you can resume doing your work, like goofing around with the player, viewing photographs and inspecting the collection, while a small display of the currently playing track/movie runs at the bottom left of the application.

Moving on to the movies, I tried my Blue-ray, full high-definition content and was blown away with the output. Although the movies play as they do in a normal player, here you can even watch the movie in the main menu while continuing your work, as you can see in Figure 1. And you can bookmark the movie at a particular time interval, which allows you to resume watching it from where you had left it.

Figure 5: The bookmark wizard

Figure 5: The bookmark wizard

Figure 6: Image viewer

Figure 6: Image viewer

The player supports a plethora of audio/video and image formats. It picks up the subtitles correctly, although in some videos I have had to enable them from the settings. The only let down is not being able to play DRM-restricted media files, besides the inability of XBMC to read multi-session discs.

The good thing is, you can extend its capabilities from the third-party plug-ins available on its website. It offers media streaming from YouTube, Hulu and Veoh with the help of plug-ins, besides other expandability options that you can add. There’s even a weather applet that can fetch weather forecasts for your city [if available] from the Web, and display it on the main screen.

And the party’s over

I find XBMC’s interface and media streaming capabilities quite impressive. No matter what codec a file needs, the player is capable of playing it smoothly. Playing a full HD 1080p movie on it is an unmatched experience—the surroundings are drenched with divine acoustics, and my family and friends are mesmerised by the stunning experience the media player offers.

However, the player is very resource hungry. It uses 50 per cent of the CPU cycles of my quad core system, besides eating up a whopping 1.8 GB of RAM. On the other hand, SMplayer/VLC only uses 25-30 per cent of the CPU and ~750MB of RAM.

In addition, coming with a ‘Media Centre’ tag, XBMC should include much more media centre capabilities, but they are nowhere to be found; also, there are no proper alternatives to these missing capabilities.

Overall, although XBMC does try to steal the limelight, there are more negatives than positives. Because of its resource hogging nature and lack of media centre capabilities, it comes across as a mediocre media centre. So if you plan to build a HTPC, look for an alternative.

Resources

  • sunehansen

    ..it ran fabulously on an Xbox…an Xbox for crying out loud..that is some 700mHz of the lowest quality hardware you can come up with. So please do not say that it is resource demanding – openGL or complexity has nothing to do with need for resources.

    The interface is the best yet for any MediaCenter I have ever seen – I cried when I had to deal with Microsoft MediaCenter – it was that damned awful.

  • Arkania

    I've been using XBMC for a little over a year now and I have nothing but praise for this fantastic media centre. The media scraper implemented (which grabs cover art, movie info, etc) works very very well.

    One thing to note…if you are using a Nvidia Chipset, XBMC will use HARDWARE ACCELERATION, reducing CPU time drastically. WIth that combination, this player blows everything else out of the water. ATI, unfortunately, is a whole different story.

    Scripts and plugins (Which you failed to mention in your review) extend the capability of the player drastically and there are lots available.

    The XBMC community is brilliant, with lots of friendly support.

    I've tried Mediaportal, Meedio, Windows MCE, Mythtv, etc, and I always come back to XBMC.

  • Jeroen

    Your “review” is ludicrous.

    The only two valid points you have are the absence of a TV Guide and PVR. Although that is in the pipeline for XBMC, personally I don't care for it.

    Calling XBMC a mediocre media center is taking the cake. Please name me an alternative that is as advanced and versatile. And please, don't say Linux MCE.

    Currently XBMC is using just over 100 MB for me. Yes, the CPU wobbles around 50% when using the interface. Try checking the CPU usage when actually playing back content, you'll see a big drop.

    But how does that even matter anyway? How are you using a mediacenter? I would assume you're using a mediacenter to watch movies or play music…and nothing else at the same time! Oh boy, it uses 50% CPU, You've only got like…50% left for doing nothing! Otherwise, what you need is just a mediaplayer.
    To which you then attest by comparing a media_center_ to mediaplayers like VLC and SMPlayer. Way to go making a totally irrelevant and silly comparison…

    The same can be said _if_ it's using a Gig of RAM, oh noes, you've only got 3 Gigs left!

    You fail to mention any of the other many great features of XBMC like the scraping functions, library and so on. I could draw them all out for you, but I guess, like you, I just won't put in the effort.

  • Jeroen

    Your “review” is ludicrous.

    The only two valid points you have are the absence of a TV Guide and PVR. Although that is in the pipeline for XBMC, personally I don't care for it.

    Calling XBMC a mediocre media center is taking the cake. Please name me an alternative that is as advanced and versatile. And please, don't say Linux MCE.

    Currently XBMC is using just over 100 MB for me. Yes, the CPU wobbles around 50% when using the interface. Try checking the CPU usage when actually playing back content, you'll see a big drop.

    But how does that even matter anyway? How are you using a mediacenter? I would assume you're using a mediacenter to watch movies or play music…and nothing else at the same time! Oh boy, it uses 50% CPU, You've only got like…50% left for doing nothing! Otherwise, what you need is just a mediaplayer.
    To which you then attest by comparing a media_center_ to mediaplayers like VLC and SMPlayer. Way to go making a totally irrelevant and silly comparison…

    The same can be said _if_ it's using a Gig of RAM, oh noes, you've only got 3 Gigs left!

    You fail to mention any of the other many great features of XBMC like the scraping functions, library and so on. I could draw them all out for you, but I guess, like you, I just won't put in the effort.

  • Binni

    What exactly are those missing Media Centre capabilities?

  • http://xbmc.org/ spiff

    [quote]
    On the downside, it cannot read Flash drives above 4GB because it still follows USB 1.1 standards, and that too, only FAT-formatted drives. So, if you’re in the habit of using EXT3/NTFS formatted Flash drives, you’re out of luck.

    this is wrong. this ONLY applies to the xbox version and is caused by the xbox hw only being usb 1.1. we can read anything your os can read, so linux can use all usb drives, all filesystems.

  • topfs2

    Normally the 50% cpu is caused by vsync problems, I have it on my ION system which is just an atom and it uses approx 30% on a CPU which is far less powerfull. And as joeren says, when starting a movie (FPS will drop to movie speed) then it uses even less. < 10% on 1080p, thx to vdpau ofc.

    It's very very wrong saying it uses >1 GiB RAM, it doesn't use 256mb even. I'd suggest you read up on the resource allocation. In fact my XBMC Live uses about 512mb for the ENTIRE OS with XBMC running.

  • http://xbmc.org/ topfs2

    Normally the 50% cpu is caused by vsync problems, I have it on my ION system which is just an atom and it uses approx 30% on a CPU which is far less powerfull. And as joeren says, when starting a movie (FPS will drop to movie speed) then it uses even less. < 10% on 1080p, thx to vdpau ofc.

    It's very very wrong saying it uses >1 GiB RAM, it doesn't use 256mb even. I'd suggest you read up on the resource allocation. In fact my XBMC Live uses about 512mb for the ENTIRE OS with XBMC running.

  • Preston

    resource intensive?….riiiiight…..Thats why it can run on a single core ATOM 1.6ghz with 2gb of ram and an ION GPU and only eat up 25% cpu and 512mb of memory running full 1080p video…….interesting.

All published articles are released under Creative Commons Attribution-NonCommercial 3.0 Unported License, unless otherwise noted.
Open Source For You is powered by WordPress, which gladly sits on top of a CentOS-based LEMP stack.

Creative Commons License.