Setting up LiveTV, TVGuide and TVTimer of the NMM Multimedia-Box

July, 6th 2005

Copyright (c) 2002-2005
  NMM work group,
  Computer Graphics Lab,
  Saarland University, Germany,
  http://www.networkmultimedia.org

Permission is granted to copy, distribute and/or modify this document under
the terms of the GNU Free Documentation License, Version 1.2 or any later
version published by the Free Software Foundation; with no Invariant Sections,
no Front-Cover Texts, and no Back-Cover Texts. A copy of the license can be
found in the file COPYING.FDL.

This document describes the setup of the MMBox, especially LiveTV using Haupauge WinTV PVR 350 and DVB-Cards, the TVGuide (Electronic Programming Guide - EPG) and the Videorecorder, called TVTimer.


Table of Contents
1. Setting up LiveTV in the MMBox
1.1. Configure the TVCards
1.2. Edit the MMBox-Configuration-File
1.3. Create the global channel-configuration-file
2. Setting up a Videorecorder as a Service
3. Setting up TVGuide - Basic Functionality
4. Setup of a distributed TVGuide
5. Connecting TVGuide, LiveTV and Viderecorder

1. Setting up LiveTV in the MMBox

The MMBox supports LiveTV using different sources. These sources can be a Haupauge WinTV PVR 350 using the ivtv-driver or a DVB-Card supported by the linuxtv-driver. Note, that the linuxtv-drivers are already integrated into Linux-Kernel >= 2.6.0.

1.1. Configure the TVCards

To setup the use of the Haupauge WinTV PVR 350, follow these steps:

  • download and install xawtv from http://linux.bytesex.org/xawtv/

  • if xawtv is installed, execute scantv with correct parameters (see manpage), eg.

    scantv -c /dev/video0 -o ivtv.conf
    (for correct channel-assignment ask your local cable provider or refer to the Internet.)

  • copy the generated or manually created file to <nmmdir>/resources/ivtv

To use DVB, follow these steps:

  • edit the channels.conf-file in <nmmdir>/resources/dvb by adding/removing wanted/unwanted channels. The syntax of the channels.conf-file is described at the linuxtv.org-Homepage

1.2. Edit the MMBox-Configuration-File

To use these cards in the MMBox edit the MMBox-Configuration-File (.mmboxrc). First specify the number of TVCards you want to use by setting the tvhosts_number-variable.

tvhosts_number = 1
After that you have to specify a GraphURL for each host. See the Clic-Documentation for details about GraphURLs. E.g. to use a DVB-card located in your local PC you have to set
tvhost_0=dvbtv://localhost
Also you are able to use TVCards that are located in remote computers. In order to use these, a serverregistry must be running on the remote machine (serverregistry is located in <nmmdir>/apps/registry). E.g. the value of tvhost containing a remote IVTVCard must look like this:
ivtv://<remote-computer-name>:<port>

1.3. Create the global channel-configuration-file

After editing the mmboxrc, you have to create a global channels-file. It contains information about which channel is available on which TVCard. By default it is located in $HOME/.nmm/tv_channels.xml. To create this file execute the tool

channelReader
which is located in <nmmdir>/apps/mmbox. If your MMBox-Configuration-File is not located at the default place, you have to specify the location by calling the channelReader with the '-c'-option.
channelReader -c <location of your mmboxrc>
To store the global channels-file somewhere else, call channelReader with -f
channelReader -f <some path>/<filename>
In this case you also have to tell the mmbox where to find the global channels-file by updating the variables tvChannelFile, recorderChannelFile and dvbepgChannelFile (if you want to use DVB-EPG) accordingly.

WARNING: Whenever you change, remove or edit one of the tvhost-variables you have to call channelReader again.