12 #error "You must include nuiapi.h rather than including nuiimagecamera.h directly"
19 #ifndef __NuiSensor_h__
21 #ifndef _NUI_IMAGE_TYPE_
22 #define _NUI_IMAGE_TYPE_
33 #endif // _NUI_IMAGE_TYPE_
35 #ifndef _NUI_IMAGE_RESOLUTION_
36 #define _NUI_IMAGE_RESOLUTION_
45 #endif _NUI_IMAGE_RESOLUTION_
47 #ifndef _NUI_BACKLIGHT_COMPENSATION_MODE_
48 #define _NUI_BACKLIGHT_COMPENSATION_MODE_
57 #endif _NUI_BACKLIGHT_COMPENSATION_MODE_
59 #ifndef _NUI_POWER_LINE_FREQUENCY_
60 #define _NUI_POWER_LINE_FREQUENCY_
68 #endif _NUI_POWER_LINE_FREQUENCY_
70 #endif // __NuiSensor_h__
105 #define NUI_IMAGE_PLAYER_INDEX_SHIFT 3
106 #define NUI_IMAGE_PLAYER_INDEX_MASK ((1 << NUI_IMAGE_PLAYER_INDEX_SHIFT)-1)
107 #define NUI_IMAGE_DEPTH_MAXIMUM ((4000 << NUI_IMAGE_PLAYER_INDEX_SHIFT) | NUI_IMAGE_PLAYER_INDEX_MASK)
108 #define NUI_IMAGE_DEPTH_MINIMUM (800 << NUI_IMAGE_PLAYER_INDEX_SHIFT)
109 #define NUI_IMAGE_DEPTH_MAXIMUM_NEAR_MODE ((3000 << NUI_IMAGE_PLAYER_INDEX_SHIFT) | NUI_IMAGE_PLAYER_INDEX_MASK)
110 #define NUI_IMAGE_DEPTH_MINIMUM_NEAR_MODE (400 << NUI_IMAGE_PLAYER_INDEX_SHIFT)
111 #define NUI_IMAGE_DEPTH_NO_VALUE 0
112 #define NUI_IMAGE_DEPTH_TOO_FAR_VALUE (0x0fff << NUI_IMAGE_PLAYER_INDEX_SHIFT)
113 #define NUI_IMAGE_DEPTH_UNKNOWN_VALUE (0x1fff << NUI_IMAGE_PLAYER_INDEX_SHIFT)
114 #define NUI_DEPTH_DEPTH_UNKNOWN_VALUE NUI_IMAGE_DEPTH_UNKNOWN_VALUE
117 #define NUI_DEPTH_UNKNOWN 0
118 #define NUI_PIXEL_COORDINATE_UNKNOWN INT_MIN
120 #define NUI_CAMERA_DEPTH_NOMINAL_FOCAL_LENGTH_IN_PIXELS (285.63f) // Based on 320x240 pixel size.
121 #define NUI_CAMERA_DEPTH_NOMINAL_INVERSE_FOCAL_LENGTH_IN_PIXELS (3.501e-3f) // (1/NUI_CAMERA_DEPTH_NOMINAL_FOCAL_LENGTH_IN_PIXELS)
122 #define NUI_CAMERA_DEPTH_NOMINAL_DIAGONAL_FOV (70.0f)
123 #define NUI_CAMERA_DEPTH_NOMINAL_HORIZONTAL_FOV (58.5f)
124 #define NUI_CAMERA_DEPTH_NOMINAL_VERTICAL_FOV (45.6f)
126 #define NUI_CAMERA_COLOR_NOMINAL_FOCAL_LENGTH_IN_PIXELS (531.15f) // Based on 640x480 pixel size.
127 #define NUI_CAMERA_COLOR_NOMINAL_INVERSE_FOCAL_LENGTH_IN_PIXELS (1.83e-3f) // (1/NUI_CAMERA_COLOR_NOMINAL_FOCAL_LENGTH_IN_PIXELS)
128 #define NUI_CAMERA_COLOR_NOMINAL_DIAGONAL_FOV ( 73.9f)
129 #define NUI_CAMERA_COLOR_NOMINAL_HORIZONTAL_FOV ( 62.0f)
130 #define NUI_CAMERA_COLOR_NOMINAL_VERTICAL_FOV ( 48.6f)
155 #ifndef __NuiSensor_h__
157 #ifndef _NUI_IMAGE_VIEW_AREA_
158 #define _NUI_IMAGE_VIEW_AREA_
165 #endif _NUI_IMAGE_VIEW_AREA_
168 #endif __NuiSensor_h__
170 #define NUI_IMAGE_FRAME_FLAG_NONE 0x00000000
171 #define NUI_IMAGE_FRAME_FLAG_VIEW_AREA_UNKNOWN 0x00000001
172 #define NUI_IMAGE_FRAME_FLAG_NEAR_MODE_ENABLED 0x00020000
174 #ifndef __NuiSensor_h__
176 #ifndef _NUI_LOCKED_RECT_
177 #define _NUI_LOCKED_RECT_
185 #endif _NUI_LOCKED_RECT_
187 #ifndef _NUI_SURFACE_DESC_
188 #define _NUI_SURFACE_DESC_
195 #endif _NUI_SURFACE_DESC_
199 #ifndef _NUI_IMAGE_FRAME_
200 #define _NUI_IMAGE_FRAME_
211 #endif _NUI_IMAGE_FRAME_
213 #ifndef _NUI_DEPTH_IMAGE_PIXEL_
214 #define _NUI_DEPTH_IMAGE_PIXEL_
224 #endif _NUI_DEPTH_IMAGE_PIXEL_
226 #ifndef _NUI_DEPTH_IMAGE_POINT_
227 #define _NUI_DEPTH_IMAGE_POINT_
239 #endif _NUI_DEPTH_IMAGE_POINT_
241 #ifndef _NUI_COLOR_IMAGE_POINT_
242 #define _NUI_COLOR_IMAGE_POINT_
252 #endif _NUI_COLOR_IMAGE_POINT_
255 #endif __NuiSensor_h__
258 #define NUI_IMAGE_STREAM_FLAG_SUPPRESS_NO_FRAME_DATA 0x00010000
260 #define NUI_IMAGE_STREAM_FLAG_ENABLE_NEAR_MODE 0x00020000
262 #define NUI_IMAGE_STREAM_FLAG_DISTINCT_OVERFLOW_DEPTH_VALUES 0x00040000
265 #define NUI_IMAGE_STREAM_FRAME_LIMIT_MAXIMUM 4
294 _In_ DWORD dwImageFrameFlags
325 _Out_ DWORD *pdwImageFrameFlags
381 _In_ DWORD dwFrameEventFlag
517 _In_ DWORD dwImageFrameFlags,
518 _In_ DWORD dwFrameLimit,
519 _In_opt_ HANDLE hNextFrameEvent,
520 _Out_ HANDLE *phStreamHandle
565 _In_ DWORD dwMillisecondsToWait,
680 _In_ USHORT usDepthValue,
681 _Out_ LONG *plColorX,
763 _In_ USHORT usDepthValue,
764 _Out_ LONG *plColorX,
768 #define NUI_CAMERA_ELEVATION_MAXIMUM 27
769 #define NUI_CAMERA_ELEVATION_MINIMUM (-27)
804 _Out_ LONG * plAngleDegrees
858 _In_ LONG lAngleDegrees
_Check_return_ HRESULT NUIAPI NuiImageStreamOpen(_In_ NUI_IMAGE_TYPE eImageType, _In_ NUI_IMAGE_RESOLUTION eResolution, _In_ DWORD dwImageFrameFlags, _In_ DWORD dwFrameLimit, _In_opt_ HANDLE hNextFrameEvent, _Out_ HANDLE *phStreamHandle)
Opens an image stream.
struct _NUI_IMAGE_VIEW_AREA NUI_IMAGE_VIEW_AREA
enum _NUI_BACKLIGHT_COMPENSATION_MODE NUI_BACKLIGHT_COMPENSATION_MODE
interface INuiFrameTexture INuiFrameTexture
enum _NUI_POWER_LINE_FREQUENCY NUI_POWER_LINE_FREQUENCY
_Check_return_ HRESULT NUIAPI NuiImageGetColorPixelCoordinatesFromDepthPixel(_In_ NUI_IMAGE_RESOLUTION eColorResolution, _In_opt_ CONST NUI_IMAGE_VIEW_AREA *pcViewArea, _In_ LONG lDepthX, _In_ LONG lDepthY, _In_ USHORT usDepthValue, _Out_ LONG *plColorX, _Out_ LONG *plColorY)
Gets the pixel coordinates in color space that correspond to the specified pixel coordinates in depth...
#define NUI_IMAGE_PLAYER_INDEX_SHIFT
NUI_IMAGE_TYPE eImageType
USHORT NuiDepthPixelToDepth(USHORT packedPixel)
_Check_return_ HRESULT NUIAPI NuiSetFrameEndEvent(_In_ HANDLE hEvent, _In_ DWORD dwFrameEventFlag)
Sets the event that signals the last frame.
INuiFrameTexture * pFrameTexture
_Check_return_ HRESULT NUIAPI NuiImageStreamReleaseFrame(_In_ HANDLE hStream, _In_ CONST NUI_IMAGE_FRAME *pImageFrame)
Releases the specified frame of data from the specified stream.
NUI_IMAGE_VIEW_AREA ViewArea
_Check_return_ HRESULT NUIAPI NuiImageStreamGetNextFrame(_In_ HANDLE hStream, _In_ DWORD dwMillisecondsToWait, _Deref_out_ CONST NUI_IMAGE_FRAME **ppcImageFrame)
Gets the next frame of data from the specified image stream.
enum _NUI_IMAGE_DIGITALZOOM NUI_IMAGE_DIGITALZOOM
struct _NUI_IMAGE_FRAME NUI_IMAGE_FRAME
struct _NUI_DEPTH_IMAGE_PIXEL NUI_DEPTH_IMAGE_PIXEL
_Check_return_ HRESULT NUIAPI NuiImageStreamGetImageFrameFlags(_In_ HANDLE hStream, _Out_ DWORD *pdwImageFrameFlags)
Gets the image frame flags for the specified stream.
_Check_return_ HRESULT NUIAPI NuiCameraElevationSetAngle(_In_ LONG lAngleDegrees)
Sets the elevation angle of the Kinect sensor.
struct _NUI_DEPTH_IMAGE_POINT NUI_DEPTH_IMAGE_POINT
enum _NUI_IMAGE_TYPE NUI_IMAGE_TYPE
void NuiImageResolutionToSize(_In_ NUI_IMAGE_RESOLUTION res, _Out_ DWORD &refWidth, _Out_ DWORD &refHeight)
Converts the resolution to a size.
USHORT NuiDepthPixelToPlayerIndex(USHORT packedPixel)
NUI_IMAGE_RESOLUTION eResolution
NUI_IMAGE_DIGITALZOOM eDigitalZoom
_NUI_BACKLIGHT_COMPENSATION_MODE
enum _NUI_IMAGE_RESOLUTION NUI_IMAGE_RESOLUTION
struct _NUI_SURFACE_DESC NUI_SURFACE_DESC
struct _NUI_LOCKED_RECT NUI_LOCKED_RECT
_Check_return_ HRESULT NUIAPI NuiCameraElevationGetAngle(_Out_ LONG *plAngleDegrees)
Gets the elevation angle of the Kinect sensor.
#define NUI_IMAGE_PLAYER_INDEX_MASK
LARGE_INTEGER liTimeStamp
_Check_return_ HRESULT NUIAPI NuiImageGetColorPixelCoordinatesFromDepthPixelAtResolution(_In_ NUI_IMAGE_RESOLUTION eColorResolution, _In_ NUI_IMAGE_RESOLUTION eDepthResolution, _In_opt_ CONST NUI_IMAGE_VIEW_AREA *pcViewArea, _In_ LONG lDepthX, _In_ LONG lDepthY, _In_ USHORT usDepthValue, _Out_ LONG *plColorX, _Out_ LONG *plColorY)
Gets the pixel coordinates in color space that correspond to the specified pixel coordinates in depth...
struct _NUI_COLOR_IMAGE_POINT NUI_COLOR_IMAGE_POINT
_NUI_POWER_LINE_FREQUENCY
_Check_return_ HRESULT NUIAPI NuiImageStreamSetImageFrameFlags(_In_ HANDLE hStream, _In_ DWORD dwImageFrameFlags)
Sets the image frame flags for the specified stream.