Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Feb 2011 18:49:57 +0100
From:      Juergen Lock <nox@jelal.kn-bremen.de>
To:        Juergen Lock <nox@jelal.kn-bremen.de>
Cc:        freebsd-multimedia@FreeBSD.org, freebsd-ports@FreeBSD.org, lme@FreeBSD.org, Alexander Leidinger <Alexander@Leidinger.net>
Subject:   Re: Final (I hope) Call for testing: vdr ports (watch/record/stream tv)
Message-ID:  <20110206174957.GA76134@triton8.kn-bremen.de>
In-Reply-To: <20110109003405.GA95330@triton8.kn-bremen.de>
References:  <20110109003405.GA95330@triton8.kn-bremen.de>

next in thread | previous in thread | raw e-mail | index | archive | help
I've done a small update:

	http://people.freebsd.org/~nox/dvb/vdr-20110206a.shar

- Renamed multimedia/vdrdevel to multimedia/vdr after discussion with
  another committer. (sorry forgot who...)

- Chased devel/upnp shlib version bump. (libupnp.so.4 > libupnp.so.5)

- Adjusted default LIRC_DEVICE so you can test my lirc port update and
  webcamd remote patch with passing just --lirc to vdr (instead of
  --lirc=/var/run/lirc/lircd), more details in this post:

	http://lists.freebsd.org/pipermail/freebsd-multimedia/2011-February/011625.html

- Bumped PORTREVISIONs.

If you are upgrading from an earlier shar I think you can do this:

	portmaster -o multimedia/vdr vdr-devel-1.7.\*
	portmaster vdr_plugin\*

On Sun, Jan 09, 2011 at 01:34:05AM +0100, Juergen Lock wrote:
> Call for testing - vdr 1.7.16 with a bunch of plugins:
> 
> 	http://people.freebsd.org/~nox/dvb/vdrdevel-CFT-20110108a.shar
> 
> [Main news:
> 
>  - Finally added back the missing locales to plugin ports so
>    non-native speakers may get some more local language in vdr
>    (you can set the osd language under Setup -> OSD - not everything
>    has been translated still tho.)
> 
>  - Now added the upnp/dlna plugin port to the combined shar after
>    committing the bugfix patches it needs to the devel/upnp port -
>    the plugin is still alpha and if you want to test it the remaining
>    notes in my original thread still apply:
> 
> 	http://lists.freebsd.org/pipermail/freebsd-multimedia/2011-January/011531.html
> 
>  - Changed xineliboutput to always build with opengl and libvdpau,
>    opengl still uses more cpu than xv for me here with video-ati
>    and vdpau I still cannot test myself, it is also likely the
>    ffmpeg port needs to be built with the vdpau knob on for it
>    to work.
> 
>  - Changed the /var/cache/vdr-* dirs to more standard
>    /var/cache/vdr/{infosatepg,upnp,vtx} (vtx is for osdteletext)
>    and patched those as defaults into the relevant plugins so
>    you no longer need to pass them as plugin parameters explicitly.
> 
>  - Added the example vdr xine keymap to the xineliboutput plugin
>    port as PORTEXAMPLES so it (usually) will end up here:
> 
> 	/usr/local/share/examples/vdr_plugin_xineliboutput/xine/keymap
> 
>  - Patched the actual config dir into the vdr(1) manpage (usually
>    /usr/local/etc/vdr/ - thanx to Torfinn Ingolfsen for noticing.)
> 
>  For details see below.]
> 
> Hi!
> 
>  So 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,
> 
> 	https://secure.wikimedia.org/wikipedia/en/wiki/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 on FreeBSD yet) with corresponding v4l/dvb (`v4b')
> drivers, in most cases that means an usb tuner supported by the
> webcamd port:
> 
> 	http://www.freshports.org/multimedia/webcamd
> 
>  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.)
> 
> ----snip---previous-notes-with-minor-updates:-------
> 
>  I started with jpulz' vdr 1.7.14 patches: (now updated to 1.7.16)
> 
> 	ftp://ftp.frm2.tum.de/pub/jpulz/VDR/
> 	ftp://ftp.frm2.tum.de/pub/jpulz/pictures/
> 
> and made q&d ports of those and of a few more plugins and two webinterfaces
> so I can now use FreeBSD as a pc dvb-s2 dvr:
> 
> 	http://people.freebsd.org/~nox/dvb/vdrdevel-CFT-20110108a.shar
> 
>  I still don't know if/when I'll be able finish these to make them
> commit-ready (or even port all of the other plugins that people
> might want to use), if anyone wants to take over from here or at
> least help they are most welcome...
> 
>  Note: vdr 1.7.16 is the development branch so expect bugs!  (I mostly
> used it because the stable branch (1.6) doesn't support dvb-s2...)
> 
>  FreeBSD notes:
> 
> 0. See my earlier threads on the freebsd-multimedia list about webcamd
>    and the usb dvb-s2 and dvb-t tuners I tested; the relevant webcamd
>    ports and frieds have been updated now so you _should_ be able
>    to just use those.  (dvb-c or atsc(?) tuners should also work
>    as long as webcamd supports them and there aren't other bugs.)
>    Links to the more important posts are also here:
> 
> 	http://people.freebsd.org/~nox/dvb/
> 
> 1. Before you start installing these ports add the vdr user and group
>    to /usr/ports/UIDs:
> 
> 	vdr:*:988:988::0:0:vdr user:/nonexistent:/usr/sbin/nologin
> 
>    and to /usr/ports/GIDs:
> 
> 	vdr:*:988:
> 
>    (you don't have to use 988, I just didn't want the id to conflict with
>    new ports being committed too quickly...), and then either mount an extra
>    fs with enough space for the recordings on /video or create a video dir
>    elsewhere where there is space, symlink it to /video and make it
>    writable for vdr.  (or if you do have one big / then you can create
>    the dir on there too ofc, I just disabled the mkdir in the port to
>    avoid inadvertently filling up ppl's small / fs.)
> 
>    Or if you don't like a symlink you can also add your video dir
>    as -v <dir> to vdr's startup args, see below.
> 
> 2. I now have rc.d scripts for vdr and vdradmin-am but even if you
>    use those you still need to add plugins and their options similar
>    to this to your /etc/rc.conf:
> 
> ---snip----
> # 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 '-Pupnp -i lo0'"
> ---snip----
> 
>    look in the README.s of the individual plugin ports for any
>    needed options.  (should get installed below /usr/local/share/doc/vdr*)
>    And if you want vdr to start at boot (instead of just manually
>    by doing:
> 
> 	/usr/local/etc/rc.d/vdr onestart
> 
>    ) you need to set:
> 
> 	vdr_enable="YES"
> 
>    too of course.  And for vdradmin_am its:
> 
> 	vdradmind_enable="YES"
> 
>    If you want to start vdr manually in the foreground instead you
>    need to be root (or the vdr user but vdr also drops to the vdr
>    uid itself if started as root), and then run it like:
> 
> 	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 '-Pupnp -i lo0'
> 
> 2a.I now also have a multimedia/vdr-plugins metaport that allows
>    you to select and install the plugins you want (and vdr itself
>    as a dependency), so you don't have to install numerous vdr/plugin
>    ports individually.
> 
> 3. Of all the video output methods only xineliboutput and streamdev
>    seem to work (and the vdr-live webinterface browser streaming which
>    also uses streamdev), jpulz also has patches for softdevice so I made
>    a port for that too but it only gave me a black screen...  streamdev
>    doesn't have an osd so you probably want xineliboutput at least for
>    the first setup.
> 
>    I was unable to test xineliboutput's vdpau support since I no longer
>    have nvidia (and miwi's issues with the nvidia blob on amd64 don't
>    exactly encourage me to try it again soon...) - on the radeon here
>    using xorg 7.4's video-ati driver with xv xineliboutput via vdr-sxfe,
> 
> 	vdr-sxfe --video=xv --hotkeys --audio=oss xvdr://127.0.0.1:37890
> 
>    (vdr-sxfe gets installed by the xineliboutput plugin port) as well as
>    all other players I tested that knew the xvdr protocol (xineliboutput
>    with osd) can now indeed play h264 hd channels on this PhenomII box
>    after the ffmpeg updates a few months ago, with the only exception
>    of kaffeine that still has issues with h264 1080i streams when
>    deinterlacing is enabled:
> 
> 	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"
> 
>    (kaffeine also has no provision for vdr keyboard control...)
> 
>    You can now also run vdr-sxfe with --hud tho that didn't really
>    work for me (probably needs compositing which I yet have to
>    test.) --video opengl and vdpau support is now also in the build
>    but as I said vdpau I cannot test myself and it may need the
>    ffmpeg port to be built with the vdpau knob on too which is still
>    off by default.
> 
>    Btw I use software volume control with xineliboutput (Setup ->
>    Plugins -> xineliboutput -> Volume control in the osd) because
>    selecting `hardware' there doesn't work so well with snd(4)'s
>    volume-per-channel feature (hint.pcm.X.vpc, which also in fact
>    is software) that I want to keep enabled for other apps...
>    And in case you didn't know about this snd(4) feature you can
>    read more here:
> 
> 	http://people.freebsd.org/~ariff/SOUND_4.TXT.html
> 
>    You can also use other players like mplayer or totem/gstreamer
>    (incluing the totem browser plugin invoked by the vdr-live
>    webinterface), only those don't know the xvdr protocol and thus
>    wont display an osd:
> 
> 	mplayer -mc 10 -cache 8192 -demuxer lavf http://127.0.0.1:37890/
> 	totem http://127.0.0.1:37890/
> 
>    (or using streamdev:
> 
> 	mplayer -mc 10 -cache 8192 -demuxer lavf http://127.0.0.1:3000/302
> 	totem http://127.0.0.1:3000/302
> 
>    - channel 302 is arte hd in my channels.conf.)
> 
> 3a.And if you want to try out the xbmc port that recently has been
>    committed with live tv via vdr you can do that too even tho it
>    is not the pvr-testing2 branch, you just won't get the fast
>    channel switching etc you'd get via the vnsi protocol (that I
>    also ported the plugin for but couldn't test it) - watching live
>    channels and recordings done by vdr (possibly scheduled via
>    webinterface) is still possible.  Just make sure you run vdr
>    with the streamdev-server plugin enabled and that it is listening
>    on the vdr-to-vdr server port (thats 2004 and is disabled by
>    default, see in the osd under Setup -> Plugins -> streamdev-server.)
>    Then in xbmc you can add vdr streamdev as a video source either
>    via the gui or manually by putting something like this in
>    ~/.xbmc/userdata/mediasources.xml:
> 
> <mediasources>
>     <network>
>         <location id="0">vtp://127.0.0.1:2004/</location>
>     </network>
> </mediasources>
> 
>    Note you'll have to add the /video dir to xbmc seperately via
>    the filesystem if you want to be able to watch recordings
>    (or test the upnp plugin with xbmc but that is still alpha
>    and at least atm also cannot stream h264 recordings.)
> 
> 4. I have no idea if the lirc support works on FreeBSD, and the uhid(4)
>    remote plugin support (see that port's pkg-descr) is highly
>    experimental - as well as webcamd not yet supporting dvb tuner
>    remotes unless they already appear as uhid(4)/ukbd(4) without
>    webcamd's help - so you probably will at least initially want
>    to use keyboard control.  I have included an example remote.conf
>    for vdr-sxfe and the multimedia/vdr-plugin-control plugin that
>    you can access by telnet (default port is 2002), I have put the
>    menu button on the tab and insert keys and OK on the return key,
>    see
> 
> 	/usr/local/etc/vdr/remote.conf
> 
>    for the full keybindings list.  (If you start vdr in the foreground
>    and keep that shell open you should be able to use that for keyboard
>    control also, the control plugin just gives you an osd too over
>    telnet.)
> 
>    And if you use xine
> 
> 	xine "xvdr://127.0.0.1#nocache"
> 
>    instead of vdr-sxfe
> 
> 	vdr-sxfe --video=xv --hotkeys --audio=oss xvdr://127.0.0.1:37890
> 
>    you probably want to use a ~/.xine/keymap that includes vdr controls,
>    I've put mine here:
> 
> 	http://people.freebsd.org/~nox/dvb/xine/keymap
> 
>    and the xineliboutput plugin port now also installs it under:
> 
> 	/usr/local/share/examples/vdr_plugin_xineliboutput/xine/keymap
> 
>    Oh and the webinterfaces have point-and-click remotes too but those
>    are pretty clunky to use...
> 
> 5. The example channels.conf is the one that comes with the vdr sources,
>    its for Astra 19.2E and a little outdated (also doesn't have hd channels
>    yet), if you receive something else and don't want to go hunting for a
>    suitable channels.conf on the web you can use the multimedia/w_scan
>    port.  Remember to use -o7 for vdr 1.7.x, see the w_scan homepage
>    and w_scan's -h and -H usage messages for options and examples:
> 
> 	http://wirbel.htpc-forum.de/w_scan/index_en.html
> 
>    (the w_scan start script hasn't been ported to FreeBSD yet.)
> 
>    Also note you probably will only need to use w_scan once initially,
>    this vdr version by default should look for new transponders
>    itself when it does its epg scan during idle times unles you
>    disable that feature.
> 
>    And if you install the iptv plugin and want to test it with some
>    internet streams if your isp dosn't provide `real' iptv (or you
>    just want to be able to press `r'ecord while watching web streams
>    like nasatv), you can merge example /usr/local/etc/vdr/channels.conf
>    entries from here:
> 
> 	/usr/local/share/examples/vdr_plugin_iptv/channels.conf.iptv
> 
>    (I don't have `real' iptv here so that's all I can test.  Also
>    don't expect 100% performance with these examples, live transcoding
>    streams to mpeg-ts that vdr expects still is kinda fragile and
>    sometimes needs to be manually restarted by e.g. hitting OK
>    (return) in the channel list (c) before it works, and startup is
>    usually slow too...  Transcoding uses vlc with those examples,
>    you can see vlc's messages if you start vdr in the foreground
>    instead of via the rc.d script as explained above.  Also see
> 
> 	/usr/local/etc/vdr/plugins/iptv
> 
>    and
> 
> 	/usr/local/etc/vdr/plugins/iptv/vlcinput
> 
>    and the plugin homepage:
> 
> 	http://www.saunalahti.fi/~rahrenbe/vdr/iptv/
> 
>    for configurations.  And there seems to be a `feature' that
>    sometimes causes vdr to start receiving streams without anyone
>    watching/recording just because the iptv plugin is enabled...)
> 
> 5. I ported two webinterfaces because I only learned about vdr-live
>    later which seems to be faster and uses fewer resources meaning you
>    could probably turn a pretty wimpy box into a vdr server as long as
>    you keep the actual watching (especially of h264 hd) to a faster box
>    connected over the network.  The vdr-plugin-live webinterface by
>    default listens on port 8008:
> 
> 	http://127.1:8008/
> 
>    Default login/pw is admin/live as also mentioned in:
> 
> 	/usr/local/share/doc/vdr_plugin_live/README
> 
>    vdradmin_am listens on 8001:
> 
> 	http://127.1:8001/
> 
>    Default login/pw for that is vdr/vdr.
> 
>    And the streamdev plugin has a (simple) webinterface too if you point
>    a browser at it: (instead of a player)
> 
> 	http://127.1:3000/
> 
> 6. I may have forgot some other manual installation steps, if you
>    notice something just post a followup...  Most of vdr's own
>    configuration including plugins should be available in the
>    osd under `Setup', some things like allowed hosts/subnets
>    for network plugins need to be manually configured under
>    /usr/local/etc/vdr/plugins tho.
> 
>  And here are some links about vdr and the plugins and webinterfaces
> I made ports for:
> 
> 0. vdr 1.7.16:
> 	http://www.tvdr.de/
> 	http://www.linuxtv.org/vdrwiki/index.php/Main_Page
> 
> 1. xineliboutput-1.0.5 cvs snapshot from 20101019:
> 	http://sourceforge.net/projects/xineliboutput/
> 	http://www.linuxtv.org/vdrwiki/index.php/Xineliboutput-plugin
> 
> 2. streamdev-0.5.0 cvs snapshot from 20100426:
> 	http://streamdev.vdr-developer.org/
> 	http://www.linuxtv.org/vdrwiki/index.php/Streamdev-plugin
> 
> 3. live-0.2.0s20101122 git snapshot:
> 	http://live.vdr-developer.org/
> 
> 4. live also depends on cxxtools and tntnet which I also had to port:
> 	http://www.tntnet.org/cxxtools.html
> 	http://www.tntnet.org/index.html
> 
> 5. epgsearch-0.9.25.beta17:
> 	http://winni.vdr-developer.org/epgsearch/index_eng.html
> 	http://www.linuxtv.org/vdrwiki/index.php/Epgsearch-plugin
> 
> 6. femon-1.7.7:
> 	http://www.saunalahti.fi/~rahrenbe/vdr/femon/
> 	http://www.linuxtv.org/vdrwiki/index.php/Femon-plugin
> 
> 7. osdpip-0.1.0:
> 	http://projects.vdr-developer.org/projects/show/plg-osdpip
> 	http://www.linuxtv.org/vdrwiki/index.php/Osdpip-plugin
> 
> 8. osdteletext-0.9.0:
> 	http://projects.vdr-developer.org/projects/show/plg-osdteletext
> 	http://www.linuxtv.org/vdrwiki/index.php/Osdteletext-plugin
> 
> 9. skinenigmang-0.1.1:
> 	http://andreas.vdr-developer.org/enigmang/index.html
> 	http://www.vdr-wiki.de/wiki/index.php/Skinenigmang-plugin
> 	(sorry for de in the second link but at least there are pics...)
> 
> 10. softdevice 0.5.0 cvs snapshot from 20100414:
> 	http://softdevice.berlios.de/
> 	http://www.linuxtv.org/vdrwiki/index.php/Softdevice-plugin
> 
> 11. control-0.0.2a-45yavdr1 with ubuntu yavdr patches: (and a patch by
>     me to fix a segfault on vdr exit)
> 	http://ricomp.de/vdr/down_en.html
> 	http://www.linuxtv.org/vdrwiki/index.php/Control-plugin
> 
> 12. vdradmin_am-3.6.7:
> 	http://andreas.vdr-developer.org/vdradmin-am/
> 
> 13. infosatepg-0.0.11:
> 	http://projects.vdr-developer.org/projects/show/plg-infosatepg
> 	http://vdr-wiki.de/wiki/index.php/Infosatepg-plugin
>     My post including notes about how I got it receiving and using
>     the infosat epg data quickly:
> 	http://lists.freebsd.org/pipermail/freebsd-multimedia/2010-July/011158.html
> 
> 14. remote-0.4.0:  (with experimental FreeBSD uhid(4) support, some
>     notes are in the port's pkg-descr)
> 	http://escape-edv.de/endriss/vdr
> 	http://www.linuxtv.org/vdrwiki/index.php/Remote-plugin
> 
> 15. iptv-0.4.2:
> 	http://www.saunalahti.fi/~rahrenbe/vdr/iptv/
> 
> 16. vnsiserver-0.0.2s20100808.0952:
> 	http://www.vdr-wiki.de/wiki/index.php/Vnsi-server-plugin
> 	http://www.vdr-portal.de/board/thread.php?threadid=95292
>     (sorry about the german but as I said this is only useful with
>      the xbmc pvr-testing2 branch anyway and its untested too.)
> 
> 17. upnp-0.0.2a2 with a few bugfixes done by me:
> 	http://upnp.vdr-developer.org/
> 	http://lists.freebsd.org/pipermail/freebsd-multimedia/2011-January/011531.html
> 
> TODO:
> 
> - The ports still could use quite some cleanup work, also to make
>   upgrading them or adding new plugins easier.
> - Submit the rest of the non-hacky FreeBSD patches back to the
>   individual upstream maintainers (that should be pretty much all
>   of the patches for *.[ch] source files, only Makefile/configure
>   scripts patches less so.)
> - Someone(tm) may want to write a `real' step-by-step guide how to
>   get a FreeBSD vdr going...  (preferably someone who has never
>   used vdr before to make sure important stuff I never think about
>   isn't left out.)
> 
>  Enjoy, :)
> 	Juergen



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110206174957.GA76134>