VDR/en

This article contains instructions on how to prepare Gentoo Linux for DVB and VDR.

What is DVB?
DVB stands for Digital Video Broadcasting. DVB describes methods to transfer digital data of TV, radio, interactive services like MHP, EPG and teletext. Through data compression with MPEG-2, or H.264 for HDTV, it's possible to transfer several channels on the same frequency. The more data compression, the more channels can be transferred, but you pay it with quality loss.

DVB can be transferred in several ways. The trailing letter identifies the method of transfer, e.g. DVB-T for terrestrial transmission. There are several more types:


 * DVB-S for transmission over satellites
 * DVB-C for transmission over cable
 * DVB-H for transmission to mobile devices (terrestrial)
 * DVB-IPI for transmission over IP based networks, e.g. internet
 * DVB-RC(S/C/T) return channel for the transmission of data services, e.g. broadband internet

Types and requirement of DVB cards
Besides the different methods available to receive a DVB stream, the cards are classified by their type of produced output. There are cards with a decoder implemented which offer direct access to the stream by the device. These cards are full featured cards. Other cards have no own decoder implemented and require a software decoder on the computer and are budget cards. This implies higher system requirements. The computer's CPU should run at at least 600 MHz, and have at least 256MB of RAM. This list is useful for identifying the card.

Configuring the kernel
First, ensure that the kernel supports DVB and the DVB device. Since kernel version 2.6 the necessary drivers are included. Check the kernel configuration and make sure the following options are selected as a static driver or as modules.

Additionally select the proper driver for the system's hardware. To find the right module for the card mark every driver as module. If a PCI card is being used, then install the package if it has not been previously installed. This will provide a helpful tool called lspci. For built-in drivers or if there is no PCI card in the system then skip this step and continue with Checking the kernel output.

After booting the new kernel, we run  to list the required modules.

In this case the module  needs to be loaded. Add the module's name to the file:

Checking the kernel output
It is recommended to mark every driver as module, so that the required module can be added dynamically, especially if it is unclear at first which module should be added. If the module name is known then select the driver as a built-in driver. Compile the kernel, install the modules, and boot the new kernel. Verify the kernel has successfully detected the PCI card by using the dmesg utility.

If you own a TerraTec Cinergy T2, your output might look like this:

Installing VDR
To install VDR simply emerge it:

Installing the remote control
There are at least two ways to control VDR via an infrared remote control. If the TV card has an onboard IR receiver then  can be used. Otherwise, use LIRC.

Installing vdr-remote
Install the plugin via an emerge command:

When using the remote plugin for the IR port on a DVB card everything should be fine with the default configuration. It automatically uses the input device which has "dvb" in its name. For more advanced uses take a look at file.

Alternative: installing LIRC
If the card can be remotely controlled but managing it via  is not desired, then LIRC should be configured. LIRC interprets the pressed keys and returns a name for each one. A program that supports LIRC waits for key events and runs the action configured in the configuration file, mostly stored in the configuration directory of the executing program (e.g. mplayer loads the file ). Before LIRC is installed add  as a USE flag and add a special variable called   to  Use this list to find the proper arguments for the new  variable.

At first we have to define each key code with a name. Most supported remote controls are configured already, take a look at the remote list. Download the required file and save it as. Now we have to find out where to access your remote control. Run the following command to get a list of the current input devices (make sure your device is running).

In this case the Terratec Cinergy T2 device plugged in, so the device can be accessed over. Replace  with the matching device listed in the output.

lircd needs to know the device to use. Add the following line to the file. Remember to replace  with the name of the driver and   with the actual device:

It's time to start :

Now it should be possible to watch lircd capturing and decoding key presses. Run the irw command. Stop it by pressing + when enough keys have been pressed.

Next, add it to the default runlevel so that it starts automatically at boot time:

To be able to use the remote control, LIRC support must be enabled in VDR. Add the following line to the file:

Video output methods
Now decide on one (and only one) of the following video output devices which show the picture and the overlayed On Screen Display (OSD).

Hardware decoding: full-featured DVB cards
Install when using an TechnoTrend Premium S2-6400 Twin HD, or general hardware decoding for SDTV and HDTV (MPEG2 and MPEG4 AVC/H.264):

For Fujitsu_Siemens, Hauppage WinTV and TechnoTrend Premium S2300 and cards based on this reference design, or general hardware decoding for SDTV (MPEG1 and MPEG2):

Hardware decoding: DXR3/Hollywood+ cards
To use a DXR3 card for VDR output the  plugin is needed:

The em8300 module need some configuration that depends on the exact revision of that card.

Hardware decoding: PVR350 cards
Since PVR350 cards have an onboard MPEG-Decoder chip it should be used to its full potential. In order for this to happen the  plugin is needed. If  is not yet installed emerge should automatically install it. To have the  module loaded at boot time add it to the  list:

Software decoding: vdr-xineliboutput
Some people prefer to use, because it can also work remotely. We'll now teach you how to configure  on your host and client. First, the host setup:

Adding command line options at this point is crucial for xineliboutput to work. For more options, see.

The next step is to edit. This file describes a number of host addresses that are allowed to connect to the SVDRP port of the video disk recorder running on the host system.

If you only want to use  to view the picture on the same computer as the one running VDR you can continue with creating the channel list.

Otherwise, simply emerge on the client:

Later (after having started VDR) the vdr-sxfe xvdr://hostname</tt> command can be used to connect to the VDR and view its picture and OSD.

Creating a Channel List
To make VDR really useful you need to create an appropriate channel list. There is more than one way to get a working list of channels (besides downloading one). The channel list installed by default is for DVB-S reception on Astra on 19.2° E.

Using dvbscan from linuxtv-dvb-apps
Find the correct frequency list for your region and type of reception. These files are stored under. For reception with DVB-T in Germany, Berlin you need to use.

Using vdr-reelchannelscan
First, delete the contents of the existing channel list:

Channels for systems using vdr-analogtv
You'll probably want to configure your channels at this point. The VDR project provides you with some examples which can be found at, as long as you've installed >=.

Starting VDR
After having all basic software parts ready on the system you need to configure VDR with its OSD.

If a hardware decoder for picture output is used, then the connected TV should be turned on. When using software output the client for this must be started after VDR.

First, you should learn your key definitions; that is, connecting keys on your remote control to VDR's internal commands.

We begin with starting VDR:

For users of vdr-softdevice:

For users of vdr-xineliboutput:

The most useful keys for VDR are:


 * Cursor keys (Left/Right/Up/Down)
 * Menu/Exit/Ok
 * Colors (Red/Green/Yellow/Blue)
 * Number keys (0-9)

Now that the basic installation is over, you need to configure VDR. Switch to your output screen and follow the on-screen instructions. VDR asks you to press various keys on your remote control to learn the correct key codes. If you don't own a remote control, you can use your keyboard.

Now add the VDR init script to the default runlevel to get it started each time the computer boots: