Official website for Linux User & Developer
FOLLOW US ON:
Sep
16

Raspberry Pi Media Centre Tutorial

by Rob Zwetsloot

Build your very own media centre out of a Raspberry Pi to save on space and money using XBMC

One of the great things about the Raspberry Pi is that it not only has plenty of power to play back high definition video, but it also has the HDMI output to allow you to do so. This would naturally lead the media enthusiasts among you to think of the possibilities for using the RasPi as a media centre, but the list of advantages don’t stop there. It has network support to stream video, has a ridiculously small form factor so you can tuck it out the way, and of course the low price doesn’t hurt.

The potential for the Raspberry Pi’s use as a media centre hasn’t gone unnoticed by the community, and thanks to its open-source nature, there are two great options to get XBMC working on your RasPi. RaspBMC is a Debian Remix that’s simple to install, and OpenELEC is a bit more challenging, however it works just that little bit better. Both of these solutions run as well as any other Home Theatre PC, with high definition video playback, and generally smooth menu navigation. In this guide we’ll show you how to make the most out of a RasPi HTPC.

RaspBMC

OpenELEC Raspberry Pi HTPC XBMC
RaspBMC is the easiest and quickest way to get started

Step 1 Download RaspBMC

RaspBMC comes with its own installer, which you can download by using wget in the terminal:

$ wget http://svn.stmlabs.com/svn/raspbmc/testing/installers/python/install.py

This downloads the install.py file that will install RaspBMC to an SD card

Step 2 Prepare RaspBMC

To install RaspBMC, you’ll need to first change the persmissions on the install file like so:

$ chmod +x install.py

Then make sure you have the right SD card in your system, and that any important files on it are backed up

Step 3 Install RaspBMC

Now you can install with:

$ sudo python install.py

And follow the instructions to install on your SD card. It will usually be listed as something like sdb, and have a 4 GB/4000 MB capacity

Step 4 Set-up RaspBMC

You’ll now need to plug the SD card into your RasPi, then plug it into a display and turn it on. Make sure it’s also connected to the internet, as it will then download and update all the necessary files to get it working

Step 5 Video Out

The Raspberry Pi has an extra video out port, the yellow composite port. You plug that in and it will automatically recognise it. You can also change the resolution and refresh rate in Settings, System Settings, Video Output

Step 6 Headphone Out

If you’re using the video out port and not HDMI, then you’ll need to use the headphone jack to output the audio. You can get a cable to hook this up to a TV, but you’ll also need to go to Settings,System Settings, Audio Output, and change it to Analogue

Step 7 USB Storage

There are two main ways to watch your media – either stream it over the network, or by attaching USB storage with it on. Be aware though, there are limited USB ports on the RasPi, and if you connect a USB hub it will need to be powered!

Step 8 Video Source

Connected and Networked storage can be added as sources to XBMC. Go to Videos on the main menu, then Add Videos. For connected devices and some network shares, you can go to Browse, and select it. You’ll be then asked where to get metadata from to finish.

Step 9 Add Network Source

Sometimes XBMC might not see your network share, but you can still add it. Your shares are more than likely down via samba, especially if you have Windows computers in the house. The file path you need to add before you hit browse will look something like this:

SMB://ComputerName/MovieShares

OpenELEC

Raspberry Pi XBMC RaspBMC HTPC
OpenELEC is a more advanced way of creating a HTPC

Step 10 Get OpenELEC

Alternatively you can use OpenELEC on your RasPi to get XBMC on there. We need to grab the source for OpenELEC like so:

$ git clone git://github.com/OpenELEC/OpenELEC.tv.git

We can use the source files to build any version of OpenELEC, obviously we want it for RasPi

Step 11 Prepare your system

When building, it should grab all the required packages. It cannot do this on all distros all the time though, and may print a list of packages you require. In Ubuntu, you’ll need:

$ sudo apt-get install g++ nasm flex bison gawk gperf autoconf automake m4 cvs libtool byacc texinfo gettext zlib1g-dev libncurses5-dev git-core build-essential xsltproc libexpat1-dev autopoint

Step 12 Configure Perl

You may need to configure Perl on your system. All you need to do is open the terminal and run the following commands:

$ sudo perl -e shell -MCPAN

Run through the automatic setup by typing yes, then pressing return at each step, then:

install XML::Parser
exit

Now we can move on to the actual build

Step 13 Build OpenELEC

Move into the OpenELEC TV directory by using CD:

$ cd OpenElec.tv/

This is what you’ve just downloaded. Now you can start building it by running this:

$ PROJECT=RPi ARCH=arm make

It’s case sensitive, so be exact.

Step 14 Partition the SD Card

To partition, install GParted with:

sudo apt-get install gparted

Then use it to create two partitions on the target SD card. Create a 128 MB FAT32 partition at the beginning, and fill up the empty space remaining with an EXT2 partition. Apply changes, and then right click on the 128 MB partition, and add a boot flag to it.

Step 15 Install OpenELEC

Mount your SD card, which can normally be done by unplugging and pluggin it back in. We’ve named our 128 MB partition System, so it’s mounted as /media/SYSTEM. Make sure you’re in the OpenELEC.tv folder like before and do the following:

$ sudo cp build.OpenELEC-RPi.arm-devel/bcm2835-bootloader-*/arm128_start.elf /media/SYSTEM/start.elf
$ sudo cp build.OpenELEC-RPi.arm-devel/bcm2835-bootloader-*/bootcode.bin /media/SYSTEM/
$ sudo cp build.OpenELEC-RPi.arm-devel/bcm2835-bootloader-*/loader.bin /media/SYSTEM/

$ sudo cp target/OpenELEC-RPi.arm-devel-*.system /media/SYSTEM/SYSTEM
$ sudo cp target/OpenELEC-RPi.arm-devel-*.kernel /media/SYSTEM/kernel.img

$ echo “boot=/dev/mmcblk0p1 disk=/dev/mmcblk0p2 ssh quiet” | sudo tee /media/SYSTEM/cmdline.txt

This will get the necessary files moved to the boot partition we created. Once this is done, plug in your RasPi, networking and all, and it will boot straight into XBMC after a few seconds ready to go

Advanced Uses

OpenElec Raspberry Pi XBMC HTPC Media Centre
Time to look at some more advanced options

Step 16 Nightly Build

It’s not recommended, but in RaspBMC you can switch to a nightly build of XBMC. This means you can play Hi10 video files, common in more recent high definition encodes. It is unstable though, so use with caution!

Step 17 Command Line

If you fancy doing a bit more advanced customisation of your setup, you can always enter the command line by plugging in a keyboard at boot time and using Ctrl+Alt+F2 to enter the command line. You can then use Ctrl+Alt+F7 to return to XBMC

Step 18 Remote Control

There are some specific remotes that will work with XBMC out of the box, these include:

XBOX DVD playback remote
ATI/X10 remote
CyberLink 0766:0204
MCE remote
Hama remote

You’ll need to have the receivers plugged into the USB port before you turn the RasPi on for it to be automatically recognised.

Step 19 Input Settings

There are various Input Settings you can play about with under System in the Settings menu. If you’re having problems with your remote, you can always set it to register as keyboard presses, and you can optimise the UI for mouse or touch screen use

Step 20 Remote App

If you’ve got an Android device, you don’t need to buy a separate remote for your new HTPC – there’s plenty of XBMC control apps on the Google Play store, even an official one. These will automatically connect to an XBMC HTPC on the same network

Step 21 Manual Remote App

You may need to add your RasPi manually to the remote. To find the IP you’ll need, go to System, System Info, Network. Here you’ll find the IP address, for example 192.168.1.10. In add new host on the mobile app, add this. The Username and Password is by default xbmc

Step 22 Remote Web

Under Settings, Services, you can turn on a web server to control XBMC from any web browser on the same network. Enable “Allow control of XBMC via HTTP”, and note the port number, e.g. 80. Finding the IP address like above, go to 192.168.1.10:80 in your browser to access it

Step 23 Power Concerns

As the Raspberry Pi is USB powered, you might consider plugging it into your TV if it has a USB port. This will provide enough power for it to run, and as you need to disconnect the power to fully turn off the RasPi, turning off the TV does that for you.

Step 24 RasPi HTPC

There’s plenty of other little tweaks you can do in the settings to have it set up to your taste, and you may also want to look into cases to house the RasPi in your living room. For the price and size though, you won’t find a better HTPC.

Related Raspberry Pi articles

  • Tell a Friend
  • Follow our Twitter to find out about all the latest Linux news, reviews, previews, interviews, features and a whole more.

    51 Comments »

    • Stu said:

      “OpenELEC is a bit more challenging, however it works just that little bit better” does anyone know if that statement’s true? Admittedly I haven’t tried OpenELEC for a couple of months, but at the time I found RaspBMC to be equally functional and a touch more responsive.

    • Sebastian said:

      Try Xbian.

    • CML said:

      XBIAN, much easier to setup and faster.

    • guy said:

      OpenElec’s nightly download of the Pi-ware has an installer…

      You unpack the download into a directory, cd to that directory in the console, make sure your SD card’s inserted then it’s as easy as…

      ./install_system /dev/mmblk0

      (command from memory but you get the idea, it’s a one-liner)

      IIRC you go to the OpenElec site, go to Downloads then at the bottom of the page there’s a link to nightly builds. Open that and you’ll find your way tot the Pi downloads

    • Keefe said:

      the OpenElec method goes sideways on me at step 13, cd OpenElec.tv/

      All I get is a “No such directory Exists” error. Any suggestions?

    • Keefe said:

      Computers are precise idiots, and I happen to be an imprecise one. Case sensitive operation FAIL on my part.

    • グッチ バッグ said:

      Hey there I am so delighted I found your web site, I really found you by error, while I was looking on Digg for something else, Anyways I am here now and would just like to say thanks for
      a fantastic post and a all round exciting blog (I also love the theme/design),
      I don’t have time to read it all at the minute but I have
      saved it and also added in your RSS feeds, so when I
      have time I will be back to read a great deal more, Please do keep up
      the great b.

    • Holger said:

      Allow me a few remarks:

      Step 23 Power Concerns

      As the Raspberry Pi is USB powered, you might consider plugging it into your TV if it has a USB port. This will provide enough power for it to run, and as you need to disconnect the power to fully turn off the RasPi, turning off the TV does that for you.

      1st: USB Specs typically allow 500mA for each port. Sometimes USB ports on devices do not even provide this current. Raspi requires 700mA which is above USB specs and thus the Raspi should NOT be connected to the USB port of your TV.
      If you fry your TV USB port then do not cry…

      2nd: The USB implementation of the Raspi is unstable and sensitive as hell. By using the wrong (= too much demanding) USB devices to your USB ports or delivering too less current, the strangest things will happen: Unstable network connection, not working input devices and so on.

      In the end using the USB host of your TV set might result in unstable behaviour or under worse circumstances fry the port in your TV.

      Have phun :)

      Just a final comment the Raspi and xbmc: I own a Raspi myself and tested XBMC on it. While it is surprising to see that XBMC runs on such a small device, it still felt a lot slower and more sluggish compared to my native PC running XBMC on top of Linux. The Raspi itself though makes a nice playback device for H264 and MPEG4 material in standard resolutions. I am currently tinkering around on a webfrontend for OMX Player written in Python and Bash. Works pretty good but still could need some polish.

      IMO it would be much wiser to have a simple HTPC GUI which renders blazingly fast and lets you choose your media rather than enhancing XBMC for Raspi. Even a web-based movie catalogue which controls omxplayer in the back and lets you control your Raspi via Smartphone / Tablet sound like a smarter usage of the Raspi for me.

    • Bruce said:

      I’m using RaspBMC on my Pi (powered by the service USB port on the TV).
      It was slow until I upgraded to a Class 10 SDHC card, make sure you pick one on the approved list
      http://elinux.org/RPi_VerifiedPeripherals#SD_cards

      Also, buy the MPEG-2 and VC-1 Codec licences from
      http://www.raspberrypi.com/

      UK Plugins for iPlayer 4oD etc.

      https://code.google.com/p/mossy-xbmc-repo/downloads/list
      http://code.google.com/p/xbmc-iplayerv2/downloads/list
      http://code.google.com/p/xbmc-itv-player/downloads/list
      http://code.google.com/p/nibor-xbmc-repo/downloads/list
      http://code.google.com/p/tvcatchup-xbmc-addon/

      Like Stu I also baulked at the comparison between OpenElec and RaspBMC.

    • Spuffler said:

      In regards how well suited these Pi devices will be, Lets say 2 people are dealing with audio streams (one uploading and one streaming to a medai player) while I watch a movie via this setup. Now lets host the portal to the storage on the Pi, and run the lightest of web servers. A dedicated dual core desktop has troubles with such effort, should I toss a few bucks at a Pi?

    • Lee said:

      excellent article, very useful

    • txe said:

      Hi there.
      What if you want to share or stream videos from a linux (fedora) pc tp raspbmc. It seems like all works good for Win. Everybody mention samba like filesharing. rygel doesn’t work, mediatomb same, useless… every body knows and post tutos about what everybody knows..
      b.h.

    • autoverzekering berekenen said:

      Motor car insurance knows well to reward careful
      drivers. While driving, the owner is also responsible for the
      security of the fellow passengers. This maxim is precisely applied in our daily lives.

    • anon said:

      RasberryPi = Piece of Shit. Send it back to hewlett packard circa 1994

    • Frambuesiqui said:

      last comment may be a joke…

    • Michael said:

      Does not work with live tv ( tvheadend backend).No error messages, just blank screen Raspberry guys ignore that and keep removing bugreports. Blamed on software (xbmc, tvheadend)but in the end needs sorting by them.

    • 8tracks.com said:

      Tremendous things here. I am very satisfied to see your article.

      Thank you a lot and I am taking a look forward to touch
      you. Will you please drop me a e-mail?

    • folija said:

      Hey just wanted to give you a quick heads up. The words in your post seem to be running
      off the screen in Safari. I’m not sure if this is a format issue or something to do with browser compatibility but I figured I’d
      post to let you know. The style and design look great though!
      Hope you get the problem resolved soon. Kudos

    • Tim said:

      I’ve installed Raspbmc on my Pi without any problems, It’s a littler slower than i’d hoped and finding a USB HDD that will mount without additional power is an issue but still excellent for the price.
      However, i do not own a NAS and all of my media is stored on an external HDD. I can navigate to the files within XBMC, select and play them without fault but cannot add any of the data to the library. This means no additional movie information is being applied by the scraper as XBMC is unaware of it’s existence before i click it. I cannot find a way of adding my external drive as a media source.

      Any ideas?

    • telecharger de film said:

      We stumbled over here by a different web page and thought I might check things out. I like what I see so now i’m following you. Look forward to finding out about your web page again.

    • what is the best home insurance company said:

      Hi there! This post couldn’t be written any better! Reading through this post reminds me of my old room mate! He always kept chatting about this. I will forward this write-up to him. Pretty sure he will have a good read. Thank you for sharing!

    • Autumn said:

      With this in consideration, you might as well take the time to study the details directly below because it may be the kind of insurance to suit your needs.
      The greatest benefit of this kind of insurance
      is that you need not get a premium that provides cover the whole
      year round. In this case the vehicle can be insured in
      the name of the person going to drive or handle it temporarily and he
      need not be the owner of the car as required in long term insurance plans.

    • how much does one day car insurance cost said:

      Car or truck insurance plan for a day is pretty simple to get.

      Think about having your teenager use only the family’s cheapest car and exclude them from other policies. The legal obligations of those incidents and third party claims, if any, additionally fall underneath the umbrella of the single-day or one day car insurance policies.

    • Annis said:

      This doctor’s visit is also when you should ask for any referrals, such as to the physical therapist or chiropractor. Tell him or her that either they go with the lowest estimate or you’re calling insurace.

      If you are thinking of obtaining a newer or different car then there is many places you can look, automobile auctions being one of
      those places.

    • http://glass-station.com said:

      These one day car insurance policies consist of
      full comprehensive cover, and you may obtain them at an affordable cost.
      American insurance companies don’t do business in Mexico or put up for sale Mexican auto insurance. There will be considerable differences in the quotes of the companies.

    • hlwiker.com said:

      Cancellation after a policy has renewed is most convenient at the end of a payment
      cycle. To cover the damages to their cars senior citizens really should think
      about the one day car insurance. While it’s Expensive, and You May not use it Often, it’s Also Good to Have.

    • one day car insurance compare said:

      You have the automobile all day when they are struggling to get up and they can now
      use the car at night when you want to go to bed. However with cut-throat competition coming in the industry, the insurance cover
      firms are providing brief time period and temporary
      auto insurance facilities to the user of the car.
      You have raised $1,752 to start your business, which is more than most cost.

    • Do Children Need Private Health Insurance said:

      Quick access to a consultant or specialist as soon as your GP has given
      you a diagnosis is the first advantage you gain. Benefits of group medical insurance: The major benefits of group health insurance protection is that you often pay less for your premiums (because your employer covers some
      of the costs) And, you are charged the same amount as everyone else regardless
      of age or health status. The intention of the law
      is that the final consumer (an individual or business that is
      not registered for VAT) actually bears the burden of the tax, though VAT registered
      companies must bear significant costs of compliance with VAT.

    • 7 day car insurance cover said:

      The complete appeal of these types of insurance cover product is
      it is typically set up in a matter of hours and you may renew it on a daily basis, insurance coverage does not
      get any less complicated than that. And as councils struggle to find
      enough funding to repair all of the potholes during the current financial crisis,
      motorists have instead been advised on the damage hitting a pothole could do to their pockets.

      If you drive a lower when compared with average volume of
      miles each year, less than 12,000, you can pay much less expensive, often 15% much less.

    • free backlinks generator said:

      Many times there are errors that will hurt your search rankings or consumer experience.
      Online marketing professionals have made out a solution for this.
      This is perhaps the most popular backlink checker out there.

    • icecap.us said:

      The method you use to add drivers to your car insurance policy differs
      from auto insurance company to auto insurance company, so check with
      you company to find out if you can add drivers online or if you must
      do it via phone with a customer service representative.
      Then although the insurer is paid you will have
      a grace period before settling your card account. The simple
      answer is “yes,” you can indeed insure a car that you don’t own.

    • Warren said:

      Some people say the FBI are excellent shots, other say they
      use a. And when it comes to the car insurance market in Pennsylvania,
      Donegal agents are fast becoming influential major players.
      Most of all, we will finally see that this entire economic crisis was built upon mis-indexing a host of assets from every major sector.

    • cheap car insurance britain said:

      Great beat ! I would like to apprentice whilst you amend your website, how
      can i subscribe for a blog site? The account helped me a applicable deal.

      I have been tiny bit familiar of this your broadcast provided bright clear idea

    • cheap car insurance over 60s said:

      Your style is really unique in comparison
      to other folks I’ve read stuff from. Thank you for posting when you have the opportunity, Guess I will just bookmark this site.

    • Graig said:

      ‘ You are going to want to double check this particular with a rep from your charge card company. Occasions you may want to purchase daily car insurance would include, making use of someone else’s vehicle
      to move, letting an on vacation guest takes place car getting around, or you
      will be offering a car on the airport for any friend to operate a vehicle home
      or maybe you are using someone’s else’s auto to bring them home from
      your hospital. You can keep weekly or monthly tabs depending on feasibility and what is comfortable.

    • Cathern said:

      There are many deductions which the firms present for prospective clients, ensure that you avoid the dishonest providers.
      “But”, you protest, “isn’t that what insurance is for”.

      The insurance can prove to be helpful in numerous ways:.

    • 1 day car insurance for young drivers said:

      The Cost of Short Term Car Insurance as well as Options to Consider – The regular monthly cost regarding temporary car insurance can be
      significantly higher than bi-annual insurance. You will get to your desired destination quicker and also be less jet lagged when
      you arrive. The chief energy analyst in the investment adviser Jiang Qian also believes
      that the second half of 2009, the global PV market Environment In the warming, and, with governments
      on policies to support the introduction of PV, the next few years growth has
      been determined, is Yingli choose this time the reasons for expansion.

    • 1 day car insurance cover said:

      A auto on the road was theoretically supposed to be insured by the holder of the automobile and there was
      no cover related issues for the person taking a car on rent or borrowing the car from a personal friend.
      The more it’s worth, the more likely you will want comprehensive insurance. Nonetheless, there are very important components to look out for when buying a policy.

    • 1 day car insurance for a provisional driver said:

      Nicely, whether or not non permanent cover is often a wise move financially
      can very much depend on your circumstances.
      He thinks Obama is right in that it is time for change.
      The numerous Benefits of Short Term Car Insurance – Though it is not a suited option for everyone, short term
      car insurance has its rewards.

    • Rico said:

      If they did, their accident wouldn’t be covered, and they may not have a car or a job anymore. I have had clients receive a wide variety of discounts, one client earned no discount and another earned the full 30% saving him $230 every 6 months. This independence is tough earned and automobile insurance will help them continue to keep it.

    • Jewel said:

      You just need to type “cheap car insurance quotes” in Google or Bing to get them.
      It will come in handy if you were to meet with
      an accident while travelling. It will almost always
      save money compared to the cost of two separate plans.

    • 1 day car Insurance for a provisional Driver said:

      Many of us get the $12 a day insurance premium when renting a car.

      Furthermore, state laws require that delivery drivers carry commercial
      car insurance coverage in addition to their regular car insurance.
      There are many different factors that come into play when determining car insurance rates.

    Trackbacks

    What's your opinion?

    Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

    Be nice. Keep it clean. Stay on topic. No spam.

    * Required fields