Nvbuf_utils: Could not get EGL display connection

I keep getting the error:
“nvbuf_utils: Could not get EGL display connection” in every pipeline I try. for my IMX-219 CSI camera. I don’t have an external display and want to display the feed locally on the computer, or, atleast have a video file saved that I can view.

hello aranis.das,

so, that’s why the error reported.

according to Topic 263716 comment #21, it’s confirmed output streaming via v4l standard IOCTL and gst pipeline.
you cannot use the display element, please try saving the stream to h264.
for example,
$ gst-launch-1.0 nvarguscamerasrc sensor-id=0 num-buffers=300 ! 'video/x-raw(memory:NVMM), width=1920, height=1080, framerate=21/1' ! nvtee ! omxh264enc bitrate=20000000 ! qtmux ! filesink location=video.mp4

or… you may capture a single JPG files for quick testing.
$ gst-launch-1.0 nvarguscamerasrc num-buffers=1 ! 'video/x-raw(memory:NVMM), width=1920, height=1080' ! nvjpegenc ! filesink location=sample.jpg

Thanks for the solution. I’ve noticed when I try to run more applications after one initial one, the processes overlap and it cant allocate enough resources to have another pipeline running. is there a way to kill all running pipelines or processes on terminal?If I restart the system, try it again, it works.

hello aranis.das,

you may using $ ps aux to list all the running process, and calling $ sudo kill <PID> to force shutdown the application.

here’s an example,
execute $ ps aux as below to check the running process.
$ ps aux | grep nvarguscamerasrc
nvidia 6682 21.7 0.1 32906752 37272 pts/0 Sl+ 03:06 0:03 gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! video/x-raw(memory:NVMM),width=1920, height=1080, framerate=30/1, format=NV12 ! nvvidconv ! video/x-raw(memory:NVMM),format=I420 ! fpsdisplaysink text-overlay=0 video-sink=fakesink sync=0 -v

calling kill to terminate this pipeline according to its PID, $ sudo kill 6682

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.