Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Updated codebase to the latest OpenNI / Sensor version (1.1.0.39 / 5.…

…0.1.32)
  • Loading branch information...
commit 8f199ca25c6d89bec06e3881d672ca5a1b8c3220 1 parent b7cd39d
Avin authored April 16, 2011

Showing 157 changed files with 9,106 additions and 3,066 deletions. Show diff stats Hide diff stats

  1. BIN  Bin/SensorKinect-Bin-Linux32-v5.0.1.32.tar.bz2
  2. BIN  Bin/SensorKinect-Bin-Linux64-v5.0.1.32.tar.bz2
  3. BIN  Bin/SensorKinect-Bin-MacOSX-v5.0.1.32.tar.bz2
  4. BIN  Bin/SensorKinect-Win-OpenSource32-5.0.1.msi
  5. BIN  Bin/SensorKinect-Win32-5.0.0.exe
  6. 62  CHANGES
  7. 12  Data/{GlobalDefaults.ini → GlobalDefaultsKinect.ini}
  8. 5  Include/XnDDK.h
  9. 1  Include/XnFormatsStatus.h
  10. 4  Include/XnPsVersion.h
  11. 63  Include/XnStreamParams.h
  12. 23  NITE/Data/Sample-Scene.xml
  13. 24  NITE/Data/Sample-Tracking.xml
  14. 23  NITE/Data/Sample-User.xml
  15. 10  OpenNI/Data/SamplesConfig.xml
  16. 2  Platform/Linux-x86/Build/Utils/XnSensorServer/Makefile
  17. 2  Platform/Linux-x86/Build/XnDeviceSensorV2/Makefile
  18. 2  Platform/Linux-x86/Build/XnFormats/Makefile
  19. 49  Platform/Linux-x86/CreateRedist/RedistMaker
  20. 29  Platform/Linux-x86/CreateRedist/install.sh
  21. 2  Platform/Linux-x86/Install/55-primesense-usb.rules
  22. BIN  Platform/Win32/Build/Prerequisites/nsis-2.46-strlen_8192.zip
  23. 183  Platform/Win32/Build/Utils/XnSensorServer/XnSensorServer.vcproj
  24. 209  Platform/Win32/Build/XnCore/XnCore.vcproj
  25. 196  Platform/Win32/Build/XnDDK/XnDDK.vcproj
  26. 190  Platform/Win32/Build/XnDeviceFile/XnDeviceFile.vcproj
  27. 307  Platform/Win32/Build/XnDeviceSensorV2/XnDeviceSensorV2.vcproj
  28. 188  Platform/Win32/Build/XnFormats/XnFormats.vcproj
  29. 26  Platform/Win32/CreateRedist/EE_NI/EE_NI.sln
  30. 86  Platform/Win32/CreateRedist/EE_NI/EE_NI.wixproj
  31. 304  Platform/Win32/CreateRedist/EE_NI/EE_NI.wxs
  32. 99  Platform/Win32/CreateRedist/EE_NI/Fragments/BinariesFragment.wxs
  33. 1,817  Platform/Win32/CreateRedist/EE_NI/Fragments/FilesFragment.wxs
  34. 46  Platform/Win32/CreateRedist/EE_NI/Includes/EENIVariables.wxi
  35. 14  Platform/Win32/CreateRedist/EE_NI/Lang/en-us/Loc_en-us.wxl
  36. BIN  Platform/Win32/CreateRedist/EE_NI/Resources/Header.bmp
  37. BIN  Platform/Win32/CreateRedist/EE_NI/Resources/mainicon.ico
  38. 76  Platform/Win32/CreateRedist/EE_NI/UI/CustomeInstallUI.wxs
  39. BIN  Platform/Win32/CreateRedist/EE_NI/bin/Release/EE_NI_setup.exe
  40. BIN  Platform/Win32/CreateRedist/EE_NI/bin/Release/en-us/EE_NI.wixpdb
  41. 1  Platform/Win32/CreateRedist/EE_NI/obj/Release/EE_NI.wixobj
  42. 7  Platform/Win32/CreateRedist/EE_NI/obj/Release/EE_NI.wixproj.FileList.txt
  43. 1  Platform/Win32/CreateRedist/EE_NI/obj/Release/Fragments/BinariesFragment.wixobj
  44. 1  Platform/Win32/CreateRedist/EE_NI/obj/Release/Fragments/FilesFragment.wixobj
  45. 1  Platform/Win32/CreateRedist/EE_NI/obj/Release/Product.Generated.wixobj
  46. 6  Platform/Win32/CreateRedist/EE_NI/obj/Release/Product.Generated.wxs
  47. 1  Platform/Win32/CreateRedist/EE_NI/obj/Release/UI/CustomeInstallUI.wixobj
  48. 1  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/EE_NI.wixobj
  49. 7  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/EE_NI.wixproj.FileList.txt
  50. 1  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/Fragments/BinariesFragment.wixobj
  51. 1  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/Fragments/FilesFragment.wixobj
  52. 1  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/Product.Generated.wixobj
  53. 6  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/Product.Generated.wxs
  54. 1  Platform/Win32/CreateRedist/EE_NI/obj/x64/Release/UI/CustomeInstallUI.wixobj
  55. BIN  Platform/Win32/CreateRedist/EE_NI/setup.exe
  56. 214  Platform/Win32/CreateRedist/Engine.nsi
  57. 8  Platform/Win32/CreateRedist/Engine_Config.xml
  58. BIN  Platform/Win32/CreateRedist/Header.bmp
  59. 138  Platform/Win32/CreateRedist/Redist.py
  60. 54  Platform/Win32/CreateRedist/x64.nsh
  61. BIN  Platform/Win32/Driver/amd64/psdrv3.sys
  62. BIN  Platform/Win32/Driver/dpinst-amd64.exe
  63. BIN  Platform/Win32/Driver/dpinst-x86.exe
  64. 10  Platform/Win32/Driver/dpinst.xml
  65. BIN  Platform/Win32/Driver/psdrv3.cat
  66. 43  Platform/Win32/Driver/psdrv3.inf
  67. BIN  Platform/Win32/Driver/x86/psdrv3.sys
  68. BIN  Platform/Win32/Tools/vcredist_x86.exe
  69. 179  README
  70. 5  Source/External/LibJPEG/jconfig.h
  71. 8  Source/Utils/XnSensorServer/SensorServer.cpp
  72. 136  Source/XnDDK/XnDDK.cpp
  73. 2  Source/XnDDK/XnDeviceStream.h
  74. 165  Source/XnDDK/XnPixelStream.cpp
  75. 24  Source/XnDDK/XnPixelStream.h
  76. 2  Source/XnDDK/XnPropertySet.cpp
  77. 2  Source/XnDDK/XnPropertySetInternal.h
  78. 2  Source/XnDDK/XnStreamReaderDevice.cpp
  79. 2  Source/XnDDK/XnStreamReaderStream.cpp
  80. 2  Source/XnDDK/XnStreamReaderStream.h
  81. 2  Source/XnDeviceFile/XnDeviceFileReader.cpp
  82. 8  Source/XnDeviceFile/XnDeviceFileReaderBC.cpp
  83. 10  Source/XnDeviceFile/XnExportedFileDevice.cpp
  84. 3  Source/XnDeviceFile/XnFileDevice.cpp
  85. 9  Source/XnDeviceFile/XnFileDeviceBC.cpp
  86. 1  Source/XnDeviceSensorV2/Registration.cpp
  87. 57  Source/XnDeviceSensorV2/XnDataProcessor.cpp
  88. 1  Source/XnDeviceSensorV2/XnDataProcessor.h
  89. 11  Source/XnDeviceSensorV2/XnDeviceSensor.h
  90. 169  Source/XnDeviceSensorV2/XnDeviceSensorIO.cpp
  91. 12  Source/XnDeviceSensorV2/XnDeviceSensorIO.h
  92. 39  Source/XnDeviceSensorV2/XnDeviceSensorInit.cpp
  93. 55  Source/XnDeviceSensorV2/XnDeviceSensorInit.h
  94. 2  Source/XnDeviceSensorV2/XnDeviceSensorProtocol.cpp
  95. 4  Source/XnDeviceSensorV2/XnDeviceSensorProtocol.h
  96. 6  Source/XnDeviceSensorV2/XnExportedSensorDevice.cpp
  97. 36  Source/XnDeviceSensorV2/XnExportedSensorGenerator.cpp
  98. 3  Source/XnDeviceSensorV2/XnExportedSensorGenerator.h
  99. 1  Source/XnDeviceSensorV2/XnFirmwareInfo.h
  100. 6  Source/XnDeviceSensorV2/XnFirmwareStreams.cpp
  101. 12  Source/XnDeviceSensorV2/XnFrameStreamProcessor.cpp
  102. 4  Source/XnDeviceSensorV2/XnFrameStreamProcessor.h
  103. 85  Source/XnDeviceSensorV2/XnHostProtocol.cpp
  104. 5  Source/XnDeviceSensorV2/XnHostProtocol.h
  105. 17  Source/XnDeviceSensorV2/XnImageProcessor.cpp
  106. 4  Source/XnDeviceSensorV2/XnImageProcessor.h
  107. 72  Source/XnDeviceSensorV2/XnJpegImageProcessor.cpp
  108. 21  Source/XnDeviceSensorV2/XnJpegImageProcessor.h
  109. 117  Source/XnDeviceSensorV2/XnJpegToRGBImageProcessor.cpp
  110. 64  Source/XnDeviceSensorV2/XnJpegToRGBImageProcessor.h
  111. 8  Source/XnDeviceSensorV2/XnParams.h
  112. 64  Source/XnDeviceSensorV2/XnSensor.cpp
  113. 8  Source/XnDeviceSensorV2/XnSensor.h
  114. 2  Source/XnDeviceSensorV2/XnSensorAudioGenerator.cpp
  115. 1  Source/XnDeviceSensorV2/XnSensorAudioGenerator.h
  116. 50  Source/XnDeviceSensorV2/XnSensorAudioStream.cpp
  117. 13  Source/XnDeviceSensorV2/XnSensorAudioStream.h
  118. 58  Source/XnDeviceSensorV2/XnSensorClient.cpp
  119. 4  Source/XnDeviceSensorV2/XnSensorClient.h
  120. 1  Source/XnDeviceSensorV2/XnSensorClientServer.h
  121. 58  Source/XnDeviceSensorV2/XnSensorClientStream.cpp
  122. 7  Source/XnDeviceSensorV2/XnSensorClientStream.h
  123. 5  Source/XnDeviceSensorV2/XnSensorDepthGenerator.cpp
  124. 1  Source/XnDeviceSensorV2/XnSensorDepthGenerator.h
  125. 168  Source/XnDeviceSensorV2/XnSensorDepthStream.cpp
  126. 19  Source/XnDeviceSensorV2/XnSensorDepthStream.h
  127. 19  Source/XnDeviceSensorV2/XnSensorDevice.cpp
  128. 8  Source/XnDeviceSensorV2/XnSensorDevice.h
  129. 160  Source/XnDeviceSensorV2/XnSensorFirmwareParams.cpp
  130. 8  Source/XnDeviceSensorV2/XnSensorFirmwareParams.h
  131. 7  Source/XnDeviceSensorV2/XnSensorGenerator.cpp
  132. 1  Source/XnDeviceSensorV2/XnSensorGenerator.h
  133. 10  Source/XnDeviceSensorV2/XnSensorIRGenerator.cpp
  134. 1  Source/XnDeviceSensorV2/XnSensorIRGenerator.h
  135. 106  Source/XnDeviceSensorV2/XnSensorIRStream.cpp
  136. 12  Source/XnDeviceSensorV2/XnSensorIRStream.h
  137. 341  Source/XnDeviceSensorV2/XnSensorImageGenerator.cpp
  138. 21  Source/XnDeviceSensorV2/XnSensorImageGenerator.h
  139. 362  Source/XnDeviceSensorV2/XnSensorImageStream.cpp
  140. 56  Source/XnDeviceSensorV2/XnSensorImageStream.h
  141. 110  Source/XnDeviceSensorV2/XnSensorMapGenerator.cpp
  142. 11  Source/XnDeviceSensorV2/XnSensorMapGenerator.h
  143. 10  Source/XnDeviceSensorV2/XnSensorOpenNiteImpl.cpp
  144. 9  Source/XnDeviceSensorV2/XnSensorProductionNode.cpp
  145. 2  Source/XnDeviceSensorV2/XnSensorProductionNode.h
  146. 1,891  Source/XnDeviceSensorV2/XnSensorServer.cpp
  147. 96  Source/XnDeviceSensorV2/XnSensorServer.h
  148. 5  Source/XnDeviceSensorV2/XnSensorServerRunner.h
  149. 187  Source/XnDeviceSensorV2/XnSensorsManager.cpp
  150. 71  Source/XnDeviceSensorV2/XnSensorsManager.h
  151. 58  Source/XnDeviceSensorV2/XnServerLogger.h
  152. 657  Source/XnDeviceSensorV2/XnServerSensorInvoker.cpp
  153. 208  Source/XnDeviceSensorV2/XnServerSensorInvoker.h
  154. 1,212  Source/XnDeviceSensorV2/XnServerSession.cpp
  155. 138  Source/XnDeviceSensorV2/XnServerSession.h
  156. 4  Source/XnDeviceSensorV2/XnSharedMemoryBufferPool.cpp
  157. 2  Source/XnDeviceSensorV2/XnSharedMemoryBufferPool.h
BIN  Bin/SensorKinect-Bin-Linux32-v5.0.1.32.tar.bz2
Binary file not shown
BIN  Bin/SensorKinect-Bin-Linux64-v5.0.1.32.tar.bz2
Binary file not shown
BIN  Bin/SensorKinect-Bin-MacOSX-v5.0.1.32.tar.bz2
Binary file not shown
BIN  Bin/SensorKinect-Win-OpenSource32-5.0.1.msi
Binary file not shown
BIN  Bin/SensorKinect-Win32-5.0.0.exe
Binary file not shown
62  CHANGES
... ...
@@ -0,0 +1,62 @@
  1
+Detailed Change log:
  2
+--------------------
  3
+
  4
+Version 5.0.1.32 (Unstable version - Apr 11th 2010)
  5
+---------------------------------------------------
  6
+  * Fixing log prints of resolutions (-1 appeared as MAX_UINT64...) to the resolution name.
  7
+  * Linux Bug Fix: Server creates two log files, one in the client folder and one in /var/log/primesense/XnSensorServer
  8
+  * Fixed a memory leak when rewinding old XNS files.
  9
+  * Win32: WIX installer (replacing NSIS)
  10
+  * Fixed wrong version in XnDeviceFile
  11
+
  12
+Version 5.0.1.31 (Stable version - Apr 11th 2010)
  13
+-------------------------------------------------
  14
+  * Fix BULK timeout - it was too small...
  15
+  * Bug Fix: IR only works in QVGA...
  16
+  * Added 64bit support for the installers.
  17
+  * Fix wrong uses of the XN_IS_STATUS_OK macro (value is evaluated twice).
  18
+  * Adding support for MJPEG pass-through.
  19
+  * Adding initial support for new CMOS interfaces
  20
+  * Adding initial JPEG support
  21
+  * Fix for UAC installer problems.
  22
+  * Fixed uninstall without OpenNI.
  23
+  * Set minimum OpenNI version check in the installer.
  24
+  * Fix seeking to first frame in old XNS files.
  25
+  * Bug Fix: Client would fail to connect if trying to connect while server is shutting down.
  26
+  * Improving the timestamps algorithm.
  27
+  * performance improvement when enumerating for image nodes - a sensor should only be checked once.
  28
+  * improving error message for setting grayscale8 in low resolutions.
  29
+  * Improve thread-safety when starting server
  30
+  * Bug Fix: a crash when trying to open a non-existing XNS file.
  31
+  * Bug Fix: a potential crash if Init of depth generator fails.
  32
+  * Sensor now supports the Device Identification capability.
  33
+  * Server: fixing a deadlock problem between closing a stream and getting new data from it. This was done by splitting the sensor lock into two locks: one for changes on the sensor and one for changing the stream collection.
  34
+  * MultiProcess Bug Fix: the lock on a sensor didn't exist, so nothing was synchronized.
  35
+  * ImageGenerator now also changes InputFormat when changing resolution if needed (when switching from hi-res to normal & vice versa).
  36
+  * Adding frame IDs to Audio (just counting)
  37
+  * restoring defaults to QVGA.
  38
+  * Add support for sensors with no image CMOS.
  39
+  * Updated low-bandwidth USB devices buffer information.
  40
+  * Added the Asus WAVI auto-detection for Win32.
  41
+  * Low bandwidth devices now use bigger USB delays.
  42
+  * New defaults are now VGA, uncompressed.
  43
+  * Initial support for low-band devices:
  44
+    1. Image, IR and audio does not enumerate.
  45
+    2. Defaults changed to QVGA, compressed.
  46
+
  47
+Version 5.0.0.25 (Unstable version - Jan 6th 2011)
  48
+--------------------------------------------------
  49
+  * Bug fix: infinite loop in server when a client tries to disconnect and streams can't be closed (usb timeout for example).
  50
+  * Added MacOSX platform support.
  51
+  * Added the unstable README file.
  52
+  * Removed useless win32 prerequisites...
  53
+  * Fixing audio to work properly in the client-server model.
  54
+  * Server Bug Fix: a potential dead lock was solved.
  55
+  * Sensor Server now supports multiple sensors. 
  56
+  * Refactored server to a better design, which should decrease deadlocks and make code more readable.
  57
+  * Adding support for enumerating and opening different sensors.
  58
+  * Bug Fix: GetStringProperty would always return XN_STATUS_ERROR.
  59
+
  60
+Version 5.0.0.24 (Stable version - Dec 8th 2010)
  61
+------------------------------------------------
  62
+  * Initial release... 
12  Data/GlobalDefaults.ini → Data/GlobalDefaultsKinect.ini
... ...
@@ -1,6 +1,6 @@
1 1
 [Core]
2 2
 ; 0 - Verbose, 1 - Info, 2 - Warning, 3 - Error (default)
3  
-LogLevel=0
  3
+LogLevel=3
4 4
 ; leave empty for nothing (default). ALL - all masks
5 5
 LogMasks=ALL
6 6
 ; 0 - No (default), 1 - Yes
@@ -75,14 +75,14 @@ LogWriteToFile=1
75 75
 ; Max depth cutoff. 0-10000 mm (default is 10000)
76 76
 ;MaxDepthValue=10000
77 77
 
78  
-; Input format. 0 - Uncompressed 16-bit, 1 - PS Compression (default), 3 - Packed 11-bit
79  
-InputFormat=3
  78
+; Input format. 0 - Uncompressed 16-bit, 1 - PS Compression, 3 - Packed 11-bit (default)
  79
+;InputFormat=1
80 80
 
81 81
 ; Registration. 0 - Off (default), 1 - On
82 82
 ;Registration=1
83 83
 
84 84
 ; Registration Type. 0 - Don't care (default), 1 - use hardware accelaration, 2 - perform in software
85  
-RegistrationType=2
  85
+;RegistrationType=0
86 86
 
87 87
 ; Hole Filler. 0 - Off, 1 - On (default)
88 88
 ;HoleFilter=1
@@ -136,8 +136,8 @@ RegistrationType=2
136 136
 ; Frames per second (default is 30)
137 137
 ;FPS=30
138 138
 
139  
-; Input format. 0 - BAYER (1.3MP or 2.0MP only), 1 - Compressed YUV422 (default), 2 - Jpeg, 5 - Uncompressed YUV422, 6 - Uncompressed 8-bit BAYER
140  
-InputFormat=6
  139
+; Input format. 0 - BAYER (1.3MP or 2.0MP only), 1 - Compressed YUV422, 2 - Jpeg, 5 - Uncompressed YUV422 (default), 6 - Uncompressed 8-bit BAYER
  140
+;InputFormat=5
141 141
 
142 142
 ; Anti Flicker. 0 - Off (default), 50 - 50Hz, 60 - 60 Hz.
143 143
 ;Flicker=50
5  Include/XnDDK.h
@@ -31,6 +31,7 @@
31 31
 #include <XnPlatform.h>
32 32
 #include <XnStatus.h>
33 33
 #include <XnDDKStatus.h>
  34
+#include <XnStreamParams.h>
34 35
 
35 36
 #ifdef __cplusplus
36 37
 	#ifdef XN_DDK_EXPORTS
@@ -80,4 +81,8 @@ XN_DDK_API XnStatus XnDDKInitFromINIFile(const XnChar* cpINIFileName);
80 81
 */
81 82
 XN_DDK_API XnStatus XnDDKShutdown();
82 83
 
  84
+XN_DDK_API XnResolutions XnDDKGetResolutionFromXY(XnUInt32 nXRes, XnUInt32 nYRes);
  85
+XN_DDK_API XnBool XnDDKGetXYFromResolution(XnResolutions res, XnUInt32* pnXRes, XnUInt32* pnYRes);
  86
+XN_DDK_API const XnChar*  XnDDKGetResolutionName(XnResolutions res);
  87
+
83 88
 #endif //_XN_DDK_H_
1  Include/XnFormatsStatus.h
@@ -64,6 +64,7 @@ XN_STATUS_MESSAGE(XN_STATUS_IO_INVALID_STREAM_DEPTH_BUFFER_SIZE, "Invalid Xiron
64 64
 XN_STATUS_MESSAGE(XN_STATUS_IO_INVALID_STREAM_IMAGE_BUFFER_SIZE, "Invalid Xiron I/O stream image buffer size!")
65 65
 XN_STATUS_MESSAGE(XN_STATUS_IO_INVALID_STREAM_MISC_BUFFER_SIZE, "Invalid Xiron I/O stream misc buffer size!")
66 66
 XN_STATUS_MESSAGE(XN_STATUS_IO_INVALID_STREAM_AUDIO_BUFFER_SIZE, "Invalid Xiron I/O stream audio buffer size!")
  67
+XN_STATUS_MESSAGE(XN_STATUS_INVALID_OUTPUT_FORMAT_FOR_RESOLUTION, "Pixel format is not supported for this resolution!")
67 68
 XN_PS_STATUS_MESSAGE_MAP_END(XN_ERROR_GROUP_FORMATS)
68 69
 
69 70
 #endif //_XN_FORMATS_STATUS_H_
4  Include/XnPsVersion.h
@@ -41,9 +41,9 @@
41 41
 /** Xiron minor version. */ 
42 42
 #define XN_PS_MINOR_VERSION 0
43 43
 /** Xiron maintenance version. */ 
44  
-#define XN_PS_MAINTENANCE_VERSION 0
  44
+#define XN_PS_MAINTENANCE_VERSION 1
45 45
 /** Xiron build version. */ 
46  
-#define XN_PS_BUILD_VERSION 24
  46
+#define XN_PS_BUILD_VERSION 32
47 47
 
48 48
 /** Xiron version (in brief string format): "Major.Minor.Maintenance (Build)" */ 
49 49
 #define XN_PS_BRIEF_VERSION_STRING \
63  Include/XnStreamParams.h
@@ -138,12 +138,19 @@
138 138
 /** XnCropping */ 
139 139
 #define XN_STREAM_PROPERTY_CROPPING					"Cropping"
140 140
 
  141
+/** Boolean */
  142
+#define XN_STREAM_PROPERTY_WHITE_BALANCE_ENABLED	"WhiteBalancedEnabled"
  143
+/** Integer */ 
  144
+#define XN_STREAM_PROPERTY_GAIN						"Gain"
  145
+/** Integer */
  146
+#define XN_STREAM_PROPERTY_SUPPORT_MODES_COUNT		"SupportedModesCount"
  147
+/** General (XnCmosPreset array) */
  148
+#define XN_STREAM_PROPERTY_SUPPORT_MODES			"SupportedModes"
  149
+
141 150
 //---------------------------------------------------------------------------
142 151
 // Depth Specific Properties
143 152
 //---------------------------------------------------------------------------
144 153
 /** Integer */ 
145  
-#define XN_STREAM_PROPERTY_GAIN						"Gain"
146  
-/** Integer */ 
147 154
 #define XN_STREAM_PROPERTY_HOLE_FILTER				"HoleFilter"
148 155
 /** Integer */ 
149 156
 #define XN_STREAM_PROPERTY_MIN_DEPTH				"MinDepthValue"
@@ -157,8 +164,6 @@
157 164
 #define XN_STREAM_PROPERTY_REGISTRATION				"Registration"
158 165
 /** XnProcessingType */ 
159 166
 #define XN_STREAM_PROPERTY_REGISTRATION_TYPE		"RegistrationType"
160  
-/** Boolean */
161  
-#define XN_STREAM_PROPERTY_WHITE_BALANCE_ENABLED	"WhiteBalancedEnabled"
162 167
 /** XnDepthAGCBin* */
163 168
 #define XN_STREAM_PROPERTY_AGC_BIN					"AGCBin"
164 169
 /** Integer */ 
@@ -231,6 +236,28 @@
231 236
 #define XN_STREAM_PROPERTY_FLICKER					"Flicker"
232 237
 /** Integer */ 
233 238
 #define XN_STREAM_PROPERTY_QUALITY					"Quality"
  239
+/** Float */
  240
+#define XN_STREAM_PROPERTY_BRIGHTNESS				XN_CAPABILITY_BRIGHTNESS
  241
+/** Float */
  242
+#define XN_STREAM_PROPERTY_CONTRAST					XN_CAPABILITY_CONTRAST
  243
+/** Float */
  244
+#define XN_STREAM_PROPERTY_SATURATION				XN_CAPABILITY_SATURATION
  245
+/** Float */
  246
+#define XN_STREAM_PROPERTY_SHARPNESS				XN_CAPABILITY_SHARPNESS
  247
+/** Float */
  248
+#define XN_STREAM_PROPERTY_COLOR_TEMPERATURE		XN_CAPABILITY_COLOR_TEMPERATURE
  249
+/** Float */
  250
+#define XN_STREAM_PROPERTY_BACKLIGHT_COMPENSATION	XN_CAPABILITY_BACKLIGHT_COMPENSATION
  251
+/** Float */
  252
+#define XN_STREAM_PROPERTY_ZOOM						XN_CAPABILITY_ZOOM
  253
+/** Integer (in microseconds) */
  254
+#define XN_STREAM_PROPERTY_EXPOSURE					XN_CAPABILITY_EXPOSURE
  255
+/** Float */
  256
+#define XN_STREAM_PROPERTY_PAN						XN_CAPABILITY_PAN
  257
+/** Float */
  258
+#define XN_STREAM_PROPERTY_TILT						XN_CAPABILITY_TILT
  259
+/** Boolean */
  260
+#define XN_STREAM_PROPERTY_LOW_LIGHT_COMPENSATION	XN_CAPABILITY_LOW_LIGHT_COMPENSATION
234 261
 
235 262
 //---------------------------------------------------------------------------
236 263
 // Audio Specific Properties
@@ -263,6 +290,8 @@
263 290
 #define XN_MODULE_PROPERTY_SDK_VERSION				"SDKVersion"
264 291
 /** String */
265 292
 #define XN_MODULE_PROPERTY_DEVICE_NAME				"DeviceName"
  293
+/** String */
  294
+#define XN_MODULE_PROPERTY_USB_PATH					"USBPath"
266 295
 /** Integer (XnSensorUsbInterface) */
267 296
 #define XN_MODULE_PROPERTY_USB_INTERFACE			"UsbInterface"
268 297
 /** Integer */
@@ -317,6 +346,10 @@
317 346
 #define XN_MODULE_PROPERTY_ERROR_STATE				"ErrorState"
318 347
 /** Boolean */
319 348
 #define XN_MODULE_PROPERTY_ENABLE_MULTI_PROCESS		"EnableMultiProcess"
  349
+/** String */
  350
+#define XN_MODULE_PROPERTY_PHYSICAL_DEVICE_NAME		"PhysicalDeviceName"
  351
+/** String */
  352
+#define XN_MODULE_PROPERTY_VENDOR_SPECIFIC_DATA		"VendorSpecificData"
320 353
 
321 354
 
322 355
 //---------------------------------------------------------------------------
@@ -349,8 +382,18 @@ typedef enum XnResolutions
349 382
 	XN_RESOLUTION_VGA = 1, // 640x480
350 383
 	XN_RESOLUTION_SXGA = 2, // 1280x1024
351 384
 	XN_RESOLUTION_UXGA = 3, // 1600x1200
352  
-
353  
-	XN_RESOLUTION_COUNT,
  385
+	XN_RESOLUTION_QQVGA = 4, // 160x120
  386
+	XN_RESOLUTION_QCIF = 5, // 176x144
  387
+	XN_RESOLUTION_240P = 6, // 432x240
  388
+	XN_RESOLUTION_CIF = 7, // 352x288
  389
+	XN_RESOLUTION_WVGA = 8, // 640x360
  390
+	XN_RESOLUTION_480P = 9, // 864x480
  391
+	XN_RESOLUTION_800_448 = 10, // 800x448
  392
+	XN_RESOLUTION_SVGA = 11, // 800x600
  393
+	XN_RESOLUTION_576P = 12, // 1024x576
  394
+	XN_RESOLUTION_DV = 13, // 960x720
  395
+	XN_RESOLUTION_720P = 14, // 1280x720
  396
+	XN_RESOLUTION_1280_960 = 15, // 1280x960
354 397
 } XnResolutions;
355 398
 
356 399
 typedef enum 
@@ -365,6 +408,7 @@ typedef enum
365 408
 	XN_SENSOR_FW_VER_5_1 = 7,
366 409
 	XN_SENSOR_FW_VER_5_2 = 8,
367 410
 	XN_SENSOR_FW_VER_5_3 = 9,
  411
+	XN_SENSOR_FW_VER_5_4 = 10,
368 412
 } XnFWVer;
369 413
 
370 414
 typedef enum
@@ -524,6 +568,13 @@ typedef struct XnDynamicSizeBuffer
524 568
 	XnUInt32 nDataSize;
525 569
 } XnDynamicSizeBuffer;
526 570
 
  571
+typedef struct XnCmosPreset
  572
+{
  573
+	XnUInt16 nFormat;
  574
+	XnUInt16 nResolution;
  575
+	XnUInt16 nFPS;
  576
+} XnCmosPreset;
  577
+
527 578
 
528 579
 #pragma pack (pop)
529 580
 
23  NITE/Data/Sample-Scene.xml
... ...
@@ -1,23 +0,0 @@
1  
-<OpenNI>
2  
-	<Licenses>
3  
-		<License vendor="PrimeSense" key="insert key here"/>
4  
-	</Licenses>
5  
-	<Log writeToConsole="true" writeToFile="false">
6  
-		<!-- 0 - Verbose, 1 - Info, 2 - Warning, 3 - Error (default) -->
7  
-		<LogLevel value="3"/>
8  
-		<Masks>
9  
-			<Mask name="ALL" on="false"/>
10  
-		</Masks>
11  
-		<Dumps>
12  
-		</Dumps>
13  
-	</Log>
14  
-	<ProductionNodes>
15  
-		<Node type="Depth">
16  
-			<Configuration>
17  
-				<MapOutputMode xRes="640" yRes="480" FPS="30"/>
18  
-				<Mirror on="true"/>
19  
-			</Configuration>
20  
-		</Node>
21  
-		<Node type="Scene" />
22  
-	</ProductionNodes>
23  
-</OpenNI>
24  NITE/Data/Sample-Tracking.xml
... ...
@@ -1,24 +0,0 @@
1  
-<OpenNI>
2  
-	<Licenses>
3  
-		<License vendor="PrimeSense" key="insert key here"/>
4  
-	</Licenses>
5  
-	<Log writeToConsole="true" writeToFile="false">
6  
-		<!-- 0 - Verbose, 1 - Info, 2 - Warning, 3 - Error (default) -->
7  
-		<LogLevel value="3"/>
8  
-		<Masks>
9  
-			<Mask name="ALL" on="false"/>
10  
-		</Masks>
11  
-		<Dumps>
12  
-		</Dumps>
13  
-	</Log>
14  
-	<ProductionNodes>
15  
-		<Node type="Depth">
16  
-			<Configuration>
17  
-				<MapOutputMode xRes="640" yRes="480" FPS="30"/>
18  
-				<Mirror on="true"/>
19  
-			</Configuration>
20  
-		</Node>
21  
-		<Node type="Gesture" />
22  
-		<Node type="Hands" />
23  
-	</ProductionNodes>
24  
-</OpenNI>
23  NITE/Data/Sample-User.xml
... ...
@@ -1,23 +0,0 @@
1  
-<OpenNI>
2  
-	<Licenses>
3  
-		<License vendor="PrimeSense" key="insert key here"/>
4  
-	</Licenses>
5  
-	<Log writeToConsole="true" writeToFile="false">
6  
-		<!-- 0 - Verbose, 1 - Info, 2 - Warning, 3 - Error (default) -->
7  
-		<LogLevel value="3"/>
8  
-		<Masks>
9  
-			<Mask name="ALL" on="false"/>
10  
-		</Masks>
11  
-		<Dumps>
12  
-		</Dumps>
13  
-	</Log>
14  
-	<ProductionNodes>
15  
-		<Node type="Depth">
16  
-			<Configuration>
17  
-				<MapOutputMode xRes="640" yRes="480" FPS="30"/>
18  
-				<Mirror on="true"/>
19  
-			</Configuration>
20  
-		</Node>	
21  
-		<Node type="User" />
22  
-	</ProductionNodes>
23  
-</OpenNI>
10  OpenNI/Data/SamplesConfig.xml
@@ -4,27 +4,26 @@
4 4
 		<License vendor="vendor" key="key"/>
5 5
 		-->
6 6
 	</Licenses>
7  
-	<Log writeToConsole="true" writeToFile="false">
  7
+	<Log writeToConsole="false" writeToFile="false">
8 8
 		<!-- 0 - Verbose, 1 - Info, 2 - Warning, 3 - Error (default) -->
9 9
 		<LogLevel value="3"/>
10 10
 		<Masks>
11  
-			<Mask name="ALL" on="false"/>
  11
+			<Mask name="ALL" on="true"/>
12 12
 		</Masks>
13 13
 		<Dumps>
14 14
 		</Dumps>
15 15
 	</Log>
16 16
 	<ProductionNodes>	
17 17
 		<!-- Normal Image -->
18  
-		<Node type="Image" name="Image1">
  18
+		<Node type="Image" name="Image1" stopOnError="false"> 
19 19
 			<Configuration>
20  
-				<MapOutputMode xRes="640" yRes="480" FPS="30"/>
21 20
 				<Mirror on="true"/>
22 21
 			</Configuration>
23 22
 		</Node>	
24 23
 	
25 24
 		<!-- HighRes Image -->
26 25
 		<!--
27  
-		<Node type="Image" name="Image1">
  26
+		<Node type="Image" name="Image1" stopOnError="false"> 
28 27
 			<Configuration>
29 28
 				<MapOutputMode xRes="1280" yRes="1024" FPS="15"/>
30 29
 				<Mirror on="true"/>
@@ -54,7 +53,6 @@
54 53
 		
55 54
 		<Node type="Depth" name="Depth1">
56 55
 			<Configuration>
57  
-				<MapOutputMode xRes="640" yRes="480" FPS="30"/>
58 56
 				<Mirror on="true"/>
59 57
 			</Configuration>
60 58
 		</Node>
2  Platform/Linux-x86/Build/Utils/XnSensorServer/Makefile
... ...
@@ -1,7 +1,7 @@
1 1
 SRC_FILES = ../../../../../Source/Utils/XnSensorServer/*.cpp
2 2
 
3 3
 EXE_NAME = XnSensorServer
4  
-USED_LIBS = OpenNI XnCore XnFormats XnDDK XnDeviceSensorV2
  4
+USED_LIBS = OpenNI XnCore XnFormats XnDDK XnDeviceSensorV2KM
5 5
 
6 6
 include ../EngineUtilMakefile
7 7
 
2  Platform/Linux-x86/Build/XnDeviceSensorV2/Makefile
... ...
@@ -1,7 +1,7 @@
1 1
 SRC_FILES = \
2 2
 	../../../../Source/XnDeviceSensorV2/*.cpp
3 3
 	    
4  
-LIB_NAME = XnDeviceSensorV2
  4
+LIB_NAME = XnDeviceSensorV2KM
5 5
 USED_LIBS = XnCore XnFormats XnDDK OpenNI
6 6
 DEFINES = XN_DEVICE_EXPORTS
7 7
 
2  Platform/Linux-x86/Build/XnFormats/Makefile
@@ -3,7 +3,7 @@ SRC_FILES = \
3 3
 			../../../../Source/External/LibJPEG/*.c
4 4
 
5 5
 LIB_NAME = XnFormats
6  
-LIB_USED = XnCore OpenNI
  6
+USED_LIBS = XnCore OpenNI
7 7
 DEFINES = XN_FORMATS_EXPORTS
8 8
 INC_DIRS = ../../../../Source/External/LibJPEG
9 9
 
49  Platform/Linux-x86/CreateRedist/RedistMaker
... ...
@@ -1,12 +1,18 @@
1 1
 #!/bin/bash -e
2 2
 
  3
+use_4100=0
  4
+if [ "$1" == "4100" ]
  5
+then
  6
+use_4100=1
  7
+fi
  8
+
3 9
 SCRIPT_DIR=`pwd`
4 10
 
5 11
 # Take version
6  
-MAJOR=`grep "#define XN_PS_MAJOR_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }'`
7  
-MINOR=`grep "#define XN_PS_MINOR_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }'`
8  
-MAINTENANCE=`grep "#define XN_PS_MAINTENANCE_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }'`
9  
-BUILD=`grep "#define XN_PS_BUILD_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }'`
  12
+MAJOR=`grep "#define XN_PS_MAJOR_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }' | strings -n 1`
  13
+MINOR=`grep "#define XN_PS_MINOR_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }' | strings -n 1`
  14
+MAINTENANCE=`grep "#define XN_PS_MAINTENANCE_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }' | strings -n 1`
  15
+BUILD=`grep "#define XN_PS_BUILD_VERSION" ../../../Include/XnPsVersion.h | awk '{ print $3 }' | strings -n 1`
10 16
 
11 17
 PS_VERSION="$MAJOR.$MINOR.$MAINTENANCE.$BUILD"
12 18
 
@@ -15,7 +21,14 @@ rm -rf Final
15 21
 rm -rf ../Redist
16 22
 
17 23
 # Build Engine
  24
+if [ "$use_4100" == "1" ]
  25
+then
  26
+cd ../Build
  27
+./Make.4100
  28
+cd -
  29
+else
18 30
 make -C ../Build
  31
+fi
19 32
 
20 33
 # create redist folder structure
21 34
 mkdir -p ../Redist
@@ -27,20 +40,32 @@ mkdir -p ../Redist/Config
27 40
 # copy files to redist
28 41
 cp ../../../GPL.txt ../Redist
29 42
 cp ../../../LGPL.txt ../Redist
30  
-cp ../Bin/Release/libXnDeviceSensorV2.so ../Redist/Lib
31  
-cp ../Bin/Release/libXnDeviceFile.so ../Redist/Lib
32  
-cp ../Bin/Release/libXnDDK.so ../Redist/Lib
33  
-cp ../Bin/Release/libXnFormats.so ../Redist/Lib
34  
-cp ../Bin/Release/libXnCore.so ../Redist/Lib
  43
+cp ../Bin/Release/libXnDeviceSensorV2KM.* ../Redist/Lib
  44
+cp ../Bin/Release/libXnDeviceFile.* ../Redist/Lib
  45
+cp ../Bin/Release/libXnDDK.* ../Redist/Lib
  46
+cp ../Bin/Release/libXnFormats.* ../Redist/Lib
  47
+cp ../Bin/Release/libXnCore.* ../Redist/Lib
35 48
 cp ../Bin/Release/XnSensorServer ../Redist/Bin
36 49
 cp ../Install/* ../Redist/Install
37  
-cp ../../../Data/GlobalDefaults.ini ../Redist/Config
  50
+cp ../../../Data/GlobalDefaultsKinect.ini ../Redist/Config
38 51
 cp install.sh ../Redist
39 52
 
40 53
 # create tar
41 54
 mkdir -p Final
42 55
 cd ../Redist
43  
-tar -cjf $SCRIPT_DIR/Final/Engine.v$PS_VERSION.tar.bz2 *
44  
-cd -
45 56
 
  57
+if [ "`uname -s`" == "Darwin" ]; then
  58
+	TAR_TARGET="MacOSX"
  59
+elif [ "$use_4100" == "1" ]; then
  60
+	TAR_TARGET="CE4100"
  61
+elif [ "`uname -m`" == "i686" ]; then
  62
+	TAR_TARGET="Linux32"
  63
+elif [ "`uname -m`" == "x86_64" ]; then
  64
+	TAR_TARGET="Linux64"
  65
+else
  66
+	TAR_TARGET="Linux"
  67
+fi
46 68
 
  69
+tar -cjf $SCRIPT_DIR/Final/Sensor-Bin-$TAR_TARGET-v$PS_VERSION.tar.bz2 *
  70
+
  71
+cd -
29  Platform/Linux-x86/CreateRedist/install.sh
@@ -7,7 +7,12 @@ INSTALL_BIN=/usr/bin
7 7
 INSTALL_ETC=/usr/etc/primesense
8 8
 INSTALL_RULES=/etc/udev/rules.d
9 9
 
10  
-MODULES="libXnDeviceSensorV2.so libXnDeviceFile.so"
  10
+if [ "`uname -s`" == "Darwin" ]; then
  11
+    MODULES="libXnDeviceSensorV2KM.dylib libXnDeviceFile.dylib"
  12
+else
  13
+    MODULES="libXnDeviceSensorV2KM.so libXnDeviceFile.so"
  14
+fi
  15
+
11 16
 RULES_FILE="55-primesense-usb.rules"
12 17
 
13 18
 # read arguments
@@ -62,7 +67,7 @@ if [ "$INSTALL" == "1" ]; then
62 67
 
63 68
     # copy config file
64 69
     printf "copying server config file..."
65  
-    cp Config/GlobalDefaults.ini $INSTALL_ETC
  70
+    cp Config/GlobalDefaultsKinect.ini $INSTALL_ETC
66 71
     printf "OK\n"
67 72
 
68 73
     # make server run as root
@@ -78,10 +83,12 @@ if [ "$INSTALL" == "1" ]; then
78 83
     chmod a+w /var/log/primesense/XnSensorServer
79 84
     printf "OK\n"
80 85
 
81  
-    # install USB rules (so that PrimeSense sensors will be mounted with write permissions)
82  
-    printf "installing usb rules..."
83  
-    cp Install/$RULES_FILE $INSTALL_RULES
84  
-    printf "OK\n"
  86
+    if [ "`uname -s`" != "Darwin" ]; then
  87
+        # install USB rules (so that PrimeSense sensors will be mounted with write permissions)
  88
+        printf "installing usb rules..."
  89
+        cp Install/$RULES_FILE $INSTALL_RULES
  90
+        printf "OK\n"
  91
+    fi
85 92
 
86 93
 else #uninstall
87 94
 
@@ -112,10 +119,12 @@ else #uninstall
112 119
 	rm -rf $INSTALL_ETC
113 120
     printf "OK\n"
114 121
 
115  
-    # remove USB rules
116  
-    printf "removing usb rules..."
117  
-	rm -f $INSTALL_RULES/$RULES_FILE
118  
-    printf "OK\n"
  122
+    if [ "`uname -s`" != "Darwin" ]; then
  123
+        # remove USB rules
  124
+        printf "removing usb rules..."
  125
+	    rm -f $INSTALL_RULES/$RULES_FILE
  126
+        printf "OK\n"
  127
+    fi
119 128
 
120 129
 fi
121 130
 
2  Platform/Linux-x86/Install/55-primesense-usb.rules
@@ -5,4 +5,6 @@ SYSFS{idProduct}=="0400",SYSFS{idVendor}=="1d27",MODE="666",OWNER="xxx",GROUP="u
5 5
 SYSFS{idProduct}=="0500",SYSFS{idVendor}=="1d27",MODE="666",OWNER="xxx",GROUP="users"
6 6
 SYSFS{idProduct}=="0600",SYSFS{idVendor}=="1d27",MODE="666",OWNER="xxx",GROUP="users"
7 7
 SYSFS{idProduct}=="02AE",SYSFS{idVendor}=="045E",MODE="666",OWNER="xxx",GROUP="users"
  8
+SYSFS{idProduct}=="02AD",SYSFS{idVendor}=="045E",MODE="666",OWNER="xxx",GROUP="users"
  9
+SYSFS{idProduct}=="02B0",SYSFS{idVendor}=="045E",MODE="666",OWNER="xxx",GROUP="users"
8 10
 
BIN  Platform/Win32/Build/Prerequisites/nsis-2.46-strlen_8192.zip
Binary file not shown
183  Platform/Win32/Build/Utils/XnSensorServer/XnSensorServer.vcproj
@@ -12,14 +12,17 @@
12 12
 		<Platform
13 13
 			Name="Win32"
14 14
 		/>
  15
+		<Platform
  16
+			Name="x64"
  17
+		/>
15 18
 	</Platforms>
16 19
 	<ToolFiles>
17 20
 	</ToolFiles>
18 21
 	<Configurations>
19 22
 		<Configuration
20 23
 			Name="Debug|Win32"
21  
-			OutputDirectory="$(ConfigurationName)"
22  
-			IntermediateDirectory="$(ConfigurationName)"
  24
+			OutputDirectory="..\..\..\Bin\$(ConfigurationName)"
  25
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
23 26
 			ConfigurationType="1"
24 27
 			CharacterSet="1"
25 28
 			>
@@ -62,7 +65,7 @@
62 65
 			/>
63 66
 			<Tool
64 67
 				Name="VCLinkerTool"
65  
-				AdditionalDependencies="openNI.lib XnDDK.lib XnDeviceSensorV2.lib XnFormats.lib "
  68
+				AdditionalDependencies="openNI.lib XnDDK.lib XnDeviceSensorV2KM.lib XnFormats.lib "
66 69
 				OutputFile="../../../Bin/$(ConfigurationName)/$(ProjectName).exe"
67 70
 				LinkIncremental="2"
68 71
 				AdditionalLibraryDirectories="&quot;$(OPEN_NI_LIB)&quot;;../../../Lib/$(ConfigurationName)"
@@ -94,9 +97,89 @@
94 97
 			/>
95 98
 		</Configuration>
96 99
 		<Configuration
  100
+			Name="Debug|x64"
  101
+			OutputDirectory="..\..\..\Bin64\$(ConfigurationName)"
  102
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
  103
+			ConfigurationType="1"
  104
+			CharacterSet="1"
  105
+			>
  106
+			<Tool
  107
+				Name="VCPreBuildEventTool"
  108
+			/>
  109
+			<Tool
  110
+				Name="VCCustomBuildTool"
  111
+			/>
  112
+			<Tool
  113
+				Name="VCXMLDataGeneratorTool"
  114
+			/>
  115
+			<Tool
  116
+				Name="VCWebServiceProxyGeneratorTool"
  117
+			/>
  118
+			<Tool
  119
+				Name="VCMIDLTool"
  120
+				TargetEnvironment="3"
  121
+			/>
  122
+			<Tool
  123
+				Name="VCCLCompilerTool"
  124
+				Optimization="0"
  125
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\..\Include;..\..\..\..\..\Source"
  126
+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
  127
+				MinimalRebuild="true"
  128
+				BasicRuntimeChecks="3"
  129
+				RuntimeLibrary="3"
  130
+				UsePrecompiledHeader="0"
  131
+				WarningLevel="3"
  132
+				DebugInformationFormat="4"
  133
+			/>
  134
+			<Tool
  135
+				Name="VCManagedResourceCompilerTool"
  136
+			/>
  137
+			<Tool
  138
+				Name="VCResourceCompilerTool"
  139
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\..\Include"
  140
+			/>
  141
+			<Tool
  142
+				Name="VCPreLinkEventTool"
  143
+			/>
  144
+			<Tool
  145
+				Name="VCLinkerTool"
  146
+				AdditionalDependencies="openNI64.lib XnDDK64.lib XnDeviceSensorV2KM64.lib XnFormats64.lib "
  147
+				OutputFile="../../../Bin64/$(ConfigurationName)/$(ProjectName)64.exe"
  148
+				LinkIncremental="2"
  149
+				AdditionalLibraryDirectories="&quot;$(OPEN_NI_LIB64)&quot;;../../../Lib64/$(ConfigurationName)"
  150
+				IgnoreDefaultLibraryNames=""
  151
+				GenerateDebugInformation="true"
  152
+				ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
  153
+				SubSystem="1"
  154
+				ImportLibrary="$(TargetDir)$(TargetName)64.lib"
  155
+				TargetMachine="17"
  156
+			/>
  157
+			<Tool
  158
+				Name="VCALinkTool"
  159
+			/>
  160
+			<Tool
  161
+				Name="VCManifestTool"
  162
+			/>
  163
+			<Tool
  164
+				Name="VCXDCMakeTool"
  165
+			/>
  166
+			<Tool
  167
+				Name="VCBscMakeTool"
  168
+			/>
  169
+			<Tool
  170
+				Name="VCFxCopTool"
  171
+			/>
  172
+			<Tool
  173
+				Name="VCAppVerifierTool"
  174
+			/>
  175
+			<Tool
  176
+				Name="VCPostBuildEventTool"
  177
+			/>
  178
+		</Configuration>
  179
+		<Configuration
97 180
 			Name="Release|Win32"
98  
-			OutputDirectory="$(ConfigurationName)"
99  
-			IntermediateDirectory="$(ConfigurationName)"
  181
+			OutputDirectory="..\..\..\Bin\$(ConfigurationName)"
  182
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
100 183
 			ConfigurationType="1"
101 184
 			CharacterSet="1"
102 185
 			WholeProgramOptimization="1"
@@ -145,7 +228,7 @@
145 228
 			/>
146 229
 			<Tool
147 230
 				Name="VCLinkerTool"
148  
-				AdditionalDependencies="openNI.lib XnDDK.lib XnDeviceSensorV2.lib XnFormats.lib "
  231
+				AdditionalDependencies="openNI.lib XnDDK.lib XnDeviceSensorV2KM.lib XnFormats.lib "
149 232
 				OutputFile="../../../Bin/$(ConfigurationName)/$(ProjectName).exe"
150 233
 				LinkIncremental="1"
151 234
 				AdditionalLibraryDirectories="&quot;$(OPEN_NI_LIB)&quot;;../../../Lib/$(ConfigurationName)"
@@ -178,6 +261,94 @@
178 261
 				Name="VCPostBuildEventTool"
179 262
 			/>
180 263
 		</Configuration>
  264
+		<Configuration
  265
+			Name="Release|x64"
  266
+			OutputDirectory="..\..\..\Bin64\$(ConfigurationName)"
  267
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
  268
+			ConfigurationType="1"
  269
+			CharacterSet="1"
  270
+			WholeProgramOptimization="1"
  271
+			>
  272
+			<Tool
  273
+				Name="VCPreBuildEventTool"
  274
+			/>
  275
+			<Tool
  276
+				Name="VCCustomBuildTool"
  277
+			/>
  278
+			<Tool
  279
+				Name="VCXMLDataGeneratorTool"
  280
+			/>
  281
+			<Tool
  282
+				Name="VCWebServiceProxyGeneratorTool"
  283
+			/>
  284
+			<Tool
  285
+				Name="VCMIDLTool"
  286
+				TargetEnvironment="3"
  287
+			/>
  288
+			<Tool
  289
+				Name="VCCLCompilerTool"
  290
+				Optimization="2"
  291
+				InlineFunctionExpansion="2"
  292
+				EnableIntrinsicFunctions="true"
  293
+				FavorSizeOrSpeed="1"
  294
+				OmitFramePointers="true"
  295
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\..\Include;..\..\..\..\..\Source"
  296
+				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
  297
+				RuntimeLibrary="2"
  298
+				BufferSecurityCheck="false"
  299
+				EnableFunctionLevelLinking="false"
  300
+				EnableEnhancedInstructionSet="2"
  301
+				UsePrecompiledHeader="0"
  302
+				WarningLevel="3"
  303
+				DebugInformationFormat="3"
  304
+			/>
  305
+			<Tool
  306
+				Name="VCManagedResourceCompilerTool"
  307
+			/>
  308
+			<Tool
  309
+				Name="VCResourceCompilerTool"
  310
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\..\Include"
  311
+			/>
  312
+			<Tool
  313
+				Name="VCPreLinkEventTool"
  314
+			/>
  315
+			<Tool
  316
+				Name="VCLinkerTool"
  317
+				AdditionalDependencies="openNI64.lib XnDDK64.lib XnDeviceSensorV2KM64.lib XnFormats64.lib "
  318
+				OutputFile="../../../Bin64/$(ConfigurationName)/$(ProjectName)64.exe"
  319
+				LinkIncremental="1"
  320
+				AdditionalLibraryDirectories="&quot;$(OPEN_NI_LIB64)&quot;;../../../Lib64/$(ConfigurationName)"
  321
+				IgnoreDefaultLibraryNames=""
  322
+				GenerateDebugInformation="true"
  323
+				ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
  324
+				SubSystem="1"
  325
+				OptimizeReferences="2"
  326
+				EnableCOMDATFolding="2"
  327
+				ImportLibrary="$(TargetDir)$(TargetName)64.lib"
  328
+				TargetMachine="17"
  329
+			/>
  330
+			<Tool
  331
+				Name="VCALinkTool"
  332
+			/>
  333
+			<Tool
  334
+				Name="VCManifestTool"
  335
+			/>
  336
+			<Tool
  337
+				Name="VCXDCMakeTool"
  338
+			/>
  339
+			<Tool
  340
+				Name="VCBscMakeTool"
  341
+			/>
  342
+			<Tool
  343
+				Name="VCFxCopTool"
  344
+			/>
  345
+			<Tool
  346
+				Name="VCAppVerifierTool"
  347
+			/>
  348
+			<Tool
  349
+				Name="VCPostBuildEventTool"
  350
+			/>
  351
+		</Configuration>
181 352
 	</Configurations>
182 353
 	<References>
183 354
 	</References>
209  Platform/Win32/Build/XnCore/XnCore.vcproj
@@ -12,14 +12,17 @@
12 12
 		<Platform
13 13
 			Name="Win32"
14 14
 		/>
  15
+		<Platform
  16
+			Name="x64"
  17
+		/>
15 18
 	</Platforms>
16 19
 	<ToolFiles>
17 20
 	</ToolFiles>
18 21
 	<Configurations>
19 22
 		<Configuration
20 23
 			Name="Debug|Win32"
21  
-			OutputDirectory="$(ConfigurationName)"
22  
-			IntermediateDirectory="$(ConfigurationName)"
  24
+			OutputDirectory="..\..\Bin\$(ConfigurationName)"
  25
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
23 26
 			ConfigurationType="2"
24 27
 			CharacterSet="2"
25 28
 			>
@@ -65,14 +68,14 @@
65 68
 			<Tool
66 69
 				Name="VCLinkerTool"
67 70
 				AdditionalDependencies="openNI.lib "
68  
-				OutputFile="../../Bin/$(ConfigurationName)/XnCore.dll"
  71
+				OutputFile="../../Bin/$(ConfigurationName)/$(ProjectName).dll"
69 72
 				AdditionalLibraryDirectories="&quot;$(OPEN_NI_LIB)&quot;;../../Lib/$(ConfigurationName)"
70 73
 				GenerateManifest="true"
71 74
 				IgnoreDefaultLibraryNames=""
72 75
 				GenerateDebugInformation="true"
73  
-				ProgramDatabaseFile="../../Bin/$(ConfigurationName)/XnCore.pdb"
  76
+				ProgramDatabaseFile="../../Bin/$(ConfigurationName)/$(ProjectName).pdb"
74 77
 				SubSystem="2"
75  
-				ImportLibrary="../../Lib/$(ConfigurationName)/XnCore.lib"
  78
+				ImportLibrary="../../Lib/$(ConfigurationName)/$(ProjectName).lib"
76 79
 				TargetMachine="1"
77 80
 			/>
78 81
 			<Tool
@@ -99,9 +102,92 @@
99 102
 			/>
100 103
 		</Configuration>
101 104
 		<Configuration
  105
+			Name="Debug|x64"
  106
+			OutputDirectory="..\..\Bin64\$(ConfigurationName)"
  107
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
  108
+			ConfigurationType="2"
  109
+			CharacterSet="2"
  110
+			>
  111
+			<Tool
  112
+				Name="VCPreBuildEventTool"
  113
+				CommandLine="xcopy /D /Y ..\..\..\..\Source\XnCommon\XnCommon.h ..\..\..\..\Include"
  114
+			/>
  115
+			<Tool
  116
+				Name="VCCustomBuildTool"
  117
+			/>
  118
+			<Tool
  119
+				Name="VCXMLDataGeneratorTool"
  120
+			/>
  121
+			<Tool
  122
+				Name="VCWebServiceProxyGeneratorTool"
  123
+			/>
  124
+			<Tool
  125
+				Name="VCMIDLTool"
  126
+				TargetEnvironment="3"
  127
+			/>
  128
+			<Tool
  129
+				Name="VCCLCompilerTool"
  130
+				AdditionalOptions=""
  131
+				Optimization="0"
  132
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\Include;..\..\..\..\Source;..\..\..\..\Source\XnCore\Win32;..\..\..\..\Platform\Win32\Driver\Build\sys"
  133
+				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;XN_CORE_EXPORTS;XN_CROSS_PLATFORM"
  134
+				MinimalRebuild="true"
  135
+				BasicRuntimeChecks="3"
  136
+				RuntimeLibrary="3"
  137
+				UsePrecompiledHeader="0"
  138
+				WarningLevel="3"
  139
+				DebugInformationFormat="4"
  140
+			/>
  141
+			<Tool
  142
+				Name="VCManagedResourceCompilerTool"
  143
+			/>
  144
+			<Tool
  145
+				Name="VCResourceCompilerTool"
  146
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\Include"
  147
+			/>
  148
+			<Tool
  149
+				Name="VCPreLinkEventTool"
  150
+			/>
  151
+			<Tool
  152
+				Name="VCLinkerTool"
  153
+				AdditionalDependencies="openNI64.lib "
  154
+				OutputFile="../../Bin64/$(ConfigurationName)/$(ProjectName)64.dll"
  155
+				AdditionalLibraryDirectories="&quot;$(OPEN_NI_LIB64)&quot;;../../Lib64/$(ConfigurationName)"
  156
+				GenerateManifest="true"
  157
+				IgnoreDefaultLibraryNames=""
  158
+				GenerateDebugInformation="true"
  159
+				ProgramDatabaseFile="../../Bin64/$(ConfigurationName)/$(ProjectName)64.pdb"
  160
+				SubSystem="2"
  161
+				ImportLibrary="../../Lib64/$(ConfigurationName)/$(ProjectName)64.lib"
  162
+				TargetMachine="17"
  163
+			/>
  164
+			<Tool
  165
+				Name="VCALinkTool"
  166
+			/>
  167
+			<Tool
  168
+				Name="VCManifestTool"
  169
+			/>
  170
+			<Tool
  171
+				Name="VCXDCMakeTool"
  172
+			/>
  173
+			<Tool
  174
+				Name="VCBscMakeTool"
  175
+			/>
  176
+			<Tool
  177
+				Name="VCFxCopTool"
  178
+			/>
  179
+			<Tool
  180
+				Name="VCAppVerifierTool"
  181
+			/>
  182
+			<Tool
  183
+				Name="VCPostBuildEventTool"
  184
+				CommandLine=""
  185
+			/>
  186
+		</Configuration>
  187
+		<Configuration
102 188
 			Name="Release|Win32"
103  
-			OutputDirectory="$(ConfigurationName)"
104  
-			IntermediateDirectory="$(ConfigurationName)"
  189
+			OutputDirectory="..\..\Bin\$(ConfigurationName)"
  190
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
105 191
 			ConfigurationType="2"
106 192
 			CharacterSet="2"
107 193
 			WholeProgramOptimization="1"
@@ -190,6 +276,99 @@
190 276
 				CommandLine=""
191 277
 			/>
192 278
 		</Configuration>
  279
+		<Configuration
  280
+			Name="Release|x64"
  281
+			OutputDirectory="..\..\Bin64\$(ConfigurationName)"
  282
+			IntermediateDirectory="$(PlatformName)$(ConfigurationName)"
  283
+			ConfigurationType="2"
  284
+			CharacterSet="2"
  285
+			WholeProgramOptimization="1"
  286
+			>
  287
+			<Tool
  288
+				Name="VCPreBuildEventTool"
  289
+				CommandLine="xcopy /D /Y ..\..\..\..\Source\XnCommon\XnCommon.h ..\..\..\..\Include"
  290
+			/>
  291
+			<Tool
  292
+				Name="VCCustomBuildTool"
  293
+			/>
  294
+			<Tool
  295
+				Name="VCXMLDataGeneratorTool"
  296
+			/>
  297
+			<Tool
  298
+				Name="VCWebServiceProxyGeneratorTool"
  299
+			/>
  300
+			<Tool
  301
+				Name="VCMIDLTool"
  302
+				TargetEnvironment="3"
  303
+			/>
  304
+			<Tool
  305
+				Name="VCCLCompilerTool"
  306
+				AdditionalOptions="/fp:fast /Qprec-div- /Qprec-sqrt-"
  307
+				Optimization="2"
  308
+				InlineFunctionExpansion="2"
  309
+				EnableIntrinsicFunctions="true"
  310
+				FavorSizeOrSpeed="1"
  311
+				OmitFramePointers="true"
  312
+				WholeProgramOptimization="true"
  313
+				AdditionalIncludeDirectories="&quot;$(OPEN_NI_INCLUDE)&quot;;..\..\..\..\Include;..\..\..\..\Source;..\..\..\..\Source\XnCore\Win32;..\..\..\..\Platform\Win32\Driver\Build\sys"
  314
+				PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;XN_CORE_EXPORTS;XN_CROSS_PLATFORM"
  315
+				GeneratePreprocessedFile="0"
  316
+				RuntimeLibrary="2"
  317
+				BufferSecurityCheck="false"
  318
+				EnableEnhancedInstructionSet="2"
  319
+				UsePrecompiledHeader="0"
  320
+				WarningLevel="3"
  321
+				DebugInformationFormat="3"