VFX Voice Priority

Post your ideas and suggestions here

Return to “To Do”

[You can only see part of this thread as you are not logged in to the forums]
TheDichotomist
Wed Sep 19, 2018 7:53 pm

x

VFX Voice Priority

This is a mock manual entry, describing a voice computer inspired VFX module I'd like to see in FL someday.

A VFX module which acts as the note priority systems in older monosynths did. Think of it like a VFX color mapper whose output mapping is determined by the number of notes held at a time. It splits chords across multiple midi channels. Useful for creating layers or ensemble patches in patcher, built of many generators; where the playing style determines which voices will sound, and how they interact with the rest of the ensemble.

Note: The VFX module is also a set of internal controllers; these output a static value based on how many notes are passing through each channel, and all channels at once. (17 outputs in total: 16 channels + their combined output) Useful for creating patches that change behavior with the number of notes played. See below.
  • Set polyphony/max voices per midi channel/color: With this parameter set to 2, and a three note chord is held, one of the three notes will play through the next channel/color in the list, based on the selected note priority system for the current channel. (See: "Set note priority" below.) This parameter can be set for each channel. (Example: Channel 1 polyphony = 2. Channel 2 polyphony = 1. Channel 3 polyphony = 4, etc)
  • Set global polyphony/max voices for the entire cycle: The above can be limited to any number of voices: If global polyphony is set to three and a four note chord is played, the fourth note will replace one of the first voices, based on the selected (global) note priority system. (See: "Set note priority" below.)
  • Output channel "voice index": Outputs a static controller value for automating other parameters. Based on the number of notes played for a particular voice. Each channel can have a unique value at any given time.
    • Tip: Linking this to a generator's volume can help to scale output levels based on how many notes are held.
  • Output total voice index: Outputs a static controller value for automating other parameters. Based on all notes passing to the VFX plugin.
  • Set note priority: Cycles color output/restarts the voice allocation cycle based on various prioritization schemes. A polyphony of 1 is assumed for the following examples.
    1. Low note: If two notes are played, the lowest note passes to the output, and remaining higher notes are discarded, or passed to the next channel.
    2. High note: If two notes are played, the highest note passes to the output, and remaining lower notes are discarded, or passed to the next channel.
    3. Last note: If two notes are played, whichever of them is pressed last, passes to the output, and remaining voices are discarded. This is how FL's channel polyphony currently works.
    4. First note: This is the opposite of last note. Assuming a polyphony of 1; when two notes are played at once, only the first will sound, while the remaining notes are discarded or sent to the next channel in the list.
    5. Velocity, high note: Same as High note, except velocity is prioritised before note number, according to the weighting set by the user.
    6. Velocity, low note: Same as low note, except velocity is prioritised before note number, according to the weighting set by the user.
  • Velocity weighting: Used with "Velocity, high/low note" priority. This control sets the velocity required to supersede the note priority. Positive values indicate a preference for higher velocities. Negative values indicate a preference for lower velocities. This control can be useful for using playing intensity rather than key number to change the voicing of chords. (choosing which notes are accepted by the current channel, and which ones are sent to a new output based on velocity)
  • Introduce glide, portamento, and legato style playing for native plugins: Glide time can be controlled per channel with velocity, key spacing, or a fixed value.
  • Carry glide (multi generator legato): When a channel/color's set polyphony limit is reached, the new voice (on a new channel) will be played (optionally) legato style, with glide time corresponding with the distance between the previous voice's note, and the current (new) note.
Last edited by TheDichotomist on Wed Dec 02, 2020 3:23 am, edited 13 times in total.

Avelina
Thu Sep 20, 2018 10:12 am

x

Re: VFX Voice Priority

This actually sounds incredibly useful. Especia...

saif.sameer
Thu Nov 29, 2018 9:27 am

x

Re: VFX Voice Priority

TheDichotomist wrote: Can't agree more! Tota...


CraigoryHam
Thu Dec 12, 2019 9:44 pm

x

Re: VFX Voice Priority

The more diverse and complex the toolset for pa...


Return to “To Do”