for those that want to try vdr on FreeBSD... (dvb with webcamd)
Juergen Lock
nox at jelal.kn-bremen.de
Tue May 4 20:34:19 UTC 2010
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.
Enjoy, :)
Juergen
More information about the freebsd-multimedia
mailing list