voice-alligator package release

eLud's icon

Hey! I'm happy to share that the Max package "voice-alligator", which I co-developed with my friend Jan Godde, has been released and is now available on the Max Package Manager.

voice-alligator is a package for advanced voice allocation, offering more flexible and feature-rich control over polyphony compared to Max's built-in voice allocation system (i.e. poly~ or mc.voiceallocator~).

The package includes 3 externals and 1 abstraction:

voice-alligator - takes in MIDI style messages and allocates them to voices of a mc.poly~ patcher

voice-alligator~ - takes in MIDI style messages and outputs 9 MC signals: a frequency signal, an ADSR signal, and 7 additional signals outputting properties of the voices

voice-alligator-audio~ - the signal domain version. it takes in impulses, processes them in a [makenote] like fashion and outputs MC signals for driving synths. it's useful if you want your whole synthesis chain (note generation to output) to be in the signal domain.

voice-alligator-looper - records the output of voice-alligator and voice-alligator~, inlcuding the frequencies (microtonal data) and glide information, and plays it back into the same synthesis system. it also provides also a few methods for manipulate the recorded data

Depending on your use case you’d choose one of the 3 externals. They share a common set of attributes.

With the voice-alligator package you can:

…use the same voice patchers for both monophonic legato style and polyphonic synthesis. all 3 externals support switching between these 2 modes while playing. there is a setting called mono_steals_release that allows for legato and polyphony simultaneously

...access additional, easily manageable control over polyphony in Max

...have access to a lot of options on how stealing is handled (e.g. if the oldest note should be stolen (default), or the quietest note, etc.). notes can also be queued to have a different stealing priority using a feature we call “streams”. using streams you can, for example, have 2 legato voices playing the same instrument

…have access to a declicked version of a curved ADSR (courtesy of the min-dev-kit authors), mirroring the behaviour of live.adsr~ in voice-alligator~ and voice-alligator-audio~. this is currently not possible in Max, since live.adsr~ does not support declicking

…trigger sample-accurate chords using impulses (voice-alligator-audio~)

voice-alligator and voice-alligator~ also include built-in sustain pedal support and lots of other useful methods.

Have some fun checking out the demos in the helpfiles!

Also, I've recorded some videos documenting various features of the package:

It's open source and the code is available on my github:

eLud's icon

Version 1.3.5 is now out on the package manager. It has some bugfixes and some new features, as well as an example of a audio-rate triggered samplerplayer.

Changes:

  • va and va~ now can take in floating point midi notes

  • va-audio~ now supports more attributes by using list attributes

  • va-audio~ now has an "aux in" (see declick / aux tab in helpfile), !!ext-busy in moved one to the right!!

  • added a sampler example

  • fixed some declicking irregularities in va-audio~

  • renamed "output_mode" to "scale" in va and va~

here is a video of me playing around with the sampler example.