Skip to content

Commit efd876a

Browse files
committed
Merge remote-tracking branch 'origin/orbbec-dev'
# Conflicts: # Makefile # README # Source/Tools/NiViewer/Makefile # ThirdParty/GL/glh/glh_convenience.h # ThirdParty/PSCommon/XnLib/Source/Win32/XnWin32OS.cpp
2 parents 6857677 + 4f5dcf8 commit efd876a

File tree

862 files changed

+55092
-21780
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

862 files changed

+55092
-21780
lines changed

.gitignore

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,24 @@ Bin
77
*.pyc
88
*.py~
99
*.bz2
10-
source/Documentation/html
1110
Redist/Output*
1211
Redist/Install/obj*
1312
Redist/build.*
1413
Redist/Install/Fragments/RedistFragments.wxs
1514
Redist/*-src
1615
*.bak
17-
Source/Documentation/xml
1816
Temp
17+
Build
1918
Redist/Final
2019
Redist/compile.log
2120
Redist/OpenNI-*
2221
Source/Documentation/html
22+
Source/Documentation/java
23+
Source/Documentation/xml
24+
Source/Documentation/cpp
25+
OpenNI.xcodeproj
26+
.DS_Store
27+
local.properties
28+
build.android.log
29+
gen/
30+
Packaging/Final/

Android.mk

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -14,26 +14,5 @@
1414
# limitations under the License.
1515

1616

17-
# Check if we're building from OS or NDK
18-
ifdef TARGET_BUILD_VARIANT
19-
OPENNI2_ANDROID_OS_BUILD := true
20-
else
21-
OPENNI2_ANDROID_NDK_BUILD := true
22-
endif
23-
24-
# Setup OpenNI2 local variables
25-
OPENNI2_CFLAGS := -O3 -ftree-vectorize -ffast-math -funroll-loops -fPIC -fvisibility=hidden
26-
27-
ifeq ($(ARCH_ARM_HAVE_ARMV7A),true)
28-
OPENNI2_CFLAGS += -march=armv7-a -mfloat-abi=softfp -mtune=cortex-a9 -mfpu=vfp
29-
endif
30-
31-
ifeq ($(ARCH_ARM_HAVE_NEON),true)
32-
OPENNI2_CFLAGS += -mfpu=neon -DHAVE_NEON=1 -flax-vector-conversions
33-
endif
34-
3517
# Recurse through all subdirs
3618
include $(call all-subdir-makefiles)
37-
38-
# Cleanup the local variables
39-
OPENNI2_CFLAGS :=

CHANGES.txt

Lines changed: 90 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,94 @@
11
Change Log:
22
-----------
33

4-
OpenNI 2.2.0:
4+
OpenNI 2.3:
5+
- Android support added
6+
- OpenNIHelper class to handle device permissions
7+
- OpenNIView class to allow drawing of VideoFrameRef objects
8+
- SimpleRead and SimpleViewer sample applications
9+
- NiViewer application
10+
- Fix pure-C APIs
11+
- Allow providing driver list from config file
12+
- Auto-recording feature (see OpenNI.ini)
13+
- Bug Fix: depth/world conversion was wrong when depth is in 100 um format
14+
- Adding logs for endpoints bandwidth and FPS
15+
- Better handling of cases where device does not report its FOV
16+
- Remove GLH from samples
17+
- NiViewer:
18+
- IR emitter on/off is added for both PS1080 and Kinect.
19+
- Near mode on/off is added for Kinect (was already there for PS1080)
20+
- IR now also uses an histogram
21+
- draw textures according to aspect ratio
22+
- Cleanup help screen
23+
- Java APIs
24+
- Add log APIs
25+
- Implemented hashCode() and equals() for VideoMode
26+
- Bug Fix: VideoFrameRef.getData() returned ByteBuffer with big endianity, whereas data was with little endianity
27+
- Bug Fix: bad JNI calls in oniGetDeviceList, oniStreamGetSensorInfo and oniDeviceGetSensorInfo.
28+
- Fix callbacks JNI calls
29+
- Bug Fix: memory leak in waitForAnyStream()
30+
- Java SimpleViewer
31+
- Allow passing file name in command prompt
32+
- Add support for IR streams
33+
- Carmine:
34+
- Add support for FW 5.9
35+
- PS1080Console bug: "startread" did not work properly
36+
- Added support for the fast zoom crop (640x480 regular -> 640x480 zoomed) - 'z' in NiViewer
37+
- Add a property that allows reading from endpoints without creating streams
38+
- Bug Fix: Disconnect event was fired twice
39+
- Implement MAX_PIXEL_VALUE for IR stream
40+
- Bug Fix: Single pixel translation is wrong when image res is 1280x1024
41+
- Windows: print USB banndwidth to log
42+
- Kinect:
43+
- Add mirror support
44+
- Rewrite image registration for better performance
45+
- Support of additional properties (exposed via KinectProperties.h):
46+
- 3D sensing properties: Near Mode, IR Emitter On/Off
47+
- Non-3D sensing properties: Camera Elevation, Accelerometer, Audio Array ID
48+
- Capri:
49+
- Bug Fix: Depth stops working if switching to QQVGA and then back to VGA
50+
- i2c device list now also states the master and slave IDs
51+
- Fixed a weird log during shutdown
52+
- Add projector commands: projector on/off, pulse on/off
53+
- Add commands for setting CMOS gain
54+
- Add commands for reading temperature sensors
55+
- Add commands for toggling ACC, periodic-BIST and VDD
56+
- Print test name when running BIST
57+
- Default resolution is now QQVGA on ARM machines
58+
- Bug Fix: Setting Mirror from INI file didn't work
59+
- Handle some protocol error codes that weren't handled
60+
- Bug Fix: error strings were missing from log
61+
- Implement MAX_PIXEL_VALUE for IR stream
62+
- Bug Fix: no even frame indexes from Capri devices.
63+
- Properties are now saved in recordings
64+
- PSLinkConsole: allow running a single command and exit
65+
- PresetsAHB property now supports comments in files
66+
- Add ReadDebugData command
67+
- Support 100um mode
68+
- Can turn on firmware log from INI file
69+
- Bug Fix: log stream might lose the first packet
70+
- PSLinkConsole Bug Fix: FormatZone command did not work.
71+
- Capri: don't set USB interface if not doing reset (console mode)
72+
- Bug: Couldn't set video mode to IR stream
73+
- OniFile:
74+
- Allow calling setVideoMode() as long as it's the same mode (needed by some applications)
75+
- Properties are now saved in recordings
76+
- allow playback of recordings that don't have the cropping property (just assume it's disabled)
77+
- Bug Fix: potential crash when playback restarts
78+
- Fix a potential deadlock if calling stop() immediately after a repeat occurred
79+
- potential crash when closing recorder
80+
- Can control playback speed and repeat options from INI file
81+
- Build:
82+
- Support gold linker in compilation
83+
- Add Linux prerequisites to release notes
84+
- Add release notes and change log to installation
85+
- Refactor TestDevice so it can actually be used for testing
86+
- ReleaseVersion script now also creates a full Android package
87+
88+
OpenNI 2.2.1:
89+
- PS1080: Added a property for reading from all endpoints, regardless of streams
90+
91+
OpenNI 2.2:
592
- Added getDepthColorSyncEnabled() API
693
- Added log settings API
794
- Add a typedef: OniGrayscale8Pixel
@@ -50,7 +137,7 @@ OpenNI 2.2.0:
50137
- Support WIX 3.6 and up
51138
- ReleaseVersion script won't fail if output file exists (overwrite it)
52139

53-
OpenNI 2.1.0:
140+
OpenNI 2.1:
54141
- API change: each event now has its own addListener()/removeListener() methods. A listener object can now be added only once.
55142
- Support for Mac OSX
56143
- Support for Linux on Arm
@@ -80,7 +167,7 @@ OpenNI 2.1.0:
80167
- Bug Fix: ReleaseVersion script did not work on 32-bit machines
81168
- Linux Bug Fix: log timestamps did not start from 0.
82169

83-
OpenNI 2.0.0:
170+
OpenNI 2:
84171
- Brand new API (see documentation)
85172
- Algorithms API were removed, and are now part of middleware libraries (such as NiTE)
86173
- New deployment model - private copy to each application (see documentation)

Config/OpenNI.ini

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
[Log]
22
; 0 - Verbose; 1 - Info; 2 - Warning; 3 - Error. Default - None
3-
Verbosity=3
4-
LogToConsole=0
5-
LogToFile=0
3+
;Verbosity=0
4+
;LogToConsole=1
5+
;LogToFile=1
6+
;LogToAndroidLog=1
67

78
[Device]
8-
;Override=""
9+
;Override=
10+
;RecordTo=
911

1012
[Drivers]
11-
; Location of the drivers specified by a relative path based on OpenNI's shared library or an absolute path.
12-
; Path separator "/" can be used to be portable for any platforms.
13-
; Default - OpenNI2/Drivers
13+
; Location of the drivers, relative to OpenNI shared library location. When not provided, "OpenNI2/Drivers" will be used.
1414
;Repository=OpenNI2/Drivers
15+
16+
; List of drivers to load, separated by commas. When not provided, OpenNI will try to load each shared library in Repository.
17+
;List=

Config/OpenNI2/Drivers/OniFile.ini

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
;---------------- Player Configuration -------------------
2+
[Player]
3+
; Speed. 1.0 - 1.0 * fps (default), Values can be R while R is real and grater the 0
4+
;Speed=1.0
5+
6+
; Repeat. 1 - on (default), 0 - off
7+
;Repeat=1

Config/OpenNI2/Drivers/PSLink.ini

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
; USB interface to be used. 0 - FW Default, 1 - ISO endpoints (default on Windows), 2 - BULK endpoints (default on Linux/Mac/Android machines)
55
;UsbInterface=2
66

7+
; Enable firmware logs. 0 - Off (default), 1 - On
8+
;FirmwareLog=1
9+
710
[Depth]
811
; Allows dumping all frames to files. 0 - Off (default), 1 - On
912
;DumpData=1

Config/OpenNI2/Drivers/orbbec.ini

Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
;---------------- Sensor Default Configuration -------------------
2+
[Device]
3+
; Mirroring. 0 - Off (default), 1 - On
4+
;Mirror=1
5+
6+
; FrameSync. 0 - Off (default), 1 - On
7+
;FrameSync=1
8+
9+
; Stream Data Timestamps. 0 - milliseconds, 1 - microseconds (default)
10+
;HighResTimestamps=1
11+
12+
; Stream Data Timestamps Source. 0 - Firmware (default), 1 - Host
13+
;HostTimestamps=0
14+
15+
; A filter for the firmware log. Default is determined by firmware.
16+
;FirmwareLogFilter=0
17+
18+
; Automatic firmare log retrieval. 0 - Off (default), or the number of milliseconds between log retrievals operations.
19+
;FirmwareLogInterval=1000
20+
21+
; Print firmware log to console when automatic firmware log retrieval is on. 0 - Off (default), 1 - On
22+
;FirmwareLogPrint=1
23+
24+
; Is APC enabled. 0 - Off, 1 - On (default)
25+
;APCEnabled=1
26+
27+
; USB interface to be used. 0 - FW Default, 1 - ISO endpoints (default on Windows), 2 - BULK endpoints (default on Linux/Mac/Android machines), 3 - ISO endpoints for low-bandwidth depth
28+
UsbInterface=2
29+
30+
[Depth]
31+
; Output format. 100 - 1mm depth values (default), 102 - u9.2 Shift values.
32+
;OutputFormat=100
33+
34+
; Is stream mirrored. 0 - Off, 1 - On
35+
;Mirror=1
36+
37+
; 0 - QVGA, 1 - VGA, 4 - QQVGA. Default: Arm - 4, other platforms - 0
38+
Resolution=1
39+
40+
; Frames per second (default is 30)
41+
;FPS=30
42+
43+
; Min depth cutoff. 0-10000 mm (default is 0)
44+
;MinDepthValue=0
45+
46+
; Max depth cutoff. 0-10000 mm (default is 10000)
47+
;MaxDepthValue=10000
48+
49+
; Input format. 0 - Uncompressed 16-bit, 1 - PS Compression, 3 - Packed 11-bit, 4 - Packed 12-bit. Default: Arm - 4, other platforms - 3
50+
InputFormat=3
51+
52+
; Registration. 0 - Off (default), 1 - On
53+
;Registration=1
54+
55+
; Registration Type. 0 - Don't care (default), 1 - use hardware accelaration, 2 - perform in software
56+
;RegistrationType=0
57+
58+
; Hole Filler. 0 - Off, 1 - On (default)
59+
;HoleFilter=0
60+
61+
; White Balance. 0 - Off, 1 - On (default)
62+
;WhiteBalancedEnabled=0
63+
64+
; Gain. 0-50 (0 - Auto, 1 - Min., 50 - Max.). Default value is set by firmware.
65+
;Gain=0
66+
67+
; Close Range Mode. 0 - Off (default), 1 - On
68+
;CloseRange=1
69+
70+
; GMC Mode. 0 - Off, 1 - On (default)
71+
;GMCMode=0
72+
73+
; GMC Debug. 0 - Off (default), 1 - On
74+
;GMCDebug=1
75+
76+
; Depth Auto Gain Region-of-Interest. Default values are set by firmware.
77+
;DepthAGCBin0MinDepth=500
78+
;DepthAGCBin0MaxDepth=800
79+
;DepthAGCBin1MinDepth=1500
80+
;DepthAGCBin1MaxDepth=1800
81+
;DepthAGCBin2MinDepth=2500
82+
;DepthAGCBin2MaxDepth=2800
83+
;DepthAGCBin3MinDepth=3500
84+
;DepthAGCBin3MaxDepth=3800
85+
86+
; Wavelength Correction Mechanism. 0 - Off (default), 1 - On
87+
;WavelengthCorrection=1
88+
89+
; Wavelength Correction debug info. 0 - Off (default), 1 - On
90+
;WavelengthCorrectionDebug=1
91+
92+
; Cropping mode. 1 - Normal (default), 2 - Increased FPS, 3 - Software only
93+
;CroppingMode=2
94+
95+
; Cropping area
96+
[Depth.Cropping]
97+
OffsetX=0
98+
OffsetY=0
99+
SizeX=320
100+
SizeY=240
101+
;Enabled=1
102+
103+
[Image]
104+
; Output format. 200 - RGB888 (default), 201 - YUV422, 202 - Gray8 (2.0 MP only), 205 - YUYV
105+
;OutputFormat=201
106+
107+
; Is stream mirrored. 0 - Off, 1 - On
108+
;Mirror=1
109+
110+
; 0 - QVGA (default), 1 - VGA, 2 - SXGA (1.3MP), 3 - UXGA (2.0MP), 14 - 720p, 15 - 1280x960
111+
Resolution=1
112+
113+
; Frames per second (default is 30)
114+
;FPS=30
115+
116+
; Input format. 0 - Compressed 8-bit BAYER (1.3MP or 2.0MP only), 1 - Compressed YUV422 (default in BULK), 2 - Jpeg, 5 - Uncompressed YUV422 (default in ISO), 6 - Uncompressed 8-bit BAYER (1.3MP or 2.0MP only), 7 - Uncompressed YUYV
117+
InputFormat=5
118+
119+
; Anti Flicker. 0 - Off (default), 50 - 50Hz, 60 - 60 Hz.
120+
;Flicker=50
121+
122+
; Image quality when using Jpeg. 1-10 (1 - Lowest, 10 - Highest (default))
123+
;Quality=10
124+
125+
; Cropping mode. 1 - Normal (default), 2 - Increased FPS, 3 - Software only
126+
;CroppingMode=1
127+
128+
; Cropping area
129+
[Image.Cropping]
130+
;OffsetX=0
131+
;OffsetY=0
132+
;SizeX=320
133+
;SizeY=240
134+
;Enabled=1
135+
136+
[IR]
137+
; Output format. 200 - RGB888, 203 - Grayscale 16-bit (default)
138+
;OutputFormat=203
139+
140+
; Is stream mirrored. 0 - Off, 1 - On
141+
;Mirror=1
142+
143+
; 0 - QVGA (default), 1 - VGA, 2 - SXGA(1.3MP)
144+
;Resolution=0
145+
146+
; Frames per second (default is 30)
147+
;FPS=30
148+
149+
; Cropping mode. 1 - Normal (default), 2 - Increased FPS, 3 - Software only
150+
;CroppingMode=1
151+
152+
; Cropping area
153+
[IR.Cropping]
154+
;OffsetX=0
155+
;OffsetY=0
156+
;SizeX=320
157+
;SizeY=240
158+
;Enabled=1

Include/Android-Arm/OniPlatformAndroid-Arm.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
* limitations under the License. *
1919
* *
2020
*****************************************************************************/
21-
#ifndef _ONI_PLATFORM_ANDROID_ARM_H_
22-
#define _ONI_PLATFORM_ANDROID_ARM_H_
21+
#ifndef ONIPLATFORMANDROID_ARM_H
22+
#define ONIPLATFORMANDROID_ARM_H
2323

2424
// Start with Linux-x86, and override what's different
2525
#include "../Linux-x86/OniPlatformLinux-x86.h"
@@ -40,4 +40,4 @@
4040
#define ONI_PLATFORM_STRING "AndroidOS-Arm"
4141
#endif
4242

43-
#endif //_ONI_PLATFORM_LINUX_ARM_H_
43+
#endif // ONIPLATFORMANDROID_ARM_H

0 commit comments

Comments
 (0)