Here is a beta version of my new cabbage synth. I would be very very grateful if any of you could try it and provide feed back. Bug report is welcome.
This synth only works with CABBAGE 2. The GUI will be messed up with cabbage 1.
This synth aims mainly at making pads / ambient sounds but thanks to FM it can also bring interesting spooky sounds.
- Single morphing Osc with sub-Osc . FM and Ring modulation also possible.
- Filters with envelope and LFOs. Filtered audio can benefit of its own audio envelope.allowing effects.
- Reverb, Echo, Chorus and Flanger
- Preset saving function
How does it works ?
You need to load 3 single cycle waveshapes (.wav files). A lot of them can be found there : https://www.adventurekid.se/akrt/waveforms/adventure-kid-waveforms/ (many thanks to the author of these).
In order to use the presets included in the zip file, Adventure Kid Wavshapes must be installed in a directory named "WaveShapes" in the directory containing the Morpheur.csd as follow :
If your installation is different, you have to manually edit the snaps files and modify the path to the waveshapes.
These wav shapes can be all the same or different. The two first one are using for morphing sound from the first one to the second one. The third one is used to FM the the pitch of the two first ones. In order to not use FM, put the encoder Freq Mod to 0.
How can you help?
If you find a bug or find a better way to do the things (CPU saving or better way implementing the functions)
If you find nice sound using the adventure kid wavshape, please share the preset.
If you play keyboard, please share a little audio demo.
Among other things there is something weird with the midi : from time to time a note plays for ever. There is a way to stop it playing : etiher click on Panic button or if playing with real keyboard, play the note pressing slowly the key (trying to have a velocity almost 0 and release it also very slowly)
Special thanks to @iainmccurdy and to @rorywalsh who have helped me a lot with their advices, teaching, tutorials and who always have shown a great patience. If this synth is worth it, then it is dedicated to both of them.
Special thanks to @t_grey and @gsenna for reporting bugs.
09/28/17 : fixed mixing audio /filter bug
10/05/2017 : implemented Host sync for morphing frequence, rei-mplemented Echo and Reverb for decreasing CPU usage. Also uploaded some presets. Some controller knobs message can be received (at least from alesis keyboards)
10/14/2017 : Minor bugs corrected. Binaural opcode implemented. Initial wavforms loadd at start.
You'll need to copy
"hrtf-44100-right.dat" from your Csound example (
Provided that the wavshapes are stored in a directory called
WaveForms under the directory hosting the morpheur synth, it will automatically load 3 initial wavforms.
10/17/2017 : Minor bug in table order corrected
11/08/17 : NEW Release. This is the final version (even if it is still beta). What is new :
A lot of improvements in the code (clearer, cleaner).
Some controls (N°20 : Morphing frequence, 21 and 22: FM and 31:Main Gain) work if your keyboard has some programmable knobs
Also if your keyboard allows it, you can play with aftertouch. (I did it with a Roland A-49 thanks to control knob)
Everything is in a zip file. Unzip it somewhere, and open it with Cabbage.
You can export it as a VST, if so do not forget to copy in the VST directory the others files (binaural files, snapshot, and wavshapes) in order to retrieve your presets.
( Note: you need the very latest cabbage from github as previous version had troubles with pathname, see this post for compiling it)
At start, the Morpheur loads automatically 3 wavshapes so you can play.
11/19/17 : Final version of Morpheur is released ! Thanks to the great help of @rorywalsh, there is no memory leak anymore.
As it is possible to use the waveshape for Adventure kid, Morpheur is available on github now. Simply clone or download the zip file. Extract the zip containing the waveshape in the same directory and you are good to go..
Here the link : https://github.com/JMC64/Morpheur