Skip to main content

Generate custom Ableton Live packs

Project description

alpax

PyPI - Version PyPI - Python Version Test & Release codecov


alpax allows you to generate custom Ableton Live packs. It supports adding audio previews and Live 12 tags to the pack content.

Currently, only directory-based packs can be created - generating .alp files is not supported.

Packs can be added to Live by dragging them into the Places pane.

This is alpha software. It works for my use cases but hasn't been extensively tested, and is missing plenty of functionality. APIs are subject to change. Please submit issues and/or PRs if you run into trouble.

Installation

pip install alpax

Usage

from alpax import DirectoryPackWriter
from time import time

with DirectoryPackWriter(
    "/path/to/output_dir",
    name="My Pack",
    unique_id="my.unique.id",
    # Tell Live to re-index the pack when it gets regenerated.
    revision=int(time()),
) as p:
    p.set_file("Preset.adg", "/path/to/Preset.adg")
    p.set_preview("Preset.adg", "/path/to/Preset.adg.ogg")
    p.set_tags("Preset", [
        ("Sounds", "Lead"),
        ("Custom", "Tag", "Subtag")
    ])

An async variant is also available:

import asyncio
from alpax import DirectoryPackWriterAsync
from time import time

async def run():
    async with DirectoryPackWriterAsync(
        "/path/to/output_dir",
        name="My Pack",
        unique_id="my.unique.id",
        revision=int(time()),
    ) as p:
        await p.set_file("Preset.adg", "/path/to/Preset.adg")
        # ...
asyncio.run(run())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alpax-0.2.0.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

alpax-0.2.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file alpax-0.2.0.tar.gz.

File metadata

  • Download URL: alpax-0.2.0.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for alpax-0.2.0.tar.gz
Algorithm Hash digest
SHA256 fd43bfec400f13fec4a9f86b8054cdbcc253ab5b1e9cf3053ee5fc8bf04be464
MD5 35da39f7146527e4abfc368746809bf4
BLAKE2b-256 ecad98ef3cf95ae9c95cd34ef31ee606d71a42c2280c2d1168e72f98ab6c8632

See more details on using hashes here.

File details

Details for the file alpax-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: alpax-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for alpax-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0d1635cc4f525a72e6d37c272de04dcd29e4467ba96f474fa29bcf581f141720
MD5 4515bdb83c6e949164ee524b38baa8d4
BLAKE2b-256 fc6cd70dc4b79c6b4d4d4b7bcb64fc97ff418790eb09ee8a6284acc506a4a9e8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page