Cooking with Linux - Watching the Community Network

Use your Linux system to watch TV, record home movies and listen to FM radio.

Yes, François, that is me—20 years ago, but still me. What are you smiling about? I don't look quite that strange. Yes, I've been told that I look like I am doing a Carl Sagan impression, but that was simply the way I spoke, mon ami. Stop smirking. Our guests will be here any moment and with this issue's feature on community networks, I am going to need you to take good care of them.

Ah, but they are already here. Welcome, mes amis! François—to the wine cellar. The 2000 Cabernet Sauvignon Stellenbosch from South Africa is drinking quite nicely right now. Please fetch it, tout de suite. Please, everyone, sit and make yourselves comfortable.

I was showing François a tape from a documentary I did a number of years ago with some friends. I used to volunteer at the community cable station where I operated the cameras and worked the video board from time to time. It was a great deal of fun. One summer, with the equipment from the station, my friends and I produced a documentary that I wrote and narrated. For years, I've had the tape floating around, and now, using this issue's feature as a springboard, I thought it might be nice to convert it to a more permanent, digital format.

Playing video from an analog source can be done with the use of a TV tuner card. The card I used is a Hauppauge WinTV card, based on the btv878 chipset. You can ignore the card's name safely, mes amis. It works quite well with any recent Linux kernel. The card I bought is well supported, and a driver for it was loaded automatically on my Mandrake 9.1 test system (it also worked beautifully on another Debian system). The Linux bttv kernel module, or driver, supports a large number of TV tuner cards. A quick look at the CARDLIST file in the kernel documentation (/usr/src/linux/Documentation/video4linux/bttv/) will give you an idea.

Welcome back, François. Please pour for our guests...and quit smirking, it isn't that funny. You see, mes amis, my faithful waiter is amused by the sight of myself all those years ago. Ignore him and enjoy the wine while I show you how this works.

Watching television is obviously the point, but these TV tuner cards sometimes have FM radio receivers as well. Watching television while you are trying to work might qualify as distracting. Listening to the radio isn't as problematic. An FM radio program that caught my eye is Gerd Knorr's frightfully simple radio program (bytesex.org/xawtv). This is an ncurses-based program that comes as part of the xawtv source package. I make a point of specifying source here, because the package, called radio, is separate from xawtv when you work with RPMs.

Figure 1. radio: Simple and ncurses-Based

From the command line, type radio -s. With the -s option, the program displays the frequencies it visits while looking for stations, then starts unmuted. If you use the -i option instead, the program writes a .radio file in your home directory with the stations and frequencies it identified. Then, you can go back and edit this text file to give more interesting names to the stations. You also can start the radio on a favorite station by passing the -f option (radio -f 99.10).

There you are, a local community network broadcast on that most venerable of medium, radio. I should point out that I did run into some interesting problems here. My Hauppauge card did not play sound directly. It was possible to plug my speakers right into the card's audio out port, but I wanted the control in the system. To do this, I had to use the accompanying cable to connect the tuner card to my system's sound card. I then used alsamixer to raise the levels of my line-in and all was well. Depending on your TV tuner card, you may have to do the same. This will be particularly important when we start talking about recording.

Another radio project you should have a look at is GQradio, created by John Ellis (gqmpeg.sourceforge.net/radio.html). GQradio features a slick graphical interface, autotune, station presets and more. The site offers Red Hat RPMs as well as source. Compiling the program requires the GTK+ and gtk-pixbuf libraries. Beyond that, it's the classic extract and build five-step:

tar -xzvf gqradio-0.99.0.tar.gz
cd gqradio-0.99.0
./configure
make
su -c "make install"

If you run the gqradio program from the command line, you'll notice something interesting the first time:

$ gqradio
Creating dir:/home/mgagne/.gqradio
Creating dir:/home/mgagne/.gqradio/skins
______________________

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix