Single capturing is synchronous operation. It is very easy.
UINT32 objectHandle = theta.initiateCapture(); // this is blocking
objectHandle
is pointer for captured image.
Download image by getObject method using objectHandle
.
Time lapse capturing is asynchronous operation.
theta.setTimelapseInterval(5000); // 5000-3600000 in msec
theta.setTimelapseNumber(2); // Capture 2 times
theta.setStillCaptureMode(StillCaptureMode.TIME_LAPSE);
theta.initiateOpenCapture(); // this is non-blocking
onObjectAdded
event happens for each capture.onCaptureComplete
event happens when all captures are completed.onStoreFull
event happens when storage be full. Then onCaptureComplete
doesn’t happen. (TO CONFIRM)See Event for details.
theta.setTimelapseInterval(5000); // 5000-3600000 in msec
theta.setTimelapseNumber(0); // 0 means unlimited.
theta.setStillCaptureMode(StillCaptureMode.TIME_LAPSE);
theta.initiateOpenCapture(); // this is non-blocking
...
theta.terminateOpenCapture();
You have to call terminateOpenCapture
in yourself if you specify 0 as TimeLapseNumber
.
Then onCaptureComplete
event doesn’t happen.
Video capturing is available for RICOH THETA m15. You can get model name by getDeviceInfo method.
This operation is asynchronous.
theta.initiateOpenCapture(); // this is non-blocking
...
theta.terminateOpenCapture();
onObjectAdded
event happens when video file be ready to download.onCaptureComplete
event happens when it faces into time limitation.onCaptureComplete
event doesn’t happen when the capturing is stopped by terminateOpenCapture
.onStoreFull
event happens when storage be full. Then onCaptureComplete
does not happen. (TO CONFIRM)See Event for details.