Recording while processing

DRIVE OS Version: 6.0.6

Issue Description:
Hi, we are currently working on a perception project that processes lidars and cameras on the drive AGX Orin. We used the recorder app to record the data and then replay them in our app. We would want to implement the recorder inside the app, so we can record while also process the information for the autonomous part of the vehicle. I tried to wrap the recorder app, so we can start it from our app, but when we do so, the visualization (and processing) stops in our app and the whole app crashes after a few seconds. I have a few ideas why this happens, but i want to confirm them.

Can two separate processes have access to sensors? I assume the dwSensor handle can only be used by one process at time, is that true? Ofcourse the fault could be also in my implementation.

If this is the case, is it possible to use the recorder app in our app, or we need to implement a custom recorder that will record the data on a thread inside our app?

Can two separate processes have access to sensors? I assume the dwSensor handle can only be used by one process at time, is that true?

No. Only one process can access a sensor at a time.
If you want to record and display in parallel. Few things to keep in mind

  1. Check the disk write speed to match the speed of camera FPS.
  2. See if you wants to enable the output from multiple ISP.
  3. If you want to encode data before storing, check the achievable FPS for your camera using nvmedia image encode application. Accordingly, you can plan your application pipeline.

Thanks for the quick reply.
Is the driveworks recorder code available anywhere? i couldnt find it since its in tools, not samples.

No. Recorder code is not available.