It works like a charm when the RGB module
of the camera has a resolution of 1280x720, and FPS as 15 frames/sec. The depth mode and IMU work fine in all the settings.
But if the resolution is increased above 1280x720 - 15 frames/sec, I face a Runtime error: backend-v412.cpp:988 - Frames didn't arrive within 5 seconds.
Other forms of this error:
10:41:49 [Warn] .../backend-v4l2.cpp:988 - Frames didn't arrived within 5 seconds
It seems like the pipeline is not able to handle the framebuffers, and there is quite a lot of drop in the frames, specifically, if the resolution is kept above 1280x720, 15 frames/sec.
See the graph below with the resolution of 1280x720, 30 frames/sec. How do I correct the above?
As suspected, this is a pipelining issue w.r.t the amount of the data a particular USB port can carry.
To prevent frame drop or overload of data through the USB, it has to be connected to a Motherboard that has USB 3.1 Gen 1 specifications.
Refer to page 78 of this document https://www.intelrealsense.com/wp-content/uploads/2020/06/Intel-RealSense-D400-Series-Datasheet-June-2020.pdf
My AMD machine does not have the in-build USB 3.1 Gen 1 specifications (has USB 3.0) and hence the overload.