MAX
Cycling74MAX - Software Programming Environment
Die grafische, Objekt-orientierte Programmiersprache und Echtzeitumgebung "MAX" wurde seit Mitte der 80er Jahre von Miller Puckette bei IRCAM in Paris entwickelt und 1990/91 "freigegeben", d.h. an die Firma Opcode verkauft. Auch wenn es etwas anders aussieht, entstammt MAX doch der MUSICn-Philosophie und zeigt schon durch seinen Namen "MAX" seine Referenz an Max Mathews. Seit ihrer Einführung hat sich "MAX" ständig weiterentwickelt. Für die Freigabe wurde sie von ihrer Rechenmaschine (dem FTS-System bei IRCAM) getrennt und entwickelte sich zu einem vollwertigen Industrieprodukt (Max IRCAM/OpCode) für die Apple Computer Plattform. 1997 wurde dann "Cycling '74" von David Zicarelli gegründet, der seit den späten 1980er Jahren an der Entwicklung Programmierumgebung Max beteiligt war. Das Unternehmen verkaufte zunächst ein (Audio-) Add-On zu MAX, namens MSP, an Opcode, übernahm aber (glücklicherweise) bald selbst die gesamte Entwicklung und den Vertrieb von MAX. Inzwischen wurde MAX durch diverse Add-Ons, u.a. für Audio, Video und Robotik erweitert. In den über 30 Jahren seiner Existenz hat MAX sich auch zum "Standard" an Hochschulen entwickelt.
Für Informationen darüber, was MAX (inzwischen) alles kann und wofür es gut ist, empfehle ich die Website Cycling74 (Link s.o.) - nicht nur würde es den Rahmen meiner Website sprengen, ich kenne mich auch nicht (mehr) in allen Bereichen von MAX aus. Das "Paket" MAX ist so umfangreich geworden, dass man sich "unter normalen Umständen" nicht nicht für alle Bereiche interessieren wirdo, sondern nur für die, die für die eigene Arbeit von Relevanz sind.
Mittlerweile lassen sich für MAX Patches (im "Presentation Mode") auch sehr ansehnliche GUIs (Graphical User Interfaces) gestalten - also das, was auf dem Bildschirm während der Anwendung des Patches zu sehen ist. Zudem gibt es M4L (Max for Live), das sind PlugIns, die von der Software "Ableton Life", gelesen und benutzt werden können. Der neueste Schrei ist "RNBO", eine neue Patching-Umgebung "für den Export von Software mit dem Sound von Max". Das reicht von externen Geräten über Web-Anwendungen bis zu PlugIns für Audio-Software. Schliesslich gibt es einen "Package Manager", der viele externe Spezial-Lösungen von Max-Users enthält. Dort sind sehr interessante Pakete zu finden - mit "Bach" und "Cage" auch Notations-Pakete.
Für mich ist MAX schlechthin »die« Software auf meinem Computer. Ich mache damit »alles«, von der Steuerung analoger Modular-Synthesizer, über DSP (Digital Signal Processing), Lichtsteuerung, Live-Video, der Programmierung eines eigenen Password-Generators, bis zur Berechnung von Bibel-Zahlen (meinem "Hobby" seit den 90er Jahren).
Seit 2014 ist auch die iPad App "MIRA" dazugekommen, die ich sehr, sehr schätze. Sie ermöglicht es, (einige, nicht alle) MAX Objects auf dem iPad zu "spiegeln". Dazu wird einfach ein Frame in das MAX-Patch gesetzt, auf dem die zu spiegelnden Objekte so angeordnet werden, wie sie auf dem iPad zu sehen sein sollen. Dies ist mein "Control-Patch" für das Roli RISE Keyboard. Es ist in erster Linie ein MIDI-Monitor, erweitert mit dem Einstellungs-Möglichkeiten des RISE. So kann ich nicht nur die Einstellungen machen, sondern auch überprüfen, ob alles so gesendet wird, wie ich es eingestellt habe. Weil es "bequem" war, habe ich, zusätzlich zu den "5 Dimensions" des RISE noch Verteilungs-Kurven für die erzeugten RISE-Werte gesetzt. Die obere Reihe (Strike, Glide, Slide, Press, Lift) stellt ein, wie das RISE auf die Spielweise des Interpreten reagiert und die untere Reihe (mit den gleichen Bezeichnungen) generiert eine Interpretation der eingehenden Controller-Werte für die Verwendung im Patch.
Ein weiterer, für mich elementarer Punkt, war, dass nun der Computer nicht mehr vor dem Interpreten stehen musste. Seitdem habe ich meine Software als "Terminal" (in Tabs) angelegt und nur MIDI Controller und iPad waren nun am Instrument, bzw. das instrumentale Interface.

Es gibt nun mal nichts unattraktiveres auf der Bühne, als einen Interpreten, der hinter einem Computer sitzt (womöglich ein Brillenträger, der die Spiegelung des Monitors auf beiden Gläsern ins Publikum reflektiert). Die Reflektion stört die Konzentration und das Publikum fragt sich (anstatt sich der Musik zuzwenden), was er da wohl macht…
Nun waren die sichtbaren Controller auf dem iPad selbst die Slider, Regler oder XY-Pads. Vorbei die Zeiten, in der eine Mouse oder ein Trackpad (bei gleichzeitiger optischer Fixierung des Computer-Monitors) fast unumgänglich war. Statt einer MIDI-Faderbank lag nun das iPad beim Interpreten und konnte z.B. so aussehen.
Drei weitere Vorteile waren, dass 1. die sichbaren Oberflächen einfach gewechselt werden konnten (in diesem Beispiel waren sie mit den "Steps" verbunden) und 2. nicht immer 8 Hardware-Slider oder -Potis, die immer nebeneinander, meistens auch zu eng nebeneinander lagen. Nun konnten Control-Oberflächen "individualisiert" werden. Der 3. Vorteil ist auch enorm, denn jetzt muss man nicht mehr Extra Patches für die Controller-Steuerung programmieren. Insbesondere Motorfader einzubinden, war vorher oft die grösste (längste) Arbeit für ein MAX Performance-Patch.
MAX ist für mich oft auch ein perfekter "Problemlöser". Viele Geräte sind mit einer digitalen Steuerung versehen und haben MIDI. Einstellungen über die Hardware zu bewerkstelligen ist meistens ein nervenaufreibender Prozess. Im günstigsten Falle lassen sich Geräte über SysEx-Messages umfangreicher steuern oder zumindest konfgurieren:
Editor für das Kenton "Modular Solo" Modul
Da ich die Bedienung am Kenton Modular Solo Modul als äusserst unangenehm empfand, habe ich mir einen Editor programmiert. Alle Einstellungen über drei Drucktaster am Modul zu verrichten, ist antiquiert und man benötigt das Manual mit der Auflistung der Parameter, da die schnell durchlaufenden Abkürzungen für die Parameterbezeichnungen auf dem dreistelligen LCD kaum zu lesen (und zu verstehen) sind. Der Editor portiert die Bedienbarkeit in die Gegenwart..

Die Bedienung des Editors über ein iPad (mit der MIRA App) ist unschlagbar - eine echte Freude! Die Clocks des Kenton Modular Solo (und ein paar System-Einstellungen) habe ich in einem zweiten TAB untergebracht. So lässt sich das mit keinem anderen Controller umsetzen.
Es gibt noch so viele Geräte oder Instrumente mit MIDI, die am Gerät selbst so unangenehm zu programmieren sind, dass sie schließlich nicht mehr benutzt werden. Hier kann ein Editor eine lebensverlängernde Wirkung haben, da er alle Parameter des Instrumentes sichtbar macht und die Bedienbarkeit auf das heutige Niveau bringt. Die Kommunikation zwischen MAX und MIDI-Gerät geschieht hierbei über SysEx (Systemexclusive Data).
Nebenbei habe ich das "Manual-Problem" (dauernd im pdf-Manual nachzusehen) behoben, in dem ich die Texte für die einzelnen Parameter als "hint" eingefügt habe. Sie erscheinen, wenn man den Mouse-Zeiger auf dem Parameter des MAX-patches liegen lässt (siehe nächstes Bild).

Zuletzt habe ich meinem Editor die Möglichkeit der Speicherung der Programme auf- und das Laden von einer Festplatte hinzugefügt - schliesslich ist es ein Editor und das verlangt auch nach einer "Library". Das Modul hat 32 Programmplätze und die Programme lassen sich auch (ohne Editor) mit MIDI Program-Change Befehlen aufrufen. Einige Nutzer werden wahrscheinlich kleine Änderungen z.B. des Pitchbend Range, der LFO Einstellungen, etc., als Preset speichern und über MIDI PGM Changes abrufen. Sollen aber z.B. LFO-Waveform, -Speed oder Portamento-Rate beim Spielen spontan oder über Regler (in Echtzeit) geändert werden, ist SysEx der Weg.
Die MIDI Einstellungen des Editors lassen sich speichern und werden nach dem Öffnen des Editors automatisch geladen.
"Full Editor" für Yamaha TX81Z
Schon seit 5 Jahren besass ich einen Yamaha TX81Z Synthesizer (von 1987), den ich, obwohl er mir ausserordentlich gut gefällt, fast nie eingesetzt habe. Der alleinige Grund dafür war, dass der 19 Zoll Synth (1HE) am Gerät selbst einfach furchtbar zu programmieren ist. Schliesslich habe ich mir einen Editor programmiert - und einen zweiten TX81Z bekommen (es lassen sich zwei der 8-stimmigen TC81Z koppeln und ergeben dann einen 16-stimmigen TX81Z).

Der "Single Mode Editor" hat sich in der Folgezeit zum "Full TX81Z Editor" entwickelt. Ich habe ihn durch "Perform-Mode Editor", "Effects-Editor", "Program Change Table Editor", zwei Editoren für das Microtuning (Octave und Full) und den "System-Editor" ergänzt.

Da ich auch eine Seite mit dem Yamaha TX81z habe, ist die ausführliche Beschreibung dort zu finden:
Ein komplettes elektronisches Instrument
Zwischen 2018 und -20 hatte ich eine Software für den Pianisten / Trompeter Matthias Mainz programmiert. Zentraler Ausgangspunkt war es, einen virtuellen Piano-Sound mikrotonal stimmbar zu machen, um einen akustischen Flügel damit zu erweitern und den Gesamtklang so zu mischen, dass das Resultat als ein (einziges) mikrotonal gestimmtes Instrument erscheint. Es kamen noch ein Live-Looper (Sampler) und drei Buffer-Sample-Player dazu, die dann durch weitere Prozessoren (Filter, Delays, Shifter, RM, Doppler, etc.) über eine Matrix, zusammen mit dem Live-Input, verschaltet- und weiter manipuliert werden können.
Im folgenden Video ist diese "PlaYeR/CoNtRoL" Software von 2020 zu sehen: links ist das "Terminal" - das, was auf dem Computer-Monitor zu sehen ist. Rechts oben ist die variable Control-Oberfläche des iPad. Ein extremeres Beispiel für das, was mit MAX möglich ist. Alles ist MAX, auch die Audio-Bearbeitung (DSP), auch sind AU- und VST-PlugIns zu laden - also: ein komplettes elektronisches Setup, das über eine MIDI-Tastatur und ein iPad gespielt wird.
PlaYeR / ConTroL
MAX dominiert (natürlich) mein Computer-Leben. Mehr darüber ist (auf meiner Seite) hier zu lesen:
MAX - Auswirkungen auf mein Leben
1989, etwa ein halbes Jahr, bevor MAX (durch Opcode) in den Handel kam, wurde ich von Bruno Spoerri nach Oetwil am See (in der Schweiz) eingeladen, wo David Zicarelli eine mehrtägige Einführung in das "Programming Environment MAX" gab. Das führte nach Veröffentlichung von MAX dazu, dass ich engagiert wurde, um MAX an verschiedenen Hochschulen und Messen vorzustellen (wodurch ich den Apple SE30 [siehe Foto] finanzieren konnte, den ich für MAX unbedingt benötigte). Das war vor mehr als 30 Jahren - und führte zur grössten Veränderung in meinem Leben.
Durch die frühe Begegnung war ich Teil einer neuen "Familie" geworden - damals waren Computer noch nicht so verbreitet - und zu meinem schweineteuren Apple SE30 (auf dem Polaroid-Foto von 1991) hörte ich von Amiga- und Atari-Leuten:
"Kein Mensch braucht eine 40MB Festplatte!"
- ein Satz, der bekanntlich keine Zeit zum altern bekam.
MAX war eine unglaubliche Verkürzung der Wege. Es waren praktisch unmittelbar interessante Dinge möglich, die dann auch sofort musikalisch umgesetzt werden konnten! Damals lernte ich gerade C-Programmierung - auf dem Foto ist die als erste (gelbe) Diskette, eine Symantec "Think C" zu sehen. Das war Hardcore und benötigte bereits einige Monate, um überhaupt eine erste musikalische Funktion zu kompilieren - mit der aber noch nichts anzufangen war.
Damals arbeitete ich vor allem mit meinem Rhodes Chroma und einem EES-MIDI-Interface (eine Extra-Anfertigung für den Chroma). Das grosse "Problem" des Chroma war, dass er nur einen Slider hatte, um vorher aufgerufene Parameter zu ändern, und MAX erlaubte es mir nun, alle gewünschten Parameter gleichzeitig zu erreichen. Trotzdem war "Computermusik" noch eine schwer einschätzbare Sache.
Auch fünf Jahre später war MAX immer noch sehr exotisch für die meisten Leute, aber die Computer verbreiteten sich - und "die kreativeren" Musiker hatten meistens Apple Computer. Inzwischen war deutlich, dass Computer in Zukunft auch in der elektronischen Musik die zentrale Rolle spielen würden. Ich hatte, durch meine Verbindung zum "Elektronischen Studio der Musik Akademie Basel", inzwischen mit der M.A.R.S. ein Realtime-DSP-System, das der Zeit noch weit voraus war und das ich mit MAX steuerte.
Ein weiteres, untrügliches Zeichen zum Weiterbestehen von MAX war, dass ich zur Veröffentlichung des Testberichts von MAX 3.0 von der Zeitschrift "KEYS" für ein Interview eingeladen wurde. Dieses Magazin verkörperte eine ganz andere Richtung und war eher das "Magazin der Hauptstrasse". In den Hochschulen etablierte sich MAX bereits als Standard und Live-Elektronik wurde immer häufiger über MAX Patches gesteuert.
Ein besonderes Erlebnis für mich war es dann, als 1999, nach einem Konzert in San Diego, beim Abbau, Miller Puckette zu mir auf die Bühne kam, sich vorstellte und mir einige sehr schmeichelhafte Dinge sagte. Wir freundeten uns schnell an und es war interessant, den Mastermind hinter MAX kennenzulernen. Ein durch und durch aussergewöhnlicher und ein beeindruckend gutartiger Mensch!