Windows Driver/SDK Download: http://codelaboratories.com/nui
We are proud to release the first preview of the new CL NUI Platform which consists of an SDK, API and a stable driver for Microsoft’s new Kinect Hardware (Xbox NUI Audio, NUI Camera, NUI Motor and Accelerometer) devices on Windows machines. You can review the KB articles here to get started using the SDK Samples and more.
To start we have a WPF/C# (.NET 3.5) Visual Studio 2010 Sample Application as well as C API (CLNUIDevice.h, DLL, LIB) and plan on extending the SDK similar to our CL Eye SDK which has Samples for C/C++/C#, Java and DirectShow.
Learn more about the platform or download the latest installer to get started…
Video/Screenshot of the Sample WPF Application - 2 Cameras 640x480@30FPS, NUI Motor/Accelerometer and LED Control:
An overview of the platform:
The CL NUI C API:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// This library is part of CL NUI SDK
// It allows the use of Microsoft Kinect cameras in your own applications
//
// For updates and file downloads go to: http://codelaboratories.com/nui
//
// Copyright 2010 (c) Code Laboratories, Inc. All rights reserved.
//
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#pragma once
#include <windows.h>
#define IMPORT(type) extern "C" __declspec(dllimport)## type __cdecl
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// CLNUIMotor API
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Motor instance type
typedef void *CLNUIMotor;
// Library initialization
IMPORT(CLNUIMotor) CreateNUIMotor();
IMPORT(bool) DestroyNUIMotor(CLNUIMotor mot);
// Get device serial number
IMPORT(PCHAR) GetNUIMotorSerial(CLNUIMotor mot);
// Motor control
IMPORT(bool) SetNUIMotorPosition(CLNUIMotor mot, SHORT position);
// Get accelerometer data
IMPORT(bool) GetNUIMotorAccelerometer(CLNUIMotor mot, SHORT &x, SHORT &y, SHORT &z);
// LED Modes
IMPORT(bool) SetNUIMotorLED(CLNUIMotor mot, BYTE value);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// CLNUICamera API
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Camera instance type
typedef void *CLNUICamera;
// Library initialization
IMPORT(CLNUICamera) CreateNUICamera();
IMPORT(bool) DestroyNUICamera(CLNUICamera cam);
// Camera capture control
IMPORT(bool) StartNUICamera(CLNUICamera cam);
IMPORT(bool) StopNUICamera(CLNUICamera cam);
// Camera video frame image data retrieval
IMPORT(bool) GetNUICameraColorFrameRAW(CLNUICamera cam, PBYTE pData, int waitTimeout = 2000);
IMPORT(bool) GetNUICameraColorFrameRGB24(CLNUICamera cam, PBYTE pData, int waitTimeout = 2000);
IMPORT(bool) GetNUICameraColorFrameRGB32(CLNUICamera cam, PDWORD pData, int waitTimeout = 2000);
// Camera depth frame image data retrieval
IMPORT(bool) GetNUICameraDepthFrameRAW(CLNUICamera cam, PUSHORT pData, int waitTimeout = 2000);
IMPORT(bool) GetNUICameraDepthFrameRGB32(CLNUICamera cam, PDWORD pData, int waitTimeout = 2000);
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Thanks and please share any videos of it in use or feedback while getting started with the NUI Platform.
AlexP
