Linux.com

Feature

Set up a Freevo media center

By Manolis Tzanidakis on June 29, 2006 (8:00:00 AM)

Share    Print    Comments   

I've been a happy MythTV user for a long time -- you can check out my review of version 0.19 -- but lately I've been feeling that something is missing. MythTV is great for watching and recording TV, but I watch TV less than four hours per week. On the other hand, I love music, and MythTV offers no easy way to listen to music from various sources, such as audio CDs and Web-based and FM radio stations. After fiddling with custom solutions based on MPD and MPlayer, I decided to look for an alternative -- which led me to Freevo.

Freevo is like a window manager -- an interface controlled by a remote control or the keyboard -- that provides access to various media. It is written mostly in the Python programming language, which makes it hacking-friendly.

Everything you expect to find on a media center platform is present in Freevo; you can listen to music, view pictures, and watch TV and video. Freevo offers no internal player, but relies exclusively on external programs like MPlayer and Xine for playing media files and viewing TV. I use MPlayer for all media formats except DVD video playback, since MPlayer currently has no support for DVD menus. Xine fills that gap nicely.

For TV viewing, you can use MPlayer and Xine, or if your tuner card is supported you can use tvtime instead, which claims to offer higher picture quality. Unfortunately tvtime doesn't support my TV card. Freevo uses MEncoder for recording TV, and it can use TV guides in XML format, which can be downloaded off the Net using XMLTV or similar programs.

The music player supports audio CD playback, Web and FM radio, and of course traditional digital formats such as Ogg Vorbis and MP3. With the audio.detach plugin -- which is installed but not enabled by default -- you can even have music playing in the background and do other stuff like play games or view pictures at the same time. The image viewer, in addition to the expected slide show feature, also allows limited image editing, such as rotation and deletion. The games plugin supports console and arcade emulators and can be configured to run modern Linux games or Windows games emulated with Wine.

Figure 1
Figure 1: Click to enlarge
I installed Freevo on the same system I used for MythTV -- a home-built box with a 1.8GHz Pentium 4 CPU, 512MB RAM, 80GB hard disk, ATI Radeon 9200 video card, and Hauppauge PVR-350 TV/radio tuner. If you plan on using HD video resolutions you should get a faster system. My media center box runs Debian Testing (Etch) with a few packages from Unstable and MPlayer from the debian-multimedia.org unofficial repository.

I've found Freevo to be quite stable. The only crash I had was when I was listening to music and at the same time viewing a slide show of some high-resolution photos, but I wasn't able to reproduce the problem. Since I used to have similar problems with MythTV I suspect that the problem is caused by ATI binary drivers and not Freevo.

Installation and configuration

The Freevo project offers binary packages for most popular GNU/Linux distributions. Installing from source should not be a problem since Freevo is a Python program and requires no compilation. The difficult part is to install its dependencies.

In order to finish the installation you must run freevo setup (the Debian package did this automatically in my case) to set up basic things like paths of external programs, TV system, and the geometry of your display. Freevo does not require an X server and can also run on a frame-buffer device -- with video cards from vendors such as Matrox -- so getting the geometry right is essential.

Figure 2
Figure 2: Click to enlarge
If you're used to MythTV and run Freevo for the first time, you may wonder where the Setup menu option is; there isn't any. The only things you need in order to configure Freevo are a text editor and lots of patience. Start by creating a .freevo directory in the home directory of the user who will run Freevo, copy the file local_conf.py (installed in /etc/freevo by the Debian package) into it, and then open it. You should also open the freevo_config.py file (usually installed in /usr/share/freevo), which contains the default parameters, as a reference for all available options. Do not edit it, though; make modifications to the local_conf.py file instead.

If you're a newcomer to the Unix world, this configuration process might seem peculiar, but on the other hand, Freevo can be customized extensively. You can select different options for MPlayer for each media file extension, disable a specific function -- for example, TV, if you don't have a TV tuner card -- or turn off de-interlacing for TV, among other options. Freevo is quite modular -- almost everything is a plugin. In order to get a list of the available plugins and track which ones you've enabled, issue the command freevo plugins -l | less; to get more information about a specific plugin and how to activate it, run freevo plugins -i plugin_name . The command freevo -h shows all available options. Additional plugins and skins can be downloaded from the add-ons page.

Everything you need to know about installing and configuring Freevo is available in the project's documentation. Freevo has myriad options; we'd need 10 more articles to cover them all. Read the docs carefully and don't be afraid to get your hands dirty.

Turn it on

After tailoring the configuration to your liking, running the program is just a simple freevo start away. The Debian package starts it automatically using init scripts, but I chose to disable them (with update-rc.d -f freevo remove) and run it manually instead. If your configuration file is error-free you should be greeted by the main menu and be able to browse through your media collection; if not, check the logs (by default /tmp/freevo/main-1000.log) and try again. Forgetting to add just a single tiny comma is enough to break things. You can exit the program with freevo stop, or select Shutdown on the main menu. Note that the TV recording server does not start at the same time as the main program -- you have to manually activate it by issuing freevo recordserver start.

If you are spoiled by MythTV and its TV time-shifting, multi-tuner card support, and client/server architecture, you should either stick to MythTV or wait for the version 2.x of Freevo, currently in development. At the moment, TV support in Freevo is quite spartan, with the exception being that another system can be used as a TV recording server. Nevertheless, basic TV viewing and recording works without problems. I've managed to watch and record a few World Cup football (or soccer, for American readers) games these days.

Though it lacks advanced TV features, I prefer Freevo over any media center program I've tried so far, but, as I said, I rarely watch TV. MythTV is clearly a winner in that area; if you like TV and plan to create a digital video recorder, you should choose it instead. On the other hand, MythTV lacks some features that Freevo excels at. Version 2.x of Freevo seems promising -- give it a shot if you feel adventurous.

Share    Print    Comments   

Comments

on Set up a Freevo media center

Note: Comments are owned by the poster. We are not responsible for their content.

MythTV

Posted by: Anonymous Coward on July 01, 2006 12:26 AM
Ummm.... Doesn't myth have a plethora of plugins for things like music, photos, games and the such?

#

mythtv does have a cd/dvd player plugin

Posted by: Anonymous Coward on July 01, 2006 05:20 AM
It also has commercial skipping/clipping and neither Freevo nor DVR have this AFAIK...

#

mythtv is stuck on MySQL though

Posted by: Anonymous Coward on July 01, 2006 05:21 AM
There's a PostgreSQL patch for it, but the MySQL creator refuses to accept it into the tree for inclusion in builds, even though MySQL isn't transaction safe and can get corrupted if your PC crashes while it's writing the database<nobr> <wbr></nobr>:-P

#

Re:mythtv is stuck on MySQL though

Posted by: Anonymous Coward on July 06, 2006 03:16 AM
Hmm, I thought I was the only one that wanted Postgresql. The mythtv wiki claims Postgres support is slated for v0.20, but Isaac is a nut-case and you never know.

#

Re:mythtv is stuck on MySQL though

Posted by: Anonymous Coward on December 11, 2006 08:49 AM
LOL, I keep looking at mythtv hoping it'll get postgres support, but until then I'll stick with media portal or somthing...

#

Re:mythtv does have a cd/dvd player plugin

Posted by: Anonymous Coward on July 06, 2006 08:10 PM
If you don't watch much tv - my guess this option won't matter much.

#

Re:Where's the article on setting up X on a TV?

Posted by: Anonymous Coward on July 03, 2006 08:13 AM
Assuming that the video card you are using has dual outs...it isn't that hard to configure. I'm not going to do the google searching for you, as it sometimes depends slightly on your distro or video card...but really...when it comes down to it X is X no matter which unit it's on. Aside from the research of how to do it...it takes less than 15 minutes. Thats an X configuration issue, not a freevo feature problem. I believe you are upset with these reviews because you are mixing the two.

#

Re:Where's the article on setting up X on a TV?

Posted by: Administrator on July 03, 2006 02:03 PM
I realize it is not a freevo feature problem. It's a review thoroughness problem. I've done the google searching, and it isn't as easy as you might think. Other than recommendations to google for the information, the advice I have most frequently received is to follow a link off the mythtv site that explains how to grab the TV's video resolutions by installing a harddrive running Windows and the PowerStrip application. Seems like a lot of trouble to go through, if it is a configuration problem that takes less than 15 minutes to fix. A thorough review or "how-to" type article would not only include information on configuring freevo/mythtv, but also configuring X for a television and configuring lirc for a remote.

#

Re:Where's the article on setting up X on a TV?

Posted by: Anonymous Coward on July 04, 2006 07:57 AM
Well I dont want to sound glib, but for me to go from myth on crt to myth on tv was simply a matter of running the (proprietary) ati video card configurator to switch from CRT only to TV/CRT. Then there was a simple matter of configuring MythTV's interface to taste.

this would be exactly what I would expect to do for any app and I would be searching for information on this not as "TV Out for mythtv" but "TV Out for linux". Mythtv is flexible enough to allow you to configure it for whatever situation your video cards limitations have left you with.

The problem is TV OUT is a hardware specific problem. Infrared support is a hardware specific problem. Unless you plan on buying the same hardware as the reviewer you are going to have to invent your own experience. Your alternative is investigating each of the issues seperately. Mythtv Howto, TV Out with linux and GraphicsCardModel Howto, lirc and IRDevice howto.

#

Freevo

Posted by: Administrator on June 30, 2006 02:08 AM
I have been using Freevo for a few years now and I love it and also currently use it on a Debian Etch distro (Mepis 3.4). The one thing I did differently than the author is that I run "freevo recordserver start &" in a init script so that it automatically starts every time I boot up so I don't have to remember to restart the recordserver everytime I lose power and reboot my computer. There have been several times where I forgot to restart it when I rebooted my computer and missed recording something because I didn't have the recordserver running in the background. I tried messing around with MythTV, but I liked Freevo better. It's a pain in the a$$ to initially set up, but once it's up and running, it works flawlessly. And I always back up all my config files (/usr/local/freevo,<nobr> <wbr></nobr>/home/.freevo/ etc), so it's not a major issue to restore my settings whenever I upgrade or trash my system and have to reinstall everything.

#

Where's the article on setting up X on a TV?

Posted by: Administrator on July 02, 2006 02:15 AM
Over the last two or three years I have seen a number of articles praising mythtv or freevo or both. All of the articles mention how great these apps are for recording TV and playing it back. Unfortunately, all of these articles have also assumed that your mythtv/freevo box is attached to a monitor and you've got X configured for it correctly. None of the authors has ever thought that someone might - shock of shocks - attach their mythtv or freevo box to an actual TV using the video card's TV-Out connector.

What I'd like to see is an article on getting X to work on PAL/SECAM/NTSC TVs and then using mythtv or freevo to turn your PC into a PVR. I am tired of authors assuming that I gather the family around the 19" monitor on my computer desk to watch all those great recorded shows. Or, has everyone but me replaced their 30" television with a 20" TFT monitor?

#

This story has been archived. Comments can no longer be posted.


 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya