DeepStream GStreamer Plugins
This directory contains source code for all DeepStream GStreamer plugins. Each plugin is a self-contained GStreamer element that integrates with the DeepStream metadata pipeline.
For build and installation instructions, see build/BUILD.md .
Plugin
Element Name
Description
gst-nvinfer
nvinfer
TensorRT-based inference for object detection, classification, and segmentation. Primary and secondary GIE modes. See README .
gst-nvinferserver
nvinferserver
Triton Inference Server-based inference. Supports TensorRT, ONNX, TF, PyTorch backends. See README .
gst-nvdspreprocess
nvdspreprocess
Custom pre-processing (resize, normalize, crop) on batched frames before inference. See README .
gst-nvdspostprocess
nvdspostprocess
Custom post-processing on inference output tensors. See README .
Stream Input / Multiplexing
Plugin
Element Name
Description
gst-nvurisrcbin
nvurisrcbin
URI-based source bin — decodes and batches a single stream. See README .
gst-nvmultiurisrcbin
nvmultiurisrcbin
Multi-URI source bin — manages multiple streams and sends them to nvstreammux. See README .
gst-nvmultistream2
nvstreammux / nvstreamdemux
Batch multiple decoded streams into a single buffer; demux back to individual streams. See README .
gst-nvdynamicsrcbin
nvdynamicsrcbin
Dynamic source bin — add and remove video sources at runtime without stopping the pipeline. See README .
gst-nvvideotestsrc
nvvideotestsrc
NVMM-backed test video source for pipeline testing without a real input. See README .
Plugin
Element Name
Description
gst-nvtracker
nvtracker
Multi-object tracker. Supports NvDCF, DeepSORT, IOU, and custom tracker libraries. See README .
gst-nvdsanalytics
nvdsanalytics
Line-crossing counting, ROI filtering, and direction detection analytics. See README .
gst-nvdewarper
nvdewarper
Dewarps fisheye and 360° camera feeds into perspective or panoramic views. See README .
gst-nvof (via nvdsvideotemplate)
—
NVIDIA Optical Flow SDK integration for motion estimation.
On-Screen Display and Metadata
Plugin
Element Name
Description
gst-nvdsosd
nvdsosd
Renders bounding boxes, labels, and custom OSD metadata onto frames. See README .
gst-nvdsmetautils
—
Metadata serialization utilities (SEI, video/audio metadata embedding). See README .
gst-nvdsmetamux
nvdsmetamux
Merges metadata from multiple inference branches into a single stream. See README .
Plugin
Element Name
Description
gst-nvmsgbroker
nvmsgbroker
Publishes DeepStream metadata to cloud endpoints (Kafka, MQTT, Azure IoT Hub, AMQP). See README .
gst-nvmsgconv
nvmsgconv
Converts DeepStream object metadata to a payload schema for nvmsgbroker. See README .
Image and Video Utilities
Plugin
Element Name
Description
gst-nvimage
nvimgdec / nvimgenc
GPU-accelerated image encode and decode. See README .
gst-nvreplay
nvreplay
Seek and replay support for recorded streams. See README .
Plugin
Element Name
Description
gst-nvdsvideotemplate
nvdsvideotemplate
Template plugin for custom video processing; ships with example custom libs. See README .
gst-dsexample
dsexample
Reference example plugin demonstrating CPU-based custom processing. See README .
gst-dsexample-cuda
dsexample (CUDA)
Reference example plugin demonstrating GPU-based custom processing with CUDA. Requires OpenCV 4.x with CUDA. See README .
Plugin
Element Name
Description
gst-nvdsudp
nvdsudp
UDP-based transport for DeepStream metadata. Requires Rivermax SDK. See README .