Skip to content

Latest commit

 

History

History
186 lines (166 loc) · 6.63 KB

installing-dependencies.md

File metadata and controls

186 lines (166 loc) · 6.63 KB

Installing DSL Dependencies

The DeepStream Services Library (DSL) is built on the NVIDIA® DeepStream SDK and requires all SDK components and prerequisites to be installed and verified.

Please consult the NVIDIA DeepStream Quick Start Guide for complete Installation Instructions.

The following installation instructions are specific to NVIDIA® DeepStream Versions 6.4 and 7.0 on Ubuntu 22.04.

Contents


Base Install - Jetson and dGPU

Native Install

Enter the following command to install the minimal requirements to build DSL

sudo apt update && sudo apt-get install \
    libgstrtspserver-1.0-dev \
    gstreamer1.0-rtsp \
    libapr1 \
    libapr1-dev \
    libaprutil1 \
    libaprutil1-dev \
    libgeos-dev \
    libcurl4-openssl-dev

Container Install

The same as above, but without using sudo

apt update && apt-get install \
    libgstrtspserver-1.0-dev \
    gstreamer1.0-rtsp \
    libapr1 \
    libapr1-dev \
    libaprutil1 \
    libaprutil1-dev \
    libgeos-dev \
    libcurl4-openssl-dev

Additional WebRTC Sink Dependencies

Native Install

Enter the following command to install the additional WebRTC Sink dependencies.

sudo apt-get install \
    libjson-glib-dev \
    libsoup-gnome2.4-dev \
    libgstreamer-plugins-bad1.0-dev \
    libnice-dev \
    gstreamer1.0-nice

Container Install

The same as above, but without using sudo

apt-get install \
    libjson-glib-dev \
    libsoup-gnome2.4-dev \
    libgstreamer-plugins-bad1.0-dev \
    libnice-dev \
    gstreamer1.0-nice

Post Install

After installation, enter the following command to update the json-glib-1.0 package.

pkg-config --cflags json-glib-1.0

Updating the Makefile

To enable the WebRTC Sink Component, search for the following section in the DSL Makefile and set the BUILD flag to true.

# To enable the WebRTC Sink component (requires GStreamer >= 1.20)
# - set BUILD_WEBRTC:=true
BUILD_WEBRTC:=true

Enabling Extended Image Services (Optional)

DSL provides a choice of using FFmpeg or OpenCV to implement the Extended Images Services, which include:

Using FFmpeg

Native Install

Building with FFmpeg on Ubuntu 22.04 requires the following development libraries to be installed.

sudo apt-get install \
    libavformat-dev \
    libswscale-dev  

Container Install

To use FFmpeg within a DeepStream Docker Container, you must clone, build, and install the latest version of the FFmpeg development libraries. Copy and execute each of the following commands, one at a time, to setup the required dependencies.

$ mkdir ~/ffmpeg; cd ~/ffmpeg
$ git clone https://github.com/FFmpeg/FFmpeg.git
$ cd FFmpeg
$ ./configure --enable-shared --disable-lzma
$ make
$ sudo make install

Using OpenCV

Native Install

Copy and execute the following command to install the OpenCV development library (as an alternative to using FFmpeg).

sudo apt-get install -y libopencv-dev

Container Install

There are insufficient dependencies in the Docker container to install and use libopencv-dev as show above. Using OpenCV in a Docker container is not recommended!

Updating the Makefile

To enable the Extended Image Services, search for the following section in the DSL Makefile and set the appropriate BUILD_WITH flag to true.

# To enable the extended Image Services, install either the FFmpeg or OpenCV 
# development libraries (See /docs/installing-dependencies.md), and
#  - set either BUILD_WITH_FFMPEG or BUILD_WITH_OPENCV:=true (NOT both)
BUILD_WITH_FFMPEG:=false
BUILD_WITH_OPENCV:=false

Enabling Interpipe Services (Optional)

The Interpipe Sink and Source are optional/conditional DSL components. To enable, you will need to build and install the RidgeRun plugins. Then update the DSL Makefile to include/build the DSL Sink and Source components. Search for the following section and set BUILD_INTER_PIPE to true,

# To enable the InterPipe Sink and Source components
# - set BUILD_INTER_PIPE:=true
BUILD_INTER_PIPE:=true

Documentation and Debug Dependencies (Optional)

Installing dot by graphviz

Doxygen requires dot to convert calling graphs to .png files and Pipeline graphs can be generated using dot as well

sudo apt-get install graphviz imagemagick

Installing Doxygen

To install Doxygen on Ubuntu

sudo apt-get install doxygen

Getting Started

API Reference