How to get classifier tensor metadata in deepstream-app?

• Hardware Platform (Jetson / GPU) GPU
• DeepStream Version 5.0
• TensorRT Version 7
• NVIDIA GPU Driver Version (valid for GPU only) 440
• Issue Type( questions, new requirements, bugs) question

I’m able to get classifier raw tensor metadata from the sgie_pad_buffer_probe in deepstream-infer-tensor-meta-test app, but how to do so in deepstream-app itself?

Right now, if I use the same code in all_bbox_generated function, it’s not entering the third loop (probably because the data is NULL there). This function is probably called in gie_processing_done_buf_prob which should contain all metadata (pgie+sgie).

static void
all_bbox_generated (AppCtx * appCtx, GstBuffer * buf,
    NvDsBatchMeta * batch_meta, guint index)
...
  /* Iterate each frame metadata in batch */
  for (NvDsMetaList * l_frame = batch_meta->frame_meta_list; l_frame != NULL;
      l_frame = l_frame->next) {
    NvDsFrameMeta *frame_meta = (NvDsFrameMeta *) l_frame->data;

    /* Iterate object metadata in frame */
    for (NvDsMetaList * l_obj = frame_meta->obj_meta_list; l_obj != NULL;
        l_obj = l_obj->next) {
      NvDsObjectMeta *obj_meta = (NvDsObjectMeta *) l_obj->data;

      /* Iterate user metadata in object to search SGIE's tensor data */
      for (NvDsMetaList * l_user = obj_meta->obj_user_meta_list; l_user != NULL;
          l_user = l_user->next) {
        std::cout << "kk";

I solved it by writing the code instead in analytics_done_buf_prob. (Does it mean this prob is registered after pgie+sgie are executed). But I don’t get why it was not working in gie_processing_done_buf_prob.