# NvDsUserMeta user data access

**URL:** <https://forums.developer.nvidia.com/t/nvdsusermeta-user-data-access/185553>\
**Category:** DeepStream SDK\
**Created:** [August 3, 2021, 9:31pm UTC](https://forums.developer.nvidia.com/t/nvdsusermeta-user-data-access/185553 "2021-08-03T21:31:38Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![fbarilla93j70](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@fbarilla93j70](https://forums.developer.nvidia.com/u/fbarilla93j70)\
**Post date:** [August 3, 2021, 9:31pm UTC](https://forums.developer.nvidia.com/t/nvdsusermeta-user-data-access/185553/1 "2021-08-03T21:31:38Z")

</div>

\*\*• Hardware Platform : Xavier AGX  
\*\*• DeepStream Version: 5.0  
\*\*• JetPack Version: 4.4  
\*\*• TensorRT Version: 7.1.3.0  
\*\*• NVIDIA GPU Driver Version: 10.2

I’ve a plugin that adds meta data that I can see using the following code:

check\_metadata (GstBuffer \* inbuf)  
{  
NvDsBatchMeta \*batch\_meta = gst\_buffer\_get\_nvds\_batch\_meta (inbuf);  
NvDsMetaList \* l\_frame = batch\_meta-\>frame\_meta\_list;  
NvDsMetaList \* l\_user\_meta = NULL;  
NvDsUserMeta \*user\_meta = NULL;  
int \*user\_meta\_data = NULL;  
int i = 0;

NvDsFrameMeta \*frame\_meta = (NvDsFrameMeta _) (l\_frame-\>data);  
/_ Validate user meta \*/  
for (l\_user\_meta = frame\_meta-\>frame\_user\_meta\_list; l\_user\_meta != NULL;  
l\_user\_meta = l\_user\_meta-\>next)  
{  
user\_meta = (NvDsUserMeta \*) (l\_user\_meta-\>data);  
user\_meta\_data = (int \*)user\_meta-\>user\_meta\_data;

```
if(user_meta->base_meta.meta_type == WATERLINE_GST_META)
{
  for(i = 0; i < USER_ARRAY_SIZE; i++)
  {
    g_print("user_meta_data [%d] = %d\n", i, user_meta_data[i]);
  }
  g_print("\n");
}

```

}

Now how can I get access to this meta data using python ? I’ve the following code not throwing any error but it returns a NULL capsule object.

```
    batch_meta = pyds.gst_buffer_get_nvds_batch_meta(hash(buffer))
    l_frame = batch_meta.frame_meta_list

    while l_frame is not None:
        try:
            # l_frame.data needs a cast to pyds.NvDsFrameMeta
            frame_meta = pyds.NvDsFrameMeta.cast(l_frame.data)
            l_user_meta = frame_meta.frame_user_meta_list
        except StopIteration:
            break

        while l_user_meta is not None:
            try:
                user_meta = pyds.NvDsUserMeta.cast(l_user_meta.data)
                user_meta_data = user_meta.user_meta_data

                print(' ******* USER DATA: ', user_meta_data)

            except StopIteration:
                break

            try:
                l_user_meta=l_user_meta.next
            except StopIteration:
                break

```

How can I mimic in Python the content of the C++ check\_metadata() routine? I need to get a construct that output the ‘user\_meta\_data[i]’.  
I already spent a couple of days reading the doc but so far without any success. Any help will be greatly appreciated. Thanks

---

<div class="post-metadata">

**Author:** ![Fiona.Chen](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/fiona.chen/32/15508_2.png) [@Fiona.Chen](https://forums.developer.nvidia.com/u/Fiona.Chen)\
**Post date:** [August 5, 2021, 5:21am UTC](https://forums.developer.nvidia.com/t/nvdsusermeta-user-data-access/185553/5 "2021-08-05T05:21:11Z")

</div>

Seems you are using your own customized user meta. You need to generate the python bindings for your new user meta by yourself. The user\_meta.user\_meta\_data should be access through cast.  
[https://docs.nvidia.com/metropolis/deepstream/dev-guide/text/DS\_Python\_Sample\_Apps.html#casting](https://docs.nvidia.com/metropolis/deepstream/dev-guide/text/DS_Python_Sample_Apps.html#casting)

---

<div class="post-metadata">

**Author:** ![system](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/system/32/68080_2.png) [@system](https://forums.developer.nvidia.com/u/system)\
**Post date:** [October 9, 2021, 2:01am UTC](https://forums.developer.nvidia.com/t/nvdsusermeta-user-data-access/185553/7 "2021-10-09T02:01:03Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
