I have two applications that use the orbbec sensor In a sprout G2 and I will describe the steps using the samples to check if this is by design.
The questions is: If I have already one app streaming from orbbec is there a way to find out by another application if the sensor is in use before trying to initialize and grab frames?
Here is the scenario I am trying:
1-Launch APP1 that streams both the depth and RGB. (The application is working just fine showing the RGB frames on the screen)
2-Launch APP2 (astra::init() Runs and returns success but I get only black frames from both sensors)
3-APP1 stream freezes
I am able to reproduce the same behavior using the samples from the astra sdk running SimpleStreamViewer-SFML.exe twice.
After digging a bit more I was able to check in the second proccess that the frames were invalid so the second app I can handle just fine telling the user that the camera is in use by another proccess.
But the first process running just got stuck and can’t get any new frame.