NVIDIA DeepStream SDK API Reference

8.0 Release
9.0/sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: LicenseRef-NvidiaProprietary
4  *
5  * NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
6  * property and proprietary rights in and to this material, related
7  * documentation and any modifications thereto. Any use, reproduction,
8  * disclosure or distribution of this material and related documentation
9  * without an express license agreement from NVIDIA CORPORATION or
10  * its affiliates is strictly prohibited.
11  */
12 
13 #ifndef __GST_NVDSPREPROCESS_H__
14 #define __GST_NVDSPREPROCESS_H__
15 
16 #include <gst/base/gstbasetransform.h>
17 #include <gst/video/video.h>
18 
19 #include <cuda.h>
20 #include <cuda_runtime.h>
21 #include "nvbufsurface.h"
22 #include "nvbufsurftransform.h"
23 #include "gst-nvquery.h"
24 
26 #include "nvdspreprocess_interface.h"
27 #include "nvdspreprocess_meta.h"
28 
29 #include "nvtx3/nvToolsExt.h"
30 
31 #include <condition_variable>
32 #include <mutex>
33 #include <thread>
34 #include <unordered_map>
35 #include <functional>
36 
37 /* Package and library details required for plugin_init */
38 #define PACKAGE "nvdsvideotemplate"
39 #define VERSION "1.0"
40 #define LICENSE "Proprietary"
41 #define DESCRIPTION "NVIDIA custom preprocessing plugin for integration with DeepStream on DGPU/Jetson"
42 #define BINARY_PACKAGE "NVIDIA DeepStream Preprocessing using custom algorithms for different streams"
43 #define URL "http://nvidia.com/"
44 
45 G_BEGIN_DECLS
46 /* Standard boilerplate stuff */
49 
50 /* Standard boilerplate stuff */
51 #define GST_TYPE_NVDSPREPROCESS (gst_nvdspreprocess_get_type())
52 #define GST_NVDSPREPROCESS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_NVDSPREPROCESS,GstNvDsPreProcess))
53 #define GST_NVDSPREPROCESS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_NVDSPREPROCESS,GstNvDsPreProcessClass))
54 #define GST_NVDSPREPROCESS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GST_TYPE_NVDSPREPROCESS, GstNvDsPreProcessClass))
55 #define GST_IS_NVDSPREPROCESS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_NVDSPREPROCESS))
56 #define GST_IS_NVDSPREPROCESS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_NVDSPREPROCESS))
57 #define GST_NVDSPREPROCESS_CAST(obj) ((GstNvDsPreProcess *)(obj))
58 
60 typedef struct
61 {
63  std::vector<NvDsRoiMeta> roi_vector;
65 
66 typedef struct
67 {
69  std::vector<gint> src_ids;
70 
72  std::vector<gint> operate_on_class_ids;
73 
75  guint num_units;
76 
78  std::string custom_transform_function_name;
79 
82  CustomTransformParams &)> custom_transform;
83 
85  NvBufSurfTransformSyncObj_t sync_obj = NULL;
86 
88  std::unordered_map<gint, GstNvDsPreProcessFrame> framemeta_map;
89 
91  gboolean process_on_roi = 0;
92 
94  gboolean process_on_all_objects = 0;
95 
97  gboolean draw_roi = 0;
98 
100  NvOSD_ColorParams roi_color;
101 
103  guint min_input_object_width;
104  guint min_input_object_height;
105  guint max_input_object_width;
106  guint max_input_object_height;
107 
109  guint replicated_src_id;
110 
112  guint interval = 0;
113  guint interval_counter = 0;
115 
119 {
121  GstBuffer *gstbuf;
124 };
125 
130 {
131 public:
133  NvDsPreProcessAcquirerImpl(GstBufferPool *pool);
135  NvDsPreProcessCustomBuf* acquire() override;
137  gboolean release(NvDsPreProcessCustomBuf *) override;
138 
139 private:
140  GstBufferPool *m_gstpool = nullptr;
141 };
142 
146 typedef struct {
148  gboolean processing_width;
150  gboolean processing_height;
152  gboolean network_input_order;
154  gboolean network_input_shape;
156  gboolean network_color_format;
158  gboolean tensor_data_type;
160  gboolean tensor_name;
162  gboolean custom_lib_path;
164  gboolean custom_tensor_function_name;
166  gboolean src_ids;
168  gboolean operate_on_class_ids;
170  gboolean process_on_roi;
172  gboolean process_on_all_objects;
174  gboolean roi_params_src;
176  gboolean scaling_pool_interpolation_filter;
178  gboolean scaling_pool_memory_type;
180  gboolean draw_roi;
182  gboolean roi_color;
184  gboolean min_input_object_width;
186  gboolean min_input_object_height;
188  gboolean max_input_object_width;
190  gboolean max_input_object_height;
192  gboolean interval;
194 
198 struct _GstNvDsPreProcess
199 {
201  GstBaseTransform base_trans;
202 
204  std::vector <guint64> target_unique_ids;
205 
207  gint operate_on_gie_id;
208 
210  std::vector<GstNvDsPreProcessGroup*> nvdspreprocess_groups;
211 
214 
217 
220 
222  void* custom_lib_handle;
223 
225  gchar* custom_lib_path;
226 
228  std::string custom_tensor_function_name;
229 
233 
236  GstBufferPool *scaling_pool;
237 
240 
243 
246 
249 
251  guint scaling_buf_pool_size;
252 
254  guint meta_id;
255 
257  GstBufferPool *tensor_pool;
258 
260  guint tensor_buf_pool_size;
261 
263  std::unique_ptr <NvDsPreProcessAcquirerImpl> acquire_impl;
264 
267 
270 
272  gint processing_width;
273 
275  gint processing_height;
276 
279 
281  gboolean maintain_aspect_ratio;
282 
284  gboolean symmetric_padding;
285 
288  GMutex preprocess_lock;
289 
291  GQueue *preprocess_queue;
292 
294  GCond preprocess_cond;
295 
297  GThread *output_thread;
298 
300  gboolean stop;
301 
304  guint unique_id;
305 
307  guint64 frame_num;
308 
311 
314 
316  guint max_batch_size;
317 
319  guint gpu_id;
320 
322  gboolean enable;
323 
325  gchar *config_file_path;
326 
329 
331  gboolean process_on_frame;
332 
334  gulong current_batch_num;
335 
337  GstFlowReturn last_flow_ret;
338 
341 
344 
346  nvtxDomainHandle_t nvtx_domain;
347 
349  std::unordered_map<gint, gint> *src_to_group_map;
350 
352  GMutex framemeta_map_lock;
353 };
354 
357 {
359  GstBaseTransformClass parent_class;
360 };
361 
362 GType gst_nvdspreprocess_get_type (void);
363 
364 G_END_DECLS
365 #endif /* __GST_NVDSPREPROCESS_H__ */
cudaStream_t
struct CUstream_st * cudaStream_t
Forward declaration of cudaStream_t.
Definition: sources/includes/nvbufsurftransform.h:35
_GstNvDsPreProcess::target_unique_ids
std::vector< guint64 > target_unique_ids
Target unique ids.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:204
NvDsPreProcessAcquirerImpl
For Acquiring/releasing buffer from buffer pool.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:129
_GstNvDsPreProcess::frame_num
guint64 frame_num
Frame number of the current input buffer.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:307
CustomInitParams
Custom Initialization parameter for custom library.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:184
_GstNvDsPreProcess::transform_config_params
NvBufSurfTransformConfigParams transform_config_params
Config params required by NvBufSurfTransform API.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:340
_GstNvDsPreProcess::process_on_frame
gboolean process_on_frame
Boolean indicating if processing on frame or already cropped objects should be processed.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:331
_GstNvDsPreProcess::nvdspreprocess_groups
std::vector< GstNvDsPreProcessGroup * > nvdspreprocess_groups
group information as specified in config file
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:210
GstNvDsPreProcessFrame
per frame roi info
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:60
NvDsPreProcessAcquirerImpl::acquire
NvDsPreProcessCustomBuf * acquire() override
override acquire method in plugin
_GstNvDsPreProcess::stop
gboolean stop
Boolean to signal output thread to stop.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:300
NvBufSurfTransformSyncObj_t
struct NvBufSurfTransformSyncObj * NvBufSurfTransformSyncObj_t
Holds the information about synchronization objects for asynchronous transform/composite APIs.
Definition: sources/includes/nvbufsurftransform.h:301
_GstNvDsPreProcess::unique_id
guint unique_id
Unique ID of the element.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:304
_GstNvDsPreProcess::base_trans
GstBaseTransform base_trans
Gst Base Transform.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:201
_NvBufSurfaceTransformParams
Holds transform parameters for a transform call.
Definition: sources/includes/nvbufsurftransform.h:196
_GstNvDsPreProcess::config_file_path
gchar * config_file_path
Config file path for nvdspreprocess.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:325
_GstNvDsPreProcess::symmetric_padding
gboolean symmetric_padding
Boolean to indicate symmetric padding.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:284
_GstNvDsPreProcess::operate_on_gie_id
gint operate_on_gie_id
Gie id to process.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:207
NvDsPreProcessCustomBufImpl::memory
GstNvDsPreProcessMemory * memory
Memory corresponding to the gst buffer.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:123
NvBufSurface
Holds information about batched buffers.
Definition: sources/includes/nvbufsurface.h:597
NvDsPreProcessBatch
Holds information about the batch of frames to be inferred.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:247
_GstNvDsPreProcess::custom_tensor_function_name
std::string custom_tensor_function_name
custom tensor function name
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:228
_GstNvDsPreProcess::preprocess_cond
GCond preprocess_cond
Gcondition for process queue.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:294
_GstNvDsPreProcess::maintain_aspect_ratio
gboolean maintain_aspect_ratio
Boolean to indicate maintain aspect ratio.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:281
_GstNvDsPreProcess::batch_insurf
NvBufSurface batch_insurf
Temporary NvBufSurface for input to batched transformations.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:310
_GstNvDsPreProcess::tensor_params
NvDsPreProcessTensorParams tensor_params
Parameters for tensor preparation.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:269
NvDsPreProcessCustomBufImpl::gstbuf
GstBuffer * gstbuf
Gst Buffer acquired from gst allocator.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:121
_GstNvDsPreProcess::batch_outsurf
NvBufSurface batch_outsurf
Temporary NvBufSurface for output from batched transformations.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:313
_GstNvDsPreProcess::gpu_id
guint gpu_id
GPU ID on which we expect to execute the task.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:319
_GstNvDsPreProcess::custom_tensor_function
std::function< NvDsPreProcessStatus(CustomCtx *, NvDsPreProcessBatch *, NvDsPreProcessCustomBuf *&, CustomTensorParams &, NvDsPreProcessAcquirer *)> custom_tensor_function
wrapper to custom tensor function
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:232
gst_nvdspreprocess_get_type
GType gst_nvdspreprocess_get_type(void)
gstnvdspreprocess_allocator.h
_GstNvDsPreProcess::scaling_pool
GstBufferPool * scaling_pool
Internal buffer pool for memory required for scaling input frames and cropping object.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:236
_GstNvDsPreProcess::meta_id
guint meta_id
meta id for differentiating between multiple tensor meta from same gst buffer
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:254
NvDsPreProcessStatus
NvDsPreProcessStatus
Enum for the status codes returned by NvDsPreProcessImpl.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:49
CustomTransformParams
custom transformation parameter for calling nvbufsurftransform api for scaling and converting the ROI...
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:116
_GstNvDsPreProcessClass
Boiler plate stuff.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:356
NvBufSurfTransform_Compute
NvBufSurfTransform_Compute
Specifies compute devices used by NvBufSurfTransform.
Definition: sources/includes/nvbufsurftransform.h:46
_GstNvDsPreProcess::scaling_pool_interpolation_filter
NvBufSurfTransform_Inter scaling_pool_interpolation_filter
interpolation filter for transformation
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:248
_GstNvDsPreProcess::preprocess_queue
GQueue * preprocess_queue
Queue to send data to output thread for processing.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:291
_GstNvDsPreProcess::current_batch_num
gulong current_batch_num
Current batch number of the input batch.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:334
_GstNvDsPreProcess::custom_lib_path
gchar * custom_lib_path
Custom Library Name.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:225
_GstNvDsPreProcess::tensor_buf
NvDsPreProcessCustomBuf * tensor_buf
pointer to buffer provided to custom library for tensor preparation
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:266
_GstNvDsPreProcess::enable
gboolean enable
if disabled plugin will work in passthrough mode
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:322
_GstNvDsPreProcess::framemeta_map_lock
GMutex framemeta_map_lock
Lock for framemeta_map.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:352
_NvBufSurfTransformConfigParams
Holds configuration parameters for a transform/composite session.
Definition: sources/includes/nvbufsurftransform.h:175
_GstNvDsPreProcess::src_to_group_map
std::unordered_map< gint, gint > * src_to_group_map
Map src-id : preprocess-group-id.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:349
_GstNvDsPreProcess::processing_width
gint processing_width
Resolution width at which roi/full-frames should be processed.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:272
_GstNvDsPreProcess::output_thread
GThread * output_thread
Output thread.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:297
_GstNvDsPreProcess::tensor_buf_pool_size
guint tensor_buf_pool_size
tensor buffer pool size
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:260
_GstNvDsPreProcess::nvtx_domain
nvtxDomainHandle_t nvtx_domain
NVTX Domain.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:346
_GstNvDsPreProcess::property_set
NvDsPreProcessPropertySet property_set
struct denoting properties set by config file
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:213
NvDsPreProcessPropertySet
struct denoting properties set by config file
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:146
CustomTensorParams
Tensor params passed to custom library for tensor preparation.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:173
_GstNvDsPreProcess::scaling_pool_memory_type
NvBufSurfaceMemType scaling_pool_memory_type
scaling pool memory type
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:242
_GstNvDsPreProcess::preprocess_lock
GMutex preprocess_lock
Processing Queue and related synchronization structures.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:288
NvDsPreProcessCustomBuf
Custom Buffer passed to the custom lib for preparing tensor.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:199
NvDsPreProcessAcquirer
class for acquiring and releasing a buffer from tensor pool by custom lib.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:209
NvBufSurfaceMemType
NvBufSurfaceMemType
Specifies memory types for NvBufSurface.
Definition: sources/includes/nvbufsurface.h:350
_GstNvDsPreProcess
Strucuture containing Preprocess info.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:198
_GstNvDsPreProcess::custom_initparams
CustomInitParams custom_initparams
custom lib init params
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:219
_GstNvDsPreProcess::custom_lib_ctx
CustomCtx * custom_lib_ctx
pointer to the custom lib ctx
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:216
NvDsPreProcessAcquirerImpl::release
gboolean release(NvDsPreProcessCustomBuf *) override
override release method in plugin
_GstNvDsPreProcess::tensor_pool
GstBufferPool * tensor_pool
Internal buffer pool for memory required for tensor preparation.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:257
NvDsPreProcessTensorParams
Holds model parameters for tensor preparation.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:129
_GstNvDsPreProcess::scaling_pool_format
NvDsPreProcessFormat scaling_pool_format
scaling pool color format
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:239
_GstNvDsPreProcess::processing_height
gint processing_height
Resolution height at which roi/full-frames should be processed.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:275
NvDsPreProcessCustomBufImpl
Used by plugin to access GstBuffer and GstNvDsPreProcessMemory acquired by Custom Library.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:118
_GstNvDsPreProcessClass::parent_class
GstBaseTransformClass parent_class
gst base transform class
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:359
NvDsPreProcessAcquirerImpl::NvDsPreProcessAcquirerImpl
NvDsPreProcessAcquirerImpl(GstBufferPool *pool)
constructor
_GstNvDsPreProcess::max_batch_size
guint max_batch_size
Maximum batch size.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:316
_NvOSD_ColorParams
Holds the color parameters of the box or text to be overlayed.
Definition: sources/includes/nvll_osd_struct.h:81
GstNvDsPreProcess
typedefG_BEGIN_DECLS struct _GstNvDsPreProcess GstNvDsPreProcess
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:47
NvBufSurfTransform_Inter
NvBufSurfTransform_Inter
Specifies video interpolation methods.
Definition: sources/includes/nvbufsurftransform.h:85
_GstNvDsPreProcess::scaling_pool_compute_hw
NvBufSurfTransform_Compute scaling_pool_compute_hw
compute hw for transformation
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:245
_GstNvDsPreProcess::custom_lib_handle
void * custom_lib_handle
custom lib handle
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:222
GstNvDsPreProcessGroup
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:66
_GstNvDsPreProcess::last_flow_ret
GstFlowReturn last_flow_ret
GstFlowReturn returned by the latest buffer pad push.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:337
CustomCtx
struct CustomCtx CustomCtx
Context for custom library.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:44
_GstNvDsPreProcess::config_file_parse_successful
gboolean config_file_parse_successful
Config file parsing status.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:328
GstNvDsPreProcessMemory
This file describes the custom memory allocator for the Gstreamer TensorRT plugin.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess_allocator.h:32
_GstNvDsPreProcess::scaling_buf_pool_size
guint scaling_buf_pool_size
Scaling buffer pool size.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:248
_GstNvDsPreProcess::convert_stream
cudaStream_t convert_stream
Cuda Stream to ROI crop, scale and convert.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:278
NvDsPreProcessFormat
NvDsPreProcessFormat
Defines model color formats.
Definition: sources/gst-plugins/gst-nvdspreprocess/include/nvdspreprocess_interface.h:94
_GstNvDsPreProcess::transform_params
NvBufSurfTransformParams transform_params
Parameters to use for transforming buffers.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:343
GstBuffer
struct _GstBuffer GstBuffer
Definition: sources/includes/ds3d/common/idatatype.h:19
_GstNvDsPreProcess::acquire_impl
std::unique_ptr< NvDsPreProcessAcquirerImpl > acquire_impl
Class for acquiring/releasing buffer from tensor pool.
Definition: sources/gst-plugins/gst-nvdspreprocess/gstnvdspreprocess.h:263