Aleatora
Aleatora is a music composition framework, implemented as a Python library, built around the abstraction of lazy, effectful streams.
What does that mean? Like most audio synthesis frameworks, Aleatora lets you build up complex sounds by connecting generators in an audio graph (function composition + parallel composition). Unlike most, it also lets you build things up horizontally: streams can be composed sequentially, so the audio graph change over time on its own (based on the computation described in the graph itself).
Additionally, streams may contain any kind of data type, not just samples. So you can use the same basic abstraction, and all the operations that it offers, to work with strings, events, arrays, MIDI data, etc., just as well as with individual audio samples.
Installation
First, set up the environment:
virtualenv venv -p python3 # or pypy3 for better performance
source venv/bin/activate
Then, get the stable version of Aleatora:
pip install aleatora # for optional features, append a list like `[speech,foxdot]` (or `[all]`)
Or, get the latest version instead:
pip install git+https://github.com/ijc8/aleatora.git
To ensure installation succeeded and that you can get sound out, try playing a sine tone:
from aleatora import *
play(osc(440))
Documentation
Metadata
Release files for aleatora 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| aleatora-0.2.1.tar.gz | 42.6 kB | Without provenance | Details for aleatora-0.2.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| aleatora-0.2.1-py3-none-any.whl | Python 3 | none | any | Details for aleatora-0.2.1-py3-none-any.whl |
Total release size: 88.4 kB
Release files / aleatora-0.2.1.tar.gz
| Download URL | aleatora-0.2.1.tar.gz |
|---|---|
| Size | 42.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c03c6ea6a5a26747d6cc23f07601f905b8eb3c3f25182d8ab9b12c6d3b2d889e
|
|
BLAKE2b-256 checksum How to use checksums |
7afd2222b934e06fe3c48192063ae689d7a5894dce15d468192578c027e21d9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.4
|
Release files / aleatora-0.2.1-py3-none-any.whl
| Download URL | aleatora-0.2.1-py3-none-any.whl |
|---|---|
| Size | 45.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cfdd92f6b14dddf195606ad27b968f56a8f0873d594c42ba6f1c9e966a8f6bbc
|
|
BLAKE2b-256 checksum How to use checksums |
04488022295224817e3d08d2de068210ad973fb4675ad9d6b28f33d4e1f90945
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.4
|
Security for aleatora 0.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.