This library is using the pyaudio and zignal libraries to play audio on a soundcard. This code was previously a part of the zignal library but split out into its own.
This library relies on pyaudio, which depends on the python development headers and the portaudio development files. On debian/ubuntu,
sudo apt install python3-dev portaudio19-dev
It is recommended to create a virtual environment and let pip install the dependencies automatically.
python3 -m venv <name-of-virtualenv>
. <name-of-virtualenv>/bin/activate
pip install zoundcard
Create a python3 virtualenv and install from the local source code to make the library editable.
python3 -m venv venv_dev
. venv_dev/bin/activate
pip install --editable .[dev]
Style guide enforcement using isort and flake8
isort --check-only --diff --gitignore --color \
--force-grid-wrap 2 --multi-line 8 --trailing-comma src/
flake8 --extend-ignore=E265 --statistics src/
python -m unittest --verbose --buffer src/tests/test_*.py
python3 -m venv venv_build
. ./venv_build/bin/activate
pip install --upgrade pip build twine
python3 -m build
Upload to pypi.org using twine
twine upload dist/*