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: mickael.maillot@gmail.com, Joerg.Pulz@frm2.tum.de, 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>