Skip to main content

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)

Source distribution for aleatora 0.2.1
File Size Uploaded
aleatora-0.2.1.tar.gz 42.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aleatora 0.2.1
File Interpreter ABI Platform
aleatora-0.2.1-py3-none-any.whl Python 3 none any Details

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

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page