Skip to main content

Python bindings for the Vital synthesizer

Project description

Vita

Vita is a Python module for interacting with the Vital Synthesizer. It is not an official product related to Vital. Vita uses Effort-based versioning.

Installation

Vita is supported on Linux, macOS, and Windows. Install with pip:

pip install vita

Example

from scipy.io import wavfile
import vita

SAMPLE_RATE = 44_100

bpm = 120.0
note_dur = 1.0
render_dur = 3.0
pitch = 36  # integer
velocity = 0.7  # [0.0 to 1.0]

synth = vita.Synth()
# The initial preset is loaded by default.

synth.set_bpm(bpm)

# Let's make a custom modulation using
# the available modulation sources and destinations.
# These lists are constant.
print("potential sources:", vita.get_modulation_sources())
print("potential destinations:", vita.get_modulation_destinations())

# "lfo_1" is a potential source,
# and "filter_1_cutoff" is a potential destination.
assert synth.connect_modulation("lfo_1", "filter_1_cutoff")

controls = synth.get_controls()
controls["modulation_1_amount"].set(1.0)
controls["filter_1_on"].set(1.0)
val = controls["filter_1_on"].value()
controls["lfo_1_tempo"].set(vita.constants.SyncedFrequency.k1_16)

# Use normalized parameter control (0-1 range, VST-style)
controls["filter_1_cutoff"].set_normalized(0.5)  # Set knob to 50%
print(controls["filter_1_cutoff"].get_normalized())  # Get normalized value

# Get parameter details and display text
info = synth.get_control_details("delay_style")
print(f"Options: {info.options}")  # ["Mono", "Stereo", "Ping Pong", "Mid Ping Pong"]
print(f"Current: {synth.get_control_text('delay_style')}")  # e.g., "Stereo"

# Render audio to numpy array shaped (2, NUM_SAMPLES)
audio = synth.render(pitch, velocity, note_dur, render_dur)

wavfile.write("generated_preset.wav", SAMPLE_RATE, audio.T)

# Dump current state to JSON text
preset_path = "generated_preset.vital"

json_text = synth.to_json()

with open(preset_path, "w") as f:    
    f.write(json_text)

# Load JSON text
with open(preset_path, "r") as f:
    json_text = f.read()

assert synth.load_json(json_text)

# Or load directly from file
assert synth.load_preset(preset_path)

# Load the initial preset, which also clears modulations
synth.load_init_preset()
# Or just clear modulations.
synth.clear_modulations()

Documentation is not yet automated. Please browse bindings.cpp to get a sense of how the code works.

Issues

If you find any issues with the code, report them at https://github.com/DBraun/Vita.

Code Licensing

If you are making a proprietary or closed source app and would like to use Vital's source code, contact licensing@vital.audio for non GPLv3 licensing options.

What can you do with the source

The source code is licensed under the GPLv3. If you download the source or create builds you must comply with that license.

Things you can't do with this source

  • Do not create an app and distribute it on the iOS app store. The app store is not comptabile with GPLv3 and you'll only get an exception for this if you're paying for a GPLv3 exception for Vital's source (see Code Licensing above).
  • Do not use the name "Vital", "Vital Audio", "Tytel" or "Matt Tytel" for marketing or to name any distribution of binaries built with this source. This source code does not give you rights to infringe on trademarks.
  • Do not connect to any web service at https://vital.audio, https://account.vital.audio or https://store.vital.audio from your own builds. This is against the terms of using those sites.
  • Do not distribute the presets that come with the free version of Vital. They're under a separate license that does not allow redistribution.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

vita-0.0.5-cp313-cp313-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.13Windows x86-64

vita-0.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

vita-0.0.5-cp313-cp313-macosx_11_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ x86-64

vita-0.0.5-cp313-cp313-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

vita-0.0.5-cp312-cp312-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.12Windows x86-64

vita-0.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

vita-0.0.5-cp312-cp312-macosx_11_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ x86-64

vita-0.0.5-cp312-cp312-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

vita-0.0.5-cp311-cp311-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.11Windows x86-64

vita-0.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

vita-0.0.5-cp311-cp311-macosx_11_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ x86-64

vita-0.0.5-cp311-cp311-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

vita-0.0.5-cp310-cp310-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.10Windows x86-64

vita-0.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

vita-0.0.5-cp310-cp310-macosx_11_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ x86-64

vita-0.0.5-cp310-cp310-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

vita-0.0.5-cp39-cp39-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.9Windows x86-64

vita-0.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

vita-0.0.5-cp39-cp39-macosx_11_0_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9macOS 11.0+ x86-64

vita-0.0.5-cp39-cp39-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file vita-0.0.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: vita-0.0.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vita-0.0.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ee6325e14b580d7a3acb4edb83ecd0c4ff3ec389b98998d0f98910ab8fe91c2d
MD5 ed6ff7b31d3106430c7190f9180a803c
BLAKE2b-256 0875f00aa5e291979e35d7426b77bf03318ff743d23b4c022c838deb137cf307

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e85816d3117f3eae6bae0b62169d08e2f6a99e11c481a7a6425a093d8a8a79e
MD5 cc2edcbc2648a68cd2492b6ad2a35786
BLAKE2b-256 b72297a1087fa31c9a161ae1cc6c6defaef24d30c46a72e2479d1b119d8732c1

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp313-cp313-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp313-cp313-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 ca59dd229660a2816c34f2c09672109a904be78a0d9c52eca73f9218456b4c26
MD5 a433938518e3b1bb12f79234843223ee
BLAKE2b-256 3bcb3a4dee376ec3246fb30ba0fbae228d1223c2eaac0e71ca4becf78dcbf6c2

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8b57dd94e6766107c0a70e7ce0084cfbcb7d53a8729b8ee83edb6bc243b83f09
MD5 285fd05d8417a5f08dc68e05fa8e8443
BLAKE2b-256 d2a8e5cdbe95e814ef0a13d99b0bc2c8f84329807408608c9c898e3be21dd0f6

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: vita-0.0.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vita-0.0.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 424061ff621958a185a277fadbfa445d5690e500943c6491bcdbf8358466a5e0
MD5 993f3eb2e1a8add74432d66305a90cb3
BLAKE2b-256 6543fb1a50c8380bddb989426414782232a53a658b831920b56683a5e822508e

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5695c9aec465665979ec05c71ee4782aa0865043761cb04f442e0fd8d3a828f5
MD5 e314e787db38a2b916b39b2fa4439323
BLAKE2b-256 f2410036e64aecf7dd72cbc9d5828db9c7542b48ae40381eaa8cd3acef3e948b

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp312-cp312-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp312-cp312-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 2c82cc201779eae91620c4f5d1650ee2a76af2b92061977cafea630eccc28ba1
MD5 e5bddc74f04157ef4125ff56a9a8b2d6
BLAKE2b-256 9f1a62aaa922f5f94a2be38a17fc6c7850a68c10a3402164ea81403ccfe63bb4

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 df003fe9bf98dfd05bd102c8dd274aa04d0f44d0765366425ea739918dc677a1
MD5 0220cf59305bd68cdfdca003a0912f2d
BLAKE2b-256 2736bedd1def83281de25dd6aeaa59735cc05490d6dbff5e0b43686a918789bf

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: vita-0.0.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vita-0.0.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 50e6de3bb0c26580c1156b1a55873b2fe233595b98a915b58e35e3b058c1d38a
MD5 ad36685e35eec79d683b83e2ff740796
BLAKE2b-256 ef95cf42c3fe7c3f013e661f1795a695469eeb2b2aec0169017d9ca19c94074c

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2afdd6b6ab8740c2c1aae1a7613c9a0ce673da3b165043dbed860db57213785b
MD5 845e56fb5b6a0a40ccd570d1dbf10040
BLAKE2b-256 7d3624be3d30f43c3ea31fa8159c1d9c9748884acc58262bdd8b678c64d2bd04

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp311-cp311-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp311-cp311-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 56d0d33849fd52aa3ea98ed8fef8db55ac377cd07456a3fbd3d1bb863631d98a
MD5 961a9a94789e7eaa0fbe7a53f841f619
BLAKE2b-256 16e944034f68b5e920967f88f255ca0fbbfb30d735bc0ca2c7aa95d4435104aa

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d905055724303fc60c19d0ad4a3fa63895f1eb6a8d1d1ac920ca5a5fd467e07
MD5 76452705162ccd204d5d57b8e6e39057
BLAKE2b-256 775d3ffee7db85888f2bb2a6c1eb724bfdbca86b00f5a599074d205ba75bd745

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: vita-0.0.5-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vita-0.0.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b10ea667c954d65982a003768dffb7dcba37277b71ca333ae89d0d52fcc25c12
MD5 8d7cc7602ba7305b012aa649bf884c62
BLAKE2b-256 7a77927686d71cc61ddd09d6d02c233bab4b6507e49abe2f52a055158cd5f404

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 905135f9368e58ddeebef86f2e075edbaaf82c8349fa7102c28aa5f2814a9ff3
MD5 ffe7f137e0fd0f4e158a2b468c59c308
BLAKE2b-256 f083da00c7de2aa4c833c46a02ca4d3af0384e2c4fda2903e419001f0952f6ac

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp310-cp310-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp310-cp310-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 e0455b65382a31dfda1cd15cee028fff2f0efc1d2d082bb46f0c326a36b70289
MD5 20885d93bdf77df3bc9dd6caf121b11b
BLAKE2b-256 75969cbde63e583a22d6176fed8cb76cbba2dc66ea752c1d25f6d0b0876cba9e

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 09e87e287ba4d971d5fae292056234f60e2f9443ac4c5f428b7d8cb3882a584f
MD5 a6db9f1f0c2ca8cb5c292e682dd5f0b0
BLAKE2b-256 ba05f95ba7c77843cfff9c368eb20d9f9c5783a0ce208c51adc7d1ec069c6bd8

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: vita-0.0.5-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vita-0.0.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c2437cbbd42c10c086415654770293a00e7209f6369d2f9aaf8445fa9e3b5640
MD5 2cec934f0b1a0bd0e444414ca4ae5c48
BLAKE2b-256 9851608a96871f699dd4430396212c99e761bb67427b0870c2d47a8a89035c7a

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b096e45ebbdc2710eef6c3898ed390867264430287466d92547ac599df1cf31c
MD5 32494a8f9e75c98905303a6f9c105f63
BLAKE2b-256 a760b4b921a31ca439d8b6f5743118eada05e6cad0f3eb6b6ccd34cf38f32378

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp39-cp39-macosx_11_0_x86_64.whl.

File metadata

File hashes

Hashes for vita-0.0.5-cp39-cp39-macosx_11_0_x86_64.whl
Algorithm Hash digest
SHA256 c8e5930d895597e2da4f411524e93540ab224d769598f37ef65f64666d54bd53
MD5 2eb52efca67ebae909053b2ff2498ebc
BLAKE2b-256 10c88f4f0e014ef1d9e7d8d419e0849fdc53ea197dfced9ed33e2653f41bf842

See more details on using hashes here.

File details

Details for the file vita-0.0.5-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: vita-0.0.5-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vita-0.0.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3f53b5ec4c1d6492273e2c007281b2efcde4860a95def1a18e4a4365a01ee2fe
MD5 d07bdc458f1934fa6cf2e85fd4ff249c
BLAKE2b-256 e42df051f106f12985ecfadfbf9c8cda5323f0490d57bbbfcb322392dcc4609f

See more details on using hashes here.

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