pyartnet


Namepyartnet JSON
Version 2.0 PyPI version JSON
download
home_pageNone
SummaryPython wrappers for the Art-Net protocol to send DMX over Ethernet
upload_time2025-11-04 05:56:59
maintainerNone
docs_urlNone
authorspaceman_spiff
requires_python>=3.8
licenseNone
keywords dmx art-net artnet sacn e1.31 kinet
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pyartnet
![Tests](https://github.com/spacemanspiff2007/PyArtNet/workflows/Tests/badge.svg)
[![Documentation Status](https://readthedocs.org/projects/pyartnet/badge/?version=latest)](https://pyartnet.readthedocs.io/en/latest/?badge=latest)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyartnet)
[![Downloads](https://static.pepy.tech/badge/pyartnet/month)](https://pepy.tech/project/pyartnet)


PyArtNet is a python implementation of the ArtNet protocol using [asyncio](https://docs.python.org/3/library/asyncio.html).
Supported protocols are ArtNet, sACN and KiNet.

# Docs

Docs and examples can be found [here](https://pyartnet.readthedocs.io/en/latest/pyartnet.html)


# Changelog
#### 2.0 (2025-11-04)
- **Breaking change**:
  Nodes now need to be run through an async context manager, e.g.:
    ```python
    async with ArtNetNode.create('IP') as node:
        ...
    ```
- Added support for transmitting multiple universes in sync
- Added support for transmitting SACN through the broadcast address
- ruff and typing fixes
- used UV

#### 1.0.1 (2023-02-20)
- Fixed an issue where consecutive fades would not start from the correct value
- renamed `channel.add_fade` to `channel.set_fade` (`channel.add_fade` will issue a `DeprecationWarning`)

#### 1.0.0 (2023-02-08)
- Complete rework of library (breaking change)
- Add support for sACN and KiNet

#### 0.8.4 (2022-07-13)
- Added linear fade (closes #14)
- Updated max FPS (closes #17)
- All raised Errors inherit now from PyArtNetError
- Some refactoring and cleanup
- Activated tests for Python 3.10

#### 0.8.3 (2021-07-23)
- No more jumping fades when using output correction with bigger channels
- Reformatted files

#### 0.8.2 (2021-03-14)
- Using nonblocking sockets
- Added option to send frames to a broadcast address

#### 0.8.1 (2021-02-26)
- Fixed an issue with the max value for channels with 16bits and more

#### 0.8.0 (2021-02-11)
- Added support for channels with 16, 24 and 32bits

#### 0.7.0 (2020-10-28)
- renamed logger to ``pyartnet`` to make it consistent with the module name
- callbacks on the channel now get the channel passed in as an argument
- Adding the same channel multiple times or adding overlapping channels raises an exception
- Added ``pyartnet.errors``
- optimized logging of sent frames

#### 0.6.0 (2020-10-27)
- ``ArtnetNode.start`` is now an async function
- ``ArtnetNode.step_time_ms`` renamed to ``ArtnetNode.step_time`` (shouldn't be used manually anyway)
- removed support for python 3.6
- added more and better type hints
- switched to pytest
- small fixes

---

`Art-Netâ„¢ Designed by and Copyright Artistic Licence Engineering Ltd`

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pyartnet",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "DMX, Art-Net, ArtNet, sACN, E1.31, KiNet",
    "author": "spaceman_spiff",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/19/d7/6d75c0bcaab1418e9f378549bca8a73a4c614fb2a051e333bc93b97cbfc1/pyartnet-2.0.tar.gz",
    "platform": null,
    "description": "# pyartnet\n![Tests](https://github.com/spacemanspiff2007/PyArtNet/workflows/Tests/badge.svg)\n[![Documentation Status](https://readthedocs.org/projects/pyartnet/badge/?version=latest)](https://pyartnet.readthedocs.io/en/latest/?badge=latest)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyartnet)\n[![Downloads](https://static.pepy.tech/badge/pyartnet/month)](https://pepy.tech/project/pyartnet)\n\n\nPyArtNet is a python implementation of the ArtNet protocol using [asyncio](https://docs.python.org/3/library/asyncio.html).\nSupported protocols are ArtNet, sACN and KiNet.\n\n# Docs\n\nDocs and examples can be found [here](https://pyartnet.readthedocs.io/en/latest/pyartnet.html)\n\n\n# Changelog\n#### 2.0 (2025-11-04)\n- **Breaking change**:\n  Nodes now need to be run through an async context manager, e.g.:\n    ```python\n    async with ArtNetNode.create('IP') as node:\n        ...\n    ```\n- Added support for transmitting multiple universes in sync\n- Added support for transmitting SACN through the broadcast address\n- ruff and typing fixes\n- used UV\n\n#### 1.0.1 (2023-02-20)\n- Fixed an issue where consecutive fades would not start from the correct value\n- renamed `channel.add_fade` to `channel.set_fade` (`channel.add_fade` will issue a `DeprecationWarning`)\n\n#### 1.0.0 (2023-02-08)\n- Complete rework of library (breaking change)\n- Add support for sACN and KiNet\n\n#### 0.8.4 (2022-07-13)\n- Added linear fade (closes #14)\n- Updated max FPS (closes #17)\n- All raised Errors inherit now from PyArtNetError\n- Some refactoring and cleanup\n- Activated tests for Python 3.10\n\n#### 0.8.3 (2021-07-23)\n- No more jumping fades when using output correction with bigger channels\n- Reformatted files\n\n#### 0.8.2 (2021-03-14)\n- Using nonblocking sockets\n- Added option to send frames to a broadcast address\n\n#### 0.8.1 (2021-02-26)\n- Fixed an issue with the max value for channels with 16bits and more\n\n#### 0.8.0 (2021-02-11)\n- Added support for channels with 16, 24 and 32bits\n\n#### 0.7.0 (2020-10-28)\n- renamed logger to ``pyartnet`` to make it consistent with the module name\n- callbacks on the channel now get the channel passed in as an argument\n- Adding the same channel multiple times or adding overlapping channels raises an exception\n- Added ``pyartnet.errors``\n- optimized logging of sent frames\n\n#### 0.6.0 (2020-10-27)\n- ``ArtnetNode.start`` is now an async function\n- ``ArtnetNode.step_time_ms`` renamed to ``ArtnetNode.step_time`` (shouldn't be used manually anyway)\n- removed support for python 3.6\n- added more and better type hints\n- switched to pytest\n- small fixes\n\n---\n\n`Art-Net\u2122 Designed by and Copyright Artistic Licence Engineering Ltd`\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Python wrappers for the Art-Net protocol to send DMX over Ethernet",
    "version": "2.0",
    "project_urls": {
        "Documentation": "https://pyartnet.readthedocs.io",
        "Issues": "https://github.com/spacemanspiff2007/PyArtNet/issues",
        "Repository": "https://github.com/spacemanspiff2007/PyArtNet'"
    },
    "split_keywords": [
        "dmx",
        " art-net",
        " artnet",
        " sacn",
        " e1.31",
        " kinet"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4d56a98750ea692d74ed5c2fe30760c93b4878097a1815c4c9ae3a9877d37292",
                "md5": "724ea77f5b1e45d712523bf3c4ec4608",
                "sha256": "f0e181dbdcce30806460685ae1ec45444b8ece446caac8593b5e42f327ac9a3d"
            },
            "downloads": -1,
            "filename": "pyartnet-2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "724ea77f5b1e45d712523bf3c4ec4608",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 26146,
            "upload_time": "2025-11-04T05:56:58",
            "upload_time_iso_8601": "2025-11-04T05:56:58.139094Z",
            "url": "https://files.pythonhosted.org/packages/4d/56/a98750ea692d74ed5c2fe30760c93b4878097a1815c4c9ae3a9877d37292/pyartnet-2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "19d76d75c0bcaab1418e9f378549bca8a73a4c614fb2a051e333bc93b97cbfc1",
                "md5": "03c54b95065be57258c082bcb2d04619",
                "sha256": "da88614eae7ed2feeeb741a7a790201668a12f7d5c458730cbe08677d4ad5c71"
            },
            "downloads": -1,
            "filename": "pyartnet-2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "03c54b95065be57258c082bcb2d04619",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 16296,
            "upload_time": "2025-11-04T05:56:59",
            "upload_time_iso_8601": "2025-11-04T05:56:59.573602Z",
            "url": "https://files.pythonhosted.org/packages/19/d7/6d75c0bcaab1418e9f378549bca8a73a4c614fb2a051e333bc93b97cbfc1/pyartnet-2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-11-04 05:56:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "spacemanspiff2007",
    "github_project": "PyArtNet",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyartnet"
}
        
Elapsed time: 8.34610s