Kodi Community Forum

Full Version: vnsi5 and xbmc addon protocol version
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi,

i've compiled the vnsi5 vdr plugin from https://github.com/FernetMenta/xbmc-pvr-...tree/vnsi5. The vnsiserver version is now 0.9.3 (on a ubuntu linux vdr 2.0.3)

On the client-side i use macos 10.9 and XBMC 13 (latest nightly alpha 10). The XBMC vnsi add-on is the version 1.9.4.

But this add-on version doesn' t work with the mentioned server version, on the vdr i get the following error in the syslog:

VNSI-Error: Client 'XBMC Media Center' have a not allowed protocol version '4', terminating client

So the question ist: which XBMC vnsi add-on works with the vnsi5 server version?

P.S. i tried to compile the latest vnsi XBMC add-on (from https://github.com/FernetMenta/xbmc-pvr-addons) under macos 10.9. But it didn't work. During a make, i get this:

Code:
src/VNSIChannels.cpp:59:17: error: no member named 'strtol' in namespace 'std'; did you mean 'strtok'?
    caid = std::strtol(token.c_str(), &pend, 10);
           ~~~~~^~~~~~
                strtok
/usr/include/string.h:90:7: note: 'strtok' declared here
char    *strtok(char *, const char *);
         ^
src/VNSIChannels.cpp:59:46: error: too many arguments to function call, expected 2, have 3
    caid = std::strtol(token.c_str(), &pend, 10);
           ~~~~~~~~~~~                       ^~
src/VNSIChannels.cpp:65:17: error: no member named 'strtol' in namespace 'std'; did you mean 'strtok'?
    caid = std::strtol(strCaids.c_str(), &pend, 10);
           ~~~~~^~~~~~
                strtok
/usr/include/string.h:90:7: note: 'strtok' declared here
char    *strtok(char *, const char *);
         ^
src/VNSIChannels.cpp:65:49: error: too many arguments to function call, expected 2, have 3
    caid = std::strtol(strCaids.c_str(), &pend, 10);
           ~~~~~~~~~~~                          ^~
4 errors generated.
make: *** [VNSIChannels.lo] Error 1
(2013-12-08, 16:35)FernetMenta Wrote: [ -> ]The one in my vnsi5 branch https://github.com/FernetMenta/xbmc-pvr-...tree/vnsi5

But as mentioned in my first post, this version doesn't compile under macos 10.9 (but only vnsi add-on, all over add-ons compile fine)

Code:
/bin/sh ../../libtool  --tag=CXX   --mode=compile g++ -DPACKAGE_NAME=\"xbmc-pvr-addons\" -DPACKAGE_TARNAME=\"xbmc-pvr-addons\" -DPACKAGE_VERSION=\"1:0:0\" -DPACKAGE_STRING=\"xbmc-pvr-addons\ 1:0:0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAS_BUILTIN_SYNC_ADD_AND_FETCH=1 -DHAS_BUILTIN_SYNC_SUB_AND_FETCH=1 -DHAS_BUILTIN_SYNC_VAL_COMPARE_AND_SWAP=1 -I. -I. -I/Users/dirk/xbmc-pvr-addons/xbmc -I/Users/dirk/xbmc-pvr-addons/lib    -g -O2 -fPIC -Wall -Wextra -Wno-missing-field-initializers -Woverloaded-virtual -Wno-parentheses -DTARGET_POSIX -DTARGET_DARWIN -D_LINUX -DUSE_DEMUX -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -Wall -Wextra -Wno-missing-field-initializers -Woverloaded-virtual -Wno-parentheses -fPIC -dynamiclib -single_module -undefined dynamic_lookup -g -O2 -MT VNSIChannels.lo -MD -MP -MF .deps/VNSIChannels.Tpo -c -o VNSIChannels.lo `test -f 'src/VNSIChannels.cpp' || echo './'`src/VNSIChannels.cpp
libtool: compile:  g++ -DPACKAGE_NAME=\"xbmc-pvr-addons\" -DPACKAGE_TARNAME=\"xbmc-pvr-addons\" -DPACKAGE_VERSION=\"1:0:0\" "-DPACKAGE_STRING=\"xbmc-pvr-addons 1:0:0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAS_BUILTIN_SYNC_ADD_AND_FETCH=1 -DHAS_BUILTIN_SYNC_SUB_AND_FETCH=1 -DHAS_BUILTIN_SYNC_VAL_COMPARE_AND_SWAP=1 -I. -I. -I/Users/dirk/xbmc-pvr-addons/xbmc -I/Users/dirk/xbmc-pvr-addons/lib -g -O2 -fPIC -Wall -Wextra -Wno-missing-field-initializers -Woverloaded-virtual -Wno-parentheses -DTARGET_POSIX -DTARGET_DARWIN -D_LINUX -DUSE_DEMUX -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -Wall -Wextra -Wno-missing-field-initializers -Woverloaded-virtual -Wno-parentheses -fPIC -dynamiclib -single_module -undefined dynamic_lookup -g -O2 -MT VNSIChannels.lo -MD -MP -MF .deps/VNSIChannels.Tpo -c src/VNSIChannels.cpp  -fno-common -DPIC -o .libs/VNSIChannels.o
clang: warning: argument unused during compilation: '-dynamiclib'
clang: warning: argument unused during compilation: '-single_module'
clang: warning: argument unused during compilation: '-undefined dynamic_lookup'
src/VNSIChannels.cpp:59:17: error: no member named 'strtol' in namespace 'std'; did you mean 'strtok'?
    caid = std::strtol(token.c_str(), &pend, 10);
           ~~~~~^~~~~~
                strtok
/usr/include/string.h:90:7: note: 'strtok' declared here
char    *strtok(char *, const char *);
         ^
src/VNSIChannels.cpp:59:46: error: too many arguments to function call, expected 2, have 3
    caid = std::strtol(token.c_str(), &pend, 10);
           ~~~~~~~~~~~                       ^~
src/VNSIChannels.cpp:65:17: error: no member named 'strtol' in namespace 'std'; did you mean 'strtok'?
    caid = std::strtol(strCaids.c_str(), &pend, 10);
           ~~~~~^~~~~~
                strtok
/usr/include/string.h:90:7: note: 'strtok' declared here
char    *strtok(char *, const char *);
         ^
src/VNSIChannels.cpp:65:49: error: too many arguments to function call, expected 2, have 3
    caid = std::strtol(strCaids.c_str(), &pend, 10);
           ~~~~~~~~~~~                          ^~
4 errors generated.
make: *** [VNSIChannels.lo] Error 1
Ah ok. I have fixed it. Could you try again?
(2013-12-08, 20:25)FernetMenta Wrote: [ -> ]Ah ok. I have fixed it. Could you try again?

Now the compile runs fine, but with this version, xbmc quits immediately if i activate the plugin.

Even if i trash all settings and start from scratch with a fresh xbmc and only vnsi 1.9.5 plugin.

Code:
23:40:10 T:4589940736  NOTICE: PVRManager - starting up
23:40:10 T:4636282880  NOTICE: Thread PVRManager start, auto delete: false
23:40:10 T:4636819456  NOTICE: Thread PVRClient start, auto delete: false
23:40:10 T:4636819456   DEBUG: RegisterClient - registering add-on 'VDR VNSI Client'
23:40:10 T:4636819456   DEBUG: PVR - Create - creating PVR add-on instance 'VDR VNSI Client'
23:40:10 T:4636819456   DEBUG: ADDON: Dll Initializing - VDR VNSI Client
23:40:10 T:4636819456   DEBUG: SECTION:LoadDLL(/Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr)
23:40:10 T:4636819456   DEBUG: Loading: /Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr
23:40:10 T:4636819456   DEBUG: AddOnLog: VDR VNSI Client: Creating VDR VNSI PVR-Client
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'host'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'port'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'priority'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'timeshift'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'convertchar'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'timeout'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'handlemessages'
23:40:10 T:4636819456   DEBUG: CAddonCallbacksAddon - GetAddonSetting - add-on 'VDR VNSI Client' requests setting 'autochannelgroups'
23:40:10 T:4636819456  NOTICE: AddOnLog: VDR VNSI Client: Logged in at '1386542410+3600' to 'VDR-Network-Streaming-Interface (VNSI) Server' Version: '0.9.3' with protocol version '5'
23:40:10 T:4637356032   ERROR: AddOnLog: VDR VNSI Client: SignalConnectionLost - connection lost !!!

crash log:
Code:
Process:         XBMC [11681]
Path:            /Applications/XBMC.app/Contents/MacOS/XBMC
Identifier:      com.teamxbmc.xbmc
Version:         13.0.alpha11 (Git-20131201-91e5be5)
Code Type:       X86-64 (Native)
Parent Process:  launchd [329]
Responsible:     XBMC [11681]
User ID:         502

Date/Time:       2013-12-08 23:26:27.597 +0100
OS Version:      Mac OS X 10.9 (13A603)
Report Version:  11
Anonymous UUID:  E5CBA6F0-2E8F-AF61-F848-48AB106BA3A8


Crashed Thread:  16

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0xfffffffffffffff8

i can post the whole crash log if it helps...

P.S. i tried to build a 32bit version by "./configure --host=i386-apple-darwin", the compile runs fine, but the add-on can't be loaded in a 32bit XBMC.

Code:
09:42:43 T:2960388096  NOTICE: PVRManager - starting up
09:42:43 T:2954989568  NOTICE: Thread PVRManager start, auto delete: false
09:42:43 T:2955522048  NOTICE: Thread PVRClient start, auto delete: false
09:42:43 T:2955522048   DEBUG: RegisterClient - registering add-on 'VDR VNSI Client'
09:42:43 T:2955522048   DEBUG: PVR - Create - creating PVR add-on instance 'VDR VNSI Client'
09:42:43 T:2955522048   DEBUG: ADDON: Dll Initializing - VDR VNSI Client
09:42:43 T:2955522048   DEBUG: SECTION:LoadDLL(/Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr)
09:42:43 T:2955522048   DEBUG: Loading: /Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr
09:42:43 T:2955522048   ERROR: Unable to load /Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr, reason: dlopen(/Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr, 1): no suitable image found.  Did find:
                                                /Users/dirk/Library/Application Support/XBMC/addons/pvr.vdr.vnsi/XBMC_VDR_vnsi.pvr: mach-o, but wrong architecture


I checked it with another PVR Plugin from the same compile job, that was loaded fine.


Code:
09:34:27 T:2960461824  NOTICE: PVRManager - starting up
09:34:27 T:2953318400  NOTICE: Thread PVRManager start, auto delete: false
09:34:27 T:2953924608  NOTICE: Thread PVRClient start, auto delete: false
09:34:27 T:2691047848   DEBUG: CGUIMediaWindow::GetDirectory (addons://disabled/xbmc.pvrclient)
09:34:27 T:2691047848   DEBUG:   ParentPath = [addons://disabled/xbmc.pvrclient]
09:34:27 T:2953924608   DEBUG: RegisterClient - registering add-on 'PVR Demo Client'
09:34:27 T:2953924608   DEBUG: PVR - Create - creating PVR add-on instance 'PVR Demo Client'
09:34:27 T:2953924608   DEBUG: ADDON: Dll Initializing - PVR Demo Client
09:34:27 T:2953924608   DEBUG: SECTION:LoadDLL(/Applications/XBMC.app/Contents/Resources/XBMC/addons/pvr.demo/XBMC_Demo.pvr)
09:34:27 T:2953924608   DEBUG: Loading: /Applications/XBMC.app/Contents/Resources/XBMC/addons/pvr.demo/XBMC_Demo.pvr
Do you build XBMC yourself? Have you built the pvr addonds in tools/depends?
(2013-12-10, 09:10)FernetMenta Wrote: [ -> ]Do you build XBMC yourself? Have you built the pvr addonds in tools/depends?

No, i you use the latest nightly build (alpha 11) including add ons.
vnsi5 was merged to opdenkamp repo and it will be built with nightlies after this pr goes in: https://github.com/xbmc/xbmc/pull/3806