How to compile the vdr server plugin

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
FernetMenta Offline
Team-XBMC Developer
Posts: 2,689
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #1
The various vdr distributions seem often not to provide the vdr-plugin-vnsiserver compatible with the VNSI addon in opdenkamp repository: https://github.com/FernetMenta/vdr-plugin-vnsiserver.
In order to make sure the two parts fit together you can compile the vdr plugin yourself.

Prerequisites:
- sources of VDR. Many distributions provide a package for the sources e.g. "apt-get install vdr-dev" or yavdr-dev
- locate the folder where the sources are, this is VDRDIR, e.g. /usr/include/vdr
- locate folder with binaries for plugins, this is LIBDIR, e.g. /usr/lib/vdr/plugins

Get the sources for the plugin:
git clone https://github.com/FernetMenta/vdr-plugin-vnsiserver
cd vdr-plugin-vnsiserver
(sudo) make VDRDIR=<patch to vdr> LIBDIR=<path to libs>

vdr > 1.7.33
make
(make will look for vdr.pc which has required parameters)
(This post was last modified: 2014-03-19 21:48 by FernetMenta.)
find quote
charlie0440 Offline
Fan
Posts: 385
Joined: Dec 2011
Reputation: 5
Post: #2
This is useful to know.

I don't know how much work is involved so this might be a non-starter, just say so if it is. But it would make life easier for people to setup if Wolfgang Schupp PPA contained VDR as well as the vdr-plugin-vnsiserver.

Is this feasible? if not its no issue to use 2 PPAs (yavdr and Wolfgang Schupps).

Again thanks for all the great work.

Guide to building an all in one Ubuntu Server - TV(vdr),File,Music,Web

Server Fractal Designs Define XL, Asus P5QL/EPU, Dual Core E5200, 4gb, L4M-Twin S2 v6.2, Supermicro AOC-USAS-L8I, 1*SSD & 13*HDD drives (24TB total) - Ubuntu Server
XBMC 1 ASRock Z77E-ITX, G850, 8GB RAM, SSD, BD - Ubuntu / OpenElec frodo
XBMC 2 Revo 3700 - OpenElec frodo
XBMC 3 Raspb Pi
find quote
flipsen1977 Offline
Junior Member
Posts: 4
Joined: Dec 2012
Reputation: 0
Post: #3
hi FernetMenta,

thanks for your help, but It didn't get the plugin compiled. This is the occuring error-message:

g++ -g -O3 -fPIC -Wall -Werror=overloaded-virtual -Wno-parentheses -c -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"vnsiserver"' -DVNSI_SERVER_VERSION='"0.9.0"' -I../../../include -I../../.. receiver.c
receiver.c:30:27: error: libsi/section.h: Datei oder Verzeichnis nicht gefunden
receiver.c:31:30: error: libsi/descriptor.h: Datei oder Verzeichnis nicht gefunden

what mean the parameter VDRDIR and LIBDIR? VDRDIR=/var/lib/vdr and LIBDIR=/usr/lib or should it rather be the path to the headers?
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,689
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #4
Quote:- locate the folder where the sources are, this is VDRDIR, e.g. /usr/include/vdr
- locate folder with binaries for plugins, this is LIBDIR, e.g. /usr/lib/vdr/plugins

Is this not clear? VDRDIR has to point to the sources or headers and LIBDIR to the folder where vdr has the binaries for the plugins:
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,689
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #5
(2012-12-16 09:22)charlie0440 Wrote:  This is useful to know.

I don't know how much work is involved so this might be a non-starter, just say so if it is. But it would make life easier for people to setup if Wolfgang Schupp PPA contained VDR as well as the vdr-plugin-vnsiserver.

Is this feasible? if not its no issue to use 2 PPAs (yavdr and Wolfgang Schupps).

Again thanks for all the great work.

Wolfgang builds the plugin against vdr in Ubuntu PPA which is different to the version used by yaVDR. The easiest way to set it up is to use all components from Wolfgang's PPA, but this is only for Ubuntu.
find quote
TobSto Offline
Junior Member
Posts: 2
Joined: Dec 2012
Reputation: 0
Post: #6
Hello
I got a question with installing the vnsi server plugin for vdr. I used the commands prompted in the first post and I also looked into the directories and they seem to be the right ones (gen2vdr). So the git thing seemed to have worked and then I used the make command. There I got the following error message:
/usr/include/vdr/Make.config:52: /usr/include/vdr/Make.global: No such File or directory
make: ***** No rule to make target Stop

Maybe someone could help me here. I am still a Linux Noob especially with the git thing. Yesterday I installed a new XBMC Version Frodo 12 RC2 and installed there the pvr addon vnsi per zip-File. Now I need to intall the server in vdr
Thanks upfront,
Tobsto
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,689
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #7
I forwarded your question to s.o. familiar with gen2vdr. Here is the response:

Quote:VDRDIR in gen2vdr has to point to /usr/local/src/VDR (which is a symbolic linc to the real sorces living in /usr/local/src/vdr-1.7.XX). Furthermore in the vdrsourcetree you have to do "make include-dirs" - or "make all" which inherits "make include-dirs". Of course youmust have a working sourcetree.

Most competen help for gen2vdr is found on http://www.htpc-forum.de/ - the home of the gen2vdr-community.

I know one of the moderators is preparing an ebuild adressing the build of an appropriate build of the vdr-plugin-vnsiserver to semiautomaticly build the righr version of the plugin.
find quote
TobSto Offline
Junior Member
Posts: 2
Joined: Dec 2012
Reputation: 0
Post: #8
Wow thanks for the realy fast answer. : )
So I will try to use the suggested directories. And I will try to figure out what "working sourcetree" means. Wink
But that is at least half of the fun Wink
Greetings TobSto
find quote
flipsen1977 Offline
Junior Member
Posts: 4
Joined: Dec 2012
Reputation: 0
Post: #9
Hello FernetMenta,

I convinced some members of yavdr to implement the new version of the plugin in the older versions, so I now got a working XBMC with vnsi-enabled pvr on my Android tablet (Medion Lifetab 9514 with 1GHz Tegra2-Chip). But the performance is quite awful. Using live-tv is simply impossible. Is the Tegra2-hardware to slow at all? Or is something configured the wrong way?
I got another problem with the vnsiserver-plugin at vdr-server. After some time of running it starts to request the clients to reload the channellist very often:

Dec 24 15:03:39 vdrserver vdr: [31227] VNSI: Requesting clients to reload channel list
Dec 24 15:04:00 vdrserver vdr: last message repeated 8 times

Do you have an idea? xvdr-plugin is already disabled.

Regards, Flipsen
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,689
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #10
What have you set UpdateChannels to in setup.conf? I use a value of 3: only channel name and pids. default is 5, this will add new channels.
Whenever channels.conf is changed, vnsi requests an update.

AFAIK video playback on Android requires NEON. Tegra 2 lacks of this extension, Tegra 3 has it.
find quote
streilu Offline
Junior Member
Posts: 3
Joined: Jun 2013
Reputation: 0
Post: #11
Hey guys, wanted to build the shared object today, but I'm not successful. Got the vdr-dev installed (v2.0.2) but when I run "make VDRDIR=/usr/include/vdr LIBDIR=/usr/lib/vdr/plugins" the following error appears:

g++ -shared vnsi.o bitstream.o vnsiclient.o config.o cxsocket.o parser.o parser_AAC.o parser_AC3.o parser_DTS.o parser_h264.o parser_MPEGAudio.o parser_MPEGVideo.o parser_Subtitle.o parser_Teletext.o streamer.o recplayer.o requestpacket.o responsepacket.o vnsiserver.o hash.o recordingscache.o setup.o vnsiosd.o demuxer.o videobuffer.o videoinput.o -o libvdr-vnsiserver4.so
collect2: Fehler: ld mit Signal 6 [Abgebrochen] beendet
/usr/bin/ld: ld: wcsrtombs.c:99: __wcsrtombs: Zusicherung »data.__outbuf[-1] == '\0'« nicht erfüllt.
make: *** [libvdr-vnsiserver4.so] Fehler 1

Sorry, forgot to tell that I'm using Ubuntu 13.04 with XBMC13 and built the xbmc-pvr plugin successful.
(This post was last modified: 2013-06-06 00:15 by streilu.)
find quote
FernetMenta Offline
Team-XBMC Developer
Posts: 2,689
Joined: Jul 2010
Reputation: 55
Location: Munich
Post: #12
For vdr > 1.7.34 type just make and omit VDRDIR and LIBDIR
find quote
eroxm Offline
Junior Member
Posts: 27
Joined: Aug 2008
Reputation: 0
Post: #13
I tried the following but had no success with compiling:

Code:
xbmc@xbmc:~/xbmc-pvr-addons/addons/pvr.vdr.vnsi/vdr-plugin-vnsiserver$ sudo make
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
grep: /config.h: Datei oder Verzeichnis nicht gefunden
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
grep: /config.h: Datei oder Verzeichnis nicht gefunden
install -D libvdr-vnsiserver4.so /PLUGINS/lib/libvdr-vnsiserver4.so.
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found
/bin/sh: 1: pkg-config: not found

I'm running VDR 2.1.2 installed from here. Sources are installed too.

Since upgrading from VDR 2.0.3 to 2.1.2 I'm always getting the error message "VDR VNSI Client: Verbindung unterbrochen" (connection lost). I hoped that I could fix this by upgrading to the latest version of the other components.

Hope somebody can help me with this. Thanks in advance.
find quote
dahlSTROM Offline
Member
Posts: 82
Joined: Mar 2011
Reputation: 0
Post: #14
sudo apt-get install pkg-config
find quote
eroxm Offline
Junior Member
Posts: 27
Joined: Aug 2008
Reputation: 0
Post: #15
Thank you, that did the trick. But now I seem to still have problems with the VNSI addon in XBMC. I've managed to compile it, but in the menu it still says version 1.9.4, which is the one I had before. I can't deinstall it in the menu, only deactivating works. Is there a cache or something which prevents the system from loading the compiled addon? I also tried to "make zip" and install it afterwards in the corresponding menu, but still no luck.
find quote
Post Reply