Forum rss-feed

Forum

Software: sending aftertouch for MIDI

Most Recent

written by: NothanUmber

Are the talker keys to enable poly aftertouch for the Pico already enabled in the current unstable Windows version?
Btw.: Do the agents have some kind of introspection capability that allows us to trace it's capabilities (which inputs/outputs exist, which verbs are supported etc.)

written by: michaelgr

Wed, 24 Feb 2010 08:10:15 +0000 GMT

Hi,

is it possible to send aftertouch data for MIDI (and AU) instruments? I am using Pico with Logic's Sculpture and aftertouch is the missing link in making this a really expressive combination.

If it's not available now can I make a formal feature request?

Thanks,
Michael

p.s. is there a search facility for this forum? I'm trying to avoid asking questions that have already been answered.


written by: fzzzy

Wed, 24 Feb 2010 20:44:09 +0000 GMT

I don't know about sending it over MIDI, but I have had success using Plogue Bidule to convert it to OSC which I then use Max to convert into whatever parameters I want. I'm pretty sure it would be possible to convert it directly into aftertouch using Bidule as well.

Polyphonic aftertouch would be especially nice, but I'm happy with my solution since OSC has much higher resolution than MIDI, so even if eigenlabs implemented aftertouch I would probably still stick with my solution.


written by: barnone

Thu, 25 Feb 2010 04:39:22 +0000 GMT

hey fzzzy, any chance of sharing your Bidule patch? I just picked up Bidule a few weeks ago. Have plenty of programming and MAX skills but not super familiar with Bidule yet.

I have plenty of reason to want to use OSC for a few things.
Aftertouch is working really well with for example Trillian as an AU haven't actually looked at the midi output coming out of the external midi ports.



written by: michaelgr

Thu, 25 Feb 2010 12:07:36 +0000 GMT

Thanks for that fzzzy. I'll take a look at Bidule, it looks like it can be generally useful with the eigenharp.

I'm not sure it can help for this particular case. Sculpture has to run inside Logic so I have to load it as a MIDI instrument, not a standalone AU instrument. And I checked the midi output of the pico and it's sending mod wheel , gp16 (strip controller) and gp17 (breath pipe), but no aftertouch events.

The possibility of designing instruments in Sculpture to work on the Pico is keeping me up late at night. It's taking a bit of tweaking to get the controllers to play nicely with the morph function, but the missing aftertouch is a real handicap.


written by: barnone

Thu, 4 Mar 2010 01:59:16 +0000 GMT

Hey guys...something has drastically improved in unstable 12 around midi. I verified that it is in fact sending aftertouch streams. Also it's seeing all my virtual midi devices which I'm pretty sure it wasn't seeing before.

I connected my Alpha to Kyma and shot this video of the responsiveness. The latest version of Kyma has a virtual midi driver for Kyma and sends midi over OSC which is amazingly fast. Basically the first time I tried to connect the two the latency was terrible. Now it is the fastest midi response I have ever experienced.

I would love to see a 100% OSC implementation in eigenD so we could get all the independent key data. But currently I'm pretty happy with the connection I have.

http://www.vimeo.com/9899703


written by: fzzzy

Sun, 14 Mar 2010 17:50:42 +0000 GMT

Ok, I made a screencast of the setup I have created, where I use Plogue Bidule to filter the midi events coming out of EigenD and send expression data over OSC.

http://www.vimeo.com/9921276

As far as controlling Sculpture over MIDI-only, it should also be possible to turn the pressure AU parameter that I demonstrate into after touch events using Bidule, but I don't know enough about it yet to know how to do that off the top of my head.

bar|none: I just checked with Max and unstable 12 appears to be sending pitchbend but not aftertouch events. Perhaps it is the virtual midi driver that is sending aftertouch?

I'm curious about Kyma now, I'm going to have to go check it out.


written by: barnone

Fri, 5 Mar 2010 03:09:24 +0000 GMT

Awesome! Thanks for that. So with a bidule patch and an M4L patch we can get this expression data to Live at highres. With Kyma I can simply send OSC directly at highres. Kyma can process any parameter changes at a very high rate so can't wait to try it.

BTW..I saw the aftertouch by connecting eigenD to pacaranas virtual midi driver, then sniffling the midi using a midi sniffer.

This is already a talented community. Glad to be here.


written by: geert

Fri, 5 Mar 2010 06:49:08 +0000 GMT

@barnone, could it be that Kyma's midi driver is interpreting different things as aftertouch? I connected Bidule's MIDI monitoring directly to the virtual EigenD MIDI driver and couldn't see aftertouch at all.


written by: fzzzy

Fri, 5 Mar 2010 08:18:23 +0000 GMT

I'm confused about Kyma. Does it require the external DSP hardware, or can I download it somewhere to try standalone? It looks really awesome, but if it requires the hardware, I'd rather be saving for an Alpha right now :-)

I'd really like to know exactly how their virtual midi over osc driver works. It sounds like something that would be great to have.


written by: barnone

Fri, 5 Mar 2010 19:32:43 +0000 GMT

Yeah, it's hardware DSP engine + control software only.

Reason is that it's a true realtime audio engine, meaning ALL calculations are done on every single sample at the sample rate! All calculations. You can't do that in software.

It's really a sound design workstation for advanced audio design, manipulation, sounds effects, etc..

I'm really interested in sound design so it fascinates me and also sounds killer. especially since it can modulate any sound parameters at the same high rate.

As far as midi over OSC. I know Symbolic Sound was working with NIST on this and came up with an example protocol which is published here.

http://www.symbolicsound.com/cgi-bin/bin/view/Learn/BidirectionalMIDIStreamsOverOSC

Other links are here

http://www.sonicstate.com/news/2010/03/05/open-sound-control-osc-for-kyma/

@gbevin
>connected Bidule's MIDI monitoring directly to the virtual EigenD MIDI driver and couldn't see aftertouch at all.

I'll investigate further. I used this monitor http://www.snoize.com/MIDIMonitor/
Interestingly it also showed a bunch of 1 byte invalid messages which I'm not so sure about.

Try sending to a different midi port than the eigenD one and spy on that port.


written by: geert

Fri, 5 Mar 2010 19:27:04 +0000 GMT

What kind of sounds can it create? Can it do complex modeling and synthesis without adding latency?


written by: barnone

Fri, 5 Mar 2010 20:07:08 +0000 GMT

Pretty much anything that can be imagined.

Every kind of synthesis technique known, subtractive, additive, distortion synthesis, aggregate synthesis, smooth morphing between sounds (spectral morphing), change a dog into a cat, any kind of effects processing imagined, granular synthesis, spectral processing, pitch tracking, format banks, multiwave synthesis, it pretty much goes on and on.

create a new sound with cloud of 1000 sine waves and 1000 bandpass filters tracking the spectral content of another sound. Crazy stuff like that.

Also it can create very complex physical modeling for instruments. That's probably the most interesting with the eigenharp since the combination of a physical model and high resolution controller is extremely interesting. Some of the continuum examples have far out physical models of fanciful instruments never heard before and also real instruments like brass instruments and such. I'd love to be able to design new models for the eigenharp.

As I said, every calculation is done at the sample rate which means 0 latency. The only latency is from the audio interface to the DAW for example which is a fixed latency.

Since it's realtime, at some point a sound algorithmn can be too complex to execute in one sample, then you run out of realtime.

The pacarana ahs 4 very high speed DSPs and the jobs are distributed between them. Most even complex algorithmns don't even move the dsp above zero so I have no idea what kind of sound would pin the DSP.

I just patched up a digeridoo on my modular, I'd love to transfer that to Kyma and then create a physical model using the breath pipe on the Alpha, then use the Alpha keys to trigger a filterbank on the sound to sculpt it. I'm just really interested in that aspect. I don't need to pretend I'm using this to play gigs, cause I'm not.


written by: geert

Fri, 5 Mar 2010 21:33:25 +0000 GMT

@barnone, what I failed to find about Kyma is, does it ship with a collection of readily usable sounds, or are you supposed to create them yourself? If not, are there instruments that are sold in a ready-to-go form? I'm very interested in the zero latency approach, since that's what I use with my DSP processing on my Metric Halo units. It really makes a lot of difference. However, if only a handful of useful instruments are provided out of the box, I'll probably never have time to leverage Kyma.


written by: barnone

Fri, 5 Mar 2010 22:08:10 +0000 GMT

There are over 1000 sounds/effects in the standard library and you can combine sounds and effects easily (everything is a sound BTW whether it produces sound or modifies it). However, I will say that if your interest is not in designing sounds, than it's not a system I would get. You'd be better off with other plugins. A lot of the Kyma presets are very esoteric since after all it is used for things like movie special effect sound design, game sound design etc...

With the latest Continuum, they actual took the Kyma dsp engine and packaged a lightweight version with prepackaged physical sounds models in it. Interesting approach, maybe with the Continuum and Eigenharp capable of such expressive play, there is room for a hardware engine extensionbox to eigenharp with a load of new physically modelled instruments.


written by: geert

Fri, 5 Mar 2010 22:03:11 +0000 GMT

Ok, thanks barnone, that was very helpful!


written by: barnone

Wed, 10 Mar 2010 00:56:03 +0000 GMT

Ok, back to the topic at hand. Aftertouch.

There are 2 types of aftertouch, channel pressure (monophonic aftertouch) and true polyphonic aftertouch (poly key pressure).

EigenD unstable 12 is sending both message out it's midi ports. However, it seems to NOT send it to it's AudioUnits for some strange reason, at least this is what I see testing with MOTU's MX4.

16:26:15.169 To IAC Bus 4 Channel Pressure 1 33
16:26:15.169 To IAC Bus 4 Invalid 1 bytes
16:26:15.170 To IAC Bus 4 Control 1 General Purpose 4 (coarse) 0
16:26:15.170 To IAC Bus 4 Channel Pressure 1 32
16:26:15.170 To IAC Bus 4 Invalid 1 bytes
16:26:15.170 To IAC Bus 4 Aftertouch 1 A2 43
16:26:15.171 To IAC Bus 4 Channel Pressure 1 31
16:26:15.171 To IAC Bus 4 Invalid 1 bytes
16:26:15.172 To IAC Bus 4 Aftertouch 1 A2 42
16:26:15.172 To IAC Bus 4 Channel Pressure 1 30
16:26:15.172 To IAC Bus 4 Invalid 1 bytes
16:26:15.172 To IAC Bus 4 Aftertouch 1 A2 41
16:26:15.173 To IAC Bus 4 Channel Pressure 1 29
16:26:15.173 To IAC Bus 4 Invalid 1 bytes
16:26:15.173 To IAC Bus 4 Aftertouch 1 A2 40
16:26:15.173 To IAC Bus 4 Channel Pressure 1 28
16:26:15.173 To IAC Bus 4 Invalid 1 bytes
16:26:15.175 To IAC Bus 4 Aftertouch 1 A2 41
16:26:15.175 To IAC Bus 4 Channel Pressure 1 27
16:26:15.175 To IAC Bus 4 Invalid 1 bytes
16:26:15.176 To IAC Bus 4 Channel Pressure 1 26
16:26:15.176 To IAC Bus 4 Invalid 1 bytes
16:26:15.178 To IAC Bus 4 Channel Pressure 1 25
16:26:15.178 To IAC Bus 4 Invalid 1 bytes
16:26:15.179 To IAC Bus 4 Aftertouch 1 A2 40

There is this invalid byte sequence which is another matter and filing a bug for that.

So I am easily able to map monophonic aftertouch if I send midi to an IAC port and host MX4 for example in Ableton Live.

Interestingly, if I host MX4 as an AU in EigenD, it does NOT respond to monophonic aftertouch.

Now unrelated to eigenD, I can't make MX4 respond to the polyphonic variety sending it poly aftertouch via eigenD, via eigenD->midi or even via MAX even though I clearly see the polyphonic aftertouch messages in the midi stream.

And this is because, I believe Live does not support and hence strips out polyphonic aftertouch.

http://forum.ableton.com/viewtopic.php?f=1&t=134708

Now, I really hope that eigenD will send both varieties properly to the AU's, MX4 for example which does support poly touch and actually looks like a wonderful synth to connect to the eigenharp.

Now if I create a polyphonic aftertouch stream using MAX, you see that there isn't the invalid byte sequences in the monitor.

16:52:34.324 To IAC Bus 5 Channel Pressure 1 12
16:52:34.324 To IAC Bus 5 Aftertouch 1 E2 16
16:52:34.334 To IAC Bus 5 Channel Pressure 1 13
16:52:34.334 To IAC Bus 5 Aftertouch 1 E2 48
16:52:34.334 To IAC Bus 5 Channel Pressure 1 72
16:52:34.334 To IAC Bus 5 Note On 1 E2 72
16:52:34.342 To IAC Bus 5 Channel Pressure 1 15
16:52:34.342 To IAC Bus 5 Aftertouch 1 E2 57
16:52:34.350 To IAC Bus 5 Channel Pressure 1 17
16:52:34.350 To IAC Bus 5 Aftertouch 1 E2 65
16:52:34.358 To IAC Bus 5 Channel Pressure 1 21
16:52:34.358 To IAC Bus 5 Aftertouch 1 E2 70
16:52:34.366 To IAC Bus 5 Channel Pressure 1 23
16:52:34.366 To IAC Bus 5 Aftertouch 1 E2 75
16:52:34.374 To IAC Bus 5 Channel Pressure 1 26
16:52:34.374 To IAC Bus 5 Aftertouch 1 E2 77
16:52:34.382 To IAC Bus 5 Channel Pressure 1 29
16:52:34.382 To IAC Bus 5 Aftertouch 1 E2 79
16:52:34.390 To IAC Bus 5 Channel Pressure 1 32
16:52:34.390 To IAC Bus 5 Aftertouch 1 E2 80
16:52:34.398 To IAC Bus 5 Channel Pressure 1 36
16:52:34.398 To IAC Bus 5 Aftertouch 1 E2 81


written by: barnone

Wed, 10 Mar 2010 01:55:21 +0000 GMT

OK, I have polyaftertouch working with the eigenharp.

It's actually quite amazing.

First of all, if you want a good synth plugin that can respond to all the performance params of the eigenharp, MX4 is really impressive, although it's a deep synth so be warned there. The benefit is how easy it is to modulate lots of stuff with the eigenharp params.

So what I did was as follows.

I used Plogue Bidule standalone. I connected midi in (IAC 1) to MX4 and MX4 to audio out.

That's it.

Now I connect the eigenharp to Midi instrument port IAC 1 for example and Pogue Bidule receiving on that port.

Now I connect poly aftertouch param in MX4 to something like pitch or filter. Volia.

Man it sounds great.


written by: michaelgr

Wed, 10 Mar 2010 13:39:56 +0000 GMT

Hi barnone,

great that you got it working and thanks for sharing your setup.

Are you on an Alpha? I'm using a Pico and Midi Monitor isn't showing any aftertouch or pressure events with the unstable-12 software.

Cheers,
Michael


written by: barnone

Wed, 10 Mar 2010 15:36:13 +0000 GMT

Yes I am on the Alpha. Sounds like a setup param then, probably something that can be turned on through belacanto. I would like it turned on for hosted AUs too.

@eigenlabs: Can you guys share what command this would be to turn aftertouch on on the pico? And also the command to turn it on for AU's on both Alpha and Pico.

I found the Aftertouch sent to the midi ports on the Alpha to be impressively playable.


written by: michaelgr

Thu, 11 Mar 2010 21:36:41 +0000 GMT


I've opened the eigencommander and tried almost all combinations and permutations of 'midi, afterouch, output, all, k, set, do, prettyplease' on the command line with no luck yet.

If anyone at eigenlabs could point in the right direction, or at least say if it isn't possible, that would be great.



Please log in to join the discussions