NVIDIA DeepStream SDK API Reference

5.0 Release

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvdsmeta.h File Reference

Detailed Description

Defines NVIDIA DeepStream Metadata Structures

Description: This file defines DeepStream metadata structures.

Definition in file nvdsmeta.h.

Go to the source code of this file.

Data Structures

struct  _NvDsComp_BboxInfo
 Holds unclipped positional bounding box coordinates of the object processed by the component. More...
 
struct  _NvDsMetaPool
 Holds information about a given metadata pool. More...
 
struct  _NvDsBaseMeta
 Holds information about base metadata of a given metadata type. More...
 
struct  _NvDsBatchMeta
 Holds information about a formed batch containing frames from different sources. More...
 
struct  _NvDsFrameMeta
 Holds metadata for a frame in a batch. More...
 
struct  _NvDsObjectMeta
 Holds metadata for an object in the frame. More...
 
struct  _NvDsClassifierMeta
 Holds classifier metadata for an object. More...
 
struct  _NvDsLabelInfo
 Holds label metadata for the classifier. More...
 
struct  NvDsDisplayMeta
 Holds display metadata that the user can specify in the frame. More...
 
struct  _NvDsUserMeta
 Holds user metadata. More...
 

Macros

#define MAX_USER_FIELDS   4
 Defines the number of additional fields available to the user in the metadata structure. More...
 
#define MAX_RESERVED_FIELDS   4
 
#define MAX_LABEL_SIZE   128
 Defines the maximum size of an array for storing a text result. More...
 
#define MAX_ELEMENTS_IN_DISPLAY_META   16
 Defines the maximum number of elements that a given display meta can hold. More...
 
#define UNTRACKED_OBJECT_ID   0xFFFFFFFFFFFFFFFF
 Defines an untracked object ID. More...
 

Typedefs

typedef GList NvDsFrameMetaList
 
typedef GList NvDsUserMetaList
 
typedef GList NvDsObjectMetaList
 
typedef GList NvDisplayMetaList
 
typedef GList NvDsClassifierMetaList
 
typedef GList NvDsLabelInfoList
 
typedef GList NvDsMetaList
 
typedef void NvDsElementMeta
 
typedef gpointer(* NvDsMetaCopyFunc )(gpointer data, gpointer user_data)
 Defines the type of a callback to copy metadata. More...
 
typedef void(* NvDsMetaReleaseFunc )(gpointer data, gpointer user_data)
 Defines the type of a callback to free metadata. More...
 
typedef struct _NvDsComp_BboxInfo NvDsComp_BboxInfo
 Holds unclipped positional bounding box coordinates of the object processed by the component. More...
 
typedef struct _NvDsMetaPool NvDsMetaPool
 Holds information about a given metadata pool. More...
 
typedef struct _NvDsBaseMeta NvDsBaseMeta
 Holds information about base metadata of a given metadata type. More...
 
typedef struct _NvDsBatchMeta NvDsBatchMeta
 Holds information about a formed batch containing frames from different sources. More...
 
typedef struct _NvDsFrameMeta NvDsFrameMeta
 Holds metadata for a frame in a batch. More...
 
typedef struct _NvDsObjectMeta NvDsObjectMeta
 Holds metadata for an object in the frame. More...
 
typedef struct _NvDsClassifierMeta NvDsClassifierMeta
 Holds classifier metadata for an object. More...
 
typedef struct _NvDsLabelInfo NvDsLabelInfo
 Holds label metadata for the classifier. More...
 
typedef struct NvDsDisplayMeta NvDsDisplayMeta
 Holds display metadata that the user can specify in the frame. More...
 
typedef struct _NvDsUserMeta NvDsUserMeta
 Holds user metadata. More...
 

Enumerations

enum  NvDsMetaType {
  NVDS_INVALID_META =-1,
  NVDS_BATCH_META = 1,
  NVDS_FRAME_META,
  NVDS_OBJ_META,
  NVDS_DISPLAY_META,
  NVDS_CLASSIFIER_META,
  NVDS_LABEL_INFO_META,
  NVDS_USER_META,
  NVDS_PAYLOAD_META,
  NVDS_EVENT_MSG_META,
  NVDS_OPTICAL_FLOW_META,
  NVDS_LATENCY_MEASUREMENT_META,
  NVDSINFER_TENSOR_OUTPUT_META,
  NVDSINFER_SEGMENTATION_META,
  NVDS_CROP_IMAGE_META,
  NVDS_TRACKER_PAST_FRAME_META,
  NVDS_AUDIO_BATCH_META,
  NVDS_AUDIO_FRAME_META,
  NVDS_RESERVED_META = 4095,
  NVDS_GST_CUSTOM_META = 4096,
  NVDS_START_USER_META = NVDS_GST_CUSTOM_META + 4096 + 1,
  NVDS_FORCE32_META = 0x7FFFFFFF
}
 Specifies the type of metadata. More...
 

Functions

void nvds_acquire_meta_lock (NvDsBatchMeta *batch_meta)
 Acquires a lock before updating metadata. More...
 
void nvds_release_meta_lock (NvDsBatchMeta *batch_meta)
 Releases the lock after updating metadata. More...
 
NvDsBatchMetanvds_create_batch_meta (guint max_batch_size)
 Creates a batch metadata structure for a batch of specified size. More...
 
gboolean nvds_destroy_batch_meta (NvDsBatchMeta *batch_meta)
 Destroys a batch metadata structure. More...
 
NvDsFrameMetanvds_acquire_frame_meta_from_pool (NvDsBatchMeta *batch_meta)
 Acquires a frame meta from a batch's frame meta pool. More...
 
void nvds_add_frame_meta_to_batch (NvDsBatchMeta *batch_meta, NvDsFrameMeta *frame_meta)
 Adds a frame meta to a batch meta. More...
 
void nvds_remove_frame_meta_from_batch (NvDsBatchMeta *batch_meta, NvDsFrameMeta *frame_meta)
 Removes a frame meta from a batch meta. More...
 
NvDsObjectMetanvds_acquire_obj_meta_from_pool (NvDsBatchMeta *batch_meta)
 Acquires an object meta from a batch meta's object meta pool. More...
 
void nvds_add_obj_meta_to_frame (NvDsFrameMeta *frame_meta, NvDsObjectMeta *obj_meta, NvDsObjectMeta *obj_parent)
 Adds an object meta to a frame meta. More...
 
void nvds_remove_obj_meta_from_frame (NvDsFrameMeta *frame_meta, NvDsObjectMeta *obj_meta)
 Removes an object meta from the frame meta to which it is attached. More...
 
NvDsClassifierMetanvds_acquire_classifier_meta_from_pool (NvDsBatchMeta *batch_meta)
 Acquires a classifier meta from a batch meta's classifier meta pool. More...
 
void nvds_add_classifier_meta_to_object (NvDsObjectMeta *obj_meta, NvDsClassifierMeta *classifier_meta)
 Adds a classifier meta the appropriate object meta. More...
 
void nvds_remove_classifier_meta_from_obj (NvDsObjectMeta *obj_meta, NvDsClassifierMeta *classifier_meta)
 Removes a classifier meta from the object meta to which it is attached. More...
 
NvDsDisplayMetanvds_acquire_display_meta_from_pool (NvDsBatchMeta *batch_meta)
 Acquires a display meta from a batch meta's display meta pool. More...
 
void nvds_add_display_meta_to_frame (NvDsFrameMeta *frame_meta, NvDsDisplayMeta *display_meta)
 Adds a display meta to the appropriate frame meta. More...
 
void nvds_remove_display_meta_from_frame (NvDsFrameMeta *frame_meta, NvDsDisplayMeta *display_meta)
 Removes a display meta from the frame meta to which it is attached. More...
 
NvDsLabelInfonvds_acquire_label_info_meta_from_pool (NvDsBatchMeta *batch_meta)
 Acquires a label info meta from a batch meta's label info meta pool. More...
 
void nvds_add_label_info_meta_to_classifier (NvDsClassifierMeta *classifier_meta, NvDsLabelInfo *label_info_meta)
 Adds a label info meta to a classifier meta. More...
 
void nvds_remove_label_info_meta_from_classifier (NvDsClassifierMeta *classifier_meta, NvDsLabelInfo *label_info_meta)
 Removes a label info meta from the classifier meta to which it is attached. More...
 
void nvds_add_user_meta_to_batch (NvDsBatchMeta *batch_meta, NvDsUserMeta *user_meta)
 Add a user meta to a batch meta. More...
 
void nvds_add_user_meta_to_frame (NvDsFrameMeta *frame_meta, NvDsUserMeta *user_meta)
 Add a user meta to a frame meta. More...
 
void nvds_add_user_meta_to_obj (NvDsObjectMeta *obj_meta, NvDsUserMeta *user_meta)
 Add a user meta user to an object meta. More...
 
NvDsUserMetanvds_acquire_user_meta_from_pool (NvDsBatchMeta *batch_meta)
 Acquires a user meta from a batch meta's user meta pool. More...
 
void nvds_remove_user_meta_from_batch (NvDsBatchMeta *batch_meta, NvDsUserMeta *user_meta)
 Removes a user meta from a batch meta to which it is attached. More...
 
void nvds_remove_user_meta_from_frame (NvDsFrameMeta *frame_meta, NvDsUserMeta *user_meta)
 Removes a user meta from a frame meta to which it is attached. More...
 
void nvds_remove_user_meta_from_object (NvDsObjectMeta *obj_meta, NvDsUserMeta *user_meta)
 Removes a user meta from an object meta to which it is attached. More...
 
gboolean nvds_get_current_metadata_info (NvDsBatchMeta *batch_meta)
 A debugging function; prints current metadata information available after inference. More...
 
gpointer nvds_batch_meta_copy_func (gpointer data, gpointer user_data)
 Copies or transforms meta data from one buffer to another. More...
 
void nvds_batch_meta_release_func (gpointer data, gpointer user_data)
 Releases metadata from a batch meta. More...
 
NvDsFrameMetanvds_get_nth_frame_meta (NvDsFrameMetaList *frame_meta_list, guint index)
 Returns a pointer to a specified frame meta in the frame meta list. More...
 
void nvds_clear_frame_meta_list (NvDsBatchMeta *batch_meta, NvDsFrameMetaList *meta_list)
 Removes all of the frame metadata attached to a batch meta. More...
 
void nvds_clear_obj_meta_list (NvDsFrameMeta *frame_meta, NvDsObjectMetaList *meta_list)
 Removes all the object metadata attached to a frame meta. More...
 
void nvds_clear_classifier_meta_list (NvDsObjectMeta *obj_meta, NvDsClassifierMetaList *meta_list)
 Removes all of the classifier metadata attached to an object meta. More...
 
void nvds_clear_label_info_meta_list (NvDsClassifierMeta *classifier_meta, NvDsLabelInfoList *meta_list)
 Removes all of the label info metadata attached to a classifier meta. More...
 
void nvds_clear_display_meta_list (NvDsFrameMeta *frame_meta, NvDisplayMetaList *meta_list)
 Removes all of the display metadata attached to a frame meta. More...
 
void nvds_clear_batch_user_meta_list (NvDsBatchMeta *batch_meta, NvDsUserMetaList *meta_list)
 Removes all of the user metadata attached to the batch meta. More...
 
void nvds_clear_frame_user_meta_list (NvDsFrameMeta *frame_meta, NvDsUserMetaList *meta_list)
 Removes all of the user metadata attached to the frame meta. More...
 
void nvds_clear_obj_user_meta_list (NvDsObjectMeta *object_meta, NvDsUserMetaList *meta_list)
 Removes all of the user metadata attached to an object meta. More...
 
NvDsMetaListnvds_clear_meta_list (NvDsBatchMeta *batch_meta, NvDsMetaList *meta_list, NvDsMetaPool *meta_pool)
 Removes all of the metadata elements attached to a metadata list. More...
 
void nvds_copy_frame_meta (NvDsFrameMeta *src_frame_meta, NvDsFrameMeta *dst_frame_meta)
 Makes a deep copy of a frame meta to another frame meta. More...
 
void nvds_copy_obj_meta (NvDsObjectMeta *src_object_meta, NvDsObjectMeta *dst_object_meta)
 Makes a deep copy of an object meta to another object meta. More...
 
void nvds_copy_classifier_meta (NvDsClassifierMeta *src_classifier_meta, NvDsClassifierMeta *dst_classifier_meta)
 Makes a deep copy of a classifier meta to another classifier meta. More...
 
void nvds_copy_label_info_meta (NvDsLabelInfo *src_label_info, NvDsLabelInfo *dst_label_info)
 Makes a deep copy of a label info meta to another label info meta. More...
 
void nvds_copy_display_meta (NvDsDisplayMeta *src_display_meta, NvDsDisplayMeta *dst_display_meta)
 Makes a deep copy of a display meta to another display meta. More...
 
void nvds_copy_batch_user_meta_list (NvDsUserMetaList *src_user_meta_list, NvDsBatchMeta *dst_batch_meta)
 Makes a deep copy of a user meta list to the user meta list in a specified batch meta. More...
 
void nvds_copy_frame_user_meta_list (NvDsUserMetaList *src_user_meta_list, NvDsFrameMeta *dst_frame_meta)
 Makes a deep copy of a source user meta list to the user meta list in a specified frame meta. More...
 
void nvds_copy_obj_user_meta_list (NvDsUserMetaList *src_user_meta_list, NvDsObjectMeta *dst_object_meta)
 Makes a deep copy of a source user meta list to the user meta list in a specified object meta. More...
 
void nvds_copy_display_meta_list (NvDisplayMetaList *src_display_meta_list, NvDsFrameMeta *dst_frame_meta)
 Makes a deep copy of a source display meta list to the display meta list in a specified frame meta. More...
 
void nvds_copy_frame_meta_list (NvDsFrameMetaList *src_frame_meta_list, NvDsBatchMeta *dst_batch_meta)
 Makes a deep copy of a source frame meta list to the frame meta list in a specified batch meta. More...
 
void nvds_copy_obj_meta_list (NvDsObjectMetaList *src_obj_meta_list, NvDsFrameMeta *dst_frame_meta)
 Makes a deep copy of a source object meta list to the object meta list in a specified frame meta. More...
 
void nvds_copy_classification_list (NvDsClassifierMetaList *src_classifier_meta_list, NvDsObjectMeta *dst_object_meta)
 Makes a deep copy of a source classifier meta list to the classifier meta list in a specified object meta. More...
 
void nvds_copy_label_info_list (NvDsLabelInfoList *src_label_info_list, NvDsClassifierMeta *dst_classifier_meta)
 Makes a deep copy of a source label info meta list to the label info meta list in a specified classifier meta. More...
 
NvDsMetaType nvds_get_user_meta_type (gchar *meta_descriptor)
 Generates a unique user metadata type from a specified string describing user-specific metadata. More...