Skip to main content

Algorithmic composition for Bitwig Studio. Write Python, get songs.

Project description

openwig

Algorithmic composition for Bitwig Studio. Write Python, get songs.

License: GPL v3 Bitwig 6.0.6 Python 3.11+

Goes where Bitwig's official Controller API can't: build arrangements, devices, modulators, sidechains, automation, and full multi-track songs from a Python program, then render to .wav.

Free and open source (GPL-3.0). Windows only. Early beta.

Documentation →

A Note is (key, start_beat, duration, velocity) with named fields and defaults - build them with ordinary Python. openwig stays a thin layer over Bitwig; bring your own patterns.

from openwig import Song, Note

s = Song(tempo=128, bars=4, clean=True)

kick = s.track("KICK", device="v9 Kick")
kick.fx("Saturator", Drive=0.20)
kick.clip([Note(36, beat, dur=0.25) for beat in range(16)])             # four-on-the-floor

bass = s.track("BASS", device="FM-4")
bass.fx("Filter")
bass.clip([Note(33, beat + 0.5, dur=0.4, vel=0.85) for beat in range(16)])  # offbeat root

s.master(["EQ+", "Compressor+", "Peak Limiter"])
s.play()
print(s.render("song.wav"))

Compatibility

openwig Bitwig Studio Python OS
0.1.x 6.0.6 3.11+ Windows

The SDK reaches into Bitwig internals that move across releases, so it targets a specific Bitwig version. A mismatch refuses to connect with a clear error- bump the SDK when you bump Bitwig. Rendering uses WASAPI loopback (Windows).

Install

pip install openwig
python -m openwig install   # copies the controller into Bitwig's user dir

Then in Bitwig: Settings → Controllers → Add → OpenwigBridge (one time), and verify with python -m openwig doctor.

Full guide (requirements, troubleshooting, uninstall): Install docs →

Contributing

Issues and PRs welcome. Currently Windows + Bitwig 6, tested on Bitwig 6.0.6 only.

License

GPL-3.0-or-later. See LICENSE.

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

openwig-0.1.1.tar.gz (57.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openwig-0.1.1-py3-none-any.whl (56.1 kB view details)

Uploaded Python 3

File details

Details for the file openwig-0.1.1.tar.gz.

File metadata

  • Download URL: openwig-0.1.1.tar.gz
  • Upload date:
  • Size: 57.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for openwig-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0043e2b50e7db5759b82b735697d77fb2c851f833fffb01fe1142cb0cdd2addb
MD5 3a412882e3ff3edd94b403f765136d0f
BLAKE2b-256 4bf78651d89108d7300aa98dd0a3a31b5702a622921e1163b0585376c74393ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for openwig-0.1.1.tar.gz:

Publisher: release.yml on Axyom/openwig

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file openwig-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: openwig-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 56.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for openwig-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e9b9a02c9df507f38c7c6ad2da78248fcf5692142f4ffda24979534c5050beec
MD5 c219b0af9036c1b4e34e3b92f3f79c8f
BLAKE2b-256 15de704015962315792337a6cd426436e81fc7d36d11ce117fe78f725c8f5486

See more details on using hashes here.

Provenance

The following attestation bundles were made for openwig-0.1.1-py3-none-any.whl:

Publisher: release.yml on Axyom/openwig

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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