VVAS GStreamer Inference Meta Data Structures¶
This section covers details about the GStreamer Meta Data structures to host inference meta data produced by the machine learning (ML) inference acceleration software libraries. This metadata structure stores the inferred data generated at multiple levels of ML operation into a single structure in a hierarchical way. This data structure combines, and stores metadata generated by detection and classification models.
The GStreamer plug-ins can set and get inference metadata from the GstBuffer by using the gst_buffer_add_meta () API and gst_buffer_get_meta () API, respectively.
GstInferenceMeta¶
-
struct GstInferenceMeta¶
GstInferenceMeta is the root node of the inference metadata. GstInferencePrediction hosts the actual inference metadata.
Definition
struct GstInferenceMeta {
GstMeta meta;
GstInferencePrediction *prediction;
};
Members
metaBuffer metadata
predictionContains all the predictions associated to this node
GstInferencePrediction¶
-
struct GstInferencePrediction¶
This structure represents the inference data generated from the ML operation
Definition
struct GstInferencePrediction {
GstMiniObject base;
GMutex mutex;
GstBuffer *sub_buffer;
VvasInferPrediction prediction;
void *reserved_1;
void *reserved_2;
void *reserved_3;
void *reserved_4;
void *reserved_5;
};
Members
baseprivate base object
mutexmutex
sub_bufferbuffer contains cropped images for cascade usecase
predictionVVAS core inference structure refe to VVASInferPrediction
reserved_1for future extension
reserved_2for future extension
reserved_3for future extension
reserved_4for future extension
reserved_5for future extension
GstInferenceClassification¶
-
struct GstInferenceClassification¶
This structure stores the results of the ML operation by the classification network
Definition
struct GstInferenceClassification {
GstMiniObject base;
GMutex mutex;
VvasInferClassification classification;
};
Members
baseprivate base object
mutexmutex
classificationVVAS core inference structure VVASInferClassification