NVIDIA Tegra
NVIDIA DeepStream Plugin Manual

Application Note
4.0.1 Release


 
Gst-nvmultistreamtiler
 
Inputs and Outputs
Features
Gst Properties
The Gst-nvmultistreamtiler plugin composites a 2D tile from batched buffers. The plugin accepts batched NV12/RGBA data from upstream components. The plugin composites the tile based on stream IDs, obtained from NvDsBatchMeta and NvDsFrameMeta in row-major order (starting from source 0, left to right across the top row, then across the next row). Each source frame is scaled to the corresponding location in the tiled output buffer. The plugin can reconfigure if a new source is added and it exceeds the space allocated for tiles. It also maintains a cache of old frames to avoid display flicker if one source has a lower frame rate than other sources.
A screenshot of a cell phone Description automatically generated
Inputs and Outputs
Inputs
Gst Buffer batched buffer
NvDsBatchMeta with Gst Buffer batched (batch is one or more buffers)
Formats supported: NV12/RGBA
Control Parameters
rows
columns
width
height
gpu-id (dGPU only)
show-source
nvbuf-memory-type
custom-tile-config
Output
Gst Buffer (single frame) with composited input frames
Transformed metadata (NvDsBatchMeta)
Formats supported: NV12/RGBA
Features
The following table summarizes the features of the plugin.
Features of the Gst-nvmultistreamtiler plugin
Feature
Description
Release
Composites a 2D tile of input buffers
DS 2.0
Scales bounding box with metadata coordinates according to scaling and position in tile
DS 2.0
Multi-GPU support
DS 2.0
Shows expanded preview for a single source
DS 2.0
User configurable CUDA memory type (Pinned/Device/Unified) for output buffers
DS 3.0
Reconfigures 2D tile for new sources added at runtime
DS 3.0
Gst Properties
The following table describes the Gst-nvmultistreamtiler plugin’s Gst properties.
-nvmultistreamtiler plugin, Gst properties
Property
Meaning
Type and Range
Example
Notes
rows
Number of rows in 2D tiled output
Integer,
1 to 4,294,967,295
row=2
columns
Number of columns in 2D tiled output
Integer,
1 to 4,294,967,295
columns=2
width
Width of 2D tiled output in pixels
Integer, 16 to 4,294,967,295
width=1920
height
Height of 2D tiled output in pixels
Integer, 16 to 4,294,967,295
height=1080
show-source
Scale and show frames from a single source.
-1: composite and show all sources
For values ≥0, frames from that source are zoomed.
Signed integer, −1 to 2,147,483,647
show-source=2
gpu-id
ID of the GPU on which device/unified memory is to be allocated, and in which buffers are copied or scaled. (dGPU only.)
Integer,
0 to 4,294,967,295
gpu-id=1
nvbuf-memory-type
Type of CUDA memory to be allocated.
For dGPU:
0 (nvbuf-mem-default): Default memory, cuda-device
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 Jetson:
0 (nvbuf-mem-default): Default memory, surface array
4 (nvbuf-mem-surface-array): Surface array memory
Integer, 0-4
nvbuf-memory-type=1
custom-tile-config
Custom tile position and resolution. Can be configured programmatically for all or none of the sources.
Values of enum CustomTileConfig
Reserved for future use.
Default: null.