Remove just first object

This commit is contained in:
Barzan Hayati 2025-09-17 18:46:02 +00:00
parent db2aa55a21
commit 4c925361a1

View File

@ -444,7 +444,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_metadata_probe(
(void)txt_params; (void)txt_params;
guint face_count = 0; guint face_count = 0;
guint person_count = 0; guint person_count = 0;
gboolean is_first_object = TRUE;
NvDsMetaList *l_frame, *l_obj; NvDsMetaList *l_frame, *l_obj;
NvDsBatchMeta *batch_meta = gst_buffer_get_nvds_batch_meta(buf); NvDsBatchMeta *batch_meta = gst_buffer_get_nvds_batch_meta(buf);
@ -462,8 +461,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_metadata_probe(
continue; continue;
} }
is_first_object = TRUE;
for (l_obj = frame_meta->obj_meta_list; l_obj; l_obj = l_obj->next) { for (l_obj = frame_meta->obj_meta_list; l_obj; l_obj = l_obj->next) {
NvDsObjectMeta *obj_meta = (NvDsObjectMeta *)l_obj->data; NvDsObjectMeta *obj_meta = (NvDsObjectMeta *)l_obj->data;
@ -527,9 +524,8 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_metadata_probe(
} }
} }
if (is_first_object && if (is_meta_type_NVOSD_embedding_vector == true) {
is_meta_type_NVOSD_embedding_vector == true) { // is_first_object && !(frame_number % frame_interval) &&
//!(frame_number % frame_interval) &&
/* Frequency of messages to be send will be based on use case. /* Frequency of messages to be send will be based on use case.
* Here message is being sent for first object every * Here message is being sent for first object every
* frame_interval(default=30). * frame_interval(default=30).
@ -561,7 +557,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_metadata_probe(
} else { } else {
g_print("Error in attaching event meta to buffer\n"); g_print("Error in attaching event meta to buffer\n");
} }
is_first_object = FALSE;
} }
} }
} }
@ -608,7 +603,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
(void)u_data; (void)u_data;
GstBuffer *buf = (GstBuffer *)info->data; GstBuffer *buf = (GstBuffer *)info->data;
NvDsFrameMeta *frame_meta = NULL; NvDsFrameMeta *frame_meta = NULL;
gboolean is_first_object = TRUE;
NvDsMetaList *l_frame, *l_obj; NvDsMetaList *l_frame, *l_obj;
gchar *encoded_data; gchar *encoded_data;
gchar *message_data; gchar *message_data;
@ -631,8 +625,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
continue; continue;
} }
is_first_object = TRUE;
for (l_obj = frame_meta->obj_meta_list; l_obj; l_obj = l_obj->next) { for (l_obj = frame_meta->obj_meta_list; l_obj; l_obj = l_obj->next) {
NvDsObjectMeta *obj_meta = (NvDsObjectMeta *)l_obj->data; NvDsObjectMeta *obj_meta = (NvDsObjectMeta *)l_obj->data;
@ -641,7 +633,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
continue; continue;
} }
if (is_first_object) {
//&& !(frame_number % frame_interval) //&& !(frame_number % frame_interval)
/* Frequency of images to be send will be based on use case. /* Frequency of images to be send will be based on use case.
* Here images is being sent for first object every * Here images is being sent for first object every
@ -652,25 +643,22 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
NvDsUserMeta *user_event_meta_custom = NvDsUserMeta *user_event_meta_custom =
nvds_acquire_user_meta_from_pool(batch_meta); nvds_acquire_user_meta_from_pool(batch_meta);
NvDsCustomMsgInfo *msg_custom_meta = NvDsCustomMsgInfo *msg_custom_meta =
(NvDsCustomMsgInfo *)g_malloc0( (NvDsCustomMsgInfo *)g_malloc0(sizeof(NvDsCustomMsgInfo));
sizeof(NvDsCustomMsgInfo));
NvDsUserMeta *usrMetaData = NvDsUserMeta *usrMetaData = (NvDsUserMeta *)usrMetaList->data;
(NvDsUserMeta *)usrMetaList->data; if (usrMetaData->base_meta.meta_type == NVDS_CROP_IMAGE_META) {
if (usrMetaData->base_meta.meta_type ==
NVDS_CROP_IMAGE_META) {
NvDsObjEncOutParams *enc_jpeg_image = NvDsObjEncOutParams *enc_jpeg_image =
(NvDsObjEncOutParams *)usrMetaData->user_meta_data; (NvDsObjEncOutParams *)usrMetaData->user_meta_data;
START_PROFILE; START_PROFILE;
encoded_data = g_base64_encode( encoded_data = g_base64_encode(enc_jpeg_image->outBuffer,
enc_jpeg_image->outBuffer, enc_jpeg_image->outLen); enc_jpeg_image->outLen);
generate_ts_rfc3339(ts, MAX_TIME_STAMP_LEN); generate_ts_rfc3339(ts, MAX_TIME_STAMP_LEN);
width = g_strdup_printf( width = g_strdup_printf(
"%f", "%f",
obj_meta->detector_bbox_info.org_bbox_coords.width); obj_meta->detector_bbox_info.org_bbox_coords.width);
height = height = g_strdup_printf(
g_strdup_printf("%f", obj_meta->detector_bbox_info "%f",
.org_bbox_coords.height); obj_meta->detector_bbox_info.org_bbox_coords.height);
/* Image message fields are separated by ";". /* Image message fields are separated by ";".
* Specific Format: * Specific Format:
* "image;image_format;image_widthximage_height;time;encoded * "image;image_format;image_widthximage_height;time;encoded
@ -678,8 +666,8 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
* "image;jpg;640x480;2023-07-31T10:20:13;xxxxxxxxxxx" * "image;jpg;640x480;2023-07-31T10:20:13;xxxxxxxxxxx"
*/ */
message_data = message_data =
g_strconcat("image;jpg;", width, "x", height, ";", g_strconcat("image;jpg;", width, "x", height, ";", ts,
ts, ";", encoded_data, ";", NULL); ";", encoded_data, ";", NULL);
STOP_PROFILE("Base64 Encode Time "); STOP_PROFILE("Base64 Encode Time ");
msg_custom_meta->size = strlen(message_data); msg_custom_meta->size = strlen(message_data);
msg_custom_meta->message = g_strdup(message_data); msg_custom_meta->message = g_strdup(message_data);
@ -705,8 +693,7 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
snprintf(fileObjNameString, 1024, "%s_%d_%d_%s.jpg", ts, snprintf(fileObjNameString, 1024, "%s_%d_%d_%s.jpg", ts,
frame_number, frame_meta->batch_id, frame_number, frame_meta->batch_id,
obj_meta->obj_label); obj_meta->obj_label);
guchar *decoded_data = guchar *decoded_data = g_base64_decode(encoded_data, &size);
g_base64_decode(encoded_data, &size);
fp = fopen(fileObjNameString, "wb"); fp = fopen(fileObjNameString, "wb");
if (fp) { if (fp) {
fwrite(decoded_data, size, 1, fp); fwrite(decoded_data, size, 1, fp);
@ -725,8 +712,6 @@ GstPadProbeReturn NvOsdManager::osd_src_pad_buffer_image_probe(
usrMetaList = usrMetaList->next; usrMetaList = usrMetaList->next;
} }
} }
is_first_object = FALSE;
}
} }
} }