Please provide complete information as applicable to your setup.
• GForce GTX 1080Ti
• DeepStream Version 5.1
• TensorRT Version 7.2.3
• NVIDIA GPU Driver Version 455
• Issue Type( questions, new requirements, bugs) Question
I am trying to run a c++ code inside a deep stream container which will invoke below pipeline
filesrc location=“example.mp4” ! qtdemux ! h264parse ! nvv4l2decoder ! video/x-raw(memory:NVMM) ! videorate ! video/x-raw(ANY),framerate=1/1 ! nvvideoconvert ! video/x-raw,format=(string)BGRx ! jpegenc ! appsink name=sink emit-signals=true sync=true max-buffers=1 drop=false"
but while running I am receiving "could not construct pipeline: no element “nvvideoconvert”
When executed the command “gst-inspect-1.0” inside docker image of deepstream it says no “No such element or plugin 'nvvideoconvert”
I used both
docker pull nvcr.io/nvidia/deepstream:5.1-21.02-base
docker pull nvcr.io/nvidia/deepstream:5.1-21.02-devel
but both are not working for me
Can you run the command of “gst-inspect-1.0 nvvideoconvert”? What is the output?
root@10762fb17972:/opt/nvidia/deepstream/deepstream-5.1# gst-inspect-1.0 nvvideoconvert
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
(gst-plugin-scanner:15): GStreamer-WARNING **: 05:05:18.425: Failed to load plugin ‘/usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_inferserver.so’: libtritonserver.so: cannot open shared object file: No such file or directory
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
nvbufsurftransform:cuInit failed : 100
No such element or plugin ‘nvvideoconvert’
Based on your suggestion I looked at my nvidia driver and it is 455. There are some dependencies so I cant update driver right now. So I tired to use docker image of deepstream 4
docker pull nvcr.io/nvidia/deepstream:4.0.2-19.12-devel
When I run the docker container I could see the plugins (nvvideoconvert) available.
With that deepstream container, instead of running the original pipeline mentioned above I tried to run basic pipeline shown below
gst-launch-1.0 videotestsrc ! videoconvert ! autovideosink
I entered the pipeline command after entering the deepstream docker image with below command
docker run --privileged -it --net=host -e DISPLAY -v $HOME/.Xauthority:/root/.Xauthority nvcr.io/nvidia/deepstream:4.0.2-19.12-devel bash
The msg I am getting is show below and I am not seeing any video output
Am I missing any thing
I was able to run the simple pipeline with below run command
docker run --cap-add=SYS_PTRACE --runtime=nvidia -it -e DISPLAY=$DISPLAY --privileged --volume /tmp/.X11-unix:/tmp/.X11-unix --net=host -e NVIDIA_VISIBLE_DEVICES=all -v $HOME/.Xauthority:/root/.Xauthority -e NVIDIA_DRIVER_CAPABILITIES=compute,utility,graphics nvcr.io/nvidia/deepstream:4.0.2-19.12-devel bash
and pipeline command modified as below
gst-launch-1.0 videotestsrc ! videoconvert ! nveglglessink
Thanks @Fiona.Chen for helping me out
One more query
I see the docker image size of deepstream-5 much higher than that of deepstream-4 (more than double for both base and devel versions) Is there any reason for that (pls see Fig below)
Thanks
@Fiona.Chen , After running the basic command gst-launch-1.0 videotestsrc ! videoconvert ! nveglglessink
I tried to test below commands and not able to use nvv4l2decoder
gst-launch-1.0 filesrc location=VD19_peoplewalking.mp4 ! qtdemux ! h264parse ! nvv4l2decoder ! nvvideoconvert ! nveglglessink
I am receiving error as show below
But when I replace nvv4l2decoder
with decodebin
and nvv4l2decoder
with videoconvert
I am able to see the video playing. (Pls see the command below)
gst-launch-1.0 filesrc location=VD19_peoplewalking.mp4 ! qtdemux ! h264parse ! decodebin ! videoconvert ! nveglglessink
Please note that both command I ran from docker container.
I also tested the first pipeline command outside docker and it is working properly.