[patch] build VDR VNSI addon with Visual Studio 2010 (Express) - Zoolook - 2011-04-03
Hi folks,
as I'm interested (as well as other users) in a native Windows build which includes the VNSI client, I'm trying to push this a little further by providing a patch against Pipelka's branch which adds this. I'm posting it here, as I'm not allowed to attach here in the forum. The addon then builds fine, I can even configure it, but it then fails working with a strange "No error" which I'm not able to track down:Code: 000001 16:30:46 T:5948 M:442339328 NOTICE: -----------------------------------------------------------------------
000002 16:30:46 T:5948 M:442322944 NOTICE: Starting XBMC, Platform: Windows XP Professional Service Pack 3 build 2600. Built on Apr 2 2011 (Git:20110324-e1c4256, compiler 1600)
000003 16:30:46 T:5948 M:442322944 NOTICE: Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz
000004 16:30:46 T:5948 M:442322944 NOTICE: Desktop Resolution: 1680x1050 32Bit at 59Hz
000005 16:30:46 T:5948 M:442322944 NOTICE: Running with administrator rights
000006 16:30:46 T:5948 M:442318848 NOTICE: Aero is disabled
000007 16:30:46 T:5948 M:442318848 NOTICE: special://xbmc/ is mapped to: C:\Programme\XBMC
000008 16:30:46 T:5948 M:442318848 NOTICE: special://xbmcbin/ is mapped to: C:\Programme\XBMC
000009 16:30:46 T:5948 M:442318848 NOTICE: special://masterprofile/ is mapped to: z:\PortableApps\totalcommanderportable\Data\UserProfile\Anwendungsdaten\XBMC\userdata
000010 16:30:46 T:5948 M:442318848 NOTICE: special://home/ is mapped to: z:\PortableApps\totalcommanderportable\Data\UserProfile\Anwendungsdaten\XBMC
000011 16:30:46 T:5948 M:442318848 NOTICE: special://temp/ is mapped to: z:\PortableApps\totalcommanderportable\Data\UserProfile\Anwendungsdaten\XBMC\cache
000012 16:30:46 T:5948 M:442318848 NOTICE: The executable running is: C:\Programme\XBMC\XBMC.exe
000013 16:30:46 T:5948 M:442314752 NOTICE: Log File is located: z:\PortableApps\totalcommanderportable\Data\UserProfile\Anwendungsdaten\XBMC\xbmc.log
000014 16:30:46 T:5948 M:442314752 NOTICE: -----------------------------------------------------------------------
000015 16:30:46 T:5948 M:453734400 NOTICE: Setup SDL
000016 16:30:46 T:5948 M:452108288 NOTICE: Found screen: (Standardmonitor) on NVIDIA Quadro FX 1600M, adapter 0.
000017 16:30:46 T:5948 M:452071424 NOTICE: Primary mode: 1680x1050 @ 59.94 - Full Screen
...
000077 16:30:55 T:4680 M:421371904 NOTICE: UDP: Listening on port 9777
000078 16:31:00 T:5432 M:402124800 ERROR: CRemoteControl::Connect - failed to connect
000079 16:31:43 T:5948 M:382889984 ERROR: Previous line repeats 7 times.
000080 16:31:43 T:5948 M:382889984 NOTICE: PVRManager - stopping
000081 16:31:43 T:5948 M:382877696 NOTICE: PVRManager - starting up
000082 16:31:44 T:5728 M:391614464 NOTICE: Previous line repeats 1 times.
000083 16:31:44 T:5728 M:391614464 ERROR: AddOnLog: xbmc.pvrclient/VDR VNSI Client: No error
000084 16:31:44 T:5728 M:391577600 ERROR: ADDON: Dll VDR VNSI Client - Client returned bad status (1) from Create and is not usable
000085 16:31:44 T:5728 M:391569408 ERROR: PVR - CPVRClients::LoadClients - can't initialise client 'VDR VNSI Client'
000086 16:31:44 T:5728 M:391495680 NOTICE: PVRManager - no clients enabled. pvrmanager disabled.
000087 16:31:46 T:5432 M:389726208 ERROR: CRemoteControl::Connect - failed to connect
000088 16:33:16 T:5948 M:377171968 ERROR: Previous line repeats 15 times.
000089 16:33:16 T:5948 M:377171968 NOTICE: Storing total System Uptime
000090 16:33:16 T:5948 M:377286656 NOTICE: Saving settings
000091 16:33:16 T:5948 M:377180160 NOTICE: stop all
000092 16:33:16 T:5948 M:377180160 NOTICE: PVRManager - stopping
000093 16:33:16 T:5948 M:377176064 NOTICE: ES: Stopping event server
000094 16:33:17 T:4680 M:375762944 NOTICE: ES: UDP Event server stopped
000095 16:33:17 T:5948 M:375779328 NOTICE: stop sap announcement listener
000096 16:33:17 T:5948 M:375767040 NOTICE: clean cached files!
000097 16:33:17 T:5948 M:375758848 NOTICE: unload skin
000098 16:33:17 T:5948 M:385089536 NOTICE: stop python
000099 16:33:17 T:5948 M:393310208 NOTICE: stopped
000100 16:33:17 T:5948 M:393310208 NOTICE: destroy
000101 16:33:17 T:5948 M:393379840 NOTICE: unload sections
000102 16:33:17 T:5432 M:391696384 ERROR: CRemoteControl::Connect - failed to connect
On the VDR side, I can see that the client tries to connect, (the disconnect messages are logged only after exiting XBMC on the windows host): Code: 2011-04-03T16:31:44.974413+02:00 htpc2 vdr: [5295] VNSI: Client with ID 0 connected: 192.168.178.71:1828
2011-04-03T16:33:17.511591+02:00 htpc2 vdr: [24044] VNSI-Error: cxSocket::read: read() error at 0/4
2011-04-03T16:33:20.050874+02:00 htpc2 vdr: [5295] VNSI: Client with ID 0 seems to be disconnected, removing from client list
2011-04-03T16:33:20.050917+02:00 htpc2 vdr: [5295] VNSI: cConnection::~cConnection()
2011-04-03T16:33:20.050927+02:00 htpc2 vdr: [5295] VNSI: stopping cConnection thread ...
2011-04-03T16:33:20.050937+02:00 htpc2 vdr: [5295] VNSI: done
Can anyone, (perhaps Pipelka, or dushmaniac) shed some light on how to debug this?
P.S. I'll link this thread also to Pipelka on github.
Cheers,
Zoolook
- opdenkamp - 2011-04-03
the add-on is created in xbmc/pvr/addons/PVRClient.cpp in CPVRClient::Create()
it calls Create() in xbmc/pvrclients/vdr-vnsi/client.cpp
so I suggest you put a couple of breakpoints there and have a look at what happens.
I'm not maintaining the vnsi add-on so you should really ask pipelka about this.
- joniw - 2011-04-25
Hello Zoolook
I just digged a bit into your problem and i think i found the solution.
In VNSISession.cpp, line 168 the lasterror of the connect in line 157 is checked. If you use a non blocking socket on windows the connect method returns the "error" WSAEWOULDBLOCK (for more info: http://bobobobo.wordpress.com/2008/11/09/resolving-winsock-error-10035-wsaewouldblock/)
So the solution is, this line 168:
if (WSAGetLastError() == WSAEINPROGRESS || WSAGetLastError() == EAGAIN || WSAGetLastError() == WSAEWOULDBLOCK)
Now the addon loads and i can play around in the live tv menu.
My only problem is now that i get a debug assertion failed error in xbmc\utils\MathUtils.h when i want to play a channel. Just checking what this can be.
If you have any clue just tell me.
With regards
Joniw
|