Date: Thu, 20 May 2010 19:59:52 +0200 From: Juergen Lock <nox@jelal.kn-bremen.de> To: Juergen Lock <nox@jelal.kn-bremen.de> Cc: freebsd-multimedia@FreeBSD.org Subject: Re: for those that want to try vdr on FreeBSD... (dvb with webcamd) Message-ID: <20100520175952.GA90477@triton8.kn-bremen.de> In-Reply-To: <20100518190247.GA95111@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> <20100516224525.GA48612@triton8.kn-bremen.de> <20100518190247.GA95111@triton8.kn-bremen.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, May 18, 2010 at 09:02:47PM +0200, Juergen Lock wrote: > On Mon, May 17, 2010 at 12:45:25AM +0200, Juergen Lock wrote: > > 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. > > And now I also found a `fix' for vdr-sxfe resetting the mixer volume to > 45 at start when using software volume control, added that to the shar > as multimedia/vdr-plugin-xineliboutput/files/patch-swvol (so you'll need > to reinstall the vdr-plugin-xineliboutput port.) > > Btw I use software volume control in vdr because selecting > `hardware' volume control 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 That patch has been committed upstream now, so I took the opportunity to update the vdr-plugin-xineliboutput port to latest cvs; and I also made the previous osd size patch (follow native stream resolution) a seperate option in the xineliboutput osd config (multimedia/vdr-plugin-xineliboutput/files/patch-osdstreamsize), so `auto' is now back to what it did previously. And you can get the new distfile from here while the mirrors have not updated yet: http://people.freebsd.org/~nox/tmp/distfiles/vdr-xineliboutput-1.0.5s20100520.tar.bz2 Enjoy, :) Juergen
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100520175952.GA90477>