2013/01/12

Create a Home Theatre PC with a Raspberry Pi

I've been playing with my RPi for quite a few months already and I'm impressed so far by the results, been using it for Python development most of the time and some OpenGL testing and so far it has performed admirabilly well. The other day I wanted to try the famous video output capabilities of the little RPi, and the results were absolutly awesome. If you own a RPi and are tired of listening blowing fans while watching movies, read this.

Cheaper than ever!

Home Media Center at home

If you, like me, love watching movies and you're growing tired of the typical trash you can watch normally in the TV, probably you've already chosen to have a HTPC at home in order to enjoy watching movies instead. That said, I've tried basically everything, laptops, desktop computers, wireless Audio/Video solutions, etc. Right now my latest solution was a tiny pc from Asrock, the ION 330HT


While it performs considerably well, thanks to the NVIDIA ION chipset, capable of outputting full HD with no issues, I just can't bear any longer the amount of noise the included fans generate. 

Even louder
I tried removing the fans, specially the most noisy one, the one attached to the GPU heat sink, but after a few minutes the whole system collapses. Being a 25mm fan makes it specially noisy. I tried removing and cleaning, even changing BIOS setup, but it is still loudy as hell. There are alternatives, like mounting a big 120mm fan or buying a fan controller, but what I really want is a fan-less device.

One fan to rule them all
That said, I wanted to try having the same functionality of my Asrock in a Raspberry Pi.

Choose the right image

There are quite a few options out there in order to have your own HTPC with a Raspberry, but mostly all of them include using XBMC. If you don't know what XBMC is, you should try it out, it is an incredibly well performing media streaming platform, open source and actively mantained.. It all comes down to the following options at the end:

  • Installing XBMC packages in Raspbian: Tried this, but it is a long and complex process. It works at the end but I see two problems here: if you want to use Raspbian finally as a "pure" XBMC you have lots of stuff to uninstall that come bundled with Raspbian. On the other hand, it will not  perform as good as a "pure" XBMC image.
  • Use raspbmc. Tried, and it goes way too slow. You can fine-tune it, but a waste of time in my opinion, there are other options that work fast right away. 
  • Open-ELEC: Haven't really try it, but people seem to be quite happy with it, so I might give it a try too.
  • Xbian: For me probably the fastest one, easiest to install and use and you get support in the forums in a snap too. This is the one we will be commenting in this post.

Installing and running Xbian


Xbian is in my opinion the best option out there now to try XBMC in a RPi, but I encourage you to test others, this is the one that works for me, but as I said earlier, still have to try OpenELEC, that may outperform Xbian, who knows :). The way to install Xbian is pretty much the same as using any of the Rapsbian distros available.

  • Download latest image from Xbian site:

$ wget http://download.brantje.com/xbian/XBian1.0Alpha4.7z
  • OR try this other mirror:

$ wget http://jb.xenserver.sk/xbian/XBian1.0Alpha4.7z
  • Unzip:

$ 7z x XBian1.0Alpha4.7z

  • Plug your SD card and check where it was mounted:

$ mount
  • Check last entry, normally it is something like /dev/sdbX or /dev/sdeX and then unmount again, you MUST do this before flashing the image to the SD card

$ umount /dev/your_location
  • Flash image to sdcard. NOTE: You OUGHT TO do this to the last entry shown by the mount command, which is the SD card (normally something like /dev/sdb1 or similar), otherwise you can really make a real mess. If you're not sure about how to use dd command, feel free to ask, but dd can be a dangerous command. You've been warned!

$ sudo dd if=XBian1.0Alpha4.img of=/dev/your_location
  • Sync and unplug your SD card

$ sudo sync

Now plug you SD card to your RPi and Xbian should be up&running with no issues. Actually, in my case, I never managed to see the xbian prompt and was watching the typical XBMC menu as soon as the system started. Normally, you should want to setup your system, so in order to do this, you must go to  System > Settings > SystemInfo within XBMC and then check the IP given.

From another computer, try to connect to your RPi via SSH:


$ ssh xbian@your.ip


Default password is raspberry. Automatically xbian-config should be executed and you should be presented with something similar to this:

xbian-config
From here you can change several things, probably the most interesting ones are the time zone, overcloking and services running. Up to you what you want to change here. Once finished, reboot and you're good to go.

Plug your RPi to your TV via HDMI.

Almost there!
If you're wondering how my RPi looks so damn sexy, just check ModMyPi site for RPi cases, they have tons of them :). You should be able to start XBMC and start playing your videos now. Concerning sound, I have a DTS receiver from Sony that works quite well outputting DTS to a 5.1 speaker system, so I wanted to try if I could get DTS from the HDMI RPi signal. There are basically two options here, if your TV has a Optical SPDIF out then you can plug a SPDIF cable to it and then plug it to your DTS receiver.

SPDIF out
Shame about this approach is that you only get 2 channels (stereo), so no possibilities to get any surround from the RPi using this. Second option would be to directly connect your RPi to your DTS receiver and then use another HDMI cable to get the video from the DTS receiver to your TV. I haven't tried this yet, but I recon it should work.


Check the results

After trying a few 720p movies and seeing that the RPi was more than capable of handling those, I decided to try a 1080p movie. You can see the results in the above image:

keep it coming baby!

The rest is up to you. One last word of warning, I noticed that overall temperature of my RPi after several minutes playing 1080p or 720p was increasing quite a lot. I'm not sure whether you should really worry about this, but if you plan to overclock the RPi, I'd recommend buying one of the available heat sinks. Probably I'll have to get one of those for summer, is quite hot in my place at that time. Next post I'll make a comparisson between the RPi and the Pandaboard, as it happens I've got a PB ES laying around and I want to test it as a HTPC too.


12 comments:

  1. Very good stuff, bro! But if you wish to play 1080p without fan noise I recommend you a Xtreamer Player (http://www.xtreamer.net/xtreamer/overview.aspx). I have one for two years and I love it :).

    ReplyDelete
  2. Thank you! Worth checking, I'll have a look :)

    ReplyDelete
  3. I use raspxbmc and fits my needs. 5 minutes to set up environment, and keep rocking!

    ReplyDelete
  4. Happy to know it works for you, never did for me :), not a decent speed though (at 1080p with a high bitrate)

    ReplyDelete
  5. Most of the people love to watch movies on home theatre system. Building a perfect home theatre is never easy, it need lot of attention. Find best home theatre systems on home theatre.

    ReplyDelete
  6. The best home theater PCs are small, quiet, and inexpensive—so the ... and want to connect your Raspberry Pi to a set of external speakers or . Ilumina├žo

    ReplyDelete
  7. Thanks for sharing this post.it such a nice best home theatre systems product .i am happy to buy this.

    ReplyDelete
  8. With such a range of designs to decide on from, there's no right or wrong choice; solely that that most accurately fits your distinctive personal style.Home recreation theater lighting is crucial; it'll either build or break your home recreation theater expertise, for more information click here Home Theater North Palm Beach.

    ReplyDelete
  9. Weatherproof outdoor speakers have to be very tough. Since it will be exposed to direct sunlight and rain, these speakers must have the forbearance for every weather conditions. However it is advised not to keep these speakers outside in pouring rain. home sound system

    ReplyDelete
  10. I am exploring this subject as part of a report I need to do on possible careers I might choose. Thank you for your post it has valuable information on this topic.
    Go Viral

    ReplyDelete
  11. This article is something that will help me with my class assignment. It helped me to better understand another aspect of this topic. Thanks. movie editing software

    ReplyDelete
  12. I feel really nice reading these articles I mean there are writers that can write good material.
    zookaware pc cleaner

    ReplyDelete