-
Notifications
You must be signed in to change notification settings - Fork 572
/
CHANGES
230 lines (215 loc) · 14.4 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
Detailed Change log:
--------------------
Version 5.1.6.5
---------------
* Switched to Apache v2 license
* Support for new file type (Vendor data)
* Support for getting IR CMOS type
* Support for new RD1.09 product ID
* Support for toggling emitter while depth stream is running
* Remove the USB speed check: firmware goes into safe mode anyway when not in high-speed.
* Linux/OSX/Android: Change USB transfer length from 20KB to 16KB in bulk mode.
* Adding support for the "Set LED state" command (starting with FW 5.8.0).
* Added general debug streams support
* Added "startread" command to command console (to read from endpoints)
* Added option to turn off auto exposure and AWB (via the XN_PAUSE_AUTO_CONTROL value)
* Fix support for old firmwares (5.2.x)
* Fix the close range feature
* Add support for NESA
* Add support for firmware filesystem lock
* The current image auto exposure controls where split into on/off (XN_STREAM_PROPERTY_AUTO_EXPOSURE) and manual control (XN_STREAM_PROPERTY_EXPOSURE).
* Bug Fix: potential crash when receiving junk from USB (12-bit unpacker tries to translate invalid shift)
* RGBViewer new keys:
* 'x' - toggle depth close range on/off
* 'a' - toggle image CMOS auto-exposure on/off
* 'A' - toggle image CMOS auto-white-balance on/off
* 'n' - increase image CMOS exposure by one
* 'N' - decrease image CMOS exposure by one
* 'g' - increase image CMOS gain by 10
* 'G' - decrease image CMOS gain by 10
* Bug Fix: 25 FPS mode did not work
* Adding CroppingMode property. New mode was introduced: INCREASED_FPS. This allows cropping at the CMOS level, and might improve FPS (supported by 5.7.2)
* Fixing memory leak during depth stream opening (introduced in 5.1.3)
* Added support for the RD1.09 sensor.
* Bug Fix: Turning on registration while streaming might cause a crash
* Implement the 'GetPixelCoordinatesInViewPoint' method
* Software Registration bug fix: take into account padding algorithm params
* Added software close range support for pre FW5.6 sensors.
* Updated the linux USB rules to use the new udev usb syntax which replaces the old sysfs one that stopped working on kernel 3+. The new rules should work on kernel 2.6.30 and above.
Version 5.1.2.1 (Unstable version - May 15th 2012)
--------------------------------------------------
* Redist: fix identification of ARM.
* Adding support for new command: get usb core type. Also add different USB handling for different cores.
* Remove annoying (and misleading) warning messages from the log.
* Starting with firmware 5.7.0 - add the platform string to the firmware version (to support different platforms running the same FW version).
* Improved the hardware version information.
* Bug Fix: changing resolution might cause a crash when working without a server.
* Adding "Lean Init" mode which only gets version (no other FW queries).
* Adding -safe option to command console. If applied, lean init is used and chances of failing to open sensor are dramatically reduced.
* Bug Fix: If upload file fails, file remains open by process.
* Fix printing values during upload.
* Starting with 5.6.9 - check if image is supported using fixed params (instead of VSync ugly patch). Also moved fixed params to be part of SensorFirmware class.
* BIST: host now always performs soft reset before running BIST.
* Allowing AHB operations.
* Bug Fix: device is always opened on interface 0 (should be ISO on x86 and BULK on ARM).
* Added support to convert the uncompressed bayer image format into RGB24.
* Added the 720p & 1280x960 image resolutions in the Xiron.ini and GlobalDefaults.ini files.
* Added support for real uncompressed bayer image format.
* ARM depth defaults are now QQ and 12-bit.
* Allowing an application to provide buffers for map streams (instead of using the shared memory).
* Add some logs to the server session.
* Audio buffer (shared memory) and indexes are now owned by stream (and not the device).
* Workaround a FW bug which returns a preset with FPS 0 (causes DirectShow filter to crash).
* Using new data containers (XnListT, XnHashT, XnEventT).
* Added new server property: "ServerLogFile" (string) for getting log file name.
* Fix some static analysis warnings.
* Fix some minor, rare, never-gonna-happen, memory leaks.
* Moving "service discovery" into one location - takes place during init (instead of as part of the get version command).
* Adding support for FW 5.3.29 (like previous, with the get presets opcode).
* Adding a warning log when trying to set a non-supported mode.
* Bug Fix: enumerating for image caused soft-reset of the device when server is off. This is problematic if working from different contexts and this device is streaming in another context.
* Bug Fix: image resolution possible values were hard-coded, even when taking presets from FW.
* Fixed some bugs in the software registration:
1) The start/end padding code was removed. It was not really necessary and caused the result to be incorrect.
2) In the depth-to-shift table calculation, the distance between the cameras was truncated from bad float/int conversions.
3) Removed the code which stops building the registration table if the max Y was reached. The correct solution is not to stop the loop, but to mark the values as invalid.
4) Enabled software registration to also work in QVGA 30 mode.
* Using USB connection event instead of old single callback.
* Bug Fix: corrupt memory if resolution is changed *after* a frame was received but not read by application yet (#1950)
* Shifts map is stored as part of the frame.
* Added 12-bit depth processor.
* Optimizations for Arm Cortex A8 (neon).
* Adding interface for general i2c operations.
* Update device frequency whenever a stream is opened (frequency might change on setting to specific mode).
* Added a property "HostTimestamps" for making the code create timestamps according to host clock and disregard firmware timestamps.
* Added support for the Depth@QVGA and IR@VGA mode in FW 5.6 and above.
* Added support for QQVGA Depth.
* Now, when opening sensor without reset (for enumeration purposes), also not setting interface.
* Adding the 'CloseRange' property to the depth stream (supported by FW 5.6)
Version 5.1.0.41 (Stable version - Dec 28th 2011)
-------------------------------------------------
* No code changes, build is based on latest OpenNI.
Version 5.1.0.25 (Unstable version - Dec 18th 2011)
---------------------------------------------------
* Bug Fix: server-client didn't always work due to an uninitialized member.
* Installer bug fix: versions were compared by string instead of by number.
* Added Support for FW 5.5:
1) Support product ID 0601.
2) ISO and BULK interfaces are now switched.
3) AudioGenerator is no longer supported.
* Enumeration Bug Fix: From now on, a generator will not return on enumeration if one already exists from the same device.
* Android: makefiles now match ndk v7.
* Bug Fix: client-server did not pass timestamp correct in the NewDataAvailbale event, causing FrameSync to malfunction.
* Bug Fix: Enumeration for ImageGenerator could cause a crash.
* Default UsbInterface is now BULK on Arm (for performance reasons) and ISO on all other platforms.
* Default Image format is now uncompressed in ISO, and compressed in BULK.
* Server (Multiprocess) is not on by default on Arm.
* BC Bug fix: XnVInitStreamPropertiesInternal::IsProperty did not function correctly.
* BC Bug Fix: XnVDepthRepresentation would not set correct Y resolution.
* Added support for FW 5.6 (no audio)
* Added Android support to open source.
* Temporary patch for MacOSX: Cache the device path's since running enum on the MAC takes several seconds!
Version 5.0.5.1 (Unstable version - Nov 17th 2011)
--------------------------------------------------
* Removed support for very old 2.0 devices.
* Linux: XnSensorServer dependency was missing.
* Bug Fix: AllowMultiUsers property was not handled correctly.
Version 5.0.4.4 (Unstable version - Nov 7th 2011)
-------------------------------------------------
* Added YUV input in high res for FW 5.3.28 and above.
* Added grayscale 8 input format.
* Added automatic setting of input format, and automatic checking of modes.
* Updated to newer common makefiles
* Sensor client-server on windows: Allow starting server and client in different sessions (requires a special setting in GlobalDefaults.ini, as this causes things not to work properly if running on a machine with UAC on).
* Changed Engine changed to Sensor in the final installation files.
* Renamed Linux-x86 to "Linux" (supports x86, x64, Arm and MacOSX).
* Allow better cross compiling.
* Bug Fix: old XNS files would not set their IsGenerating property (and so it is left FALSE, even if node has frames).
* Updated the value of the UsbInterface property once endpoints are opened.
Version 5.0.4.3 (Stable version - Sep 18th 2011)
------------------------------------------------
* Some minor windows installer UI fix (title position).
* Fixed buffer overflow bugs in the software registration.
* Support for firmware 5.4.x: New TEC and extended serial number commands.
* On newer FWs (5.4+) high-res image output does not always have to be bayer so this rule will only be enforced on older versions.
* Preliminary Android Support.
* Preliminary ARM Support.
* Win32: Added the /MP (MultiProcess Compiling) flag to all projects to save build time.
* Bug Fix: Image Generator always said it supports JPEG (without checking the sensor itself).
* Fix a memory leak (about 180 bytes per generator).
Version 5.0.3.4 (Stable version - Jul 5th 2011)
-----------------------------------------------
* Windows Redist: Support for 64-bit systems.
* Control mutex is now per sensor and not global to all sensors.
Version 5.0.3.3 (Stable version - Jul 5th 2011)
-----------------------------------------------
* Linux: Allow installation to a different directory (for cross-compilation mainly).
* Workaround firmware bug: if no depth, IR timestamps are corrupt. Use host clock for timestamps instead.
* Bug Fix: unregistering USB event callback when destroying sensor to prevent crash when unplugging device.
* XnExportedSensorDevice now only enumerates devices that weren't created in the context yet.
Version 5.0.2.3 (Stable version - May 3rd 2011)
-----------------------------------------------
* Fixed use of deprecated CreateProductionTree().
* Bug Fix: playing XNS files in applications using deprecated API might cause memory leaks.
* Bug Fix: serial number was in hex format instead of decimal one.
* Make sure SensorV2 nodes will only use SensorV2 device (up to now they only checked it's a PrimeSense device).
Version 5.0.1.33 (Unstable version - Apr 18th 2011)
---------------------------------------------------
* CE4100: adding support in makefiles, redist and install.
* CE4100: default is now BULK with compressed formats.
Version 5.0.1.32 (Unstable version - Apr 11th 2011)
---------------------------------------------------
* Fixing log prints of resolutions (-1 appeared as MAX_UINT64...) to the resolution name.
* Linux Bug Fix: Server creates two log files, one in the client folder and one in /var/log/primesense/XnSensorServer
* Fixed a memory leak when rewinding old XNS files.
* Win32: WIX installer (replacing NSIS)
* Fixed wrong version in XnDeviceFile
Version 5.0.1.31 (Stable version - Apr 11th 2011)
-------------------------------------------------
* Fix BULK timeout - it was too small...
* Bug Fix: IR only works in QVGA...
* Added 64bit support for the installers.
* Fix wrong uses of the XN_IS_STATUS_OK macro (value is evaluated twice).
* Adding support for MJPEG pass-through.
* Adding initial support for new CMOS interfaces
* Adding initial JPEG support
* Fix for UAC installer problems.
* Fixed uninstall without OpenNI.
* Set minimum OpenNI version check in the installer.
* Fix seeking to first frame in old XNS files.
* Bug Fix: Client would fail to connect if trying to connect while server is shutting down.
* Improving the timestamps algorithm.
* performance improvement when enumerating for image nodes - a sensor should only be checked once.
* improving error message for setting grayscale8 in low resolutions.
* Improve thread-safety when starting server
* Bug Fix: a crash when trying to open a non-existing XNS file.
* Bug Fix: a potential crash if Init of depth generator fails.
* Sensor now supports the Device Identification capability.
* 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.
* MultiProcess Bug Fix: the lock on a sensor didn't exist, so nothing was synchronized.
* ImageGenerator now also changes InputFormat when changing resolution if needed (when switching from hi-res to normal & vice versa).
* Adding frame IDs to Audio (just counting)
* restoring defaults to QVGA.
* Add support for sensors with no image CMOS.
* Updated low-bandwidth USB devices buffer information.
* Added the Asus WAVI auto-detection for Win32.
* Low bandwidth devices now use bigger USB delays.
* New defaults are now VGA, uncompressed.
* Initial support for low-band devices:
1. Image, IR and audio does not enumerate.
2. Defaults changed to QVGA, compressed.
Version 5.0.0.25 (Unstable version - Jan 6th 2011)
--------------------------------------------------
* Bug fix: infinite loop in server when a client tries to disconnect and streams can't be closed (usb timeout for example).
* Added MacOSX platform support.
* Added the unstable README file.
* Removed useless win32 prerequisites...
* Fixing audio to work properly in the client-server model.
* Server Bug Fix: a potential dead lock was solved.
* Sensor Server now supports multiple sensors.
* Refactored server to a better design, which should decrease deadlocks and make code more readable.
* Adding support for enumerating and opening different sensors.
* Bug Fix: GetStringProperty would always return XN_STATUS_ERROR.
Version 5.0.0.24 (Stable version - Dec 8th 2010)
------------------------------------------------
* Initial release...