Sorry, there is no document for sinks. you can refer the source code deepstream_sink_bin.c
in /opt/nvidia/deepstream/deepstream/sources/apps/apps-common/src
# gst-launch-1.0 videotestsrc ! nvvidconv ! nvv4l2h264enc ! filesink location=out1.h264
(gst-plugin-scanner:513): GStreamer-WARNING **: 12:43:13.347: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_udp.so': librivermax.so.0: cannot open shared object file: No such file or directory
(gst-plugin-scanner:513): GStreamer-WARNING **: 12:43:13.419: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_inferserver.so': libtritonserver.so: cannot open shared object file: No such file or directory
WARNING: erroneous pipeline: no element "nvvidconv"
Same for nvv4l2h264enc:
# gst-launch-1.0 videotestsrc ! nvv4l2h264enc
WARNING: erroneous pipeline: no element "nvv4l2h264enc"
And how you run the docker on jetson ? can you share the command ?
Sure:
# docker pull nvcr.io/nvidia/deepstream-l4t:6.2-samples
# docker run -it --runtime=nvidia nvcr.io/nvidia/deepstream-l4t:6.2-samples
Then i run user_additional_install.sh in the /opt/nvidia/deepstream/deepstream-6.2 directory.
# /opt/nvidia/deepstream/deepstream-6.2/install.sh
# gst-launch-1.0 videotestsrc ! nvvideoconvert ! nvv4l2h264enc ! filesink location=out1.h264
(gst-plugin-scanner:1226): GStreamer-WARNING **: 10:20:55.911: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_udp.so': librivermax.so.0: cannot open shared object file: No such file or directory
(gst-plugin-scanner:1226): GStreamer-WARNING **: 10:20:55.975: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_inferserver.so': libtritonserver.so: cannot open shared object file: No such file or directory
WARNING: erroneous pipeline: no element "nvv4l2h264enc"
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvdrmvideosink.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglglessink.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglstreamsrc.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvegltransform.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvivafilter.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvtee.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvv4l2camerasrc.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosink.so': No such file or directory
ls: cannot access '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosinks.so': No such file or directory
I tried to run find over every library name and found also nothing.
Sorry, I don’t understand. I’m running the official unchanged docker image on a device that is already flashed with L4T using official instructions. Where should I install L4T? Inside the container?
The puzzle has come together. I found that the file libgstnvvideo4linux2.so is located in the package nvidia-l4t-gstreamer. And those package was not installed on the host for some reason.
So the fix is simple for me: apt install nvidia-l4t-gstreamer on host machine.
Why not create a more comprehensible error format and a file listing? This issue would have been resolved in ten minutes if I understood that the original error was related to the absence of nvv4l2h264enc that it is a component of the library libgstnvvideo4linux2.so.