These are the Synthizer Python bindings. Se the Synthizer manual for more details and example usage.
You probably want the Pypi version, which will just pip install
for you
without a problem. But if you want to install from this repository it's sadly
more involved than just depending on it, since the Python bindings need to
produce a vendored version of Synthizer itself. It's possible to get source
distributions and wheels from the CI
runs, or you can follow
the following procedure:
- Clone this repo including the submodule:
git clone --recursive https://github.com/synthizer/synthizer-python
- From the root of this repo,
python synthizer-c/vendor.py synthizer-vendored
- Then
python setup.py install
orbdist_wheel
or whatever.
I (@ahicks92) don't have the bandwidth to maintain all bindings we might want and have primarily moved on to Rust. Consequently the Python bindings can be expected to lag behind Synthizer proper unless maintainers step up. You'll need to know C and Cython to get anywhere fast. Otherwise I'll just be adding to this as I have extra time. How this works is as follows:
- You decide to add something.
- if whatever you're adding is going to take more than 5 minutes and/or you
don't want to be told no after the fact, open an issue and propose a design.
- Or if someone else made an issue, use that one.
- add the thing and submit a PR.
- I review your PR.
- We land your PR.
- anyone who needs to use Synthizer without a release can use the instructions above for installing from the repository.
- At some point, usually around the time of a Synthizer release, I tag a release here as well and your changes go out to Pypi.
We're tracking things that need to be added as issues on this repository, if you're looking for ideas or a task list.