본문 바로가기
Programming/Kinect

[Kinect] Readme for Kinect for Windows SDK

by deviAk 2012. 1. 7.
반응형

Online developer resources for Kinect for Windows include the following:


Notes for Developers
General Developer Notes

  1. Visual Studio Version: Visual Studio 2010 Express (or other Visual Studio 2010 edition) is required.
  2. Developer Environment: For information, see the Introduction of the Programming Guide section of the documentation.
  3. Working with other SDKs and frameworks:
    This SDK is not intended for developing prototype Xbox applications with the intent of porting those applications to the Microsoft Xbox 360 console. Microsoft recommends that developers use Xbox 360 development kits (XDK hardware and software) to create Xbox 360 applications.
  4. Virtual machines: You must run applications built with the Kinect for Windows SDK Beta in a native Windows environment. Kinect for Windows applications cannot run in a virtual machine, because the Microsoft Kinect drivers and this SDK Beta must be installed on the computer where the application is running.
 
Unmanaged Code
  1. Compiling and Linking: To implement a C++ application:
    • For standard definitions, include windows.h in your source code.
    • To use the NUI API, include MSR_NuiApi.h, which is in %KINECTSDK_DIR%\inc
    • To use the Kinect Audio API, include MSRKinectAudio.h, which is in %KINECTSDK_DIR%\inc
    • Link to MSRKinectNUI.lib, which is in %KINECTSDK_DIR%\lib\x86 (for 32-bit apps) or %KINECTSDK_DIR%\lib\amd64 (for 64-bit apps)
  2. Player Index: To use player index information, C++ applications must specify both NUI_INITIALIZE_FLAG_USES_DEPTH_AND_PLAYER_INDEX and NUI_INITIALIZE_FLAG_USES_SKELETON in the dwFlags parameter to NuiInitialize.
 
Managed Code
  1. References: Managed code applications that use this SDK Beta must reference Microsoft.Research.Kinect.dll. This assembly is in the GAC, and can be found on the .NET tab of the Add Reference dialog box.
  2. Namespaces: Include using directives for the following namespaces:
    For the NUI API, add:
    using Microsoft.Research.Kinect.Nui;

    For the Audio API, add:
    using Microsoft.Research.Kinect.Audio;
  3. Player Index: For player index information to work properly, managed code applications that specify RuntimeOptions.UseDepthAndPlayerIndex must also specify RuntimeOptions.UseSkeletalTracking.
 
C++ Header Files
Here is a description of the functionality exposed in the C++ header files, located in %KINECTSDK_DIR%\inc

MSR_KinectAudio.h
Defines the audio API, including the ISoundSourceLocalizer interface, which supports beamforming and source localization.

MSR_NuiApi.h
Aggregates all NUI API headers and defines basic initialization and access functions—NuiInitialize, NuiShutdown, MSR_NuiXxx, and INuiInstance:
  • Enumerate devices
  • Access multiple devices

 MSR_NuiImageCamera.h
 Defines API for the NUI image and camera services—NuiCameraXxx, NuiImageXxx:
   • Adjust camera tilt
   • Open streams and read image or depth frames

MSR_NuiProps.h
Defines the APIs for the NUI properties enumerator.

MSR_NuiSkeleton.h
Defines API for NUI Skeleton—NuiSkeletonXxx, NuiTransformXxx:
  • Enable/disable skeleton tracking
  • Get skeleton data
  • Transform skeleton data for smoother rendering

반응형