Final (I hope) Call for testing: vdr ports (watch/record/stream
tv)
Juergen Lock
nox at jelal.kn-bremen.de
Sun Feb 6 17:51:49 UTC 2011
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
More information about the freebsd-multimedia
mailing list