Midi Tonal Delay Effect

Martin's icon

Hi,

I have an idea of wanting to create a midi effect. A tonal delay if you like.

I want to be able to create a midi effect that spits out octaves and fifths of the played note like a delay. Feedback control & everything. I tried starting one but got stuck. Mainly because of the tapin & out object are not really integrating in the midi world. The output of the snapshot won't connect to the midiformat anymore. Maybe pipe or delay~ would work, i just don't know how to integrate a feedback with those objects.
I realize that i'll have to connect the velocity to a delay line too, haven't got to that point yet.

I know i could also make a audio effect wich does the same thing with some pitch shifting, but this seems like an interesting challenge with no loss of audio quality.

Anybody?

Max Patch
Copy patch and select New From Clipboard in Max.

Mark's icon

You said it yourself: pipe

midi_delay_test.amxd
amxd 8.88 KB

Martin's icon

Gracias Mark!

Any way to incorporate a feedback into the pipe delay, or any other delay for that matter?
That was my goal with the tap objects.

Mark's icon

i suppose by "feedback" you mean: amount of delays and volume(velocity) of delays.
MIDI is an entirely different world than audio, it's interesting that you want to treat it as if it was audio, but for this you need Max not MSP (objects ending with "~").
you could experiment a bit stacking serial delay lines (ie: delaying the delays, as i have done on the attachment below). you could expand that by delaying, the delays of the delays of the delays..
you could use something like a [multislider] to set the relative velocity of each delay series so you don't have to seperately type in 0.8 0.6 0.3 0.2 for example for each velocity. or you could use a [line] object where you can set the "velocity multiplier" to drop from 1. to 0. in 600ms for example.
make sure to use a [midiflush] object as a "panic" button in case you start having hung notes.
you could also use [offer] to do that, which needs a little bit more understanding, but i suggest you just use [midiflush] for now so you can just carry on with your patching.

midi_delay_test.amxd
amxd 15.13 KB



Martin's icon

Cool.

Thanks for the effort. That's very clear. I started working on something last night, i'll post the idea soon :)