openni_tracker "Find user generator failed"
Hi all!
I try to run openni_tracker
as follows:
rosrun openni_tracker openni_tracker
after I have launched
roslaunch openni_launch openni.launch
The problem is that when I run the tracker I get an error:
[ERROR] Find user generator failed: This operation is invalid!
Just in case: if I try to run it once more I get no respond and then:
[ERROR] InitFromXml failed: Got a timeout while waiting for a network command to complete!
I believe that "find user" error is generated from the line 150
of the file openni_tracker.cpp
in /opt/ros/fuerte/stacks/openni_tracker/src
:
149: nRetVal = g_UserGenerator.Create(g_Context);
150: CHECK_RC(nRetVal, "Find user generator");
Which goes to a macro:
#define CHECK_RC(nRetVal, what) \
if (nRetVal != XN_STATUS_OK) \
{ \
ROS_ERROR("%s failed: %s", what, xnGetStatusString(nRetVal)); \
return nRetVal; \
}
So g_UserGenerator.Create(g_Context)
for some reason returns not XN_STATUS_OK
.
Maybe someone had that issue and knows how to resolve it. As you may have noticed I run ros-fuerte. Ubuntu 12.04
PS. I'm still fairly new to ROS, so any suggestions of actions that I can take are welcome :) I tried to change the file openni_tracker.cpp
and recompile openni_tracker via rosmake openni_tracker
, but that doesn't actually do the trick. Would be gratefull if someone could point me my mistakes. I know that there are a couple of questions that look like this one, but none of those is solved, though it's an important part of ros, I think. Thanks in advance.
UPD:
I also experience this error on another ubuntu 12.04 PC in my lab. So it seems like this is fuerte+Ubuntu 12.04 issue. I don't have this error on Ubuntu 10.04 and ros-fuerte.