Compose music with streams.
Project description
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file aleatora-0.2.1.tar.gz
.
File metadata
- Download URL: aleatora-0.2.1.tar.gz
- Upload date:
- Size: 42.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c03c6ea6a5a26747d6cc23f07601f905b8eb3c3f25182d8ab9b12c6d3b2d889e |
|
MD5 | d8374e870099602485434074087f17e8 |
|
BLAKE2b-256 | 7afd2222b934e06fe3c48192063ae689d7a5894dce15d468192578c027e21d9a |
File details
Details for the file aleatora-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: aleatora-0.2.1-py3-none-any.whl
- Upload date:
- Size: 45.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfdd92f6b14dddf195606ad27b968f56a8f0873d594c42ba6f1c9e966a8f6bbc |
|
MD5 | db2732695c2fef0daa17cc7f8d132546 |
|
BLAKE2b-256 | 04488022295224817e3d08d2de068210ad973fb4675ad9d6b28f33d4e1f90945 |