Detailed Guide to LibArgus with SurveilsQuad (synchronized multiple camera solution for NVIDIA® Jetson AGX Xavier™ Developer Kit)

A very rudimentary problem we all face while trying to get hold of a new technology is the availability of content to understand the adoption and execution. Often, a specification document is considered as a quick reference guide to developers. But continuous learning comes from practice alone!

One such technology that is making rounds as a new-age challenge is the camera software architecture of NVIDIA’s Jetson boards (Jetson TX1, TX2, Nano™ & AGX Xavier™). It utilizes a framework known as ‘LibArgus’ for accessing cameras, which is based on C++.

In this article we will be covering the following sections:

  • Camera Software Architecture in NVIDIA Jetson boards
  • LibArgus Framework - Advantages over V4L2
  • Steps to Stream a camera using LibArgus
  • Key Features of LibArgus
  • Raw Bayer streaming Support in LibArgus
  • LibArgus-OpenCV interoperability
  • Custom LibArgus Application reference

Fig : SurveilsQuad - Sony IMX290 Synchronized Multi-Camera System
Recently, e-con Systems launched SurveilsQuad (e-CAM20_CUXVR), a hardware synchronized multi-camera embedded product which is supported in Jetson AGX Xavier™. SurveilsQuad is built upon and accessed using a fully customized LibArgus-based camera application, which is used to stream + capture and stream + record with or without synchronization. It can handle up to four cameras in just a single window.

For More info, please visit :