Hands On With Raspbmc

Have you heard of the Raspberry Pi? Surprisingly enough, they’re starting to trickle into the hands of thousands of hackers, and we were fortunate to get our hands on one (second-hand since we didn’t jump in time for the initial preorder). We’ve longed for a tiny embedded option for running XBMC and this is one of the best opportunities we’ve seen yet. The Raspbmc project, created by [Sam Nazarko],  is tailored to getting XBMC on the Raspberry Pi just a few minutes after it arrives in the mail. And that’s exactly what we did.

If you’re familiar with writing an image to an SD card (or any device for that matter) this is a simple process. Raspbmc is distributed as a single image file which starts up the RPi hardware, then copies itself to RAM while it downloads and installs the filesystem for the distribution. Once the card is flashed just pop it in, power up, and wait about 20 minutes until XBMC shows up on the screen. After that it’s a quick boot each time.

The good news is that its works. XBMC runs pretty fast, with just a hint of lag when loading some menus. We felt at home using the confluence skin we’re familiar with, and had no trouble setting up our samba shares to the video library. The one problem is that it won’t play any of the video files we have on hand. None of them. So we downloaded the Big Buck Bunny trailer. It wouldn’t play that either. This is all a codec issue. Although the chip used on the RPi is capable of hardware decoding MPEG2 video, the foundation didn’t license that ability. So it can’t play that format, period. With the movie trailer we tried the OGG format and that’s not currently supported, but the MOV version did play, in full 1080p without trouble.

So the verdict is, if you’re looking to get an RPi just to run XBMC you should wait. So far the package is promising. But we record ATSC video, all of which is MPEG2. If you use MakeMKV to store your DVDs on a server, that also uses MPEG2. Of course there is the option of transcoding everything. But you’ll want to be careful if you have other XBMC frontends which may not be able to play alternative encodings.

43 thoughts on “Hands On With Raspbmc

      1. Figured the answer to my own question. So binary is a precompiled binary driver for the device:
        http://en.wikipedia.org/wiki/Binary_blob

        That is GPU support for the kernel (in this case):
        “Therefore, the installer pulls down the standard binary blob for the GPU and a precompiled kernel.img. This allows regular synchronisation without a separate kernel anyway.”
        http://www.raspbmc.com/wiki/technical/ramdistribution/

        So does that mean you can take the Roku driver and replace the one on raspbmc to get hardware decoding?

      2. @pcpcpc2

        The Roku 2 XD doesn’t support MPEG2. Anandtech have a review of the Roku 2 XS which is the next model up which has a nicer remote and they list the supported codecs as the following:

        H.264 (MP4, MOV and MKV containers)
        WMV9 (ASF, WMV)
        MP3
        AAC
        AC3 (MP4, MKV, MOV passthrough)
        DTS (MKV passthrough)
        JPG
        PNG

  1. I’ve been running RaspBMC since I received my RPi and I’m very happy with the progress its making. The latest version is more stable, faster and generally nicer to use now. It’s played all 480, 720 and 1080 formats I’ve thrown at it without missing a beat, even high bitrate BluRay rips. Looks perfect on my 50″ plasma (which actually powers it via USB mind you). Embedded audio over HDMI is flawless, and streaming movies from my NAS is hassle free as well as media from a USB. For a bit of extra performance I’ve overclocked the CPU to over 900mhz and bumped the GPU and RAM both up by 50mhz, makes it a little bit snappier. Its slower and less featured than my daily full blown XBMC hardware, but a $35, dead quiet, power-sipping Media Center I can carry to work in my pocket for lunch time entertainment…cant go wrong with that.

  2. You said it was a codec issue with the foundation not licensing. Which foundation is that, XBMC or RasPi? I’m not familiar with XBMC, but will check it out more.
    Most of my stuff is in MP4. Will that play OK or is it under the same licensing? Personally, I can’t stand MOV.

    1. It’s actually both a codec issue AND a licensing issue. Because they didn’t license them, they don’t have the codecs.

      And it’s the RPi’s foundation’s “fault”. It would have made the device more like $60 with all that licensing.

      1. I think it’s an entirely understandable compromise, since the primary goal of the project wasn’t to make an htpc out of it.

        What I’d like to know is if it’s something we can individually tack-on, to get gpu acceleration for additional hw supported formats. I’d plunk down a few bucks for additional functionality.

  3. I am using the nightly build of RC2. the R-Pi has played everything I have thrown its way except WMV files. On those, I get audio and no video. There are some tips in the forums on changing some of the HDMI settings if you get audio but no video. Very pleased with the R-Pi and the direction the development is taking. Definately have gotten my $35 worth of entertainment out of playing with the R-Pi.

  4. I tried RaspBMC, but found it quite slow and relatively buggy.
    Someone in the #raspberrypi Freenode IRC channel suggested I take a look at OpenELEC, and I was blown away – it boots in about 10 seconds and so far has played anything I threw at it without problems.

    1. Hi,

      Are you sure is playing everything ? Which version are you using …
      For me, the video signal disappear when I try to launch a AVI file with omxplayer (black screen, and impossible to go back)

      With DVDPlayer, it works … but a lot of laggg on the video and the sound.
      (about DVDPlayer program => via SSH using TOP, I see 95% CPU usage of the RPI …)

      Any suggestion ?

      my version : OpenELEC-RPi.arm-devel-20120623232506-r11392.tar.bz2 (latest this monday, apparently a new one exist ..)

  5. Don’t have a Pi yet, but has anyone tried using a live transcoding UPNP/DLNA server like TVersity or PS3MediaServer, instead of just connecting to a Samba share. Even if it doesn’t work out of the box, all that should really be needed is a renderer profile to tell it what formats ARE supported, and mencoder/tsmuxer/whatever should be able to take care of the rest, given enough CPU cycles on the server.

  6. I’m also using OpenELEC version. It’s been great, just flash the image and boot! It has played files that my PS3 refuses to open. I’ve tried it using PS3 Media Server but had much better results just going direct to the files with an SMB share. Haven’t tried tweeking the setting in PMS yet.

  7. @Panikos:
    I had to search around for an MPEG-2 video; most of my videos are AVIs or MKVs with MPEG-4.
    I tried this MPEG-2 video and am sad to report that OpenELEC couldn’t play it: Sound worked, but there was no video. This might be to do with the fact that I was streaming across a WiFi network, but that seems unlikely as all my other videos stream fine.
    Nonetheless, I think that if you don’t need MPEG-2, the OpenELEC startup speed and responsiveness make it a better XBMC system than RaspBMC.

    1. “imho…” This can change from day to day because XBMC for RPi is in active development and not stable.

      OpenELEC uses the latest XBMC code to figure out problems with the actual development and help to improve XBMC, while Raspbmc often sticks on older versions.

      Raspbmc overclocks your device per default, OpenELEC dont does such things.

    2. “imho…” This can change from day to day because XBMC for RPi is in active development and not stable.

      OpenELEC uses the latest XBMC code to figure out problems with the actual development and help to improve XBMC, while Raspbmc often sticks on older versions.

      Raspbmc overclocks your device per default, OpenELEC dont does such things.

      1. looking into it further sraue1977 the developer of raspbmc says that 800mhz is verified safe by someone working at broadcom, so why does it even matter.

        also they have nightlies how is openelec got newer xbmc code?

  8. I have been using .avi, and .mp4 on my Raspberry Pi running Raspbmc with no issue! I love it so far, I am unfamiliar with what else xbmc so I have alot more setup to do. I put debian on it at first, but like playing with the Raspbmc more so far.

    1. That would have been my thinking too, since a P150 could do it… but as I’ve been discovering with my own projects, the core part of ARM when it comes to anything with a LOT of heavy math clock-per-clock is inferior to even a 486DX, much less anything with MMX or SSE. The SIMD instructions are too task specific limiting what you can do with them, the ALU is a toy compared to a 1980’s 8087 (apart from the clock speed), and the VFP extentions are still only 32 bit, barely able to handle the minimum requirements for a GLFloat.

      I mean lands sake, no double or extended precision? They’re joking, right?

      After two days playing with code for a 1.5ghz ARM 8 on a tablet, I couldn’t help but thinking “This is 2012, right?”

  9. Like others, still dealing with menu lag on Raspbmc, but it’s a small price to pay, although can be frustrating. Looking into Openelec which seems to be even lighter and a good alternative to Raspbmc.

  10. As Alex says, the Foundation has now made it possible to buy an MPEG license for the Pi for a couple of dollars. Installation process is very painless – you need to get the CPU ID from/proc/cpuinfo, enter it into your order and you receive a personalised key by e-mail. Create or update your /boot/config.txt file with the key line as in the e-mail and DVD video is yours for the asking!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.