Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/valsteen/note_effects_vst
Collection of note effects : note off delay and notes limit, note fan-out, note generator, modulable pitch and channel pressure, non-note filter, midi delay, maximum note duration
https://github.com/valsteen/note_effects_vst
bitwig generator-vst midi rust vst vst-plugin
Last synced: 4 days ago
JSON representation
Collection of note effects : note off delay and notes limit, note fan-out, note generator, modulable pitch and channel pressure, non-note filter, midi delay, maximum note duration
- Host: GitHub
- URL: https://github.com/valsteen/note_effects_vst
- Owner: valsteen
- License: unlicense
- Created: 2020-11-15T16:41:26.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2021-06-20T20:49:33.000Z (over 3 years ago)
- Last Synced: 2025-01-31T15:45:51.515Z (5 days ago)
- Topics: bitwig, generator-vst, midi, rust, vst, vst-plugin
- Language: Rust
- Homepage:
- Size: 3.96 MB
- Stars: 15
- Watchers: 6
- Forks: 2
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Collection of note effects VSTs
- [Delay notes off, notes limit](#delay-notes-off-and-limiting-amount-of-running-notes)
- [Note fan-out](#note-fan-out)
- [Note generator](#note-generator)
- [Non-notes filter](#non-notes-filter)
- [MIDI delay](#midi-delay)
- [Maximim note duration](#maximum-note-duration)These VST plugins were made possible thanks to https://github.com/RustAudio/vst-rs
I made those plugins because some features cannot be achieved with just bitwig devices.
## Delay notes off and limiting amount of running notes
`note_off_delay` provides a feature similar to note latch, except that instead of leaving the note run forever, after the original note is stopped, it will still run for a configurable amount of time. This is implemented by delaying the note off midi message ; this can be considered as some sort of sustain pedal.
The plugin can also limit the amount of running notes, stopping the oldest note if an incoming note exceeds the configured limit. Both effects can be used independently or together.
The note off delay can be useful when jamming, making the sound fuller without having to keep your hands on the keys ; combined with the notes limit, this avoids saturation and dissonance despite the long running notes. You may want to split the note ranges using a Note FX layer and note filters, so low notes and high notes have different lengths and playing notes limit.
![](docs/note_off_delay.png)
## Note fan out
This plugin lets in one note out of N steps, allowing you to build a fan-out device by adding several copies of it in a note FX layer and selecting a different step for each. From there you could for instance have a note effect that only applies to Nth notes, or make a mono instrument polyphonic by having several copies of it ( use an instrument layer in that case ).
Example configuration with a distribution over 4 layers:
Here for instance each 4th note is transformed to be one octave down:
![](docs/fanout.gif)Additionally, using channel distribution each note will get a different channel. In order to not interfere with MPE, it starts at channel 2.
![](docs/fanoutchannel.gif)
Note: it's built-in in Bitwig since 3.2, using "round robin" on a note fx selector
## Note Generator
This VST is able to generate notes with configurable channel, velocity, pitch, and release velocity.
It can also independently generate pressure ( 0xD0 ) and pitch bend ( 0xE0 ) midi messages. Those messages cannot be independently produced by Bitwig, except by explicitly drawing them in a clip.In order to generate a note, just select the channel, pitch and velocity and move the trigger above 50%, and a note will be generated.
If you can modulate those parameters like here in bitwig with a beat LFO, you can easily generate notes.
![](docs/note_generator.gif)
Find here a screen recording to get a better idea:
## Non-notes filter
Some VSTs may misbehave when receiving unsupported CCs and other midi messages. Using a note filter Bitwig allows to block all notes and just leave other messages, this plugin does the opposite: any midi message that is not in the range 0x80 ( note off channel 1 ) - 0x9F ( note on channel 16 ) is filtered out.
## MIDI delay
Bitwig's timeshift is not modulable, and note delay is limited to 10ms. This plugin just delays all midi signal from <1ms to 1 second.
## Maximum note duration
Can be useful to modulate the length of notes after a note latch for instance, without enforcing the minimum
duration as well, that would happen if you would do it using the note length device. Can be also handy if you're
looking for a workaround for notes that keep running.## Building the VSTs
Requires Rust ( https://www.rust-lang.org/tools/install ), also check https://github.com/RustAudio/vst-rs on how to build VST plugins.
The repository includes a modified version of [osx_vst_bundler.sh](https://github.com/RustAudio/vst-rs/blob/master/osx_vst_bundler.sh) that creates VST bundles for Mac OS X
You'll get in `artefact` `.vst` bundles that you can put in a directory where your DAW finds plugins.