|
|
NVIDIA DeepStream SDK API Reference
|
9.2 Release
|
Go to the documentation of this file.
18 #ifndef CUSTOMLIB_IMPL_H
19 #define CUSTOMLIB_IMPL_H
22 #include <torch/torch.h>
25 #include "nvbufsurface.h"
26 #include "nvbufsurftransform.h"
27 #include "gst-nvquery.h"
28 #include "gstnvdsmeta.h"
29 #include "gst-nvevent.h"
30 #include "nvdscustomusermeta.h"
31 #include "nvdsdummyusermeta.h"
32 #include "nvdscustomlib_base.hpp"
35 #include "preprocess/calibration_parser.h"
38 #include "utils/tensor.h"
39 #include "utils/config_parser.h"
40 #include "utils/log_utils.h"
43 #include "infer/engine_builder.h"
44 #include "infer/tensor_rt_engine.h"
47 #define FORMAT_NV12 "NV12"
48 #define FORMAT_RGBA "RGBA"
49 #define FORMAT_I420 "I420"
50 #define GST_CAPS_FEATURE_MEMORY_NVMM "memory:NVMM"
138 GstCaps* in_caps, GstCaps* othercaps);
148 std::string errorMessage;
150 std::string skipMessage;
void * m_scratchNvBufSurface
Scratch NvBufSurface.
void fill_dummy_batch_meta_on_buffer(NvDsBatchMeta *batch_meta)
Sample implementation of the custom library.
virtual GstCaps * GetCompatibleCaps(GstPadDirection direction, GstCaps *in_caps, GstCaps *othercaps)
Get compatible caps.
bool m_dummyMetaInsert
Dummy metadata insertion flag.
Class to manage multiple tensors with string-based lookup.
virtual bool SetInitParams(DSCustom_CreateParams *params)
Set initialization parameters.
guint swbuffersize
Software buffer size.
guint m_FrameNum
Frame number (increments for all frames including skipped)
bool m_fillDummyBatchMeta
Fill dummy batch metadata flag.
std::unique_ptr< ConfigParser > m_configParser
Config parser.
gboolean hw_caps
Hardware capabilities flag.
GstBufferPool * m_swbufpool
Software buffer pool.
std::map< std::string, Matrix4f > m_CameraProjectionMatrices
std::vector< Property > m_VectorProperty
Vector containing key:value pair of custom lib properties.
bool m_CustomConfigLoaded
Custom config loaded flag.
int dump_max_frames
Maximum frames to dump.
guint m_ProcessedFrameNum
Processed frame number (only increments for actually processed frames)
guint source_id
Source ID.
virtual BufferResult ProcessBuffer(GstBuffer *inbuf)
Process incoming buffer.
Structure containing all configurable properties from the YAML config file.
void * set_metadata_ptr(void)
TensorCache * m_TensorCache
struct _GstBuffer GstBuffer
~SampleAlgorithm()
Destructor.
bool m_TransformMode
Transform mode flag.
void Initialize()
Initialize the custom library.
GstBufferPool * m_dsBufferPool
DeepStream buffer pool.
std::vector< std::string > m_SensorNames
virtual bool SetProperty(Property &prop)
Set custom properties of the library.
NvBufSurfTransformConfigParams m_ConfigParams
Transform config parameters.
Eigen::Matrix< float, 4, 4 > Matrix4f
std::unique_ptr< TensorRTEngine > m_TensorRTEngine
ConfigProperties m_ConfigProperties
Structure to store all configuration properties loaded from YAML config file.
virtual char * QueryProperties()
Query properties.
IDSCustomLibrary * CreateCustomAlgoCtx(DSCustom_CreateParams *params)
Create a custom algorithm context.
guint m_DumpedFrameNum
Dumped frame number.
virtual bool HandleEvent(GstEvent *event)
Handle GStreamer events.
SampleAlgorithm()
Constructor.
std::map< std::string, Matrix4f > m_CameraTransformedProjectionMatrices