Pydantic models for defining Ableton Live song configurations
Project description
Song Schema
Pydantic models for defining Ableton Live song configurations.
Overview
This package provides a comprehensive schema for defining songs as JSON configurations that can be executed against Ableton Live via the OSC API.
Installation
poetry install
Usage
from song_schema import SongConfig
from song_schema.validate import validate
# Load a song configuration
song = SongConfig.load("examples/lofi-beat.json")
# Validate it
result = validate(song)
print(result.summary())
# Access properties
print(f"Tempo: {song.metadata.tempo}")
print(f"Tracks: {list(song.tracks.keys())}")
# Save changes
song.save("my_song.json")
Schema Structure
- metadata: Tempo, key, scale, time signature, groove, loop settings
- structure: Song sections (intro, verse, chorus, etc.) mapped to Ableton scenes
- tracks: MIDI/audio tracks with devices, clips, and mix settings
- mixing: Return tracks and master processing chain
Examples
See the examples/ directory:
minimal.json- Simplest valid song configurationlofi-beat.json- A realistic lo-fi hip-hop beatfull-coverage.json- Every field populated for reference
Related Projects
ableton-mcp-server- MCP server that exposes OSC tools to Claudeableton-osc-client- Python client for AbletonOSC
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
song_schema-0.1.0.tar.gz
(11.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file song_schema-0.1.0.tar.gz.
File metadata
- Download URL: song_schema-0.1.0.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.4 CPython/3.13.7 Darwin/25.2.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed1e98b3c4edf1235029d60dfa10c1781d5c3f22e061d2332af7db9ea26e1699
|
|
| MD5 |
da4f403b52092c5bdc2e33b897fd00a9
|
|
| BLAKE2b-256 |
e641852aa312b7f3fbaf412288c4bd61ec32366c258fb36a2d4a460171e93a13
|
File details
Details for the file song_schema-0.1.0-py3-none-any.whl.
File metadata
- Download URL: song_schema-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.4 CPython/3.13.7 Darwin/25.2.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ecbb275bea1d85bb97a9bdb2cb9a83d2aeaa1f3de65c888463bb24b2a805873
|
|
| MD5 |
0d3cc707c5bcc5f6150ec9c070847b78
|
|
| BLAKE2b-256 |
a8913a84216beb65ac1c8b8fe6ac2b26ec22f09d6cee102bdeccf36c6621fd54
|