Archives for category: Raspbmc

It’s been a painful ride, for sure: NFS has never been something I’ve needed, or even had a desire to test until now.

It pretends to be easy to configure, but I could not find beginning-to-end instructions for setting up NFS for XBMC when you’re not already an NFS native.

 

So; I created one.

 

This encapsulates all the stuff I’ve learned (we learn most through failing, after all), and hopefully will help anyone else that wants to accomplish the same thing. 🙂

Advertisements

A quick AHA moment came today when I was witnessing how achingly slow the RasPi was browsing through TV shows (Choose title, count to 7, choose season, count to 7, choose episode, etc).

So, aha; Went straight to XBMC > Settings > Video > File and deselected ‘generate thumbnails’.
Note: If anyone with clout reads this; this should be default for RasPi installs.

XBMC does not use the GPU to process thumbnails, which means that every time you are browsing a folder, it’s using the underpowered CPU to read one file, render a frame, and compress that in to an image, then do that for every thing else on the screen.

Edit: I don’t have the coding skills to put in the work to make this happen, but what makes sense is to split off a thread that generates the thumbnails with absolute low priority and ability to be terminated instantly (when someone presses play, or changes folders). The UI should also stop caring altogether when the thread is sent off: it shouldn’t wait, but just check in passively later to see if it’s done.

Definitely not priority, but it’s on the list 🙂

Navi-X on the Raspberry Pi with hardware accelerated playback

Since this is post #1, I’m going to say a few things so you don’t have to hear them later, and for us to set the goals.

Thanks

Thank you to everyone involved in this entire process: all the way from the people who created XBMC years ago, everyone who still commits code to any of the branches and forks, the designers builders and pushers of RasPi, the stars of the forums, and the online communities that they are a part of, the countless people who work unofficially behind the scenes; metadata miners, admin staff, open source software producers of all kinds… The list is really endless, and I won’t pretend to think that I could voice the respect and gratitude that is due to everyone involved.

A special shout out to people who take action in order to make their visions come true; you are inspiring in every moment.

First of all

…this entire blog is entirely as a work station to work towards my ultimate goals; I’m making it public just in case other people find it useful – I’m very open to being told I’m wrong (if you can back it up), or to new avenues of thought that I had not considered.
If some part of you simply wants to be more right than me; use that to fuel your own search, and don’t put any unnecessary energy in to letting me know.

Where we’re going

A Raspberry Pi that sits comfortably connected to the TV, with no extra storage of it’s own, getting all it’s information from another computer on the network.

The ability to watch “TV Channels” (Not live TV, but from the amazing work done by PseudoTV)

The ability to use a physical remote, as well as iPhones, iPads, and any other compatible device

Kid-friendly: All PG13+ material locked away

Repeatable; Anyone should be able to do this by following step by step instructions, and adding additional Raspberry Pis (Raspberries?) should be as easy as getting the parts and plugging them in.

What we have so far

  • CANADA
  • Mini-ITX server with Ubuntu (currently 12.04 headless)
    • Sickbeard on port 8081
    • SABnzb+ on port 8080
    • a VIP subscription to NZBMatrix
    • Software setup with the help of daemox at ainer.net
    • Plex media server, connected to the automated system and serving every other device in the house
    • 4TB of storage (more storage is always a consideration)
  • Raspberry Pi
    • A KICKASS Minecraft style case made out of Lego (Thank you, Seth 🙂 )
    • Class 10, 8GB SD Card (last tested using “hdparm -tT /dev/mmcblk0” at  40.26 MB/sec reads, and 16.36 MB/sec writes)
    • Small, flexible, wired keyboard
    • Logitech travel mouse
  • an Analog TV with (count em!) 2 RCA Inputs
  • an iPhone 4
  • an iPhone 3GS
  • an iPad generation 1
  • a Macbook Pro
  • an old Mac Mini (G4)

Current Opportunities

Right now, the raspberry feels very sluggish. Based on youtube videos of other people running OpenELEC, my performance is similar, but definitely slower.

No physical remote; using the XBMC remote on the iPhone has a nice tactile feel that’s missing in most other remote apps, but it’s still not very happy with the setup. Also, while apps are cheap, handing an iOS device to a 5 year old and doing something else for an hour is not ideal.

Media Scraping is brutal: Using SMB to point OpenELEC to the same folders that Plex uses has a habit of breaking pretty consistently: thumbnail issues, metadata not properly grabbed when the unit crashes as I test different videos never seems to recover, many episodes are missing and don’t re-scrape, etc.

I’m entirely open to the idea that I’m not being patient enough with the scraping, but I have left it overnight on a few occasions.

PLEX: While I’m over-happy the the state of Plex media server, the metadata, how the iOS devices work, and everything else, there’s very minimal work being put towards an open-source linux solution, which means the best we can do right now is PleXBMC.
While the work done on PleXBMC is to be entirely respected, there’s a lot lost in translation: Any remote app does not show the Plex media since Plex media is not pulled in to the library, and it feels very much like XBMC is getting in the way every time I interact with it

I fully expect no one to be reading this in any sort of time frame, so I’m cutting the salutation – go read a post already! 🙂