Issue with multi camera capture using released nvarguscamerasrc code for JetPack 4.4

Hi all,

I’ve been doing some testing compiling the released code for nvarguscamerasrc in this tarball (Jetson Download Center).

Basically if I create 3 instances of nvarguscamerasrc in separated processes (separate gst-launch-1.0 commands) the pipelines crash, something for example like:

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! fakesink & gst-launch-1.0 nvarguscamerasrc sensor-id=1 ! fakesink & gst-launch-1.0 nvarguscamerasrc sensor-id=2 ! fakesink

This is the log when the issue appears

nvidia@nvidia:/usr/local/mesa$ gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! fakesink & gst-launch-1.0 nvarguscamerasrc sensor-id=1 ! fakesink & gst-launch-1.0 nvarguscamerasrc sensor-id=2 ! fakesink
[2] 21811
[3] 21812
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
New clock: GstSystemClock
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module0
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module2
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module0
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module0
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module2
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module2
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
CAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing again---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
CAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing again---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
CAM: serial no file already exists, skips storing again---- imager: Found override file [/var/nvidia/nvcam/settings/camera_overrides.isp]. ----
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
CAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing againCAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
CAM-SWAP: camera module looks been swapped!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
NvCameraIspUnpackingBlob 156: Blob: Wrong magic number!
CAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing againCAM: serial no file already exists, skips storing againGST_ARGUS: Creating output stream
GST_ARGUS: Creating output stream
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3840 x 2160 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 12.800000, max 198.399994; Exposure Range min 115000, max 33218000;

GST_ARGUS: Running with following settings:
   Camera index = 1 
   Camera mode  = 0 
   Output Stream W = 3840 H = 2160 
   seconds to Run    = 0 
   Frame Rate = 29.999999 
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3840 x 2160 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 12.800000, max 198.399994; Exposure Range min 115000, max 33218000;

GST_ARGUS: Running with following settings:
   Camera index = 0 
   Camera mode  = 0 
   Output Stream W = 3840 H = 2160 
   seconds to Run    = 0 
   Frame Rate = 29.999999 
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3840 x 2160 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 12.800000, max 198.399994; Exposure Range min 115000, max 33218000;

GST_ARGUS: Running with following settings:
   Camera index = 2 
   Camera mode  = 0 
   Output Stream W = 3840 H = 2160 
   seconds to Run    = 0 
   Frame Rate = 29.999999 
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
CONSUMER: Producer has connected; continuing.
The header's Stats Id 0 does not match Hist0 Header Id 1
SCF: Error InvalidState:  (propagating from src/services/autocontrol/isp_stats/IspLegacyStatsDecoder.cpp, function decodeIspStats(), line 58)
SCF: Error InvalidState: There was an error decoding stats for frame 2, frame stats will be invalid (in src/services/autocontrol/isp_stats/IspLegacyStatsDecoder.cpp, function decodeIspStats(), line 66)
totalCount of histogram is zero
(Autocontrol) Error BadParameter: histFromLac1 histogram totalMass is invalid (in src/algorithms/ae/ae_stats_utils.cpp, function NvIspAeCalcMaxRGBHistogramsFromLac1(), line 287)
(Autocontrol) Error BadParameter:  (propagating from src/algorithms/ae/plugins/aohdr/AEComputePluginAoHdr.cpp, function computeMidtoneMeter(), line 95)
(Autocontrol) Error BadParameter:  (propagating from src/algorithms/ae/plugins/aohdr/AEComputePluginAoHdr.cpp, function computeDerivedStats(), line 352)
AWB: M3Stats VWindows = 0 != 64
The header's Stats Id 0 does not match Hist0 Header Id 1
SCF: Error InvalidState:  (propagating from src/services/autocontrol/isp_stats/IspLegacyStatsDecoder.cpp, function decodeIspStats(), line 58)
SCF: Error InvalidState: There was an error decoding stats for frame 3, frame stats will be invalid (in src/services/autocontrol/isp_stats/IspLegacyStatsDecoder.cpp, function decodeIspStats(), line 66)
Caught SIGSEGV
The header's Stats Id 0 does not match Hist0 Header Id 1
SCF: Error InvalidState:  (propagating from src/services/autocontrol/isp_stats/IspLegacyStatsDecoder.cpp, function decodeIspStats(), line 58)
SCF: Error InvalidState: There was an error decoding stats for frame 1, frame stats will be invalid (in src/services/autocontrol/isp_stats/IspLegacyStatsDecoder.cpp, function decodeIspStats(), line 66)
Caught SIGSEGV
#0  0x0000007fa720f038 in __GI___poll (fds=0x557bb46240, nfds=548265906744, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:41
#1  0x0000007fa731ce08 in  () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x000000557b9312e0 in  ()
PowerServiceCore:handleRequests: timePassed = 1148
Spinning.  Please run 'gdb gst-launch-1.0 21812' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
#0  0x0000007fa0dd5038 in __GI___poll (fds=0x55983d81e0, nfds=548160811576, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:41
#1  0x0000007fa0ee2e08 in  () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#2  0x00000055981c32e0 in  ()
PowerServiceCore:handleRequests: timePassed = 1073
Spinning.  Please run 'gdb gst-launch-1.0 21813' to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
SCF: Error Timeout:  (propagating from src/components/amr/Snapshot.cpp, function waitForNewerSample(), line 92)
SCF_AutocontrolACSync failed to wait for an earlier frame to complete.

SCF: Error Timeout:  (propagating from src/components/ac_stages/ACSynchronizeStage.cpp, function doHandleRequest(), line 126)
SCF: Error Timeout:  (propagating from src/components/stages/OrderedStage.cpp, function doExecute(), line 137)
SCF: Error Timeout: Sending critical error event (in src/api/Session.cpp, function sendErrorEvent(), line 990)
SCF: Error InvalidState: Session has suffered a critical failure (in src/api/Session.cpp, function capture(), line 667)
(Argus) Error InvalidState:  (propagating from src/api/ScfCaptureThread.cpp, function run(), line 109)
SCF: Error InvalidState: Session has suffered a critical failure (in src/api/Session.cpp, function capture(), line 667)
(Argus) Error InvalidState:  (propagating from src/api/ScfCaptureThread.cpp, function run(), line 109)

In the other hand this issue doest not appear when using 3 instances of nvarguscamerasrc in the same process (or just launching 1 camera), for example:

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! fakesink nvarguscamerasrc sensor-id=1 ! fakesink nvarguscamerasrc sensor-id=2 ! fakesink

Also the issue does not appear when using the nvarguscamerasrc shipped with the JetPack 4.4 installation via the sdkmanager or OTA packages.

Thanks in advance for any insight that you may have.

The problem only for the customize nvarguscamerasrc without problem with original release?

Have you try to boost the clocks and run the jetson_clocks to try.
https://elinux.org/Jetson_TX2_Camera_BringUp

Hi ShaneCCC,

Yes, the issue happens when replacing the default nvarguscamerasrc element (shipped with JetPack installation) with the one built using the released source code (available in the Jetson Download center) with zero changes of my own. I just replaced the library in /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so (i.e, sudo make install as per instructions in the README file).

Are you suggesting that this is some kind of timeout issue in the camera capture subsystem? I have not tried boosting the clocks, I’ll have to check the dmesg also. I’ll try and check if there is more information.

ShaneCCC,

I tried your suggestions of boosting the clocks and runnnin jetson_clocks, however it does not fix the issue.

Here are a couple more observations I made:

  • The compiled nvarguscamerasrc doesn’t need the nvargus-daemon in order to work, this suggests this is a different implementation from the default one (I was able to run a nvarguscamerasrc pipeline with the nvargus-daemon stopped)

  • Also I check the dmesg output, I’m leaving part of the log I obtain:

    [ 270.974230] isp 15600000.isp: NUM_HANDLES 1
    [69216.527953] host1x 13e10000.host1x: cdma_handle_timeout: timeout: 68 (15700000.vi_2) clientid 236077, HW thresh 37, done 38
    [69216.539245] host1x 13e10000.host1x: cdma_handle_timeout: timeout: 67 (15700000.vi_1) clientid 236077, HW thresh 108, done 109
    [69216.550597] host1x 13e10000.host1x: cdma_handle_timeout: timeout: 61 (15700000.vi_0) clientid 236077, HW thresh 51, done 51
    [69216.561769] ---- mlocks ----
    [69216.561784] 8: locked by channel 11

    [69216.561805] ---- syncpts ----
    [69216.561833] id 19 (15340000.vic_gst-launch-1.0_0) min 696096 max 696096 refs 1 (previous client : 15340000.vic_gst-launch-1.0_0)
    [69216.561837] id 20 (gp10b_507) min 251862 max 251862 refs 1 (previous client : )
    [69216.561841] id 21 (gp10b_506) min 14 max 14 refs 1 (previous client : )
    [69216.561845] id 22 (gp10b_505) min 477642 max 477642 refs 1 (previous client : gp10b_505)
    [69216.561849] id 23 (15340000.vic_gst-launch-1.0_0) min 475808 max 475808 refs 1 (previous client : 15600000.isp_argus_thread_0)
    [69216.561852] id 24 (15340000.vic_gst-launch-1.0_0) min 239779 max 239779 refs 1 (previous client : 15600000.isp_argus_thread_1)
    [69216.561856] id 25 (15600000.isp_argus_thread_0) min 236117 max 236117 refs 1 (previous client : 15600000.isp_argus_thread_2)
    [69216.561861] id 28 (15600000.isp_argus_thread_1) min 236055 max 236055 refs 1 (previous client : 15600000.isp_argus_thread_3)
    [69216.561865] id 29 (15600000.isp_argus_thread_2) min 1628313 max 1628313 refs 1 (previous client : 15600000.isp_argus_thread_4)
    [69216.561869] id 30 (15600000.isp_argus_thread_3) min 259219 max 259219 refs 1 (previous client : 15600000.isp_argus_thread_5)
    [69216.561873] id 31 (15600000.isp_argus_thread_4) min 3958 max 3958 refs 1 (previous client : gp10b_501)
    [69216.561876] id 32 (15600000.isp_argus_thread_5) min 256 max 256 refs 1 (previous client : gp10b_496)
    [69216.561880] id 33 (15600000.isp_argus_thread_0) min 324 max 328 refs 4 (previous client : gp10b_495)
    [69216.561883] id 34 (15600000.isp_argus_thread_1) min 123 max 125 refs 4 (previous client : gp10b_504)
    [69216.561886] id 35 (15600000.isp_argus_thread_2) min 93 max 95 refs 4 (previous client : gp10b_503)
    [69216.561889] id 36 (15600000.isp_argus_thread_3) min 594 max 596 refs 4 (previous client : gp10b_492)
    [69216.561893] id 37 (15600000.isp_argus_thread_4) min 235477 max 235489 refs 9 (previous client : gp10b_500)
    [69216.561896] id 38 (15600000.isp_argus_thread_5) min 235986 max 235988 refs 4 (previous client : gp10b_499)
    [69216.561899] id 39 (15600000.isp_argus_thread_0) min 236024 max 236028 refs 4 (previous client : gp10b_491)
    [69216.561903] id 40 (15600000.isp_argus_thread_1) min 4078 max 4080 refs 4 (previous client : gp10b_493)
    [69216.561907] id 41 (15600000.isp_argus_thread_2) min 268 max 270 refs 4 (previous client : 15340000.vic_argus_thread_0)
    [69216.561910] id 42 (15600000.isp_argus_thread_3) min 105 max 107 refs 4 (previous client : gp10b_490)
    [69216.561913] id 43 (15600000.isp_argus_thread_4) min 302 max 311 refs 8 (previous client : 15340000.vic_argus_thread_0)
    [69216.561917] id 44 (15600000.isp_argus_thread_5) min 344 max 345 refs 4 (previous client : gp10b_492)
    [69216.561920] id 45 (gp10b_501) min 113 max 113 refs 1 (previous client : gp10b_502)
    [69216.561923] id 46 (gp10b_496) min 128 max 128 refs 1 (previous client : gp10b_498)
    [69216.561927] id 47 (gp10b_495) min 72 max 72 refs 1 (previous client : gp10b_494)
    [69216.561931] id 48 (gp10b_504) min 134 max 134 refs 1 (previous client : gp10b_497)
    [69216.561934] id 49 (gp10b_503) min 696136 max 696136 refs 1 (previous client : 15340000.vic_argus_thread_0)
    [69216.561938] id 50 (gp10b_493) min 11607 max 11607 refs 1 (previous client : 15340000.vic_argus_thread_0)
    [69216.561942] id 52 (gp10b_499) min 58 max 58 refs 1 (previous client : gp10b_491)
    [69216.561946] id 54 (gp10b_492) min 58 max 58 refs 1 (previous client : gp10b_493)
    [69216.561952] id 57 (gp10b_498) min 60 max 60 refs 1 (previous client : gp10b_496)
    [69216.561957] id 60 (gp10b_472) min 13 max 13 refs 1 (previous client : 15700000.vi_0)
    [69216.561960] id 61 (15700000.vi_0) min 51 max 52 refs 4 (previous client : 15700000.vi_0)
    [69216.561963] id 62 (15700000.vi_0) min 28 max 28 refs 2 (previous client : 15700000.vi_0)
    [69216.561967] id 63 (15700000.vi_0) min 21 max 21 refs 2 (previous client : 15700000.vi_0)
    [69216.561970] id 64 (15700000.vi_0) min 44 max 44 refs 2 (previous client : 15700000.vi_1)
    [69216.561973] id 65 (15700000.vi_1) min 44 max 44 refs 2 (previous client : 15700000.vi_0)
    [69216.561977] id 66 (15700000.vi_2) min 44 max 44 refs 2 (previous client : 15700000.vi_2)
    [69216.561980] id 67 (15700000.vi_1) min 109 max 110 refs 4 (previous client : 15700000.vi_1)
    [69216.561983] id 68 (15700000.vi_2) min 37 max 39 refs 4 (previous client : 15700000.vi_2)
    [69216.562005] id 69 (15700000.vi_0) min 13 max 13 refs 2 (previous client : 15700000.vi_0)
    [69216.562009] id 70 (15700000.vi_0) min 123 max 125 refs 4 (previous client : 15700000.vi_1)
    [69216.562013] id 71 (15700000.vi_1) min 92 max 94 refs 4 (previous client : 15700000.vi_2)
    [69216.562017] id 72 (150c0000.nvcsi_0) min 115 max 115 refs 2 (previous client : 15700000.vi_1)
    [69216.562023] id 76 (gp10b_488) min 16 max 16 refs 1 (previous client : gp10b_488)
    [69216.562028] id 78 (gp10b_486) min 6 max 6 refs 1 (previous client : 15340000.vic_argus_thread_0)
    [69216.562032] id 80 (gp10b_487) min 14 max 14 refs 1 (previous client : gp10b_486)
    [69216.562037] id 82 (15340000.vic_argus_thread_0) min 6 max 6 refs 1 (previous client : gp10b_485)
    [69216.562040] id 83 (gp10b_483) min 12 max 12 refs 1 (previous client : gp10b_484)
    [69216.562043] id 84 (gp10b_484) min 8 max 8 refs 1 (previous client : 15340000.vic_argus_thread_0)
    [69216.562047] id 85 (gp10b_482) min 12 max 12 refs 1 (previous client : gp10b_483)
    [69216.562051] id 87 (15340000.vic_argus_thread_0) min 6 max 6 refs 1 (previous client : gp10b_481)
    [69216.562055] id 88 (gp10b_481) min 6 max 6 refs 1 (previous client : 15340000.vic_argus_thread_0)
    [69216.562058] id 89 (gp10b_479) min 12 max 12 refs 1 (previous client : gp10b_480)
    [69216.562082] id 91 (gp10b_480) min 12 max 12 refs 1 (previous client : gp10b_478)
    [69216.562087] id 93 (gp10b_474) min 12 max 12 refs 1 (previous client : gp10b_476)
    [69216.562091] id 95 (gp10b_473) min 12 max 12 refs 1 (previous client : gp10b_474)
    [69216.562095] id 96 (15700000.vi_2) min 123 max 125 refs 4 (previous client : 15700000.vi_1)

Looking for this cdma_handle_timeout message in the forum, I only encountered this post. However our camera driver has been verified with v4l2-ctl and the default nvarguscamerasrc with no issues, and the driver is the component that we have control over.

At this point we are kind of shooting in the dark here, because the nvarguscamerasrc code that NVIDIA releases doesn’t match the binary they ship JetPack with.

Did you try not modify anything to build to verify it?

ShaneCCC,

Yes, I have tried with the originial/untouched sources and the issue still happens. Is there a way for you to replicate this on your side? I’ve have seen the issue with at least two cameras too, so you won’t need all three. This can really help to narrow the issue to our setup if you fail to replicate it.

Could you attached your binary here to try.

ShaneCCC,

Here is the binary:

  • sha1sum checksum: 2ea24f2adb1d46e1f1bd1c38c0282ce4a2c23b5a

libgstnvarguscamerasrc.so.zip (40.0 KB)

I am able to see the problem with the code build on my TX2.

File bug
http://nvbugs/200615594

ShaneCCC.

Thanks a lot for replicating and reporting the bug on your side.

However in the meantime I think Ridgerun can work on patching the issue on our side, do you have any suggestions, documentation or point us where the issue could be, we are really not familiar with the new nvarguscamerasrc souces. Please ask around to your colleagues if necessary.

ShaneCCC,

I’ve identified another issue aswell, maybe you can try to replicate it.

Basically if there are multiple instances of nvarguscamerasrc already running one has to close all of them at the same time otherwise the other capture pipelines crash. This is easily reproducible by running the following command in separate terminal windows and then closing one of them while the others are still running:

gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! fakesink

Let me know if you are able to replicate it aswell. Thanks in advance.

Hi,
Please try modify the Makefile as below.

LIBS:= -lnvbuf_utils -lnvdsbufferpool -lnvargus -lpthread
It should work by replacing with -lnvargus_socketclient and rebuild/replace the lib.

Hi ShaneCCC,

I can confirm the provided fix works, seems to have resolved the issues I reported. I wasn’t 100% what was the patch that I needed exactly, but here it is the diff of the Makefile for future readers:

diff --git a/src/Makefile b/src/Makefile
index 3fd3500..6046c69 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -31,7 +31,8 @@ CC := g++
 GST_INSTALL_DIR?=/usr/lib/aarch64-linux-gnu/gstreamer-1.0/
 LIB_INSTALL_DIR?=/usr/lib/aarch64-linux-gnu/tegra/
 CFLAGS:=
-LIBS:= -lnvbuf_utils -lnvdsbufferpool -lnvargus -lpthread
+LIBS:= -lnvbuf_utils -lnvdsbufferpool -lnvargus_socketclient -lpthread
 SRCS := $(wildcard *.cpp)
2 Likes