OpenNI: "Open failed: Device is in safe mode. Cannot start any stream!"
OpenNI: "Open failed: Device is in safe mode. Cannot start any stream!"
我使用OpenNi与primesense传感器来获得深度图像。NiViwer示例工作正常,但如果传感器在Linux启动之前连接,当我运行NiViewer或使用OpenNi的任何其他程序时,它退出此错误:
Open failed:设备处于安全模式。无法启动任何流!
完整日志:
522 INFO OpenNI version is 1.2.0 (Build 7)-Linux-x86 (May 15 2011 10:29:37)
572 INFO Filter Info - minimum severity: VERBOSE, masks: ALL
704 VERBOSE Found exported production node. Script: OpenNI/OpenNI/1.2.0.7
983 VERBOSE Checking /opt/OpenNI/lib/libnimMockNodes.so...
3240 VERBOSE Found exported production node. ProductionNode: OpenNI/Mock/1.2.0.7
3297 VERBOSE Found exported production node. Generator: OpenNI/Mock/1.2.0.7
3375 VERBOSE Found exported production node. MapGenerator: OpenNI/Mock/1.2.0.7
3414 VERBOSE Found exported production node. Device: OpenNI/Mock/1.2.0.7
3447 VERBOSE Found exported production node. Depth: OpenNI/Mock/1.2.0.7
3483 VERBOSE Found exported production node. IR: OpenNI/Mock/1.2.0.7
3518 VERBOSE Found exported production node. Image: OpenNI/Mock/1.2.0.7
3551 VERBOSE Found exported production node. Audio: OpenNI/Mock/1.2.0.7
3589 VERBOSE Checking /opt/OpenNI/lib/libnimCodecs.so...
5219 VERBOSE Found exported production node. Codec: OpenNI/16zP/1.2.0.7
5270 VERBOSE Found exported production node. Codec: OpenNI/16zT/1.2.0.7
5299 VERBOSE Found exported production node. Codec: OpenNI/Im8z/1.2.0.7
5372 VERBOSE Found exported production node. Codec: OpenNI/JPEG/1.2.0.7
5402 VERBOSE Found exported production node. Codec: OpenNI/NONE/1.2.0.7
5434 VERBOSE Checking /opt/OpenNI/lib/libnimRecorder.so...
6910 VERBOSE Found exported production node. Recorder: OpenNI/Recorder/1.2.0.7
6964 VERBOSE Found exported production node. Player: OpenNI/Player/1.2.0.7
6994 VERBOSE Checking /opt/OpenNI/lib/libXnCore.so...
8106 VERBOSE Found exported production node. Script: OpenNI/OpenNI/1.2.0.7
8135 WARNING A Generator with the same description already exists!
8148 WARNING Failed to add generator 0 from module '/opt/OpenNI/lib/libXnCore.so'
8163 VERBOSE Checking /opt/OpenNI/lib/libXnDDK.so...
13802 VERBOSE Found exported production node. Script: OpenNI/OpenNI/1.2.0.7
13836 WARNING A Generator with the same description already exists!
13850 WARNING Failed to add generator 0 from module '/opt/OpenNI/lib/libXnDDK.so'
13865 VERBOSE Checking /opt/OpenNI/lib/libXnDeviceFile.so...
16408 VERBOSE Found exported production node. Player: PrimeSense/File/5.0.2.3
16460 VERBOSE Checking /opt/OpenNI/lib/libXnDeviceSensorV2.so...
20778 VERBOSE Found exported production node. Device: PrimeSense/SensorV2/5.0.2.3
20833 VERBOSE Found exported production node. Depth: PrimeSense/SensorV2/5.0.2.3
20870 VERBOSE Found exported production node. Image: PrimeSense/SensorV2/5.0.2.3
20902 VERBOSE Found exported production node. IR: PrimeSense/SensorV2/5.0.2.3
20934 VERBOSE Found exported production node. Audio: PrimeSense/SensorV2/5.0.2.3
20963 VERBOSE Checking /opt/OpenNI/lib/libXnFormats.so...
21066 VERBOSE Found exported production node. Script: OpenNI/OpenNI/1.2.0.7
21082 WARNING A Generator with the same description already exists!
21093 WARNING Failed to add generator 0 from module '/opt/OpenNI/lib/libXnFormats.so'
21410 INFO Creating node 'Script1' of type Script: OpenNI/OpenNI/1.2.0.7...
21741 VERBOSE Requested to create a node of type Depth...
21875 VERBOSE Initializing USB...
22046 INFO USB is initialized.
34087 INFO Creating node 'Device1' of type Device: PrimeSense/SensorV2/5.0.2.3...
57436 WARNING Server returned an error: Device is in safe mode. Cannot start any stream!
58380 INFO Destroying node 'Script1'
Open failed: Device is in safe mode. Cannot start any stream!
Press any key to continue . . .
拔线再插线解决了问题,但我需要它不使用这个技巧。
我想这个问题是关于usb模块的。我已经在2.6.39和3.0.6内核上测试了这个错误似乎发生在这里:libXnDeviceSensorV2。所以 XnSensorFirmware.cpp
XnStatus XnSensorFirmware::Init(XnBool bReset)
{
XnStatus nRetVal = XN_STATUS_OK;
// check current mode
XnUInt16 nMode;
nRetVal = XnHostProtocolGetMode(m_pDevicePrivateData, nMode);
XN_IS_STATUS_OK(nRetVal);
if (bReset)
{
// check if safe mode
if (nMode == XN_HOST_PROTOCOL_MODE_SAFE_MODE)
{
XN_LOG_WARNING_RETURN(XN_STATUS_DEVICE_SAFE_MODE, XN_MASK_DEVICE_SENSOR, "Device is in safe mode. Cannot start any stream!");
}
解决固件升级到V1.06: http://www.openni.org/Downloads/OpenNIModules.aspx
相关文章:
- 在Google Kick start中提交时出错
- 赛通"Cannot take address of memoryview slice"
- C++:如何将 unix 时间的字符串转换为 *tm?(使用时间错误:"cannot convert 'String' to 'tm*' ")
- /usr/bin/ld: cannot find -lc++
- "Unable to start debugging. No process is associated with this object." - 在Visual Studio Code中使用GDB
- Cannot find -lglad
- "Cannot find -l<directory>"错误 - CMake
- C++生成文件错误"implicit entry/start for main executable"
- Valgrind 在 QThread::start() 上报告内存泄漏
- Windows cannot find MinGW
- Visual Studio "fatal error LNK1104: cannot open file"未使用或包含的库
- "Cannot convert Python object argument to type '<typename>'" - 使用 Cython 包装 C++ 类时出错
- SFINAE:"enable_if cannot be used to disable this declaration"
- 为什么我不能调用 QMetaObject::invokeMethod(&threadObj, &QThread::start, Qt::QueuedConnection)?
- 如何将IEnumerable与Process.Start的输出事件处理程序一起使用?
- cannot find -lMagick++-6.Q16
- C++ "'Shape': cannot instantiate abstract class"找不到问题的根源
- Visual Studio 2012. "unable to start program" *.exe "cannot find the file specified"
- OpenNI: "Open failed: Device is in safe mode. Cannot start any stream!"
- 构建失败? "Unable to start program... The system cannot find the file specificed"