eRacks Systems Tech Blog

Open Source Experts Since 1999

I’ve been evaluating various open source media center applications in an effort to put together a new unit and had the opportunity to weight the relative pros and cons of each. Below, you’ll get to read about my findings and hopefully learn a little bit about what’s out there. So, without further ado, here’s a list of the packages I looked at, in order of preference.

1. Boxee
(http://www.boxee.tv/)

Boxee was my first pick. It has a slick interface, can draw from a variety of different sources such as Hulu and Youtube out of the box, makes available a plethora of plugins (called “applications”), is easy to navigate and has an interface very suited for a remote control. The biggest con for me is that, while the project itself is open source, in order to use it, you need to register for an account on their website.

2. XBMC
(http://www.xbmc.org/)

XBMC, which stands for “X-Box Media Center,” was originally designed for the X-Box and has since been made available on the PC. It sports a very polished interface, and like Boxee, is easy to navigate and makes using a remote control easy. Support for online sources such as Youtube is missing out of the box, but there are plenty of plugins to help. Unfortunately, unlike Boxee or Moovida (which is next in our list of applications), you have to go to external sources in order to find them (check out http://www.xbmczone.com/). Supposedly, it’s easy to install a plugin once you’ve downloaded it, but the directions I found online differed from how things worked with the latest version, and I ended up having to install plugins manually by unzipping them and copying the files to the right directory.

3. Moovida
(http://www.moovida.com/)

Moovida, formerly known as Elisa, is another media center option. Like Boxee and XBMC, it sports an easy to navigate interface suited to a remote control, and unlike XBMC, integrates the process of finding, installing and updating plugins a part of the application itself. The reason why I rated this one below XBMC is that there aren’t a lot of plugins available, and because the interface to XBMC is, in my opinion, slightly more polished.

4. Miro
(http://www.getmiro.com/)

(My reason for rating Miro at the bottom isn’t that Miro is a bad application. In fact, I enjoyed using it. It comes with support for many video feeds by default and does a good job of organizing media. My problem, for our purposes, is that it’s not such a great application for set top boxes. The UI is easy to use, but I don’t think it would be as friendly when hooked up to a TV with a remote control. Also, it’s difficult to add sources such as Youtube, as you have to manually add RSS feeds for the channels that interest you. Nevertheless, it’s a useful application, and I recommend giving it a try.

August 6th, 2009

Posted In: media center, multimedia, Open Source

Tags: , , ,

2 Comments

Imagine having the technology to store your music, movies and pictures in a central location and to access them from anywhere in the house. Even better, imagine that you can do this with little cost for hardware and zero cost for software. Not only is it possible, it’s never been easier.

The Network

In order to be able to access your central media repository, you’ll need to connect your computers to a network. With wireless networking, you can cheaply connect your machines almost anywhere in the house without having to run any cable. For the minimal configuration of one server (your media repository) and one client (the system connected to your home theater that lets you actually use the media), one wireless router and two wireless adapters will do. Even better, if the wireless router sits near the server, you can directly connect the two via a cable, saving you the cost of one wireless adapter.

The Hardware

Nowadays, with storage so plentiful and CPUs that are so powerful, it really doesn’t take much money to get good results, which is fortunate for those of us who have been negatively impacted by the downward turn in our nation’s economy. On the server side, a modest Intel Core 2 Duo with anywhere from two to four gigabytes of memory will do, and with one terabyte hard drives falling below $100, you should be able to save even more money. On the client side, with the new Intel Atom CPU, which is powerful, compact, quiet and highly energy efficient, you can build a thin client that sits snuggly atop your entertainment center.

The Software

Media center software has grown increasingly popular, and the open source movement has kept up nicely with easy to install, easy to use applications.

For the operating system on both the client and server side, you have a plethora of Linux distributions to choose from, Ubuntu (http://www.ubuntu.com/) being our recommendation. Then, on the server side, you’d simply have to configure your system to share your files over the network. On the client side, applications for managing your media include XBMC (http://xbmc.org/), Elisa (http://elisa.fluendo.com/), Entertainer (http://www.entertainer-project.com/) and MythTV (http://www.mythtv.org/ — note that MythTV is a little more involved with regards to configuration and has components that must run on the server side.)

Conclusion

With hardware becoming cheaper and more powerful, and with the added bonus of using free software, a capable home entertainment system can be had for a minimal investment. And, of course, eRacks specializes in providing its customers with the resources they need, whether it be selling systems pre-configured to your specifications or offering consulting for more difficult projects. Contact eRacks today and find out what we can do for your home!

March 24th, 2009

Posted In: media center, multimedia

Tags: , , , , , , , , ,

One Comment

I recently purchased a Vidego28 handheld MP4 player with a 2.8” display – which is actually a rebranded ONDA VX858 – and discovered that it has very specific requirements for the videos it plays.

The manufacturer provides a Windows binary-only utility for converting your videos to something the Vidego28 can read, but because I don’t use Windows, and because I prefer using the command line for automating these sorts of tasks, I immediately set out to discover exactly what format my videos should adhere to.

Googling around, I found that the videos it plays should be 12bpp XviD encoded AVIs at or below 24 fps (frames per second) with a maximum bitrate (for the video) of 800kbit/s and a resolution of 320×240 (which is the size of the display, in pixels.) I also found that the audio portion of the AVI should be encoded in the MP2 format. Using mencoder (http://en.wikipedia.org/wiki/MEncoder), I cobbled together the following command to do the job, partly from experiment and partly from what I had found in someone else’s blog (all on one line):

mencoder -mc 0 -noodml inputfile.avi -of avi -o outputfile.avi -ofps 24 -vf-add scale=320:240 -vf-add expand=320:240:-1:-1:1 -srate 44100 -ovc xvid -xvidencopts bitrate=400:max_bframes=0:quant_type=h263 -oac twolame -twolameopts br=160

At this point, I had partial success. I was able to take my videos and convert them to a format the Vidego28 could read. The problem was that almost immediately during playback on either my computer or the MP4 player, the audio and video became so out of sync that it was impossible to make use of the files mencoder produced. I spent hours on Google looking for a solution and tweaking the above command, without success.

At some point during my experimenting, I discovered that ffmpeg (http://ffmpeg.mplayerhq.hu/) could produce AVI files as well, and decided to give it a shot. Unfortunately, the files it produced were not in a format the Vidego28 could read, but out of curiosity, I decided to see what would happen if I used mencoder to take the output of ffmpeg and re-encode it per the original command I had tried earlier, since the files ffmpeg produced were in sync when played back on my laptop. To my astonishment, for whatever reason, mencoder was able to output an AVI in which the audio and video remained at all times in sync when played on the Vidego28!

Finally, I decided to write a simple script so that I could automate the process of calling ffmpeg, followed by mencoder, the result of which is listed below:

vidego.bash:

#!/bin/bash
FPS=$1
INPUT=$2
OUTPUT=$3

# Make sure all the required arguments were passed
if [ -z $FPS ] || [ -z $INPUT ] || [ -z $OUTPUT ]; then
   echo
   echo "Usage: $0 [fps] [input file] [output file]"
   echo
   exit 1
fi

# Make sure $FPS is valid
if [ $FPS -lt 1 ] || [ $FPS -gt 24 ]; then
   echo
   echo "error: frames per second should be between 1 and 24"
   echo
   exit 1
fi

# Let's do our stuff!
ffmpeg -i $INPUT -r $FPS /tmp/$OUTPUT

mencoder -mc 0 -noodml /tmp/$OUTPUT -of avi -o $OUTPUT -ofps $FPS -vf-add \
scale=320:240 -vf-add expand=320:240:-1:-1:1 -srate 44100 -ovc xvid \
-xvidencopts bitrate=400:max_bframes=0:quant_type=h263 -oac twolame \
-twolameopts br=160

rm /tmp/$OUTPUT

The above script takes as parameters the desired FPS (which should be between 1 and 24), the source file (which can be any format that mencoder supports) and the destination (the file that will go on your MP4 device). A sample call would look like this:

vidego.bash 24 input.file output.avi

Just copy output.avi to your Vidego28 (or ONDA VX858), and you’ll be good to go!

April 28th, 2008

Posted In: multimedia

Tags: , , , , , , , ,

3 Comments