I’m currently having some troubles with one of my project.
I work on a TX2i platform. I need to acquire a full HD (1920x1080p) video via SDI, process it for video enhancement and then display it in FHD. Framerate is always 25 fps.
The application is programmed in C++/Cuda. Acquisition is made with V4L2 using a specific card connected on the M2 port. Display is performed with “imshow()” from OpenCV. The video processing part is under 35 milliseconds and mainly uses the GPU. NVP Model is set to 0 and jetson-clocks is launched.
Output frames are uncompressed 8bits Grayscale images.
At execution, I encounter a huge latency (around 2-3 seconds). Many frames are also skipped within the video flow. This problem does not appear if I set the display output on lower definition like HD (1280x720p). The display output definition and framerate are set with xrandr.
I tried to disable the processing part to free some resources for display but it doesn’t even reduce the issue.
Is the TX2i not supposed to be able to perform FHD display without struggle?
Do you have any ideas on how to resolve this issue? Maybe using something else than OpenCV but what?
VPI doesn’t seems to be made for this. Maybe libargus is more of a suitable candidate but I don’t see clearly how to use it. (Looks more MIPI capture oriented.)
Any help please?