diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/Registration.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/Registration.cpp --- ps_engine/Source/XnDeviceSensorV2/Registration.cpp 2011-08-10 09:58:38.421589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/Registration.cpp 2011-08-10 10:02:53.321589000 -0700 @@ -480,13 +480,28 @@ void XnRegistration::Apply1000(XnDepthPi nNewX = (XnInt32)(XnDouble(*pRegTable)/XN_REG_X_SCALE + XnInt32(pDepth2ShiftTable[nValue]/XN_REG_PARAB_COEFF - nConstShift) * dShiftFactor); nNewY = *(pRegTable+1); - if ((XnUInt32)nNewX-1 < (XnUInt32)nDepthXRes-1) + if ((XnUInt32)nNewX-1 < (XnUInt32)nDepthXRes-1 && (XnUInt32)nNewY <(XnUInt32) nDepthYRes) { nArrPos = nNewY * nDepthXRes + nNewX; nOutValue = pOutput[nArrPos]; if (nOutValue == 0 || nOutValue > nValue) { + if ( nNewX > 0 && nNewY > 0 ) + { + pOutput[nArrPos-nDepthXRes] = nValue; + pOutput[nArrPos-nDepthXRes-1] = nValue; + pOutput[nArrPos-1] = nValue; + } + else if( nNewY > 0 ) + { + pOutput[nArrPos-nDepthXRes] = nValue; + } + else if( nNewX > 0 ) + { + pOutput[nArrPos-1] = nValue; + } + pOutput[nArrPos] = nValue; pOutput[nArrPos-1] = nValue; pOutput[nArrPos-nDepthXRes] = nValue; @@ -533,7 +548,7 @@ void XnRegistration::Apply1080(XnDepthPi nNewX = (XnUInt32)(*pRegTable + pRGBRegDepthToShiftTable[nValue]) / RGB_REG_X_VAL_SCALE; nNewY = *(pRegTable+1); - if (nNewX < nDepthXRes) + if (nNewX < nDepthXRes && nNewY < nDepthYRes) { nArrPos = bMirror ? (nNewY+1)*nDepthXRes - nNewX - 2 : (nNewY*nDepthXRes) + nNewX; nArrPos -= nConstOffset; diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnDataProcessor.h ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnDataProcessor.h --- ps_engine/Source/XnDeviceSensorV2/XnDataProcessor.h 2011-08-10 09:58:38.471589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnDataProcessor.h 2011-08-10 10:04:07.821589002 -0700 @@ -91,7 +91,9 @@ protected: /* The number of bytes received so far (since last time this member was reset). */ XnUInt32 m_nBytesReceived; /* Stores last packet ID */ - XnUInt16 m_nLastPacketID; + //XnUInt16 m_nLastPacketID; + // --avin mod-- + XnUInt8 m_nLastPacketID; /* The name of the stream. */ const XnChar* m_csName; diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorIO.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorIO.cpp --- ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorIO.cpp 2011-08-10 09:58:38.421589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorIO.cpp 2011-08-10 10:11:53.491589002 -0700 @@ -39,6 +39,8 @@ #define XN_SENSOR_2_0_PRODUCT_ID 0x0200 #define XN_SENSOR_5_0_PRODUCT_ID 0x0500 #define XN_SENSOR_6_0_PRODUCT_ID 0x0600 +#define XN_SENSOR_MSK_VENDOR_ID 0x045E +#define XN_SENSOR_MSK_PRODUCT_ID 0x02AE //--------------------------------------------------------------------------- // Enums @@ -362,14 +364,14 @@ XnStatus XnSensorIO::CloseDevice() return (XN_STATUS_OK); } -XnStatus Enumerate(XnUInt16 nProduct, XnStringsHash& devicesSet) +XnStatus Enumerate(XnUInt16 nVendor, XnUInt16 nProduct, XnStringsHash& devicesSet) { XnStatus nRetVal = XN_STATUS_OK; const XnUSBConnectionString* astrDevicePaths; XnUInt32 nCount; - - nRetVal = xnUSBEnumerateDevices(XN_SENSOR_VENDOR_ID, nProduct, &astrDevicePaths, &nCount); + + nRetVal = xnUSBEnumerateDevices(nVendor, nProduct, &astrDevicePaths, &nCount); XN_IS_STATUS_OK(nRetVal); for (XnUInt32 i = 0; i < nCount; ++i) @@ -393,17 +395,21 @@ XnStatus XnSensorIO::EnumerateSensors(Xn return nRetVal; XnStringsHash devicesSet; + + // search for a MSK device + nRetVal = Enumerate(XN_SENSOR_MSK_VENDOR_ID, XN_SENSOR_MSK_PRODUCT_ID, devicesSet); + XN_IS_STATUS_OK(nRetVal); // search for a v6.0 device - nRetVal = Enumerate(XN_SENSOR_6_0_PRODUCT_ID, devicesSet); + nRetVal = Enumerate(XN_SENSOR_VENDOR_ID, XN_SENSOR_6_0_PRODUCT_ID, devicesSet); XN_IS_STATUS_OK(nRetVal); // search for a v5.0 device - nRetVal = Enumerate(XN_SENSOR_5_0_PRODUCT_ID, devicesSet); + nRetVal = Enumerate(XN_SENSOR_VENDOR_ID, XN_SENSOR_5_0_PRODUCT_ID, devicesSet); XN_IS_STATUS_OK(nRetVal); // try searching for an older device - nRetVal = Enumerate(XN_SENSOR_2_0_PRODUCT_ID, devicesSet); + nRetVal = Enumerate(XN_SENSOR_VENDOR_ID, XN_SENSOR_2_0_PRODUCT_ID, devicesSet); XN_IS_STATUS_OK(nRetVal); // now copy back diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorProtocol.h ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorProtocol.h --- ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorProtocol.h 2011-08-10 09:58:38.421589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnDeviceSensorProtocol.h 2011-08-10 10:12:58.801589002 -0700 @@ -88,7 +88,10 @@ typedef struct XnSensorProtocolResponseH { XnUInt16 nMagic; XnUInt16 nType; - XnUInt16 nPacketID; + //XnUInt16 nPacketID; + // --avin mod-- + XnUInt8 nPacketID; + XnUInt8 nUnknown; XnUInt16 nBufSize; XnUInt32 nTimeStamp; } XnSensorProtocolResponseHeader; diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnFirmwareStreams.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnFirmwareStreams.cpp --- ps_engine/Source/XnDeviceSensorV2/XnFirmwareStreams.cpp 2011-08-10 09:58:38.411589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnFirmwareStreams.cpp 2011-08-10 10:14:06.221588999 -0700 @@ -117,11 +117,12 @@ XnStatus XnFirmwareStreams::CheckClaimSt XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Cannot set depth stream to resolution %d when IR is set to resolution %d!", nRes, pIRStreamData->nRes); } + // highres enable from avin // check FPS - if (pIRStreamData->nFPS != nFPS) - { - XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Depth and IR streams must have the same FPS!"); - } + //if (pIRStreamData->nFPS != nFPS) + //{ + // XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Depth and IR streams must have the same FPS!"); + //} } } else if (strcmp(strType, XN_STREAM_TYPE_IR) == 0) @@ -150,10 +151,10 @@ XnStatus XnFirmwareStreams::CheckClaimSt } // check FPS - if (pDepthStreamData->nFPS != nFPS) - { - XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Depth and IR streams must have the same FPS!"); - } + //if (pDepthStreamData->nFPS != nFPS) + //{ + // XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Depth and IR streams must have the same FPS!"); + //} } } else if (strcmp(strType, XN_STREAM_TYPE_IMAGE) == 0) diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnHostProtocol.h ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnHostProtocol.h --- ps_engine/Source/XnDeviceSensorV2/XnHostProtocol.h 2011-08-10 09:58:38.471589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnHostProtocol.h 2011-08-10 10:14:56.381589000 -0700 @@ -112,8 +112,8 @@ enum EPsProtocolOpCodes_V017 typedef enum { XN_HOST_PROTOCOL_ALGORITHM_DEPTH_INFO = 0x00, - XN_HOST_PROTOCOL_ALGORITHM_REGISTRATION = 0x02, - XN_HOST_PROTOCOL_ALGORITHM_PADDING = 0x03, + XN_HOST_PROTOCOL_ALGORITHM_REGISTRATION = 0x40, + XN_HOST_PROTOCOL_ALGORITHM_PADDING = 0x41, XN_HOST_PROTOCOL_ALGORITHM_BLANKING = 0x06, XN_HOST_PROTOCOL_ALGORITHM_DEVICE_INFO = 0x07, XN_HOST_PROTOCOL_ALGORITHM_FREQUENCY = 0x80 diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.cpp --- ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.cpp 2011-08-10 09:58:38.421589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.cpp 2011-08-10 10:16:43.241589000 -0700 @@ -317,6 +317,8 @@ XnStatus XnSensorDepthStream::ConfigureS nRetVal = m_Helper.GetCmosInfo()->SetCmosConfig(XN_CMOS_TYPE_DEPTH, GetResolution(), GetFPS()); XN_IS_STATUS_OK(nRetVal); + // Thanks to avin again! :-) + XnHostProtocolSetParam(GetHelper()->GetPrivateData(), 0x105, 0); return XN_STATUS_OK; } diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.h ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.h --- ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.h 2011-08-10 09:58:38.451589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorDepthStream.h 2011-08-10 10:18:33.071589000 -0700 @@ -41,11 +41,11 @@ // Defines //--------------------------------------------------------------------------- #define XN_DEPTH_STREAM_DEFAULT_INPUT_FORMAT XN_IO_DEPTH_FORMAT_UNCOMPRESSED_11_BIT -#define XN_DEPTH_STREAM_DEFAULT_RESOLUTION XN_RESOLUTION_QVGA +#define XN_DEPTH_STREAM_DEFAULT_RESOLUTION XN_RESOLUTION_VGA #define XN_DEPTH_STREAM_DEFAULT_FPS 30 #define XN_DEPTH_STREAM_DEFAULT_OUTPUT_FORMAT XN_OUTPUT_FORMAT_DEPTH_VALUES #define XN_DEPTH_STREAM_DEFAULT_REGISTRATION FALSE -#define XN_DEPTH_STREAM_DEFAULT_REGISTRATION_TYPE XN_PROCESSING_DONT_CARE +#define XN_DEPTH_STREAM_DEFAULT_REGISTRATION_TYPE XN_PROCESSING_SOFTWARE #define XN_DEPTH_STREAM_DEFAULT_HOLE_FILLER TRUE #define XN_DEPTH_STREAM_DEFAULT_WHITE_BALANCE TRUE #define XN_DEPTH_STREAM_DEFAULT_GAIN_OLD 50 @@ -167,4 +167,4 @@ private: XnCallbackHandle m_hReferenceSizeChangedCallback; }; -#endif //__XN_SENSOR_DEPTH_STREAM_H__ \ No newline at end of file +#endif //__XN_SENSOR_DEPTH_STREAM_H__ diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnSensorFirmwareParams.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorFirmwareParams.cpp --- ps_engine/Source/XnDeviceSensorV2/XnSensorFirmwareParams.cpp 2011-08-10 09:58:38.431589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorFirmwareParams.cpp 2011-08-10 10:19:24.601589002 -0700 @@ -520,10 +520,10 @@ XnStatus XnSensorFirmwareParams::SetImag case XN_RESOLUTION_VGA: break; case XN_RESOLUTION_SXGA: - if (m_pInfo->nFWVer < XN_SENSOR_FW_VER_5_3) - { - XN_LOG_WARNING_RETURN(XN_STATUS_IO_INVALID_STREAM_IMAGE_RESOLUTION, XN_MASK_DEVICE_SENSOR, "Image resolution is not supported by this firmware!"); - } + //if (m_pInfo->nFWVer < XN_SENSOR_FW_VER_5_3) + //{ + // XN_LOG_WARNING_RETURN(XN_STATUS_IO_INVALID_STREAM_IMAGE_RESOLUTION, XN_MASK_DEVICE_SENSOR, "Image resolution is not supported by this firmware!"); + //} break; case XN_RESOLUTION_UXGA: if (m_pInfo->nFWVer < XN_SENSOR_FW_VER_5_1) diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.cpp --- ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.cpp 2011-08-10 09:58:38.441589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.cpp 2011-08-10 10:27:50.791589000 -0700 @@ -157,11 +157,19 @@ XnStatus XnSensorImageStream::Init() { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422, XN_RESOLUTION_QVGA, 30 }, { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422, XN_RESOLUTION_QVGA, 60 }, { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422, XN_RESOLUTION_VGA, 30 }, + // --avin mod-- + { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_BAYER, XN_RESOLUTION_SXGA, 15 }, + // suat + { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_BAYER, XN_RESOLUTION_VGA, 30 }, + { XN_IO_IMAGE_FORMAT_BAYER, XN_RESOLUTION_VGA, 30 }, + { XN_IO_IMAGE_FORMAT_BAYER, XN_RESOLUTION_QVGA, 60 }, + { XN_IO_IMAGE_FORMAT_BAYER, XN_RESOLUTION_QVGA, 30 }, }; nRetVal = AddSupportedModes(aSupportedModes, sizeof(aSupportedModes)/sizeof(aSupportedModes[0])); XN_IS_STATUS_OK(nRetVal); - - if (m_Helper.GetFirmwareVersion() >= XN_SENSOR_FW_VER_5_2) + + //Suat: changed to 5_1 since out 5_1_6 works good with 25Hz + if (m_Helper.GetFirmwareVersion() >= XN_SENSOR_FW_VER_5_1) { XnCmosPreset aSupportedModes25[] = { @@ -169,6 +177,8 @@ XnStatus XnSensorImageStream::Init() { XN_IO_IMAGE_FORMAT_YUV422, XN_RESOLUTION_VGA, 25 }, { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422, XN_RESOLUTION_QVGA, 25 }, { XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422, XN_RESOLUTION_VGA, 25 }, + { XN_IO_IMAGE_FORMAT_BAYER, XN_RESOLUTION_VGA, 25 }, + { XN_IO_IMAGE_FORMAT_BAYER, XN_RESOLUTION_QVGA, 25 }, }; nRetVal = AddSupportedModes(aSupportedModes25, sizeof(aSupportedModes25)/sizeof(aSupportedModes25[0])); XN_IS_STATUS_OK(nRetVal); @@ -180,7 +190,7 @@ XnStatus XnSensorImageStream::Init() nRetVal = AddSupportedModes(&highRes, 1); XN_IS_STATUS_OK(nRetVal); } - else if (m_Helper.GetFirmwareVersion() >= XN_SENSOR_FW_VER_5_2) + else if (m_Helper.GetFirmwareVersion() >= XN_SENSOR_FW_VER_5_1) { XnCmosPreset highRes = { XN_IO_IMAGE_FORMAT_BAYER, XN_RESOLUTION_UXGA, 30 }; nRetVal = AddSupportedModes(&highRes, 1); @@ -268,13 +278,13 @@ XnStatus XnSensorImageStream::ValidateMo XnResolutions nResolution = GetResolution(); // check resolution - if ((nResolution == XN_RESOLUTION_UXGA || nResolution == XN_RESOLUTION_SXGA) && nInputFormat != XN_IO_IMAGE_FORMAT_BAYER) - { - XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "UXGA resolution is only supported with BAYER input!"); - } + //if ((nResolution == XN_RESOLUTION_UXGA || nResolution == XN_RESOLUTION_SXGA) && nInputFormat != XN_IO_IMAGE_FORMAT_BAYER) + //{ + // XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "UXGA resolution is only supported with BAYER input!"); + //} // check output format - if (nOutputFormat == XN_OUTPUT_FORMAT_GRAYSCALE8 && nInputFormat != XN_IO_IMAGE_FORMAT_BAYER) + if (nOutputFormat == XN_OUTPUT_FORMAT_GRAYSCALE8 && nInputFormat != XN_IO_IMAGE_FORMAT_BAYER && nInputFormat != XN_IO_IMAGE_FORMAT_UNCOMPRESSED_BAYER ) { XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Grayscale8 output requires BAYER input!"); } @@ -284,11 +294,11 @@ XnStatus XnSensorImageStream::ValidateMo } // check input format - if (nInputFormat == XN_IO_IMAGE_FORMAT_BAYER && nResolution != XN_RESOLUTION_UXGA && nResolution != XN_RESOLUTION_SXGA) + /*if (nInputFormat == XN_IO_IMAGE_FORMAT_BAYER && nResolution != XN_RESOLUTION_UXGA && nResolution != XN_RESOLUTION_SXGA) { XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "BAYER input requires SXGA/UXGA resolution!"); } - else if (nInputFormat == XN_IO_IMAGE_FORMAT_JPEG && nOutputFormat != XN_OUTPUT_FORMAT_RGB24 && nOutputFormat != XN_OUTPUT_FORMAT_JPEG) + else */if (nInputFormat == XN_IO_IMAGE_FORMAT_JPEG && nOutputFormat != XN_OUTPUT_FORMAT_RGB24 && nOutputFormat != XN_OUTPUT_FORMAT_JPEG) { XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_BAD_PARAM, XN_MASK_DEVICE_SENSOR, "Jpeg input is only supported for RGB24 or JPEG output!"); } diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.h ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.h --- ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.h 2011-08-10 09:58:38.431589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorImageStream.h 2011-08-10 10:24:50.211589000 -0700 @@ -38,8 +38,8 @@ // Defines //--------------------------------------------------------------------------- #define XN_IMAGE_STREAM_DEFAULT_FPS 30 -#define XN_IMAGE_STREAM_DEFAULT_RESOLUTION XN_RESOLUTION_QVGA -#define XN_IMAGE_STREAM_DEFAULT_INPUT_FORMAT XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422 +#define XN_IMAGE_STREAM_DEFAULT_RESOLUTION XN_RESOLUTION_VGA +#define XN_IMAGE_STREAM_DEFAULT_INPUT_FORMAT XN_IO_IMAGE_FORMAT_UNCOMPRESSED_BAYER #define XN_IMAGE_STREAM_DEFAULT_OUTPUT_FORMAT XN_OUTPUT_FORMAT_RGB24 #define XN_IMAGE_STREAM_DEFAULT_FLICKER 0 #define XN_IMAGE_STREAM_DEFAULT_QUALITY 3 @@ -174,4 +174,4 @@ private: XnActualIntProperty m_ActualRead; }; -#endif //__XN_SENSOR_IMAGE_STREAM_H__ \ No newline at end of file +#endif //__XN_SENSOR_IMAGE_STREAM_H__ diff -rupN -x Release -x Lib -x CreateRedist -x DoxyGen -x .git ps_engine/Source/XnDeviceSensorV2/XnSensorIRStream.cpp ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorIRStream.cpp --- ps_engine/Source/XnDeviceSensorV2/XnSensorIRStream.cpp 2011-08-10 09:58:38.471589002 -0700 +++ ../build_patched/ps_engine/Source/XnDeviceSensorV2/XnSensorIRStream.cpp 2011-08-10 10:25:48.651588999 -0700 @@ -93,6 +93,7 @@ XnStatus XnSensorIRStream::Init() { 0, XN_RESOLUTION_QVGA, 60 }, { 0, XN_RESOLUTION_VGA, 30 }, { 0, XN_RESOLUTION_SXGA, 30 }, + { 0, XN_RESOLUTION_SXGA, 15 }, }; nRetVal = AddSupportedModes(aSupportedModes, sizeof(aSupportedModes)/sizeof(aSupportedModes[0])); XN_IS_STATUS_OK(nRetVal); @@ -102,6 +103,7 @@ XnStatus XnSensorIRStream::Init() XnCmosPreset aSupportedModesSXGA[] = { { 0, XN_RESOLUTION_SXGA, 30 }, + { 0, XN_RESOLUTION_SXGA, 15 }, }; nRetVal = AddSupportedModes(aSupportedModes, sizeof(aSupportedModes)/sizeof(aSupportedModes[0])); XN_IS_STATUS_OK(nRetVal); --- a/Data/GlobalDefaults.ini +++ b/Data/GlobalDefaults.ini @@ -6,7 +6,7 @@ ; 0 - No (default), 1 - Yes ;LogWriteToConsole=1 ; 0 - No (default), 1 - Yes -LogWriteToFile=1 +;LogWriteToFile=1 ; 0 - No (default), 1 - Yes ;LogWriteLineInfo=0 ; leave empty for nothing (default). ALL - all masks