DeepStream 6.1 docker failed

Azure IoT + DeepStream on the JNX

docker image: nvcr.io/nvidia/deepstream-l4t:6.1-iot

when starting with following command, it returns GStreamer related errors:
$ docker restart NVIDIADeepStreamSDK

(gst-plugin-scanner:6): GStreamer-WARNING **: 01:59:48.077: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so’: /usr/lib/aarch64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

(gst-plugin-scanner:6): GStreamer-WARNING **: 01:59:48.099: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so’: /usr/lib/aarch64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

(gst-plugin-scanner:6): GStreamer-WARNING **: 01:59:48.111: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosink.so’: /usr/lib/aarch64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

Following tip does not work for me:
$ export LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libGLdispatch.so.0

would you let me know what’s wrong?

How about add this into .bashrc, reopen the terminal, or source ~/.bashrc and try the command?
export LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libGLdispatch.so.0:$LD_PRELOAD

It does not work here.
Thanks

Can you start docker normally by docker run ***?

@Amycao
As your advice, I run this command :

$ nvidia-docker run -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -w /opt/nvidia/deepstream/deepstream-6.1 --net="host"  --name=deepstream_test nvcr.io/n
vidia/deepstream-l4t:6.1-iot /bin/bash

To test DS example, I ran this config:

root@nvidia-desktop:/opt/nvidia/deepstream/deepstream-6.1/samples/configs/deepstream-app# deepstream-test5-app -c source4_1080p_dec_infer-resnet_tracker_sgie_tile
d_display_int8.txt

And I realized it returns same error:

(gst-plugin-scanner:14): GStreamer-WARNING **: 01:22:15.468: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so’: /usr/lib/aarch64-li
nux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

(gst-plugin-scanner:14): GStreamer-WARNING **: 01:22:15.485: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so’: /usr/lib/aarc
h64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

(gst-plugin-scanner:14): GStreamer-WARNING **: 01:22:15.496: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosink.so’: /usr/lib/aarch
64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

(gst-plugin-scanner:14): GStreamer-WARNING **: 01:22:16.001: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_multistream.so’
: /usr/lib/aarch64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block

(gst-plugin-scanner:14): GStreamer-WARNING **: 01:22:16.020: Failed to load plugin ‘/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_dewarper.so’: /
usr/lib/aarch64-linux-gnu/libGLdispatch.so.0: cannot allocate memory in static TLS block
** ERROR: <create_multi_source_bin:1457>: Failed to create element ‘src_bin_muxer’
** ERROR: <create_multi_source_bin:1550>: create_multi_source_bin failed
** ERROR: <create_pipeline:1327>: create_pipeline failed
** ERROR: main:1459: Failed to create pipeline
Quitting
App run failed

I tested the same command at the out of the container, and works pretty well.

In the container,

export LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libGLdispatch.so.0:$LD_PRELOAD
then clean the gstreamer cache,
rm ~/.cache/gstreamer-1.0/ -fr
run the app again.

Thanks @Amycao

It works!

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