今天用 Kinect 开发项目,然而却出现了如下问题,现总结如下:
问题一、在调用函数:NuiImageStreamReleaseFrame( depth_stream, &d_frame ) 时发生错误(如下图)
经调试发现问题出现在 d_frame 变量里,该函数一直是这么用的,都没有发现过这种情况。在仔细地对比以前做过的项目及参考别人博客里面的代码时,发现了可疑的地方:
我获取下一帧的方法为:HRESULT hr = kinect->NuiImageStreamGetNextFrame( depth_stream, 1000, &d_frame );该函数是被封装在类 KinectSensor 里面的,而不是自由函数:NuiImageStreamGetNextFrame()。第一个函数的第二个参数类型是:NUI_IMAGE_FRAME*,而第二个函数的第二个参数类型是:NUI_IMAGE_FRAME **。