From owner-freebsd-multimedia@FreeBSD.ORG Sun May 16 22:47:07 2010 Return-Path: Delivered-To: freebsd-multimedia@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 579EA106566B for ; Sun, 16 May 2010 22:47:07 +0000 (UTC) (envelope-from nox@jelal.kn-bremen.de) Received: from smtp.kn-bremen.de (gelbbaer.kn-bremen.de [78.46.108.116]) by mx1.freebsd.org (Postfix) with ESMTP id 848208FC17 for ; Sun, 16 May 2010 22:47:06 +0000 (UTC) Received: by smtp.kn-bremen.de (Postfix, from userid 10) id DEC301E00223; Mon, 17 May 2010 00:47:04 +0200 (CEST) Received: from triton8.kn-bremen.de (noident@localhost [127.0.0.1]) by triton8.kn-bremen.de (8.14.3/8.14.3) with ESMTP id o4GMjP4w049450; Mon, 17 May 2010 00:45:25 +0200 (CEST) (envelope-from nox@triton8.kn-bremen.de) Received: (from nox@localhost) by triton8.kn-bremen.de (8.14.3/8.14.3/Submit) id o4GMjPAv049449; Mon, 17 May 2010 00:45:25 +0200 (CEST) (envelope-from nox) From: Juergen Lock Date: Mon, 17 May 2010 00:45:25 +0200 To: Juergen Lock Message-ID: <20100516224525.GA48612@triton8.kn-bremen.de> References: <20100502190207.GA96276@triton8.kn-bremen.de> <20100504203248.GA8212@triton8.kn-bremen.de> <20100506201305.GA23951@triton8.kn-bremen.de> <20100514171150.GA51257@triton8.kn-bremen.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20100514171150.GA51257@triton8.kn-bremen.de> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-multimedia@FreeBSD.org Subject: Re: for those that want to try vdr on FreeBSD... (dvb with webcamd) X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 May 2010 22:47:07 -0000 On Fri, May 14, 2010 at 07:11:50PM +0200, Juergen Lock wrote: > On Thu, May 06, 2010 at 10:13:06PM +0200, Juergen Lock wrote: > > On Tue, May 04, 2010 at 10:32:48PM +0200, Juergen Lock wrote: > > > On Sun, May 02, 2010 at 09:02:07PM +0200, Juergen Lock wrote: > > > > Hi! > > > > > > > > I took jpulz' vdr 1.7.14 patches: (hi, you never seem to be on irc > > > > when I am... :) > > > > > > > > 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-preliminary.shar > > > > > > > > I 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.14 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 tuner I use; the relevant webcamd ports and > > > > frieds have been updated now so you _should_ be able to just use > > > > those. (I see no reason why dvb-t or dvb-c tuners wouldn't work > > > > also as long as webcamd supports them, I just haven't tested any.) > > > > > > > > 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.) > > > > > > > > 2. I didn't make rc.d scripts yet so for now you need to start vdr as > > > > well as the vdradmin-am webinterface manually, look in the README.s > > > > of the individual (plugins, vdradmin-am) ports for any needed options. > > > > My current vdr startup line is: > > > > > > > > vdr -P"xineliboutput --local=none --remote=127.1:37890" -Pskinenigmang -Pfemon -Posdpip '-Posdteletext --directory=/usr/tmp --cache-system=packed --max-cache=128' -P"streamdev-server" -P"live -i127.1" -Pepgsearch -Pcontrol > > > > > > > > Oh and I skipped install of a lot of locales for now too... > > > > > > > > 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 xvdr://127.0.0.1:37890 > > > > > > > > (vdr-sxfe gets installed by the xineliboutput plugin port) as well as any > > > > other player that knew the xvdr protocol (xineliboutput with osd) were > > > > unable to play h264 hd channels (I suspect they use too much cpu; I tried > > > > xine and both the kde3 and kde4 versions of kaffeine, > > > > > > > > xine "xvdr://127.0.0.1#nocache" > > > > kaffeine "xvdr+tcp://127.1:37890" > > > > /usr/local/kde4/bin/kaffeine "xvdr+tcp://127.1:37890" > > > > > > > > ), only mplayer and (sometimes) totem/gstreamer (incluing the totem > > > > browser plugin invoked by the vdr-live webinterface) apparently were > > > > efficient enough to decode h264 on this PhenomII cpu in software: > > > > > > > > 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.) > > > > > > > > 4. I have no idea if the lirc support works on FreeBSD (and webcamd doesn't > > > > seem to support dvb tuner remotes yet anyway), so you probably will > > > > have to use keyboard control for now. 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 me an osd too for when I > > > > use mplayer...) > > > > > > > > Oh and the webinterfaces have point-and-click remotes too but I prefer > > > > keyboard control. > > > > > > > > 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 w_scan for which I put a > > > > port here earlier: > > > > > > > > http://people.freebsd.org/~nox/dvb/w_scan.shar > > > > > > > > Remember to use -o7 for vdr 1.7, see the w_scan homepage for options > > > > and examples: > > > > > > > > http://wirbel.htpc-forum.de/w_scan/index_en.html > > > > > > > > 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. > > > > > > > > 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/ > > > > > > > > and vdradmin_am listens on 8001: > > > > > > > > http://127.1:8001/ > > > > > > > > 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'. > > > > > > > > And finally, here are some links about vdr and the plugins and > > > > webinterfaces I made ports for: > > > > > > > > 0. vdr 1.7.14: > > > > http://www.tvdr.de/ > > > > http://www.linuxtv.org/vdrwiki/index.php/Main_Page > > > > > > > > 1. xineliboutput-1.0.5 cvs snapshot from 20100414: > > > > 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.0: > > > > 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.beta16: > > > > 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.8.3: > > > > 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 > > > > > > > > 10. control-0.0.2a-45yavdr1 with ubuntu yavdr patches: > > > > http://ricomp.de/vdr/down_en.html > > > > http://www.linuxtv.org/vdrwiki/index.php/Control-plugin > > > > > > > > 11. vdradmin_am-3.6.7: > > > > http://andreas.vdr-developer.org/vdradmin-am/ > > > > > > Ok I now found out why xineliboutput didn't want to play h264 at all: > > > the libxine port builds with an internal copy of ffmpeg by default, > > > turning on its 'Enable external FFMpeg' knob got it playing. Its still > > > skipping once in a while, maybe using the new ffmpeg-devel port will > > > fix that, but looks like that would involve rebuilding several > > > dependencies at least so I haven't yet tried. > > > > > > While testing that, I have also added a small patch to improve the osd > > > resizing so the osd should look a little better now when the video resolution > > > changes (multimedia/vdr-plugin-xineliboutput/files/patch-osdautosize), > > > and I add the keypad return key to the vdr-sxfe remote.conf and changed > > > FastFwd from f to w because f is already in use for the fullscreen toggle > > > with vdr-sxfe --hotkeys. > > > > Updated version with a new osd autosize patch that handles width < 512 > > after I found out there are sd channels with width = 480 at least... > > New version that takes care of OSTYPE being now defined (which caused > the FreeBSD host detection in jpulz' patches to fail and the vdr and > plugin port builds to abort), and that adds a missing www/p5-libwww > dependency in the vdradmin-am port. Good news: with the ffmpeg-devel port and updated ports watching h264 hd streams via xineliboutput (vdr-sxfe/xine/kaffeine) and xv on xf86-video-ati-6.13.0 works well now, only enabling deinterlacing with 1080i still sometimes causes skipping with kaffeine. Another issue I initially had was vdr-sxfe often used 100% cpu on sd(!) channels, but turned out that that was just caused by it now defaulting to using libasound (alsa) that I installed for chrome, passing --audio=oss to vdr-sxfe fixed that. ..and I also updated the shar again, this time its mostly plist/permission fixes, and reinstalling the vdrdevel port via portmaster/portupgrade was broken too. Enjoy, :) Juergen