We are trying to record the Zed X camera video stream but are experiencing some issues I was hoping someone might be able us to resolve.
While running on the Zed Box Orin 16 Gb (which was recently rested and installed with ZED SDK 4.0.8) the recording sample script freezes at a random stage (e.g frame number 200, 500, 2000 or 5000).
After a while the Failed socket read message appears (see attached file) which might indicate some communication problem with the camera (perhaps via the Argus API). Recording using the Zed Explorer tool results in a similar random freeze which corrupts the file as well.
The problem repeats itself using different GMSL2 cables, while the camera is both static and on the move, and when running the script with and without sudo user privileges.
Thank you for reaching out and providing detailed information about your issue.
To help us debug further, could you run the ZED_Diagnostic tool and share the resulting json file?
Can you describe further these ‘freezes’? Does the SVO file become fully corrupted, or are frames missing in the resulting SVO?
Thank you for your help. Please see the attached json file with the relevant info.
Regarding the freezes, we are running the camera and recording the video stream using the example script. Frames prints to the terminal stops and the failed socket error appears. In some case the entire file is corrupted (unreadable) and in some cases there’s frame loss. I believe this may relates to when the script can be properly terminated or to the state of file writing process when the error occurs.
Could this be a timeout failure from the camera either due to it not sending frames back to the computer or some other miss synchronization resulting in the nvargus-daemon crashing (see picture bellow ) ?
How do you recommend in resolving this ? Is upgrading the jetpack version relevant (in this version they state that theres “Enhanced error resiliency for improved stability in Argus”) when using the zed box and zed x camera (it was rested to version 5.1.1) ? Or is the source of the error to be found with the camera ?
In order to recover corrupted SVO files, please try the following command, it should do the trick:
ZED_SVO_Editor -repair /path/to/svo/file
Do you happen to observe the argus errors while using a sample without recording? Upgrading Jetpack can be a good idea to reduce these types of errors, but this should be unrelated to recording.
We will test this configuration on our end to see if we can reproduce your errors.
I’ll check the SVO file recovery command as you suggested on Sunday (I’m out of office until then). However, I’m more concerned about the zed box and the camera not being able to handle the data stream and recording properly without any additional real time logics we are planning to add. What do you think is the source of this problem? The machine is supposed to handle 4 cameras running yet we are getting timeouts error when just 1 camera is working.
Do you happen to observe the argus errors while using a sample without recording? Upgrading Jetpack can be a good idea to reduce these types of errors, but this should be unrelated to recording.
I’ll need to verify this next week however I believe this issue only rises while recording is being done. The Zed Explorer might have also crashed without a recoding being made. I.e only the camera frame grab was ongoing. I’ll recheck this on Sunday.
Is upgrading the jetpack version to 5.1.2 won’t cause any other complications with respect to the camera and the zed SDK ? I’m asking because the zed box didn’t came installed with version 5.1.1.
This is definitely not normal behavior, as you’ve said the ZED Box should be able to handle streaming and recording for multiple ZED X cameras. Could you send some SVO files that are either corrupted or contain these dropped frames?
The upgrade from Jetpack 5.1.1 to 5.1.2 is not that straightforward actually, the zed box drivers are required to be reinstalled to enable USB and WiFi functions. We are currently preparing a guide documenting this process, so you should probably wait before upgrading.