NVIDIA DeepStream SDK API Reference

9.2 Release
INvTiler Class Referenceabstract

Detailed Description

@dev-note: Tiler Composition Steps: 1) Extract GstNvStreamMeta from the input muxed buffer 2) loop for GstNvStreamMeta->num_filled (number of filled batch buffers) a) Each buffer according to its stream_id is assigned a blit position - (x,y) [width, height] 3) NvBufSurfaceComposite() each stream buffer on the output buffer at the computed tile position 4) Iterate through NvDsBatchMeta->NvDsFrameMeta[according_to_stream_id] ->NvDsObjectMeta list and scale all bounding boxes to the computed tile rect

Definition at line 49 of file sources/gst-plugins/gst-nvtiler/INvTiler.h.

Inheritance diagram for INvTiler:

Public Member Functions

virtual bool Init (TilerConfig config)=0
 Initialize or re-initialize the Tiler. More...
 
virtual bool Composite (NvBufSurface *inputBuffer, NvDsBatchMeta *inputBufferMeta, NvBufSurface *outputBuffer, NvBufSurface *tilerScratchBuffer, uint32_t gpuId, int32_t compute_hw, int32_t interpolation_method)=0
 TilerComposite helps composite an input batch onto outputBuffer. More...
 
virtual bool AdjustOutputMeta (NvDsBatchMeta *outputBatchMeta)=0
 Scale every bounding box meta to match tile resolution. More...
 
virtual uint32_t GetTileWidth (uint32_t sourceId)=0
 
virtual uint32_t GetTileHeight (uint32_t sourceId)=0
 
virtual void SyncObjWait ()=0
 
virtual void Deinit ()=0
 Deinitialize the Tiler. More...
 
virtual bool SetSingleSourceMode (bool on, int32_t sourceId=-1)=0
 Set ON/OFF the single source mode. More...
 
virtual void DeleteSource (int32_t sourceId)=0
 Delete a source for which a Composite() was done before This API ensure all cache'd metadata for this source is cleared. More...
 
virtual bool SetSquareGridMode (bool squareGrid)=0
 Set Tiles based on square Grid. More...
 
virtual bool SetTilerMap (std::map< uint32_t, uint32_t > *tiler_map, GMutex *tiler_map_lock)=0
 Pass ptr to the map of <source_id, tile_index> with its lock. More...
 
virtual ~INvTiler ()
 
virtual bool Init (TilerConfig config)=0
 Initialize or re-initialize the Tiler. More...
 
virtual bool Composite (NvBufSurface *inputBuffer, NvDsBatchMeta *inputBufferMeta, NvBufSurface *outputBuffer, NvBufSurface *tilerScratchBuffer, uint32_t gpuId, int32_t compute_hw, int32_t interpolation_method)=0
 TilerComposite helps composite an input batch onto outputBuffer. More...
 
virtual bool AdjustOutputMeta (NvDsBatchMeta *outputBatchMeta)=0
 Scale every bounding box meta to match tile resolution. More...
 
virtual uint32_t GetTileWidth (uint32_t sourceId)=0
 
virtual uint32_t GetTileHeight (uint32_t sourceId)=0
 
virtual void SyncObjWait ()=0
 
virtual void Deinit ()=0
 Deinitialize the Tiler. More...
 
virtual bool SetSingleSourceMode (bool on, int32_t sourceId=-1)=0
 Set ON/OFF the single source mode. More...
 
virtual void DeleteSource (int32_t sourceId)=0
 Delete a source for which a Composite() was done before This API ensure all cache'd metadata for this source is cleared. More...
 
virtual bool SetSquareGridMode (bool squareGrid)=0
 Set Tiles based on square Grid. More...
 
virtual bool SetTilerMap (std::map< uint32_t, uint32_t > *tiler_map, GMutex *tiler_map_lock)=0
 Pass ptr to the map of <source_id, tile_index> with its lock. More...
 
virtual ~INvTiler ()
 

Constructor & Destructor Documentation

◆ ~INvTiler() [1/2]

virtual INvTiler::~INvTiler ( )
inlinevirtual

Definition at line 127 of file sources/gst-plugins/gst-nvtiler/INvTiler.h.

◆ ~INvTiler() [2/2]

virtual INvTiler::~INvTiler ( )
inlinevirtual

Member Function Documentation

◆ AdjustOutputMeta() [1/2]

virtual bool INvTiler::AdjustOutputMeta ( NvDsBatchMeta *  outputBatchMeta)
pure virtual

Scale every bounding box meta to match tile resolution.

Parameters
outputBatchMeta[IN/OUT] Output tiler composited buffer meta with stream-display-specific meta-data. The function shall modify outputBatchMeta with meta-data like bounding boxes scaled appropriately.

Implemented in NvTiler, and NvTiler.

◆ AdjustOutputMeta() [2/2]

virtual bool INvTiler::AdjustOutputMeta ( NvDsBatchMeta *  outputBatchMeta)
pure virtual

Scale every bounding box meta to match tile resolution.

Parameters
outputBatchMeta[IN/OUT] Output tiler composited buffer meta with stream-display-specific meta-data. The function shall modify outputBatchMeta with meta-data like bounding boxes scaled appropriately.

Implemented in NvTiler, and NvTiler.

◆ Composite() [1/2]

virtual bool INvTiler::Composite ( NvBufSurface *  inputBuffer,
NvDsBatchMeta *  inputBufferMeta,
NvBufSurface *  outputBuffer,
NvBufSurface *  tilerScratchBuffer,
uint32_t  gpuId,
int32_t  compute_hw,
int32_t  interpolation_method 
)
pure virtual

TilerComposite helps composite an input batch onto outputBuffer.

Parameters
inputBuffer[IN]
inputBufferMeta[IN]
outputBuffer[IN/OUT] Output tiler composited buffer
tilerScratchBuffer[IN] Used to keep a copy of the generated tile for future reference
gpu_id[IN] GPU to be used for tiling
stream[IN] cudaStream to be used for tiling

Implemented in NvTiler, and NvTiler.

◆ Composite() [2/2]

virtual bool INvTiler::Composite ( NvBufSurface *  inputBuffer,
NvDsBatchMeta *  inputBufferMeta,
NvBufSurface *  outputBuffer,
NvBufSurface *  tilerScratchBuffer,
uint32_t  gpuId,
int32_t  compute_hw,
int32_t  interpolation_method 
)
pure virtual

TilerComposite helps composite an input batch onto outputBuffer.

Parameters
inputBuffer[IN]
inputBufferMeta[IN]
outputBuffer[IN/OUT] Output tiler composited buffer
tilerScratchBuffer[IN] Used to keep a copy of the generated tile for future reference
gpu_id[IN] GPU to be used for tiling
stream[IN] cudaStream to be used for tiling

Implemented in NvTiler, and NvTiler.

◆ Deinit() [1/2]

virtual void INvTiler::Deinit ( )
pure virtual

Deinitialize the Tiler.

Implemented in NvTiler, and NvTiler.

◆ Deinit() [2/2]

virtual void INvTiler::Deinit ( )
pure virtual

Deinitialize the Tiler.

Implemented in NvTiler, and NvTiler.

◆ DeleteSource() [1/2]

virtual void INvTiler::DeleteSource ( int32_t  sourceId)
pure virtual

Delete a source for which a Composite() was done before This API ensure all cache'd metadata for this source is cleared.

Parameters
sourceId[IN] The valid sourceId that needs to be deleted

Implemented in NvTiler, and NvTiler.

◆ DeleteSource() [2/2]

virtual void INvTiler::DeleteSource ( int32_t  sourceId)
pure virtual

Delete a source for which a Composite() was done before This API ensure all cache'd metadata for this source is cleared.

Parameters
sourceId[IN] The valid sourceId that needs to be deleted

Implemented in NvTiler, and NvTiler.

◆ GetTileHeight() [1/2]

virtual uint32_t INvTiler::GetTileHeight ( uint32_t  sourceId)
pure virtual

Implemented in NvTiler, and NvTiler.

◆ GetTileHeight() [2/2]

virtual uint32_t INvTiler::GetTileHeight ( uint32_t  sourceId)
pure virtual

Implemented in NvTiler, and NvTiler.

◆ GetTileWidth() [1/2]

virtual uint32_t INvTiler::GetTileWidth ( uint32_t  sourceId)
pure virtual

Implemented in NvTiler, and NvTiler.

◆ GetTileWidth() [2/2]

virtual uint32_t INvTiler::GetTileWidth ( uint32_t  sourceId)
pure virtual

Implemented in NvTiler, and NvTiler.

◆ Init() [1/2]

virtual bool INvTiler::Init ( TilerConfig  config)
pure virtual

Initialize or re-initialize the Tiler.

Parameters
config[IN][transfer-none] The new Tiler Configuration
Returns
true if (re-)Initialization succeeded; false otherwise

Implemented in NvTiler, and NvTiler.

◆ Init() [2/2]

virtual bool INvTiler::Init ( TilerConfig  config)
pure virtual

Initialize or re-initialize the Tiler.

Parameters
config[IN][transfer-none] The new Tiler Configuration
Returns
true if (re-)Initialization succeeded; false otherwise

Implemented in NvTiler, and NvTiler.

◆ SetSingleSourceMode() [1/2]

virtual bool INvTiler::SetSingleSourceMode ( bool  on,
int32_t  sourceId = -1 
)
pure virtual

Set ON/OFF the single source mode.

Parameters
on[IN] If true, the single-source-mode is ON and OFF - if false
sourceId[IN] The non-negative and valid sourceId which shall be the only source in canvas when single-source mode is enabled

Implemented in NvTiler, and NvTiler.

◆ SetSingleSourceMode() [2/2]

virtual bool INvTiler::SetSingleSourceMode ( bool  on,
int32_t  sourceId = -1 
)
pure virtual

Set ON/OFF the single source mode.

Parameters
on[IN] If true, the single-source-mode is ON and OFF - if false
sourceId[IN] The non-negative and valid sourceId which shall be the only source in canvas when single-source mode is enabled

Implemented in NvTiler, and NvTiler.

◆ SetSquareGridMode() [1/2]

virtual bool INvTiler::SetSquareGridMode ( bool  squareGrid)
pure virtual

Set Tiles based on square Grid.

Implemented in NvTiler, and NvTiler.

◆ SetSquareGridMode() [2/2]

virtual bool INvTiler::SetSquareGridMode ( bool  squareGrid)
pure virtual

Set Tiles based on square Grid.

Implemented in NvTiler, and NvTiler.

◆ SetTilerMap() [1/2]

virtual bool INvTiler::SetTilerMap ( std::map< uint32_t, uint32_t > *  tiler_map,
GMutex *  tiler_map_lock 
)
pure virtual

Pass ptr to the map of <source_id, tile_index> with its lock.

Implemented in NvTiler, and NvTiler.

◆ SetTilerMap() [2/2]

virtual bool INvTiler::SetTilerMap ( std::map< uint32_t, uint32_t > *  tiler_map,
GMutex *  tiler_map_lock 
)
pure virtual

Pass ptr to the map of <source_id, tile_index> with its lock.

Implemented in NvTiler, and NvTiler.

◆ SyncObjWait() [1/2]

virtual void INvTiler::SyncObjWait ( )
pure virtual

Implemented in NvTiler, and NvTiler.

◆ SyncObjWait() [2/2]

virtual void INvTiler::SyncObjWait ( )
pure virtual

Implemented in NvTiler, and NvTiler.


The documentation for this class was generated from the following file: