Nvarguscamerasrc - Error NotSupported: Failed to load EGL library

Hi everyone,

I’m actually trying to acquire images and videos from a camera with the Jetson Nano and Gstreamer. I also want to have the lighter embedded Linux system and use Buildroot.

On this buildroot I installed everything needed to run the Nvarguscamera plugin (packages, drivers and multimedia API). The cross compilation goes fine and my plugin is not blacklisted by Gstreamer.

I have to launch the daemon:

$ nvargus-daemon &

And then the nvarguscamera plugin :

$ gst-launch-1.0 nvarguscamerasrc ! fakesink

But I have this error message :

Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
=== gst-launch-1.0[65]: Connection established (7F828DB120)SCF: Error NotSupported: Failed to load EGL library (in src/services/gl/GLService.cpp, function initializeEGLExportFunctions(), line 190)
SCF: Error NotSupported: (propagating from src/services/gl/GLService.cpp, function initialize(), line 147)
SCF: Error NotSupported: (propagating from src/services/gl/GLService.cpp, function startService(), line 46)
SCF: Error NotSupported: (propagating from src/components/ServiceHost.cpp, function startServices(), line 138)
SCF: Error NotSupported: (propagating from src/api/CameraDriver.cpp, function initialize(), line 176)
SCF: Error InvalidState: Services are already stopped (in src/components/ServiceHost.cpp, function stopServicesInternal(), line 188)
SCF: Error NotSupported: (propagating from src/api/CameraDriver.cpp, function getCameraDriver(), line 117)
(Argus) Error NotSupported: (propagating from src/api/GlobalProcessState.cpp, function createCameraProvider(), line 204)
=== gst-launch-1.0[65]: CameraProvider initialized (0x7fac014ec0)Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:645 No cameras available
Got EOS from element "pipeline0".
Execution ended after 0:00:00.032214229
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
=== gst-launch-1.0[65]: CameraProvider destroyed (0x7fac014ec0)(Argus) Error EndOfFile: Unexpected error in reading socket (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadCore(), line 266)
(Argus) Error EndOfFile: Receive worker failure, notifying 1 waiting threads (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadCore(), line 340)
(Argus) Error InvalidState: Argus client is exiting with 1 outstanding client threads (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadCore(), line 357)
(Argus) Error EndOfFile: Receiving thread terminated with error (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadWrapper(), line 368)
(Argus) Error EndOfFile: Client thread received an error from socket (in src/rpc/socket/client/ClientSocketManager.cpp, function send(), line 145)
(Argus) Error EndOfFile: (propagating from src/rpc/socket/client/SocketClientDispatch.cpp, function dispatch(), line 87)

Despite having EGL libraries installed in the /usr/lib/ repertory.

Does anyone have an idea of where this error message come from ?

Regards,
Pbbardon

Check below doc to confirm the sensor driver configure without any problem first.
For the EGL have below command before gst-launch-1.0

export DISPLAY=:0

https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide/camera_sensor_prog.html#wwpID0E0LF0HA

Hi ShaneCCC,
Thanks for your answer.

The V4L2-compliance test results with 43 succeeded tests (with some “OK (Not Supported)”) and 3 failed.

Also, when I’m trying to run a V4L2-ctl test I got this error message :

tegra_channel_status:error 20022 frame 0
tegra_channel_status:error 20022 frame 1
tegra_channel_status:error 20022 frame 2
tegra_channel_status:error 20022 frame 3

And have the export DISPLAY=:0 command doesn’t change my first error message with EGL library.

Enable the dev_dbg() in csi2_fops.c to check the status

What do I have to change in the csi2_fops.c file to enable the dev_dbg() ?

Try this command.

sudo su 
echo file csi2_fops.c +p > /sys/kernel/debug/dynamic_debug/control