VDR

From ArchWiki
Revision as of 21:13, 16 January 2009 by Franzb (Talk | contribs) (New page: Category:Audio/Video (English) Category:HOWTOs (English) ==Introduction== VDR stands for Video Disk Recorder, an open source software application to turn a PC into a digital video...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Introduction

VDR stands for Video Disk Recorder, an open source software application to turn a PC into a digital video recorder. This description does not fully explain what VDR is capable of. VDR does also implement all the functions of a modern set-top box to watch either live television or recordings. With the extensive amount of available plugins almost countless features like playing DVDs, playing audio and video files, having a look at your photo collection, at what the weather might be or if you have got any new email..., are available to extend VDR into a MMC (Multimedia Center) and to turn your PC into a HTPC.

On the other hand, VDR, being an excellent, some even say the best, software for dealing with watching and recording DVB, it has some flaws when it comes to using it as a MMC. That said, with Oxine exists a MMC which is capable of integrating VDR perfectly into its interface.

With its flexibility Arch Linux is perfectly suited for setting up VDR and customizing it perfectly to your needs. AUR , the Arch Linux User-Community Repository, does also provide PKGBUILDS for vdr and some of its most commonly used plugins and addons.

This article is going to show you how you can install VDR on your PC. The article will also deal with some plugins, on how to install and how to use them. The article will further give you an idea on how to extend VDR with plugins and addons, e.g., how to make VDR work within a network, i.e., watching TV and controlling VDR on a remote PC in the home network or even over the Internet if you happen to have an Internet connection with at least 150 kbit in the upload direction.

Outline of this wiki

  • Hardware Requirements
  • Installation of VDR
  • First steps
  • Plugins (still to do)
    • xine-plugin
    • live-plugin
    • remote-plugin (or LIRC as an alternative)
  • Integrating VDR in the Multimedia Center Oxine


Hardware Requirements

VDR is designed to work with a lot of different DVB cards. See the VDR wiki for whether or not your specific card will be supported. Let me just tell you that so called budget cards, i.e., cards without a hardware MPEG decoder work perfectly fine with VDR thanks to plugins like vdr-xine if your CPU is not too old (> 1 Ghz).

Installation of VDR

Well, thanks to AUR installing VDR is really simple, just get access to AUR and type

yaourt -S vdr


If you own one of the famous full-featured (with hardware MPEG decoder) DVB-S cards from Technisat (identical in construction to Hauppauge's Nexus and the cards of some other manufacturers), with the saa7146 chip you might have to do a little extra work since, at least on my PC, a wrong module got control of the card. On my computer the command "lspci -k" shows the following output:

03:02.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
	Subsystem: Technotrend Systemtechnik GmbH Technotrend/Hauppauge DVB card rev2.3
	Kernel driver in use: dvb
	Kernel modules: dvb-ttpci, snd-aw2

As you can see, two modules, dvb-ttpci and snd-aw2, are assigned to the card while only the former should. Simply add the unwanted one accordingly to the list in /etc/rc.conf

MODULES=(... !snd-aw2 ...)

A restart of the computer should do the rest. Another two things you might do before the restart: if you own one of those full-featured cards (perhaps also for some other cards) you do also need a firmware for the card to work, for this card the firmware is named dvb-ttpci-01.fw and should be placed into the folder /lib/firmware. Instead of restarting the computer you just can unload and load the kernel module dvb_ttpci. The second thing is to add yourself to the group "video" (gpasswd -a <username> video).


First Steps

Now you will have to customize VDR's configuration files to your needs. First of all you should edit the file /etc/rc.vdr and make VDR run with the privileges of a standard user.

VDROPTS="-u <your username> --lirc

Then make sure that the channels.conf in /etc/vdr concurs with the satellite your dish is pointing at.

Eventually, we want to make sure that we can submit controls to and can see the output (live tv and menu) of VDR. For testing it makes sense to control VDR with the keyboard. If you have a full-featured card there are two ways of doing so, if you own a budget card one possibility will be given.

Full-featured Cards Only

Install the package tvtime and the wrapper script vdr-tvtime-pl. Additionally, create the file /etc/tvtime/maps.txt with the following content (you might want to adopt the first column to your needs)

m		Menu
Enter		Ok
Backspace	Back
F1		Red
F2		Green
F3		Yellow
F4		Blue
+		Channel+
-		Channel-
u		Volume+
d		Volume-
c		Channels
t		Timers
r		Recordings
s		Setup
a		Audio
n		Info
f		TVTIME_f

Now you can start vdr (/etc/rc.d/vdr start) and also execute the script "vdr-tvtime.pl". If all has gone well you should get the output of VDR now and should also be able to control VDR through the keyboard.

Both for Full-featured and for Budget Cards

Install the VDR plugin vdr-xine, xine-lib-vdr and xine-ui-vdr from AUR. Edit the VDRPLUGINS entry in /etc/rc.vdr that the plugin is started and restart VDR (/etc/rc.d/vdr restart).

VDRPLUGINS=" 	\"-Pxine -r\" \
           "

Start xine once and close it in order that the file ~/.xine/keymap is going to be created. Now edit that file that at least the basic keys for controlling VDR will work, e.g.,

# jump to media Menu
Menu {
	key = m
	modifier = none
}

# menu navigate up
EventUp {
	key = Up
	modifier = none
}

# menu navigate down
EventDown {
	key = Down
	modifier = none
}

# menu navigate left
EventLeft {
	key = Left
	modifier = none
}

# menu navigate right
EventRight {
	key = Right
	modifier = none
}

# menu select
EventSelect {
	key = Return
	modifier = none
}

# VDR Red button
VDRButtonRed {
	key = F1
	modifier = none
}

# VDR Green button
VDRButtonGreen {
	key = F2
	modifier = none
}

# VDR Yellow button
VDRButtonYellow {
	key = F3
	modifier = none
}

# VDR Blue button
VDRButtonBlue {
	key = F4
	modifier = none
}

# VDR Command back
VDRBack {
	key = BackSpace
	modifier = none
}

Remember also that you will get an error if you assign a key twice, make sure therefore to change for instance the key for "SpeedFaster" from "Up" to "VOID".

Now you can start xine with the command

xine "vdr:/tmp/vdr-xine/stream#demux:mpeg_pes"

By adding the option -D for deinterlace the picture will look smoother.


Integrating VDR in the Multimedia Center Oxine

The "extra" repository provides the package oxine which unfortunately is compiled without the option to provide integration of VDR. On AUR, though, a package named oxine-vdr does away with this limitation. That said you should easily be able to activate VDR, just go to "Edit Settings", "Television" and change "type of television" to "video disk recorder".

Conclusion

I remember having almost given up on Arch Linux and VDR because of the problem with the wrongly loaded module for my full-featured card at the very beginning. This guide might help some of you to get also beyond the point of only trying to get it up and running. I can only encourage you to try out VDR as it is a really special software with a wide range of possibilities.

This guide is not intended to be complete and it never will. Hopefully with the cooperation of you guys it will become more and more detailed and useful.


References