pyds-stubs


Namepyds-stubs JSON
Version 1.1.8.2 PyPI version JSON
download
home_pageNone
SummaryTyping stubs for NVIDIA DeepStream Python Bindings
upload_time2025-06-22 17:55:34
maintainerNone
docs_urlNone
authorNone
requires_python<3.9,>=3.8
licenseNone
keywords bindings deepstream nvidia stubs
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Typing stubs for NVIDIA DeepStream Python Bindings

[![audit.yml](https://github.com/nkaaf/pyds-stubs/actions/workflows/audit.yml/badge.svg)](https://github.com/nkaaf/pyds-stubs/actions/workflows/audit.yml)
[![license](https://badgen.net/pypi/license/pyds-stubs/)](https://pypi.org/project/pyds-stubs)

This project provides type stubs for [pyds](https://github.com/NVIDIA-AI-IOT/deepstream_python_apps)
to improve the support of these important bindings in IDEs.

These are generated by [pybind11-stubgen](https://github.com/sizmailov/pybind11-stubgen) and further
post-processed. For the post-processing steps, check out
the [Post-Processing Chapter](#post-processing)

With the usage of this project, you agree to the license terms, found in the [License](#license)
chapter. This project is not affiliated with NVIDIA or the authors and maintainer of
the [pyds](https://github.com/NVIDIA-AI-IOT/deepstream_python_apps) repository. It is the result of
the need for type hints for a simpler and more stable implementation of DeepStream pipelines in
Python.

## Index

* [Installation](#installation)
* [Usage](#usage)
* [Versioning](#versioning)
* [Development](#development)
    * [Installation of Prerequisites](#installation-of-prerequisites)
    * [Build wheel](#build-wheel)
    * [Generation](#generation)
    * [Post-Processing](#post-processing)
* [License](#license)
* [Appendix](#appendix)
    * [Python venv](#python-venv)
    * [Links](#links)
    * [Notice for NVIDIA](#notice-for-nvidia)

## Installation

This library can be easily installed with pip:

```bash
pip install pyds-stubs
```

## Usage

There is no magic, just only import pyds as you would normally do. This package is intended to be
used during the development and can be omitted in runtime environments.

## Versioning

The stub versions matches the versions of pyds. For example, stub version `1.1.8` fits to pyds
version
`1.1.8`. If any fix has to be applied, the fourth position would be incremented. So the first fix of
`1.1.8` results in `1.1.8.1`.

Please pin your version directly or limit it upper-wise like:

`pyds-stubs>=1.1.8,<1.1.9`

## Development

### Installation of Prerequisites

* Python 3 (latest) (https://www.python.org/downloads)
* Python venv (optional, recommended) <sub>[GoTo Installation](#python-venv)</sub>
* Installation of development requirements:

```bash
pip install -r requirements/dev/requirements.txt
```

* Installation of requirements:

```bash
pip install -r requirements/library/requirements.txt
```

### Build wheel

```bash
python3 -m build
```

### Generation

The stubs are generated by pybind11-stubgen. It is contained in the development requirements. The
stubs can be generated with the following command, if it is executed in the environment, where pyds
is installed.

```bash
pybind11-stubgen pyds
```

### Post-Processing

For correct usage, the generated stubs are post-processed. Following steps are applied:

* Format with ruff
* add generic class for `capsule` with information about the class of the object.
* remove class `GList` and add generic `GList` class with information about the class of the data.
* `cast` functions with `capsule` datatype: `capsule` is replaced by `capsule[class]` where `class`
  is the target class.
* `array` datatype: Replace with numpy.ndarray
* `numpy.ndarray[float32]`: Replace with `NDArray[numpy.float32]` with
  `from numpy.typing import NDArray`
* Datatype of `eglImage` of `NvBufSurfaceMappedAddr`: `typing.Any` instead of `capsule`
* Datatype of `dataPtr` of `NvBufSurfaceParams`: `typing.Any` instead of `capsule`
* Datatype of `batch_meta` of `NvDsBaseMeta`: `NvDsBatchMeta` instead of `_NvDsBatchMeta`
* Datatype of `uContext` of `NvDsBaseMeta`: `typing.Any` instead of `capsule`
* Datatype of `batch_user_meta_list` of `NvDsBatchMeta`: `typing.Optional[GList[NvDsUserMeta]]` instead of `GList`
* Datatype of `frame_meta_list` of `NvDsBatchMeta`: `typing.Optional[GList[NvDsFrameMeta]]` instead of `GList`
* Datatype of `meta_mutex` of `NvDsBatchMeta`: `GLib.RecMutex` instead of `_GRecMutex` with `from gi.repository import GLib`
* Datatype of `label_info_list` of `NvDsClassifierMeta`: `typing.Optional[GList[NvDsLabelInfo]]` instead of `GList`
* Datatype of `extMsg` of `NvDsEventMsgMeta`: `typing.Any` instead of `capsule`
* Datatype of `mask` of `NvDsFaceObjectWithExt`: `typing.Optional[GList[typing.Any]]` instead of `GList`
* Datatype of `display_meta_list` of `NvDsFrameMeta`: `typing.Optional[GList[NvDsDisplayMeta]]` instead of `GList`
* Datatype of `frame_user_meta_list` of `NvDsFrameMeta`: `typing.Optional[GList[NvDsUserMeta]]` instead of `GList`
* Datatype of `obj_meta_list` of `NvDsFrameMeta`: `typing.Optional[GList[NvDsObjectMeta]]` instead of `GList`
* Datatype of `buffer` of `NvDsInferLayerInfo`: `typing.Any` instead of `capsule`
* Returntype of `priv_data` property of `NvDsInferSegmentationMeta`: `typing.Any` instead of `capsule`
* Returntype of `out_buf_ptrs_dev` property of `NvDsInferTensorMeta`: `typing.Any` instead of `capsule`
* Returntype of `out_buf_ptrs_host` property of `NvDsInferTensorMeta`: `typing.Any` instead of `capsule`
* Returntype of `priv_data` property of `NvDsInferTensorMeta`: `typing.Any` instead of `capsule`
* Datatype of `meta` of `NvDsMeta`: `Gst.Meta` instead of `_GstMeta` with `from gi.repository import Gst`
* Datatype of `meta_data` of `NvDsMeta`: `typing.Any` instead of `capsule`
* Datatype of `user_data` of `NvDsMeta`: `typing.Any` instead of `capsule`
* Add `NvDsMetaList` as an alias of `typing.Optional[GList[NvDsMeta]]`
* Datatype of `empty_list` of `NvDsMetaPool`: `NvDsMetaList` instead of `GList`
* Datatype of `full_list` of `NvDsMetaPool`: `NvDsMetaList` instead of `GList`
* Datatype of `classifier_meta_list` of `NvDsObjectMeta`: `typing.Optional[GList[NvDsClassifierMeta]]` instead of `GList`
* Datatype of `obj_user_meta_list` of `NvDsObjectMeta`: `typing.Optional[GList[NvDsUserMeta]]` instead of `GList`
* Datatype of `data` of `NvDsOpticalFlowMeta`: `typing.Any` instead of `capsule`
* Datatype of `priv` of `NvDsOpticalFlowMeta`: `typing.Any` instead of `capsule`
* Datatype of `reserved` of `NvDsOpticalFlowMeta`: `typing.Any` instead of `capsule`
* Datatype of `mask` of `NvDsPersonObjectExt`: `typing.Optional[GList[typing.Any]]` instead of `GList`
* Datatype of `payload` of `NvDsPayload`: `typing.Any` instead of `capsule`
* Datatype of `user_meta_data` of `NvDsUserMeta`: `typing.Any` instead of `capsule`
* Datatype of `mask` of `NvDsVehicleObjectExt`: `typing.Optional[GList[typing.Any]]` instead of `GList`
* Datatype of `text` of `RectDim`: `typing.Any` instead of `capsule`
* Datatype of `buffer` of `NvBufSurfaceFromFd`: `capsule[NvBufSurface]` instead of `capsule`
* Datatype of `buffer` of `free_gbuffer`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `get_detections`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `get_nvds_LayerInfo`: `typing.Any` instead of `capsule`
* Datatype of `data` of `get_optical_flow_vectors`: `capsule[NvDsOpticalFlowMeta]` instead of `capsule`
* Datatype of `ptr` of `get_ptr`: `typing.Any` instead of `capsule`
* Datatype of `data` of `get_segmentation_masks`: `capsule[NvDsInferSegmentationMeta]` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_Surface_Params`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_batch_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_classifier_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_display_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_event_msg_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_frame_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_label_info`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_object_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_person_object`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_tensor_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_user_meta`: `typing.Any` instead of `capsule`
* Datatype of `arg0` of `glist_get_nvds_vehicle_object`: `typing.Any` instead of `capsule`
* Datatype of `buffer` of `gst_buffer_add_nvds_meta`: `Gst.Buffer` instead of `_GstBuffer`
* Datatype of `meta_data` of `gst_buffer_add_nvds_meta`: `typing.Any` instead of `capsule`
* Datatype of `user_data` of `gst_buffer_add_nvds_meta`: `typing.Any` instead of `capsule`
* Returntype of `gst_buffer_add_nvds_meta`: `NvDsMeta` instead of `_NvDsMeta`
* Datatype of `data` of `nvds_batch_meta_copy_func`: `capsule[NvDsBatchMeta]` instead of `capsule`
* Datatype of `user_data` of `nvds_batch_meta_copy_func`: `typing.Any` instead of `capsule`
* Datatype of `data` of `nvds_batch_meta_release_func`: `capsule[NvDsBatchMeta]` instead of `capsule`
* Datatype of `meta_list` of `nvds_clear_batch_user_meta_list`: `NvDsUserMetaList` instead of `GList`
* Add `NvDisplayMetaList` as an alias of `typing.Optional[GList[NvDsDisplayMeta]]`
* Datatype of `meta_list` of `nvds_clear_display_meta_list`: `NvDisplayMetaList` instead of `GList`
* Add `NvDsFrameMetaList` as an alias of `typing.Optional[GList[NvDsFrameMeta]]`
* Datatype of `meta_list` of `nvds_clear_frame_meta_list`: `NvDsFrameMetaList` instead of `GList`
* Add `NvDsUserMetaList` as an alias of `typing.Optional[GList[NvDsUserMeta]]`
* Datatype of `meta_list` of `nvds_clear_frame_user_meta_list`: `NvDsUserMetaList` instead of `GList`
* Datatype of `meta_list` of `nvds_clear_meta_list`: `NvDsMetaList` instead of `GList`
* Returntype of `nvds_clear_meta_list`: `NvDsMetaList` instead of `GList`
* Add `NvDsObjectMetaList` as an alias of `typing.Optional[GList[NvDsObjectMeta]]`
* Datatype of `meta_list` of `nvds_clear_obj_meta_list`: `NvDsObjectMetaList` instead of `GList`
* Datatype of `meta_list` of `nvds_clear_obj_user_meta_list`: `NvDsObjectMetaList` instead of `GList`
* Datatype of `src_user_meta_list` of `nvds_copy_batch_user_meta_list`: `NvDsObjectMetaList` instead of `GList`
* Datatype of `src_user_meta_list` of `nvds_copy_display_meta_list`: `NvDisplayMetaList` instead of `GList`
* Datatype of `src_user_meta_list` of `nvds_copy_frame_meta_list`: `NvDsFrameMetaList` instead of `GList`
* Datatype of `src_user_meta_list` of `nvds_copy_frame_user_meta_list`: `NvDsUserMetaList` instead of `GList`
* Datatype of `src_user_meta_list` of `nvds_copy_obj_meta_list`: `NvDsObjectMetaList` instead of `GList`
* Datatype of `frame_meta_list` of `nvds_get_nth_frame_meta`: `GList[NvDsFrameMeta]` instead of `GList`
* Datatype of `arg0` of `register_user_copyfunc`: `typing.Callable[[typing.Any, typing.Any], typing.Any]` instead of `typing.Callable[[capsule, capsule], capsule]`
* Datatype of `arg0` of `register_user_releasefunc`: `typing.Callable[[typing.Any, typing.Any], None]` instead of `typing.Callable[[capsule, capsule], None]`
* Datatype of `arg1` of `set_user_copyfunc`: `typing.Callable[[typing.Any, typing.Any], typing.Any]` instead of `typing.Callable[[capsule, capsule], capsule]`
* Datatype of `arg1` of `set_user_releasefunc`: `typing.Callable[[typing.Any, typing.Any], None]` instead of `typing.Callable[[capsule, capsule], None]`
* Datatype of `func` of `user_copyfunc`: `typing.Callable[[typing.Any, typing.Any], typing.Any]` instead of `typing.Callable[[capsule, capsule], capsule]`
* Datatype of `func` of `user_releasefunc`: `typing.Callable[[typing.Any, typing.Any], None]` instead of `typing.Callable[[capsule, capsule], None]`

## License

This project is published
under [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) - please comply
with it, if you use/modify/distribute it. The license can be found in "LICENSE".

## Appendix

### Python venv

```bash
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip setuptools
```

### Links

* [Project Home](https://github.com/nkaaf/pyds-stubs)
* [pyds - NVIDIA DeepStream Python Bindings](https://github.com/NVIDIA-AI-IOT/deepstream_python_apps)
* [pybind11-stubgen](https://github.com/sizmailov/pybind11-stubgen)

### Notice for NVIDIA

I recently (Jun, 2025) saw
a [discussion](https://forums.developer.nvidia.com/t/feature-request-add-python-stubs-to-pyds-library/333191/4)
on your forum. If there is any official stub support by NVIDIA, this project will be deprecated and
publicly archived. I hope to hear from you ;)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyds-stubs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.9,>=3.8",
    "maintainer_email": "Niklas Kaaf <nkaaf@protonmail.com>",
    "keywords": "bindings, deepstream, nvidia, stubs",
    "author": null,
    "author_email": "Niklas Kaaf <nkaaf@protonmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/ac/53/193628f90a6d9c32fe9876ab23c8e253061e29f1109e25a25a8b9e443f9d/pyds_stubs-1.1.8.2.tar.gz",
    "platform": null,
    "description": "# Typing stubs for NVIDIA DeepStream Python Bindings\n\n[![audit.yml](https://github.com/nkaaf/pyds-stubs/actions/workflows/audit.yml/badge.svg)](https://github.com/nkaaf/pyds-stubs/actions/workflows/audit.yml)\n[![license](https://badgen.net/pypi/license/pyds-stubs/)](https://pypi.org/project/pyds-stubs)\n\nThis project provides type stubs for [pyds](https://github.com/NVIDIA-AI-IOT/deepstream_python_apps)\nto improve the support of these important bindings in IDEs.\n\nThese are generated by [pybind11-stubgen](https://github.com/sizmailov/pybind11-stubgen) and further\npost-processed. For the post-processing steps, check out\nthe [Post-Processing Chapter](#post-processing)\n\nWith the usage of this project, you agree to the license terms, found in the [License](#license)\nchapter. This project is not affiliated with NVIDIA or the authors and maintainer of\nthe [pyds](https://github.com/NVIDIA-AI-IOT/deepstream_python_apps) repository. It is the result of\nthe need for type hints for a simpler and more stable implementation of DeepStream pipelines in\nPython.\n\n## Index\n\n* [Installation](#installation)\n* [Usage](#usage)\n* [Versioning](#versioning)\n* [Development](#development)\n    * [Installation of Prerequisites](#installation-of-prerequisites)\n    * [Build wheel](#build-wheel)\n    * [Generation](#generation)\n    * [Post-Processing](#post-processing)\n* [License](#license)\n* [Appendix](#appendix)\n    * [Python venv](#python-venv)\n    * [Links](#links)\n    * [Notice for NVIDIA](#notice-for-nvidia)\n\n## Installation\n\nThis library can be easily installed with pip:\n\n```bash\npip install pyds-stubs\n```\n\n## Usage\n\nThere is no magic, just only import pyds as you would normally do. This package is intended to be\nused during the development and can be omitted in runtime environments.\n\n## Versioning\n\nThe stub versions matches the versions of pyds. For example, stub version `1.1.8` fits to pyds\nversion\n`1.1.8`. If any fix has to be applied, the fourth position would be incremented. So the first fix of\n`1.1.8` results in `1.1.8.1`.\n\nPlease pin your version directly or limit it upper-wise like:\n\n`pyds-stubs>=1.1.8,<1.1.9`\n\n## Development\n\n### Installation of Prerequisites\n\n* Python 3 (latest) (https://www.python.org/downloads)\n* Python venv (optional, recommended) <sub>[GoTo Installation](#python-venv)</sub>\n* Installation of development requirements:\n\n```bash\npip install -r requirements/dev/requirements.txt\n```\n\n* Installation of requirements:\n\n```bash\npip install -r requirements/library/requirements.txt\n```\n\n### Build wheel\n\n```bash\npython3 -m build\n```\n\n### Generation\n\nThe stubs are generated by pybind11-stubgen. It is contained in the development requirements. The\nstubs can be generated with the following command, if it is executed in the environment, where pyds\nis installed.\n\n```bash\npybind11-stubgen pyds\n```\n\n### Post-Processing\n\nFor correct usage, the generated stubs are post-processed. Following steps are applied:\n\n* Format with ruff\n* add generic class for `capsule` with information about the class of the object.\n* remove class `GList` and add generic `GList` class with information about the class of the data.\n* `cast` functions with `capsule` datatype: `capsule` is replaced by `capsule[class]` where `class`\n  is the target class.\n* `array` datatype: Replace with numpy.ndarray\n* `numpy.ndarray[float32]`: Replace with `NDArray[numpy.float32]` with\n  `from numpy.typing import NDArray`\n* Datatype of `eglImage` of `NvBufSurfaceMappedAddr`: `typing.Any` instead of `capsule`\n* Datatype of `dataPtr` of `NvBufSurfaceParams`: `typing.Any` instead of `capsule`\n* Datatype of `batch_meta` of `NvDsBaseMeta`: `NvDsBatchMeta` instead of `_NvDsBatchMeta`\n* Datatype of `uContext` of `NvDsBaseMeta`: `typing.Any` instead of `capsule`\n* Datatype of `batch_user_meta_list` of `NvDsBatchMeta`: `typing.Optional[GList[NvDsUserMeta]]` instead of `GList`\n* Datatype of `frame_meta_list` of `NvDsBatchMeta`: `typing.Optional[GList[NvDsFrameMeta]]` instead of `GList`\n* Datatype of `meta_mutex` of `NvDsBatchMeta`: `GLib.RecMutex` instead of `_GRecMutex` with `from gi.repository import GLib`\n* Datatype of `label_info_list` of `NvDsClassifierMeta`: `typing.Optional[GList[NvDsLabelInfo]]` instead of `GList`\n* Datatype of `extMsg` of `NvDsEventMsgMeta`: `typing.Any` instead of `capsule`\n* Datatype of `mask` of `NvDsFaceObjectWithExt`: `typing.Optional[GList[typing.Any]]` instead of `GList`\n* Datatype of `display_meta_list` of `NvDsFrameMeta`: `typing.Optional[GList[NvDsDisplayMeta]]` instead of `GList`\n* Datatype of `frame_user_meta_list` of `NvDsFrameMeta`: `typing.Optional[GList[NvDsUserMeta]]` instead of `GList`\n* Datatype of `obj_meta_list` of `NvDsFrameMeta`: `typing.Optional[GList[NvDsObjectMeta]]` instead of `GList`\n* Datatype of `buffer` of `NvDsInferLayerInfo`: `typing.Any` instead of `capsule`\n* Returntype of `priv_data` property of `NvDsInferSegmentationMeta`: `typing.Any` instead of `capsule`\n* Returntype of `out_buf_ptrs_dev` property of `NvDsInferTensorMeta`: `typing.Any` instead of `capsule`\n* Returntype of `out_buf_ptrs_host` property of `NvDsInferTensorMeta`: `typing.Any` instead of `capsule`\n* Returntype of `priv_data` property of `NvDsInferTensorMeta`: `typing.Any` instead of `capsule`\n* Datatype of `meta` of `NvDsMeta`: `Gst.Meta` instead of `_GstMeta` with `from gi.repository import Gst`\n* Datatype of `meta_data` of `NvDsMeta`: `typing.Any` instead of `capsule`\n* Datatype of `user_data` of `NvDsMeta`: `typing.Any` instead of `capsule`\n* Add `NvDsMetaList` as an alias of `typing.Optional[GList[NvDsMeta]]`\n* Datatype of `empty_list` of `NvDsMetaPool`: `NvDsMetaList` instead of `GList`\n* Datatype of `full_list` of `NvDsMetaPool`: `NvDsMetaList` instead of `GList`\n* Datatype of `classifier_meta_list` of `NvDsObjectMeta`: `typing.Optional[GList[NvDsClassifierMeta]]` instead of `GList`\n* Datatype of `obj_user_meta_list` of `NvDsObjectMeta`: `typing.Optional[GList[NvDsUserMeta]]` instead of `GList`\n* Datatype of `data` of `NvDsOpticalFlowMeta`: `typing.Any` instead of `capsule`\n* Datatype of `priv` of `NvDsOpticalFlowMeta`: `typing.Any` instead of `capsule`\n* Datatype of `reserved` of `NvDsOpticalFlowMeta`: `typing.Any` instead of `capsule`\n* Datatype of `mask` of `NvDsPersonObjectExt`: `typing.Optional[GList[typing.Any]]` instead of `GList`\n* Datatype of `payload` of `NvDsPayload`: `typing.Any` instead of `capsule`\n* Datatype of `user_meta_data` of `NvDsUserMeta`: `typing.Any` instead of `capsule`\n* Datatype of `mask` of `NvDsVehicleObjectExt`: `typing.Optional[GList[typing.Any]]` instead of `GList`\n* Datatype of `text` of `RectDim`: `typing.Any` instead of `capsule`\n* Datatype of `buffer` of `NvBufSurfaceFromFd`: `capsule[NvBufSurface]` instead of `capsule`\n* Datatype of `buffer` of `free_gbuffer`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `get_detections`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `get_nvds_LayerInfo`: `typing.Any` instead of `capsule`\n* Datatype of `data` of `get_optical_flow_vectors`: `capsule[NvDsOpticalFlowMeta]` instead of `capsule`\n* Datatype of `ptr` of `get_ptr`: `typing.Any` instead of `capsule`\n* Datatype of `data` of `get_segmentation_masks`: `capsule[NvDsInferSegmentationMeta]` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_Surface_Params`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_batch_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_classifier_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_display_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_event_msg_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_frame_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_label_info`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_object_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_person_object`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_tensor_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_user_meta`: `typing.Any` instead of `capsule`\n* Datatype of `arg0` of `glist_get_nvds_vehicle_object`: `typing.Any` instead of `capsule`\n* Datatype of `buffer` of `gst_buffer_add_nvds_meta`: `Gst.Buffer` instead of `_GstBuffer`\n* Datatype of `meta_data` of `gst_buffer_add_nvds_meta`: `typing.Any` instead of `capsule`\n* Datatype of `user_data` of `gst_buffer_add_nvds_meta`: `typing.Any` instead of `capsule`\n* Returntype of `gst_buffer_add_nvds_meta`: `NvDsMeta` instead of `_NvDsMeta`\n* Datatype of `data` of `nvds_batch_meta_copy_func`: `capsule[NvDsBatchMeta]` instead of `capsule`\n* Datatype of `user_data` of `nvds_batch_meta_copy_func`: `typing.Any` instead of `capsule`\n* Datatype of `data` of `nvds_batch_meta_release_func`: `capsule[NvDsBatchMeta]` instead of `capsule`\n* Datatype of `meta_list` of `nvds_clear_batch_user_meta_list`: `NvDsUserMetaList` instead of `GList`\n* Add `NvDisplayMetaList` as an alias of `typing.Optional[GList[NvDsDisplayMeta]]`\n* Datatype of `meta_list` of `nvds_clear_display_meta_list`: `NvDisplayMetaList` instead of `GList`\n* Add `NvDsFrameMetaList` as an alias of `typing.Optional[GList[NvDsFrameMeta]]`\n* Datatype of `meta_list` of `nvds_clear_frame_meta_list`: `NvDsFrameMetaList` instead of `GList`\n* Add `NvDsUserMetaList` as an alias of `typing.Optional[GList[NvDsUserMeta]]`\n* Datatype of `meta_list` of `nvds_clear_frame_user_meta_list`: `NvDsUserMetaList` instead of `GList`\n* Datatype of `meta_list` of `nvds_clear_meta_list`: `NvDsMetaList` instead of `GList`\n* Returntype of `nvds_clear_meta_list`: `NvDsMetaList` instead of `GList`\n* Add `NvDsObjectMetaList` as an alias of `typing.Optional[GList[NvDsObjectMeta]]`\n* Datatype of `meta_list` of `nvds_clear_obj_meta_list`: `NvDsObjectMetaList` instead of `GList`\n* Datatype of `meta_list` of `nvds_clear_obj_user_meta_list`: `NvDsObjectMetaList` instead of `GList`\n* Datatype of `src_user_meta_list` of `nvds_copy_batch_user_meta_list`: `NvDsObjectMetaList` instead of `GList`\n* Datatype of `src_user_meta_list` of `nvds_copy_display_meta_list`: `NvDisplayMetaList` instead of `GList`\n* Datatype of `src_user_meta_list` of `nvds_copy_frame_meta_list`: `NvDsFrameMetaList` instead of `GList`\n* Datatype of `src_user_meta_list` of `nvds_copy_frame_user_meta_list`: `NvDsUserMetaList` instead of `GList`\n* Datatype of `src_user_meta_list` of `nvds_copy_obj_meta_list`: `NvDsObjectMetaList` instead of `GList`\n* Datatype of `frame_meta_list` of `nvds_get_nth_frame_meta`: `GList[NvDsFrameMeta]` instead of `GList`\n* Datatype of `arg0` of `register_user_copyfunc`: `typing.Callable[[typing.Any, typing.Any], typing.Any]` instead of `typing.Callable[[capsule, capsule], capsule]`\n* Datatype of `arg0` of `register_user_releasefunc`: `typing.Callable[[typing.Any, typing.Any], None]` instead of `typing.Callable[[capsule, capsule], None]`\n* Datatype of `arg1` of `set_user_copyfunc`: `typing.Callable[[typing.Any, typing.Any], typing.Any]` instead of `typing.Callable[[capsule, capsule], capsule]`\n* Datatype of `arg1` of `set_user_releasefunc`: `typing.Callable[[typing.Any, typing.Any], None]` instead of `typing.Callable[[capsule, capsule], None]`\n* Datatype of `func` of `user_copyfunc`: `typing.Callable[[typing.Any, typing.Any], typing.Any]` instead of `typing.Callable[[capsule, capsule], capsule]`\n* Datatype of `func` of `user_releasefunc`: `typing.Callable[[typing.Any, typing.Any], None]` instead of `typing.Callable[[capsule, capsule], None]`\n\n## License\n\nThis project is published\nunder [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0) - please comply\nwith it, if you use/modify/distribute it. The license can be found in \"LICENSE\".\n\n## Appendix\n\n### Python venv\n\n```bash\npython3 -m venv .venv\nsource .venv/bin/activate\npip install --upgrade pip setuptools\n```\n\n### Links\n\n* [Project Home](https://github.com/nkaaf/pyds-stubs)\n* [pyds - NVIDIA DeepStream Python Bindings](https://github.com/NVIDIA-AI-IOT/deepstream_python_apps)\n* [pybind11-stubgen](https://github.com/sizmailov/pybind11-stubgen)\n\n### Notice for NVIDIA\n\nI recently (Jun, 2025) saw\na [discussion](https://forums.developer.nvidia.com/t/feature-request-add-python-stubs-to-pyds-library/333191/4)\non your forum. If there is any official stub support by NVIDIA, this project will be deprecated and\npublicly archived. I hope to hear from you ;)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Typing stubs for NVIDIA DeepStream Python Bindings",
    "version": "1.1.8.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/nkaaf/pyds-stubs/issues",
        "Releases": "https://github.com/nkaaf/pyds-stubs/releases",
        "Repository": "https://github.com/nkaaf/pyds-stubs"
    },
    "split_keywords": [
        "bindings",
        " deepstream",
        " nvidia",
        " stubs"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "545671b4dbc0e5b203174366bf50c8664919cfcfc0af2651035607a775f79744",
                "md5": "3843ef6efb71a7098046672c76e589e2",
                "sha256": "4843fcee2c186fab0fa6d8926293155d42d03e0fb259a841f0dd979219dc01a9"
            },
            "downloads": -1,
            "filename": "pyds_stubs-1.1.8.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3843ef6efb71a7098046672c76e589e2",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.9,>=3.8",
            "size": 40830,
            "upload_time": "2025-06-22T17:55:33",
            "upload_time_iso_8601": "2025-06-22T17:55:33.421733Z",
            "url": "https://files.pythonhosted.org/packages/54/56/71b4dbc0e5b203174366bf50c8664919cfcfc0af2651035607a775f79744/pyds_stubs-1.1.8.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ac53193628f90a6d9c32fe9876ab23c8e253061e29f1109e25a25a8b9e443f9d",
                "md5": "4b54ca1700313c7d4d08d7ffc709b4b0",
                "sha256": "12227fabf9cf9743143c9dc2b1877ff2c46afd79c524de5e3c0e31757ae37587"
            },
            "downloads": -1,
            "filename": "pyds_stubs-1.1.8.2.tar.gz",
            "has_sig": false,
            "md5_digest": "4b54ca1700313c7d4d08d7ffc709b4b0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.9,>=3.8",
            "size": 40828,
            "upload_time": "2025-06-22T17:55:34",
            "upload_time_iso_8601": "2025-06-22T17:55:34.698383Z",
            "url": "https://files.pythonhosted.org/packages/ac/53/193628f90a6d9c32fe9876ab23c8e253061e29f1109e25a25a8b9e443f9d/pyds_stubs-1.1.8.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-06-22 17:55:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "nkaaf",
    "github_project": "pyds-stubs",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyds-stubs"
}
        
Elapsed time: 1.49028s