[Main Help]

MIDI in GeoShred

GeoShred supports both MIDI In, MIDI Out. MIDI controllers can be assigned to the Control Surface, and the MIDI Inspector, Menu->MIDI, is where devices, both real and virtual can be configured. Since the MIDI specification does specify a protocol for publishing/querying device capabilities, we came up with MIDI Presets to quickly set up common uses cases.

Generally you use either MIDI In or MIDI Out, it is not possible to use both at the same time, unless MIDI Thru is enabled for the device in question. In this case you can play MIDI In to GeoShred from an external controller and have it play notes in GeoShred while simultaneously sending notes to MIDI Out.

MIDI Inspector

MIDI Preset Editor

In the MIDI Preset Editor you specify parameters for MIDI Input and Output

Global Parameters



Bluetooth Inspector

Menu->MIDI->Bluetooth Icon - here you can connect to a Bluetooth device (for both input and output). Once a connection is made the device will automatically be enabled for Note Input and Note Output in the MIDI Devices Inspector.

Bluetooth connections can be tricky, especially when connecting from GeoShred to a Mac. Here's a way you can always get it to work:

MIDI Devices Inspector

Menu->MIDI->DIN Connector: Here you will see a list of MIDI sources (devices that send MIDI to GeoShred) and MIDI destinations (devices GeoShred can send MIDI to GeoShred). By default, Note Input for all devices is enabled when a device is first discovered. It is your choice to decide whether you want MIDI Clock or MIDI Thru, these are left off by default. You can (and should) turn off devices you are not using as this will lessen MIDI traffic. The Input/Output configuration is persistent across GeoShred launches.

Each device may have it's own idiosyncrasies regarding input and output. In general, you have to understand the settings on each device, as plug and play is only partially possible with MIDI.

The device labeled "Network Session 1" by default in particular requires a great deal of configuration to get going. From a Mac, what you typically do is connect your Mac and iPad to the same WIFI network and then use the Audio MIDI Setup app to connect your iPad to your Mac. A good description on how to do this can be found here

Having said this, we do not recommend using MIDI over WIFI for any serious production work or live performance, there can be timing problems and lost data. It is fine for experimenting though.



Control Surface

You assign MIDI controller mappings from the Control Surface editor. This enables GeoShred to send MIDI controllers from the Control Surface. On MIDI Input, controls will "fly" in response to MIDI messages.

Trace Window

In addition to using your ear to determine proper behavior, the Trace Window (Menu->Show Trace) will tell you if note/parameter values are being properly sent/received from MIDI and/or sent to the GeoShred synth engine.

IMPORTANT: Trace can affect performance, please turn it off before trying any fast playing experiments. The easiest way to turn off trace is to simply close the Trace Window, or Menu->Show Trace->Options->Reset. Nothing will be written to the trace log file if you close the Trace Window or reset trace options.

If you find a problem, please try to make it repeatable and demonstrate what is wrong both with the trace output and an audio recording, which you easily make with the Record button in the Trace Window.

We also very much appreciate video bug reports. You can just use your phone to make an informal video to send to us.

Everything that goes to the Trace Window is written to the trace log file, GeoShredTrace.log which is in the GeoShred Documents folder. If you tap the Clear button in the Trace Window, the file is reset. You can access the Documents folder with iTunes file sharing. We also like an app called Phone View for this purpose. Again, nothing is written to the trace log file if the trace window is closed or no trace options are active.

You also can copy the contents of the Trace Window (Menu->Show Trace->Copy) into an email message if device running GeoShred is not connected to a computer. Using the Notes app is another way to do this.

If you want to analyze trends in trace messages, most trace messages are written as tab-delimited text, which is good for use in Excel.

You can also open audio recordings in sound editing applications such as Audacity or Adobe Audition to do analysis on sound files. If you expect there are strange things going on with the sound (most commonly clicks, incorrect pitch bends etc.), this sort of analysis can help diagnose problems.

See the Options button on the trace window for all the things you can monitor in the trace window.

MIDI Recording and Playback

For the best timing use a digital Audio/MIDI interface to connect your iPad to your computer.

NEVER use a WIFI network connected to the Internet, or you will get very poor timing. In a future release we may integrate Ableton Link to address this issue - but there will be more latency -

You can use Bluetooth or an ad hoc network but the timing will not be as good.

MIDI Port Aliases

GeoShred has a concept of "MIDI Port Aliases". This provides a way to refer to actual MIDI ports that appear in the MIDI devices list in the MIDI Preset Editor without having to worry about the actual ports disappearing or changing. These ports are named Port 1 - Port 32.




[00000] 0.00000 1 7 62 midiOutController ThumbJam
[00001] 0.03501 1 7 66 midiOutController ThumbJam
[00002] 0.04886 1 7 67 midiOutController ThumbJam
[00003] 0.06439 1 7 68 midiOutController ThumbJam
[00004] 0.08363 1 7 69 midiOutController ThumbJam
[00005] 0.10295 1 7 69 midiOutController ThumbJam
[00006] 0.12933 1 7 70 midiOutController ThumbJam
[00007] 0.13910 1 7 70 midiOutController ThumbJam
[00008] 0.15135 1 7 69 midiOutController ThumbJam
[00009] 0.16948 1 7 67 midiOutController ThumbJam
[00010] 0.18492 1 7 65 midiOutController ThumbJam

Multi-device MIDI Out

GeoShred can send MIDI Out to multiple virtual (or real) devices at the same time, but it can also assign each device to it's own range of strings

MIDI Recording

While you are trying the steps above, take note of what is happening in the MIDI recording. Look at both the Event window in Logic and the Trace window in GeoShred. Notice for all moves you do on the control surface and the expression pad, MIDI controllers are sent and received.

You can move seamlessly between arpeggiator playing mode, play mode and gliss mode without the sound stopping. Beware when you switch from Mono Intervals/Mono play mode to String play mode or Poly play mode. If you do that, running voices will decay keep ringing out until you hit the string they were ringing out on.

Mono Mode and MIDI recording

There are several cases of Mono Mode that you can experiment with. Be sure to try pitch bending in each mode (except Piano Gliss) and also try restriking keys that are already sounding.

Example of how to send MIDI from a Rise or LinnStrument, through GeoShred and record to Logic


MIDI Implementation

GeoShred implements a subset of the MIDI Specification, along with the proposed MPE Extensions. For full technical details on MIDI, see The MIDI Manufacturer's Association



RPN Support

Whenever a MIDI preset is loaded or a parameter in it changed, the relevant. RPNs are updated

MIDI Program Change

When GeoShred receives a program change message it switches to either the next or previous preset in the setlist. This means program change is relative, not absolute.

MIDI Panic Button

The MIDI Panic button is your friend. Use it if there are ever stuck notes or anything else you don't want to hear. You can record the panic sequence into the beginning of MIDI recordings if you like if you want to be sure the previous state of the GeoShred is cleared.

Interval Separation Time and MIDI Clock

In Performance Settings->Perform->Config, the Separation Time for successive notes of a chord can be slaved to MIDI Clock by enabling Performance Settings->Perform->Control / Master Rate / MIDI Clock.

The value of the Separation Time is in seconds, and it is the inverse of the bpm of the MIDI Clock times 60.0. Example: If bpm is 120, then a note occurs every half second. You can further multiply the Master Rate by a factor specified using the pop-up menu below Performance Settings->Perform->Config->Master Rate.

Key Y handling, Controller 74

MIDI In: Typically listen to Brightness (74) and apply the controller value to the stack of controllers on Key Y

MIDI Out: Typically use a MIDI Out controller to send to Brightness (74)

Initial Key Y values send before noteOn

If you have a conventional MIDI controller you can use the Modulation Wheel to affect things typically mapped to Key Y