NVIDIA DeepStream SDK Development Guide 4.0.1 Release |
Group | Configuration Group |
Application configurations that are not related to a specific component. | |
Tiled display in the application. | |
Source properties. There can be multiple sources. The groups must be named as: [source0], [source1],… . | |
Specify properties and modify behavior of the streammux component. | |
Specify properties and modify behavior of the primary GIE. | |
Specify properties and modify behavior of the secondary GIE. The groups must be named as: [secondary-gie0], [secondary-gie1], … . | |
Specify properties and modify behavior of the object tracker. | |
Specify properties and modify the on-screen display (OSD) component that overlays text and rectangles on the frame. | |
Specify properties and modify behavior of sink components that represent outputs such as displays and files for rendering, encoding, and file saving. The pipeline can contain multiple sinks. Groups must be named as: [sink0], [sink1], … . | |
Diagnostics and debugging. This group is experimental. |
Key | Meaning | Type and Value | Example | Platforms |
enable-perf-measurement | Indicates whether the application performance measurement is enabled. | Boolean | enable-perf-measurement=1 | dGPU, Jetson |
perf-measurement-interval-sec | The interval, in seconds, at which the performance metrics are sampled and printed. | Integer, >0 | perf-measurement-interval-sec=10 | dGPU, Jetson |
gie-kitti-output-dir | Pathname of an existing directory where the application stores primary detector output in a modified KITTI metadata format. | String | gie-kitti-output-dir=/home/ubuntu/kitti_data/ | dGPU, Jetson |
kitti-track-output-dir | Pathname of an existing directory where the application stores tracker output in a modified KITTI metadata format. | String | kitti-track-output-dir=/home/ubuntu/kitti_data_tracker/ | dGPU, Jetson |
Key | Meaning | Type and Value | Example | Platforms |
enable | Indicates whether tiled display is enabled. | Boolean | enable=1 | dGPU, Jetson |
rows | Number of rows in the tiled 2D array. | Integer, >0 | rows=5 | dGPU, Jetson |
columns | Number of columns in the tiled 2D array. | Integer, >0 | columns=6 | dGPU, Jetson |
width | Width of the tiled 2D array, in pixels. | Integer, >0 | width=1280 | dGPU, Jetson |
height | Height of the tiled 2D array, in pixels. | Integer, >0 | height=720 | dGPU, Jetson |
gpu-id | GPU to be used by the element in case of multiple GPUs | Integer, ≥0 | gpu-id=0 | dGPU |
nvbuf-memory-type | Type of memory the element is to allocate for output buffers. 0 (nvbuf-mem-default): a platform-specific default type 1 (nvbuf-mem-cuda-pinned): pinned/host CUDA memory 2 (nvbuf-mem-cuda-device): device CUDA memory 3 (nvbuf-mem-cuda-unified): unified CUDA memory For dGPU: All values are valid. For Jetson: Only 0 (zero) is valid. | Integer, 0, 1, 2, or 3 | nbuf-memory-type=3 | dGPU, Jetson |
Key | Meaning | Type and Value | Example | Platforms |
enable | Enables or disables the source. | Boolean | enable=1 | dGPU, Jetson |
type | Type of source; other properties of the source depend on this type. 1: Camera (V4L2) 2: URI 3: MultiURI 4: RTSP 5: Camera (CSI) (Jetson only) | Integer, 1, 2, 3, 4, or 5 | type=1 | dGPU, Jetson |
uri | URI to the encoded stream. The URI can be a file, an HTTP URI, or an RTSP live source. Valid when type=2 or 3. With MultiURI, the %d format specifier can also be used to specify multiple sources. The application iterates from 0 to num-sources 1 to generate the actual URIs. | String | uri=file:///home/ubuntu/source.mp4 uri=http://127.0.0.1/source.mp4 uri=rtsp://127.0.0.1/source1 uri=file:///home/ubuntu/source_%d.mp4 | dGPU, Jetson |
num-sources | Number of sources. Valid only when type=3. | Integer, ≥0 | num-sources=2 | dGPU, Jetson |
intra-decode-enable | Enables or disables intra-only decode. | Boolean | intra-decode-enable=1 | dGPU, Jetson |
num-extra-surfaces | Number of surfaces in addition to minimum decode surfaces given by the decoder. Can be used to manage the number of decoder output buffers in the pipeline. | Integer, ≥0 and ≤24 | num-extra-surfaces=5 | dGPU, Jetson |
gpu-id | GPU to be used by the element in case of multiple GPUs. | Integer, ≥0 | gpu-id=1 | dGPU |
camera-id | Unique ID for the input source to be added to metadata. (Optional) | Integer, ≥0 | camera-id=2 | dGPU, Jetson |
camera-width | Width of frames to be requested from the camera, in pixels. Valid when type=1 or 5. | Integer, >0 | camera-width=1920 | dGPU, Jetson |
camera-height | Height of frames to be requested from the camera, in pixels. Valid when type=1 or 5. | Integer, >0 | camera-height=1080 | dGPU, Jetson |
camera-fps-n | Numerator part of a fraction specifying the frame rate requested by the camera, in frames/sec. Valid when the type=1 or 5. | Integer, >0 | camera-fps-n=30 | dGPU, Jetson |
camera-fps-d | Denominator part of a fraction specifying the frame rate requested from the camera, in frames/sec. Valid when type = 1 or 5. | Integer, >0 | camera-fps-d=1 | dGPU, Jetson |
camera-v4l2-dev-node | Number of the V4L2 device node. For example, /dev/video<num> for the open source V4L2 camera capture path. Valid when the type setting (type of source) is 1. | Integer, >0 | camera-v4l2-dev-node=1 | dGPU, Jetson |
latency | Jitterbuffer size in milliseconds; applicable only for RTSP streams. | Integer, ≥0 | latency=200 | dGPU, Jetson |
camera-csi-sensor-id | Sensor ID of the camera module. Valid when the type (type of source) is 5. | Integer, ≥0 | camera-csi-sensor-id=1 | Jetson |
drop-frame-interval | Interval to drop frames. For example, 5 means decoder outputs every fifth frame; 0 means no frames are dropped. | Integer, ≥0 and ≤30 | drop-frame-interval=5 | dGPU, Jetson |
nvbuf-memory-type | Type of CUDA memory element is to allocate for output buffers. 0 (cuda-pinned-mem): host/pinned memory allocated with cudaMallocHost(). 1 (cuda-device-mem): Device memory allocated with cudaMalloc(). 2 (cuda-unified-mem): Unified memory allocated with cudaMallocManaged(). | Integer, 0, 1, or 2 | cuda-memory-type=1 | dGPU |
Key | Meaning | Type and Value | Example | Platforms |
gpu-id | GPU element is to use in case of multiple GPUs. | Integer, ≥0 | gpu-id=1 | dGPU |
live-source | Informs the muxer that sources are live. | Boolean | live-source=0 | dGPU, Jetson |
batch-size | Muxer batch size. | Integer, >0 | batch-size=4 | dGPU, Jetson |
batched-push-timeout | Timeout in microseconds after to push the batch after the first buffer is available, even if the complete batch is not formed. | Integer, ≥−1 | batched-push-timeout=40000 | dGPU, Jetson |
width | Muxer output width in pixels. | Integer, >0 | width=1280 | dGPU, Jetson |
height | Muxer output height in pixels. | Integer, >0 | height=720 | dGPU, Jetson |
enable-padding | Indicates whether to maintain source aspect ratio when scaling by adding black bands. | Boolean | enable-padding=0 | dGPU, Jetson |
nvbuf-memory-type | Type of CUDA memory the element is to allocate for output buffers. 0 (nvbuf-mem-default, a platform-specific default 1 (nvbuf-mem-cuda-pinned): pinned/host CUDA memory. 2 (nvbuf-mem-cuda-device): Device CUDA memory. 3 (nvbuf-mem-cuda-unified): Unified CUDA memory. For dGPU: All values are valid. For Jetson: Only 0 (zero) is valid. | Integer, 0, 1, 2, or 3 | nvbuf-memory-type=3 | dGPU |
Key | Meaning | Type and Value | Example | Platforms / GIEs * |
enable | Indicates whether the primary GIE must be enabled. | Boolean | enable=1 | dGPU, Jetson Both GIEs |
gie-unique-id | Unique component ID to be assigned to the nvinfer instance. Used to identify metadata generated by the instance. | Integer, >0 | gie-unique-id=2 | Both |
gpu-id | GPU to be used by the element in case of multiple GPUs. | Integer, ≥0 | gpu-id=1 | dGPU, Jetson Both GIEs |
model-engine-file | Absolute pathname of the pre-generated serialized engine file for the mode. | String | model-engine-file=../../ models/Primary_Detector/resnet10. caffemodel_b4_int8.engine | Both GIEs |
nvbuf-memory-type | Type of CUDA memory element is to allocate for output buffers. 0 (nvbuf-mem-default): a platform-specific default 1 (nvbuf-mem-cuda-pinned): pinned/host CUDA memory 2 (nvbuf-mem-cuda-device): Device CUDA memory 3 (nvbuf-mem-cuda-unified): Unified CUDA memory For dGPU: All values are valid. For Jetson: Only 0 (zero) is valid. | Integer, 0, 1, 2, or 3 | nvbuf-memory-type=3 | dGPU, Jetson Primary GIE |
config-file | Pathname of a configuration file which specifies properties for the Gst-nvinfer plugin. It may contain any of the properties described in this table except config-file itself. Properties must be defined in a group named [property]. For more details about parameters see “Gst-nvinfer File Configuration Specifications” in the DeepStream 4.0 Plugin Manual. | String | config-file=/home/ubuntu/config_infer_resnet.txt For complete examples, see the sample file samples/configs/deepstream-app/config_infer_resnet.txt or the deepstream-test2 sample application. | dGPU, Jetson Both GIEs |
batch-size | The number of frames(P.GIE)/objects(S.GIE) to be inferred together in a batch. | Integer, >0Integer, >0 | batch-size=2 | dGPU, Jetson Both GIEs |
interval | Number of consecutive batches to skip for inference. | Integer, >0Integer, >0 | interval=2 | dGPU, Jetson Primary GIE |
bbox-border-color | The color of the borders for the objects of a specific class ID, specified in RGBA format. The key must be of format bbox-border-color<class-id>. This property can be identified multiple times for multiple class IDs. If this property is not identified for the class ID, the borders are not drawn for objects of that class-id. | R:G:B:A Float, 0≤R,G,B,A≤1 | bbox-border-color2= 1;0;0;1 (Red for class-id 2) | dGPU, Jetson Both GIEs |
bbox-bg-color | The color of the boxes drawn over objects of a specific class ID, in RGBA format. The key must be of format bbox-bg-color<class-id>. This property can be used multiple times for multiple class IDs. If it is not used for a class ID, the boxes are not drawn for objects of that class ID. | R:G:B:A Float, 0≤R,G,B,A≤1 | bbox-bg-color3=0;1;0;0.3 (Semi-transparent green for class-id 3) | dGPU, Jetson Both GIEs |
operate-on-gie-id | A unique ID of the GIE, on whose metadata (NvDsFrameMeta) this GIE is to operate. | Integer, >0 | operate-on-gie-id=1 | dGPU, Jetson Secondary GIE |
operate-on-class-ids | Class IDs of the parent GIE on which this GIE must operate. The parent GIE is specified using operate-on-gie-id. | Semicolon separated integer array | operate-on-class-ids=1;2 (operate on objects with class IDs 1, 2 generated by parent GIE) | dGPU, Jetson Secondary GIE |
infer-raw-output-dir | Pathname of an existing directory in which to dump the raw inference buffer contents in a file. | String | infer-raw-output-dir=/home/ubuntu/infer_raw_out | dGPU, Jetson Both GIEs |
* The GIEs are the GPU Inference Engines. |
Key | Meaning | Type and Value | Example | Platforms | |
enable | Enables or disables the tracker. | Boolean | enable=1 | dGPU, Jetson | |
tracker-width | Frame width at which the tracker will operate, in pixels. | Integer, ≥0 | tracker-width=960 | dGPU, Jetson | |
tracker-height | Frame height at which the tracker will operate, in pixels. | Integer, ≥0 | tracker-height=540 | dGPU, Jetson | |
gpu-id | GPU to be used by the element in case of multiple GPUs. | Integer, ≥0 | gpu-id=1 | dGPU | |
ll-config-file | Pathname for the low-level tracker configuration file. | String | ll-config-file=iou_config.txt | dGPU, Jetson | |
ll-lib-file | Pathname for the low-level tracker implementation library. | String | ll-lib-file=/usr/local/deepstream/libnvds_mot_iou.so | dGPU, Jetson | |
enable-batch-process | Enables batch processing across multiple streams. | Boolean | enable-batch-process=1 | dGPU, Jetson |
Key | Meaning | Type and Value | Example | Platforms |
enable | Enables or disables the On-Screen Display (OSD). | Boolean | enable=1 | dGPU, Jetson |
gpu-id | GPU to be used by the element in case of multiple GPUs. | Integer, ≥0 | gpu-id=1 | dGPU |
border-width | Border width of the bounding boxes drawn for objects, in pixels. | Integer, ≥0 | border-width=10 0 disables the boxes. | dGPU, Jetson |
text-size | Size of the text that describes the objects, in points. | Integer, ≥0 | text-size=16 | dGPU, Jetson |
text-color | The color of the text that describes the objects, in RGBA format. | R;G;B;A Float, 0≤R,G,B,A≤1 | text-color=0;0;0.7;1 #Dark Blue | dGPU, Jetson |
text-bg-color | The background color of the text that describes the objects, in RGBA format. | R;G;B;A Float, 0≤R,G,B,A≤1 | text-bg-color=0;0;0;0.5 #Semi-transparent black | dGPU, Jetson |
clock-text-size | The size of the clock time text, in points. | Integer, >0 | clock-text-size=16 | dGPU, Jetson |
clock-x-offset | The horizontal offset of the clock time text, in pixels. | Integer, >0 | clock-x-offset=100 | dGPU, Jetson |
clock-y-offset | The vertical offset of the clock time text, in pixels. | Integer, >0 | clock-y-offset=100 | dGPU, Jetson |
font | Name of the font for text that describes the objects. Enter the shell command fc-list to display the names of available fonts. | String | font=Purisa | dGPU, Jetson |
show-clock | Enables or disables overlay of the clock time on the frame. | Boolean | show-clock=1 | dGPU, Jetson |
clock-color | Color of the clock time text, in RGBA format. | R;G;B;A Float, 0≤R,G,B,A≤1 | clock-color=1;0;0;1 #Red | dGPU, Jetson |
nvbuf-memory-type | Type of CUDA memory the element is to allocate for output buffers. 0 (nvbuf-mem-default): a platform-specific default 1 (nvbuf-mem-cuda-pinned): pinned/host CUDA memory 2 (nvbuf-mem-cuda-device): Device CUDA memory 3 (nvbuf-mem-cuda-unified): Unified CUDA memory For dGPU: All values are valid. For Jetson: Only 0 (zero) is valid. | Integer, 0, 1, 2, or 3 | nvbuf-memory-type=3 | dGPU |
process-mode | NvOSD processing mode. 0: CPU 1: GPU (dGPU only) 2: Hardware (Jetson only) | Integer, 0, 1, or 2 | process-mode=1 | dGPU, Jetson |
Key | Meaning | Type and Value | Example | Platforms |
enable | Enables or disables the sink. | Boolean | enable=1 | dGPU, Jetson |
type | Type of sink, to use. 1: Fakesink 2: EGL based windowed sink (nveglglessink) 3: Encode + File Save (encoder + muxer + filesink) 4: Encode + RTSP streaming 5: Overlay (Jetson only) 6: Message converter + Message broker | Integer, 1, 2, 3, 4, 5, or 6 | type=2 | dGPU, Jetson |
sync | Indicates how fast the stream is to be rendered. 0: As fast as possible 1: Synchronously | Integer, 0 or 1 | sync=1 | dGPU, Jetson |
qos | Indicates whether the sink is to generate Quality-of-Service events, which can lead to the pipeline dropping frames when pipeline FPS cannot keep up with the stream frame rate. | Boolean | qos=0 | dGPU, Jetson |
source-id | The ID of the source whose buffers this sink must use. The source ID is contained in the source group name. For example, for group [source1] source-id=1. | Integer, ≥0 | source-id=1 | dGPU, Jetson |
gpu-id | GPU to be used by the element in case of multiple GPUs. | Integer, ≥0 | gpu-id=1 | dGPU, Jetson |
container | Container to use for the file save. Only valid for type=3. 1: MP4 2: MKV | Integer, 1 or 2 | container=1 | dGPU, Jetson |
codec | The encoder to be used to save the file. 1: H.264 (hardware) 2: H.265 (hardware) | Integer, 1 or 2 | codec=1 | dGPU, Jetson |
bitrate | Bitrate to use for encoding, in bits per second. Valid for type=3 and 4. | Integer, >0 | bitrate=4000000 | dGPU, Jetson |
output-file | Pathname of the output encoded file. Only valid for type=3. | String | output-file=/home/ubuntu/output.mp4 | dGPU, Jetson |
nvbuf-memory-type | Type of CUDA memory the plugin is to allocate for output buffers. 0 (nvbuf-mem-default): a platform-specific default 1 (nvbuf-mem-cuda-pinned): pinned/host CUDA memory 2 (nvbuf-mem-cuda-device): Device CUDA memory 3 (nvbuf-mem-cuda-unified): Unified CUDA memory For dGPU: All values are valid. For Jetson: Only 0 (zero) Is valid. | Integer, 0, 1, 2, or 3 | nvbuf-memory-type=3 | dGPU, Jetson |
rtsp-port | Port for the RTSP streaming server; a valid unused port number. Valid for type=4. | Integer | rtsp-port=8554 | dGPU, Jetson |
udp-port | Port used internally by the streaming implementation; a valid unused port number. Valid for type=4. | Integer | udp-port=5400 | dGPU, Jetson |
overlay-id | Index of the overlay to use for HEAD 0. Valid for overlay sinks (type=5). | Integer, >=1 | overlay-id=1 Must be less than the number of overlays supported by HEAD 0. | dGPU |
width | Width of the renderer in pixels. | Integer, >=1 | width=1920 | dGPU, Jetson |
height | Height of the renderer in pixels. | Integer, >=1 | height=1920 | dGPU, Jetson |
offset-x | Horizontal offset of the renderer window, in pixels. | Integer, >=1 | offset-x=100 | dGPU, Jetson |
offset-y | Vertical offset of the renderer window, in pixels. | Integer, >=1 | offset-y=100 | dGPU, Jetson |
display-id | ID of the display HEAD. Valid for overlay sinks (type=5). | Integer, ≥0 | display-id=0 | Jetson |
iframeinterval | Encoding intra-frame occurrence frequency. | Integer, 0≤iv≤MAX_INT | iframeinterval=30 | dGPU, Jetson |
msg-conv-config | Pathname of the configuration file for the Gst-nvmsgconv element (type=6). | String | msg-conv-config=dstest5_msgconv_sample_config.txt | dGPU, Jetson |
msg-broker-proto-lib | Path to the protocol adapter implementation used Gst-nvmsgbroker (type=6). | String | msg-broker-proto-lib=/home/ubuntu/libnvds_amqp_proto.so | dGPU, Jetson |
msg-broker-conn-str | Connection string of the backend server (type=6). | String | msg-broker-conn-str=foo.bar.com;80;dsapp | dGPU, Jetson |
topic | Name of the message topic (type=6). | String | topic=test-ds4 | dGPU, Jetson |
msg-conv-payload-type | Type of payload. 0, PAYLOAD_DEEPSTREAM: Deepstream schema payload. 1, PAYLOAD_DEEPSTREAM_MINIMAL: Deepstream schema payload minimal. 256, PAYLOAD_RESERVED: Reserved type. 257, PAYLOAD_CUSTOM: Custom schema payload (type=6). | Integer 0, 1, 256, or 257 | msg-conv-payload-type=0 | dGPU, Jetson |
msg-broker-config | Pathname of an optional configuration file for the Gst-nvmsgbroker element (type=6). | String | msg-conv-config=/home/ubuntu/cfg_amqp.txt | dGPU, Jetson |
msg-conv-msg2p-lib | Absolute pathname of an optional custom payload generation library. This library implements the API defined by sources/libs/nvmsgconv/nvmsgconv.h. Applicable only when msg-conv-payload-type=257, PAYLOAD_CUSTOM. | String | msg-conv-msg2p-lib= /opt/nvidia/deepstream/deepstream-4.0/lib/libnvds_msgconv.so | dGPU, Jetson |
msg-conv-comp-id | Pathname of an optional configuration file to provide the comp-id property of the nvmsgconv element. | Integer, >=0 | dGPU, Jetson | |
msg-broker-comp-id | Pathname of an optional configuration file to provide the comp-id property of the nvmsgbroker element. | Integer, >=0 | dGPU, Jetson |
Key | Meaning | Type and Value | Example | Platforms |
file-loop | Indicates whether input files should be looped infinitely. | Boolean | file-loop=1 | dGPU, Jetson |
Note | See the DeepStream 4.0 Plugin Manual for plugin-specific configuration file specifications (for the Gst-nvinfer, Gst-NV tracker, Gst-nvdewarper, Gst-nvmsgconv, and Gst-nvmsgbroker plugins). |