I am writing a Java application and am using the OpenNI Java wrapper. There are 4 Orbbec Astra sensors connected.
The desired flow is as follows:
- Initialize 4
DEPTH frames from each (asynchronously)
COLOR frames from each (asynchronously)
I don't want to close+restart the
VideoStreams between captures because this takes time. However, I've run into some issues for the approaches I've tried so far:
1) Use 8 VideoStreams (2 per device) - 4 COLOR and 4 DEPTH. This results in the frames never being available and the app hanging forever after the first capture.
2) Keep 1 VideoStream per device, but change the
VideoMode between captures so that its
PixelFormat matches the COLOR/DEPTH mode I need (in this case it was RGB-888 and DEPTH-1MM if I recall correctly). Here I got an error when changing the VideoMode:
Stream setProperty(3) failed
Has anyone been in a similar situation? I essentially want to capture COLOR and DEPTH frames from a single VideoStream without restarting it.
Any direction would be appreciated - thanks!