I'm trying to use Euclid's RGB camera by two different applications: 1 ROS node and non-ROS service running in the background. The problem is that once one of those programs opens the device (/dev/video2), it gets locked and can't be read by the rest.
I've tried to clone the device using gstreamer to create a loopback device (see this post) but i have not been able to do it so far. Has anyone done this for the Euclid? Is there any other way?
You just want to make sure you don't have two programs trying to lock /dev/video2.
If you can get the non-ROS service (which I'm guessing is the one that locks the device) to publish the RGB images to a topic, then modify the ROS-node to receive the RGB images from that topic instead of /camera/color/image_raw, you should be all set.
Or if you can modify the non-ROS service to receive images published into /camera/color/image_raw, that would also be a good workaround.
Intel Euclid Development Team