Problem in running the sample app of DeepStream2.0

Dear all,

I have installed DeepStream 2.0 following the guide “NVIDIA_DeepStream_SDK_on_Tesla_V2.0_User_Guide”. However, when I was trying to run the sample app, the following error occurs:

GST_DEBUG=3 ./deepstream-test1-app …/…/…/samples/streams/sample_7
20p.h264
h264parse — OK
decoder — FAIL
One element could not be created. Exiting.

using deeper debug level, it shows the following:
0:00:00.016838240 3080 0xc33600 INFO GST_ELEMENT_FACTORY gstelementfactory.c:457:gst_element_factory_make: no such element factory “nvdec_h264”!
decoder — FAIL

How should I fix it? Thanks very much!

Regards,
Gary Lapin
17/9/2018

can you paste output of gst-inspect-1.0 |grep h264?
this is mine, for your reference.

tse@p4station:~/work/deepstream/DeepStream_Release$ gst-inspect-1.0 |grep h264
NvVideoCodecs: nvdec_h264: Nvidia H.264 Video Decoder
libav: avdec_h264: libav H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 decoder
typefindfunctions: video/x-h264: h264, x264, 264
rtp: rtph264depay: RTP H264 depayloader
rtp: rtph264pay: RTP H264 payloader
videoparsersbad: h264parse: H.264 parser
uvch264: uvch264mjpgdemux: UVC H264 MJPG Demuxer
uvch264: uvch264src: UVC H264 Source

Thanks for your help, here it is:

gst-inspect-1.0 |grep h264
uvch264: uvch264mjpgdemux: UVC H264 MJPG Demuxer
uvch264: uvch264src: UVC H264 Source
rtp: rtph264depay: RTP H264 depayloader
rtp: rtph264pay: RTP H264 payloader
videoparsersbad: h264parse: H.264 parser
typefindfunctions: video/x-h264: h264, x264, 264

Do you follow the README to install nvidia related plugin to /usr/lib/x86_64-linux-gnu/gstreamer-1.0?
or you need to export GST_PLUGIN_PATH to /path to package dir/DeepStream_Release/usr/lib/x86_64-linux-gnu/gstreamer-1.0 and export LD_LIBRARY_PATH to point to /path to package dir/DeepStream_Release/usr/local/deepstream/

Thanks Amy, I have followed your instructions and the problem is finally solved.

I have add “export LD_LIBRARY_PATH=/root/opencv-3.4.3/build/lib/:/usr/local/deepstream:/usr/local/cuda/lib64:TensorRT-4.0.1.6/lib:TensorRT-4.0.1.6/lib:/usr/lib/x86_64-linux-gnu/gstreamer-1.0/:/root/opencv-3.4.3”. But I run the sample code, and then faild.

root@39b1b68aae9b:~/DeepStream_Release/samples/configs/deepstream-app# deepstream-app -c source4_720p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt
** ERROR: <create_render_bin:51>: Failed to create 'sink_sub_bin_sink1'
** ERROR: <create_render_bin:124>: create_render_bin failed
** ERROR: <create_sink_bin:346>: create_sink_bin failed
** ERROR: <create_processing_instance:685>: create_processing_instance failed
** ERROR: <create_pipeline:949>: create_pipeline failed
** ERROR: <main:469>: Failed to create pipeline
Quitting
App run failed

Can you help me check my envirenment?

Do you export nvidia related plugin by export GST_PLUGIN_PATH=/path to your ds pack/usr/lib/x86_64-linux-gnu/gstreamer-1.0? and you also need to export local library by export LD_LIBRARY_PATH=/path to your ds pack/usr/local/deepstream:/other libray like opencv library; tensorrt library/, then and try again.

export GST_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/gstreamer-1.0
export LD_LIBRARY_PATH=/root/opencv-3.4.3/build/lib/:/usr/local/deepstream:/usr/local/cuda/lib64:/root/TensorRT-4.0.1.6/lib:/usr/lib/x86_64-linux-gnu/gstreamer-1.0:/root/opencv-3.4.3:/usr/lib

I have exported the local library to my ~/.bashrc, and then source ~/.bashrc
But the error persists.

Thanks

Do you put nvidia related plugin to system path /usr/lib/x86_64-linux-gnu/gstreamer-1.0? if yes you do not need to export, or you need export to point to your local nvidia plugin path.
here is my nvidia plugin path: ~/work/deepstream/DeepStream_Release/usr/lib/x86_64-linux-gnu/gstreamer-1.0, for your reference.

Thanks for your suggestions. I will try to do it.