jhu-saw / sawNDITracker

cisst/SAW component for NDI trackers with Qt and ROS interfaces

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sawSocketStreamer.so

QiaoLiLi2288 opened this issue · comments

hi! I use the "-m ../share/socket-stream/manager-socket-streamer.json" option, but receive the error " couldn't find linsawSocketStreamer.so"

Can you confirm that you have compiled sawSocketStreamer and the library is in your path? Are you using Windows or Linux? (scrap that question, I see the error message is related to libsawSocketStreamer.so so you must be using Linux).

If you are using Linux Ubuntu with ROS and catkin build to compile your code, you can add the sawSocketStreamer source to your workspace using: wstool merge https://raw.githubusercontent.com/jhu-saw/sawSocketStreamer/master/saw_socket_streamer.rosinstall followed by wstool up and catkin build.

Thank you. I don't compile libsawSocketStreamer.so. I want to know whether the code supports connecting NDI by ip ?

I am using Linux Ubuntu with ROS kinetic version and catkink build all necessary codes. Now, I want to use NDI VEGA XT with ROS based on your codes. The NDI IP is 172.31.0.101 and tcp port is 8765. I run the command "rosrun ndi_tracker_ros ndi_tracker -m ../share/socket-stream/manager-socket-streamer.json " but error is still:

W- Class mts_ros_crtk_ndi_bridge: add_factory_source: factory already added for component "NDI" with interface "Controller"
E- Class mtsManagerGlobal: File: mtsManagerGlobal.cpp Line: 1212 - Connect: no provided/output interface found: "LCM:NDI:Base", available provided/output interface(s): Controller, ExecOut, InterfaceInternalProvided, StateTableConfiguration, StateTableStateTable,
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2284 - Connect: failed to get connection id from Global Component Manager: streamerBase:Required - NDI:Base
-E Class mtsManagerComponentClient: File: mtsManagerComponentClient.cpp Line: 1225 - InterfaceLCMCommands_ComponentConnect: failed to execute "Connect Setup": mtsDescriptionConnection
Client:mtsDescriptionInterfaceFullName
ProcessName:LCM ComponentName:streamerBase InterfaceName:Required Server:mtsDescriptionInterfaceFullName
ProcessName:LCM ComponentName:NDI InterfaceName:Base ConnectionID:2147483647
E- Class mtsSocketStreamer: File: mtsComponent.cpp Line: 875 - AreAllInterfacesRequiredConnected: component "streamerBase", void pointer to required/input interface "Required" (required/input not connected to provided/output)
E- Class mtsSocketStreamer: File: mtsTask.cpp Line: 136 - StartupInternal: task "streamerBase" cannot be started.
-E Class osaSocket: File: osaSocket.cpp Line: 719 - Close: closed socket 29
E- Class mtsSocketStreamer: File: mtsTask.cpp Line: 255 - WaitForState: task "streamerBase" did not reach state "mtsComponentState
State:ready", current state is "mtsComponentState
State:finished"
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2079 - WaitForStateAll: component "streamerBase" failed to reach state "mtsComponentState
State:ready"
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2087 - WaitForStateAll: timed out while waiting for state "mtsComponentState
State:ready"
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2096 - WaitForStateAll: failed to reached state "mtsComponentState
State:ready" for all components
E- Class mtsSocketStreamer: File: mtsTaskContinuous.cpp Line: 179 - Start: could not start task streamerBase, state = mtsComponentState
State:finished(File: mtsTaskContinuous.cpp Line: 181 - )
E- Class mtsSocketStreamer: File: mtsTask.cpp Line: 255 - WaitForState: task "streamerBase" did not reach state "mtsComponentState
State:active", current state is "mtsComponentState
State:finished"
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2079 - WaitForStateAll: component "streamerBase" failed to reach state "mtsComponentState
State:active"
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2087 - WaitForStateAll: timed out while waiting for state "mtsComponentState
State:active"
E- Class mtsManagerLocal: File: mtsManagerLocal.cpp Line: 2096 - WaitForStateAll: failed to reached state "mtsComponentState
State:active" for all components


In factly, I run "nc -lu 172.31.0.101 8765" but error is "Cannot asssign requested address".
When I run "nc -zv 172.31.0.101 8765", the result is " Connection to 172.31.0.101 8765 port [tcp/* ] succcessed!"

The NDI VEGA XT device can't support USB. So, I want to know whether your Code can support IP connection to drive NDI. Can you give me a sample? Thank you.

Sorry, the current code doesn't support the Polaris Vega. I added a warning in the README so other users wouldn't get confused. The sawSocketStreamer code is mean to stream out data to other applications, not to communicate with the Polaris Vega.