Argus Camera Data flow

I am using Jetson AGX Xavier and Sony sensor on Framos board
Argus camera is working fine, I am able to see the stream display using camera application.
I would like to do some more experiments on image improvements and would like to understand the data flow of the Argues camera application. Could you please point me to same?


Have a check below doc.
For the image quality I would suggest to consult to Framos for image tuning.

Hi Shane
Thanks for your support.
Maybe I will explain a bit more what I am trying to do.

I have already integrated Sensor. My Argues camera is working correctly and I am able to see the full color image preview -on the screen.
Now I want to improve a few things in this camera image stream. for this purpose :-

  1. Want to tap image frames in RGB space to a cuda buffer
  2. Run my algorithms in this frame using cuda cores
  3. Return the processed frame back to display

In Argues camera code, where can tap a frame buffer in cuda?
I am not an expert of SW and stacks, so it you can give some pointed instructions, it will be nice.

Thanks in advance

Have a check the multimedia sample code. You can download from below command.

sudo apt list -a nvidia-l4t-jetson-multimedia-api
sudo apt install nvidia-l4t-jetson-multimedia-api=32.xxxxxx

Hi Shane
I have successfully integrated the CSI camera and capture frames. Thanks for your help. I used below string for the camera.

const char* gst =  "nvarguscamerasrc sensor-mode=3 wbmode=5 exposuretimerange=\"30000000 30000000\" \
gainrange=\"10 10\" ispdigitalgainrange=\"1 1\" tnr-mode=0 ee-mode=0 aelock=1 awblock=1 ! \
video/x-raw(memory:NVMM), width=(int)3864, height=(int)2180,format=(string)NV12, framerate=(fraction)30/1 ! \
nvvidconv ! video/x-raw, format=(string)BGRx ! \
videoconvert ! video/x-raw, format=(string)BGR ! \

cout << "DLS gst string: " << gst << endl;
VideoCapture capture_df(gst);

After getting the n number of frames in for (;;) I am using a break; to stop the capture. At the break; I am getting a Segmentation fault. See below output

Frames captured: 97
Frames captured: 98
Frames captured: 99
Frames captured: 100
100 Dark Frames finished …
Average time per frame: 62.00 ms
Dark frame calibration Finished
// → break; executed here …
GST_ARGUS: Cleaning up
Segmentation fault (core dumped)

I am not able to capture any frames after this. Any help?

Restart argsu-daemon to try.

sudo service argus-daemon stop
sudo argus-daemon &