woodslanding wrote: ↑Mon Oct 16, 2023 11:36 pm I was curious to hear your waveguide test, but KVR says the file does not exist.
While I'm here.... does your plugin provide MIDI out? I.E., could I use it to create a midi only plugin? Looks like you have midi in, and midi processing...
I am trying right now the file on https://www.kvraudio.com/product/crescendo-by-bjt2 , the link with the name "digital waveguide test", and it works.
But if you have downloaded the .7z file, just load the VST and load waveguide.txt: you can experiment by yourself and also see the source code...
Excuse me if it was not clear that the .txt files are usable test files. I have not invented a file extension, so you can edit the file with any text editor.
EDIT: in case the waveguide.txt is not in the 7z file, you can download it here: https://www.kvraudio.com/product/cresce ... /downloads
Here you will find also links to the theory on which is based:
Theoretical background
https://ccrma.stanford.edu/~jos/pasp/Ac ... Delay.html
Actual simulation
https://ccrma.stanford.edu/~jos/pasp/Di ... odels.html
The difference between the 2 variants is that in one the "string" is excited with a filtered SINC and another with a filtered random noise pulse.
Regarding MIDI, long ago I was digging in the files of the VST SDK to see if there is some virtual function to redefine to declare that i am going to output MIDI.
I already issued "sendVstMidiEvent" in canDo(), i call sendVstEventsToHost() at the end of processevents() but no MIDI output was routed to the next VST in the chain at least in Ableton.
This was some time ago, so i gave up to modify more urgent things, but i haven't tried with other DAWs.
EDIT:
Ok, now i think i got it: i wanted to move the MIDI messages from a VST to the following ON THE SAME TRACK. It does not work this way at least in Ableton; the first VST on the track has a special treatment: sidechaining and MIDI can be passed only to the first VST and obviously the VST must be in another track!
I found this article on the Ableton KB:
https://help.ableton.com/hc/en-us/artic ... ST-plug-in
Looks like that the midi can be rerouted afterall but it is not a straightforward process...
This means that some other DAWs could already see the MIDI output, but since it's a copy of the MIDI in, it is not useful: it's only a repeater.
I performed many tests with many Crescendo copies in multiple tracks:
i managed to have a track that takes the MIDI from another track and the sidechaining from yet another track!
I wrote all the rules down and i will put a full description in the manual, so stay tuned: these rules will apply to other VSTs too, obviously...
Now i must only implement the message filtering/creation: for now Crescendo is just a repeater, but at least Ableton detects that Crescendo can output MIDI data.
This is another story. Probabily it will take some days.
After I have implemented the MIDI message rerouting/processing (and made Crescendo also a MIDI filter/arpeggiator), i may consider adding further MIDI effects...
I have also to modify the manual, this thread and the page in the developer section to highlight that Crescendo is a virtual instrument, Audio effect and (very soon) a MIDI effect...
MANY, MANY THANKS for the idea!