Max for Logic

If you want to do some MIDI processing during your music performance, there are a couple of ways to achieve this. Most DAW software does support some kind of MIDI processing capability. For Logic you have the Logic Environment, for Ableton Live you have Max for Live. If you have developed a Max MIDI effect (like the MIDI real-time Harmonizer that I did, with MIDI going in and only MIDI going out) and you use Logic, I found a nice way to combine them in a similar way that Ableton Live has done by integrating Max into Live (called Max for Live).

One way of integrating Max into Logic is to use the Logic Environment to do this. I'll show you how you can achieve this. I use the MIDI real-time Harmonizer as an example, but any Max application could work in this way.


What you should do is the following:

1: create virtual MIDI ports
2: set the ports in MIDI Harmonizer
3: create a cable switcher in Logic Environment
4: create an instrument in Logic Environment
5: wire all objects in Logic Environment

Read more: Max for Logic

Graphical MIDI Monitor released

graphical_midi_monitorWhen working with MIDI and programming synth sounds, you now and then need to know what's going on between your MIDI generating controller, like your keyboard, guitar synth, EWI, or pedal controllers, and your (soft) synths. If you need to monitor your MIDI signals there are a number of good applications, however, most of them show raw MIDI message data and numbers rather than easy to read parameters. Besides this, most other monitor applications only monitor MIDI data but do not generate any MIDI data.


So I decided to develop a Graphical MIDI Monitor using Max of Cycling74. The name indeed implies that all MIDI data you put into it is shown in a graphical manner which makes analysis a lot easier. Besides this, the Graphical MIDI Monitor can also generate MIDI messages by simply dragging sliders, dragging numbers and clicking keys. Read more...

Read more: Graphical MIDI Monitor released

Create virtual MIDI ports on Mac

If you want to have applications communicating with each other via MIDI on a Mac, here is a short explanation how to do this. As an example, if you want to use the MIDI harmonizer application to feed its output notes to your sequencer, in my case Logic, or any other stand-alone plug-in, you will have to create a virtual port where both applications can make use of in order to feed and access the MIDI stream. Besides this you would have to set the right MIDI virtual output port in your sending application as well as select the right MIDI virtual input port in your receiving application. When using Logic, you would have to route the actual virtual port into your sequencer input.

1: create a virtual port

In Finder, click on Go | Utilities and select the Audio MIDI Setup application.
Make sure the MIDI Devices tab on top of the Audio MIDI Setup window is selected.
Double click on the IAC Driver icon, the IAC Driver Properties window will open.
Now create a port by clicking on the + button, and name it for example "To Logic".


2: set the virtual port as output port in the sending application

In this example, select "IAC Driver To Logic" as MIDI output port in the MIDI Harmonizer.


3: select the virtual port as input port in the receiving application

In your receiving application, select the virtual port as MIDI input port. In Logic, the new virtual port is automatically added to all input ports and automatically fed into the sequencer.

4: route the virtual input port to your sequencer in Logic

To avoid duplation of incoming notes in Logic, you would have to make sure only input from the  virtual port is routed into Logic. By default, the sum of all input ports are routed into Logic. The problem with this can be that both the physical MIDI input port used as input for your sending application (e.g. the MIDI Harmonizer input) as well as the input from the virtual port (e.g. the MIDI Harmonizer output) are being fed into Logic, in this case duplicating the original input note in Logic.  

In Logic Pro click on Window | Environment and select Click & Ports from the drop-down list in the upper left corner. Make sure you only have a cable running from your desired virtual port in the Physical Input box towards other objects in your Environment, the SUM output should not be used. In this example route a cable from the "To Logic" port to the Input Notes object. That's it!





About me

I like music, especially making music. I listen to a lot of different stuff, but I like soul, jazz and fusion music most. I like to develop and experiment with tools to make music performance and improvisation on the spot more exciting. It is fun when unexpected musical things happen during a performance!

In recent years I developed the MIDI real-time Harmonizer, a tool for generating harmonized chords when playing a solo line. Inspired by the work of saxophonist Michael Brecker, I started to develop this tool to run on Mac and PC. Brecker played the Electronic Wind Instrument and used the Oberheim Xpander synth to generate random chords from an EWI solo line. Now you can accomplish the same thing with the MIDI real-time Harmonizer driving your own favourite (plugin) synths.

rss twitter youtube soundcloud facebook linkedin google