What is VDR?

It's something like a luxury settop box/pvr on a pc to receive/watch/record/stream digital tv channels with epg (electronic program guide), timers, client/server networking, webinterface etc pp. So if you have a FreeBSD (or Linux, but that's not covered here :) ) server you can add one or more dvb/atsc tuner(s) connected to a satellite dish, cable tv or just a dvb-t antenna (or receive iptv streams without a tuner if your isp provides those tho I don't know if anyone tested `real' iptv on FreeBSD yet), browse/search epg, set timers for automated or manual recordings, and watch the streams/recordings elsewhere on your lan. Or if you have a FreeBSD desktop you can also connect a tuner there and do it all on one box - or just run a vdr client like vdr-sxfe (installed by the multimedia/vdr-plugin-xineliboutput port) or a client vdr instance using the streamdev-client plugin connected to a (possibly Linux) vdr server elsewhere on your lan.

So if your isp doesn't provide iptv,

(german info page: http://www.iptv-anbieter.info/) then you'll need a dvb tuner (or atsc, tho I have no idea if anyone tested that with vdr on FreeBSD yet) with corresponding v4l/dvb (`v4b') drivers, in most cases that means an usb tuner supported by the webcamd port:

And finally, if you want to compare vdr to other existing ports, it's a bit like MythTV - only most Linux users _I_ know prefer vdr over mythtv. :) (and vdr also doesn't use a rdbms so you don't have to worry about mysql etc.)

What we have in the Ports Collection.

VDR 1.7.x is the development branch so bugs are possible! (I mostly used it because the stable branch (1.6) doesn't support dvb-s2 and h264, and there sure are other projects where development branches are more buggy than with vdr. :) )

Tuners

Installation

pw groupmod webcamd -m vdr

# vdr
vdr_flags="'-Pxineliboutput --local=none --remote=127.1:37890' \
     -Pskinenigmang -Pfemon -Posdpip \
     '-Posdteletext --cache-system=packed --max-cache=128' \
     -Pstreamdev-server '-Plive -i127.1' -Pepgsearch -Pcontrol \
     -Pinfosatepg -Piptv -Pwirbelscan -Preelchannelscan -Pttxtsubs \
     -Pxvdr -Pextrecmenu"

vdr '-Pxineliboutput --local=none --remote=127.1:37890' -Pskinenigmang -Pfemon -Posdpip '-Posdteletext --cache-system=packed --max-cache=128' -Pstreamdev-server '-Plive -i127.1' -Pepgsearch -Pcontrol -Pinfosatepg -Piptv -Pwirbelscan -Preelchannelscan -Pttxtsubs -Pxvdr -Pextrecmenu

Video output methods

vdr-sxfe --hotkeys --video=vdpau --post tvtime:method=use_vo_driver,use_progressive_frame_flag=1 --audio=oss --reconnect xvdr+tcp://127.1

vdr-sxfe --hotkeys --video=xv --post=tvtime:method=Linear,cheap_mode=1,pulldown=0,use_progressive_frame_flag=1 --audio=oss --reconnect xvdr+tcp://127.1:37890

xine "xvdr://127.0.0.1#nocache"
kaffeine "xvdr+tcp://127.0.0.1:37890"
/usr/local/kde4/bin/kaffeine "xvdr+tcp://127.0.0.1:37890"

Software volume control

Streaming

mplayer -mc 10 -cache 8192 -demuxer lavf http://127.0.0.1:37890/
totem http://127.0.0.1:37890/

mplayer -mc 10 -cache 8192 -demuxer lavf http://127.0.0.1:3000/302
totem http://127.0.0.1:3000/302
vlc http://127.0.0.1:3000/302

softhddevice plugin

xhost +127.1

xhost +si:localuser:vdr

vdr '-Psofthddevice -d :0.0 -v vdpau' ..

vdr_flags="'-Psofthddevice -d :0.0 -v vdpau' ..

vdr '-Psofthddevice -x -v vdpau' ..

XBMC-PVR

Controlling the OSD: Keyboard (not for XBMC-PVR)

Controlling the OSD: LIRC (remotes)

Scanning for channels: w_scan

sed -i.bak -e s/:v/:V/ -e s/:h/:H/ -e s/:l/:L/ -e s/:r/:R/ channels.conf

Scanning for channels: via OSD

IPTV plugin

Webinterfaces

Final installation steps

Quick Start

By popular demand, here is how you should be able to get a new vdr installation up quickly:

portmaster multimedia/vdr-plugins

mkdir /some/dir/with/space/video
ln -s /some/dir/with/space/video /video
chown vdr:vdr /video

chmod o+x /var/cache

pw groupmod webcamd -m vdr

# vdr
vdr_flags="'-Pxineliboutput --local=none --remote=127.1:37890' \
     -Pskinenigmang -Pfemon -Posdpip \
     '-Posdteletext --cache-system=packed --max-cache=128' \
     -Pstreamdev-server '-Plive -i127.1' -Pepgsearch -Pcontrol \
     -Pinfosatepg -Piptv -Pwirbelscan -Preelchannelscan -Pttxtsubs \
     -Pxvdr -Pextrecmenu"

ls -lR /dev/dvb

echo 'vdr_waitdvb="NO"' >>/etc/rc.conf

/usr/local/etc/rc.d/vdr onestart

portmaster www/vdradmin-am

Troubleshooting

        :charset=ISO8859-15:\
        :lang=en_US.ISO8859-15:\

cap_mkdb /etc/login.conf

pw usermod vdr -d /video

me:\
        :charset=ISO8859-15:\
        :lang=en_US.ISO8859-15:\
        :tc=default:

TODO

VDR (last edited 2013-12-05 17:43:46 by JuergenLock)