The DeepStream image nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples pulled from NGC to my NVIDIA NX failed to start any application

Hi @mchi,

Not mean one shot solution actually, I also happy to try many possible solutions. I just suggest that reading the existing contents before replying, otherwise it may have a relpy on a very different way…

For the reply, it is not for image’s solution, and the topic is obvious for seeking the solution about image.

And, please check if you run the exactly same instructions as below

$  sudo tar -xvf deepstream_sdk_v5.1.0_jetson.tbz2 -C /
$ cd /opt/nvidia/deepstream/deepstream-5.1
$ sudo ./install.sh
$ sudo ldconfig

Hi @mchi ,

the command I used to launch the docker is

sudo docker run -it --rm --net=host --runtime nvidia  -e DISPLAY=$DISPLAY -w /opt/nvidia/deepstream/deepstream-5.1 -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples

from DeepStream-l4t | NVIDIA NGC

did you see this?


strong text

As for your reply below, did you run xrander as @Amycao said mentioned above.

already export DISPLAY=:0 and also export DISPLAY=:1
also rm -rf ~/.cache/gstreamer-1.0

$ sudo xhost +

access control disabled, clients can connect from any host

Yea, I am trying the post (nvbuf_utils: Could not get EGL display connection - #5 by Al-Khattab) at the same time

xrandr

No protocol specified
Can't open display :0

$ export DISPLAY=:0.0
$ sudo xhost +

Invalid MIT-MAGIC-COOKIE-1 keyxhost:  unable to open display ":0.0"

Try

  1. reboot device
  2. Run command (remove “-e DISPLAY=$DISPLAY” option, and no “xhost +”)
    $ sudo docker run -it --rm --net=host --runtime nvidia -w /opt/nvidia/deepstream/deepstream-5.1 -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples

Hi @mchi ,

for now I run command

$ sudo docker run -it --rm --net=host --runtime nvidia -w /opt/nvidia/deepstream/deepstream-5.1 -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples

and run

$ deepstream-app -c samples/configs/deepstream-app/source1_usb_dec_infer_resnet_int8.txt

got error message

** ERROR: <main:655>: Failed to set pipeline to PAUSED
Quitting
ERROR from src_elem: Cannot identify device '/dev/video0'.
Debug info: v4l2_calls.c(609): gst_v4l2_open (): /GstPipeline:pipeline/GstBin:multi_src_bin/GstBin:src_sub_bin0/GstV4l2Src:src_elem:
system error: No such file or directory
App run failed

and I already refered the post (ERROR from src_elem: Cannot identify device '/dev/video2')
run

$ v4l2-ctl -d /dev/video0 --list-formats-ext

got

Failed to open /dev/video0: No such file or directory

Also tried re-launch image(REF: DeepStream-l4t | NVIDIA NGC)

$ sudo docker run -it --rm --net=host --runtime nvidia -w /opt/nvidia/deepstream/deepstream-5.1 --device /dev/video0 -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples

got the same error message.

Another issue is that when I run

./install.sh

always shows

/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/libnvidia-eglcore.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/libnvidia-glcore.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/libnvidia-tls.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/libnvidia-glsi.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra/libnvidia-rmapi-tegra.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra/libnvidia-eglcore.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra/libnvidia-glvkspirv.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra/libnvidia-glcore.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra/libnvidia-tls.so.32.5.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra/libnvidia-glsi.so.32.5.0 is empty, not checked.

how to solve this?

is this solved?

do you have camera device connected?

this is not required in docker

1 Like

Hi @mchi ,

After adding --device=/dev/video0:/dev/video0 to the command launching docker run, it works.
But when I tried another example app as following

deepstream-test1-app /opt/nvidia/deepstream/deepstream-5.1/samples/streams/sample_720p.h264

got errors

Now playing: /opt/nvidia/deepstream/deepstream-5.1/samples/streams/sample_720p.h264

Using winsys: x11 
Opening in BLOCKING MODE
Opening in BLOCKING MODE 
0:00:06.920655450  1230     0x122014d0 INFO                 nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger:<primary-nvinference-engine> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1702> [UID = 1]: deserialized trt engine from :/opt/nvidia/deepstream/deepstream-5.1/samples/models/Primary_Detector/resnet10.caffemodel_b1_gpu0_int8.engine
INFO: [Implicit Engine Info]: layers num: 3
0   INPUT  kFLOAT input_1         3x368x640       
1   OUTPUT kFLOAT conv2d_bbox     16x23x40        
2   OUTPUT kFLOAT conv2d_cov/Sigmoid 4x23x40         

0:00:06.920855169  1230     0x122014d0 INFO                 nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger:<primary-nvinference-engine> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:1806> [UID = 1]: Use deserialized engine model: /opt/nvidia/deepstream/deepstream-5.1/samples/models/Primary_Detector/resnet10.caffemodel_b1_gpu0_int8.engine
0:00:06.927127359  1230     0x122014d0 INFO                 nvinfer gstnvinfer_impl.cpp:313:notifyLoadModelStatus:<primary-nvinference-engine> [UID 1]: Load new model:dstest1_pgie_config.txt sucessfully
Running...
NvMMLiteOpen : Block : BlockType = 261 
NVMEDIA: Reading vendor.tegra.display-size : status: 6 
NvMMLiteBlockCreate : Block : BlockType = 261 
Frame Number = 0 Number of objects = 5 Vehicle Count = 3 Person Count = 2
0:00:07.423507525  1230     0x121f8370 WARN                 nvinfer gstnvinfer.cpp:1984:gst_nvinfer_output_loop:<primary-nvinference-engine> error: Internal data stream error.
0:00:07.423596745  1230     0x121f8370 WARN                 nvinfer gstnvinfer.cpp:1984:gst_nvinfer_output_loop:<primary-nvinference-engine> error: streaming stopped, reason error (-5)
ERROR from element primary-nvinference-engine: Internal data stream error.
Error details: /dvs/git/dirty/git-master_linux/deepstream/sdk/src/gst-plugins/gst-nvinfer/gstnvinfer.cpp(1984): gst_nvinfer_output_loop (): /GstPipeline:dstest1-pipeline/GstNvInfer:primary-nvinference-engine:
streaming stopped, reason error (-5)
Returned, stopping playback
Deleting pipeline

Any comments on this ?

I saw you have filed a new topic in Cannot run deepstream-test1-app on NX with image pulling from NGC.(nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples) ,please don’t ask the same question in two topic.
Can you close this ticket and track the issue on the other topic?

Hi @mchi ,

Sure, Originally I don’t know the issue in this topic would also cause another issue, that’s why I opened another topic on 29th May, Let’s discuss under that topic. Thanks for the support on this topic.

1 Like

@a0975003518 :

/usr/lib/aarch64-linux-gnu/libnvinfer.so.7: file too short

Yes, you are right, deepstream-l4t:5.1-21.02-samples has libnvinfer.so.7.1.3 which is size 0.

The “regular” deepstream:5.1-21-02-samples actually has a working version of libnvinfer.so.7.2.2

May indicates that Nvidia doesn’t have automated L4T regression tests that cover cases like these before releasing a version?