Anzeige
MultimediaWindows

MIDI-Controller als Windows-Eingabegerät nutzen

MIDI-Geräte können nicht nur für Musik genutzt werden, auch als Programmstarter oder Makro-Board machen sie eine gute Figur.

Computer-Tastaturen lassen sich auf vielfältige Weise programmieren und mit Makros belegen. Zum Beispiel zum Starten von Programmen, für die Auswahl von Tools in der Bildbearbeitung oder spektakuläre Aktionen in Spielen. Das Blöde daran: Entweder ist Eure Tastatur dadurch riesig oder Ihr müsst ständig umschalten, per SHIFT, STRG, WIN, FN oder irre Kombinationen wie STRG+ALT+UMSCHALT+X. Viel besser: Ein separates Gerät – vor allem, wenn schon eines da ist ;)

Anzeige

MIDI-Controller = Eingabegerät

Kürzlich hatten wir einen ausführlichen Artikel zum Thema Musikproduktion für Einsteiger per MIDI. MIDI ist ein Protokoll, das in der Musikproduktion sowohl in der analogen als auch der digitalen Welt genutzt wird. Ein MIDI-Controller sendet im Grunde einfach nur Signale (hier) an den Rechner, die in der Regel von einer Digital Audio Workstation (DAW), also einer Produktionssoftware, interpretiert wird – sei es in Form einer gespielten Note oder eines gedrehten Reglers.

Insofern ist ein MIDI-Controller ein Eingabegerät wie Maus und Tastatur. Warum also nur für Musik nutzen? Zugegeben, das Nektar LX61+ ist ein tolles Gerät, aber gigantisch groß und nicht geeignet, um es ständig auf dem Schreibtisch herumstehen zu haben.

nektar midi cakewalk einstieg screesnhot
1: Pitch, Transponiern, Oktavwahl – die üblichen Buttons.
2: Knöpfe für DAW-Integration
3: Drum-Pads

Aber es gibt durchaus kleine Launchpads, die schlicht ein 8×8-Raster an frei belegbaren Pads (Tasten zum Draufhauhen, teils anschlagdynamisch) bieten. Das ist nicht nur hübsch, sondern auch recht günstig: Es gibt ja durchaus spezielle „Tastaturen“ für solche Zwecke, vor allem für Gamer gedacht. Zum Beispiel das Expertkeys EK-58 – 58 Tasten für 139 Euro! Der MIDI-Controller Novation Launchpad Mini bietet 64 Tasten für 59 Euro.

Bild: Novation/Focusrite Plc

Allerdings: Da MIDI-Controller nicht für solche Zwecke gedacht sind, sind sie natürlich größer und aufwändiger zu konfigurieren. Und beim EK-58 lässt sich zudem jede Taste individuell mit Texten und Symbolen versehen, einfach über kleine Zettelchen. Aber spätestens wenn bereits ein MIDI-Keyboard oder -Launchpad oder -Drumcomputer vorhanden ist, lohnt sich der Aufwand.

Anzeige

Autohotkey!

Mal wieder ist Autohotkey die Lösung, wie schon so oft in Artikeln bei uns. Hier müsst Ihr aber nicht von Grund auf skripten, sondern könnt auf das Open-Source-Projekt midi4ahk zurückgreifen. Dieses besteht aus einer DLL-Datei und einem Autohotkey-Skript, das die Verwendung der Funktionen innerhalb der DLL vereinfacht. Ihr müsst Euch aber mit beiden Dateien nicht unbedingt auseinandersetzen, sondern könnt einfach Nutzerskripte im selben Ordner ablegen. Das Projekt liefert dazu einige Beispielskripte, die sich einfach anpassen lassen.

Das Prinzip: Ihr legt eine Tastenzuordnung und eine Aktion fest – fertig.

Hier mal ein simples Skript, über das sich mit der tiefsten Taste auf dem LX61+ der Windows-Taschenrechner (calc) öffnen lässt. Es basiert auf dem mitgelieferten Beispielskript midi_in_lib_test.ahk, das eigentlich die ebenfalls mitgelieferten WAV-Dateien (Trommeln) abspielt. Diese Funktionen sind raus, es bleibt aber das „Drumherum“, das sich um den Ablauf des Programms kümmert.

#SingleInstance force
SendMode Input
SetWorkingDir %A_ScriptDir% 

OnExit, sub_exit
if (midi_in_Open(0))
    ExitApp
Menu TRAY, Icon, icon4.ico

;--------------------  Midi "hotkey" mappings  -----------------------
listenNote(36, "foobar")

return
;----------------------End of auto execute section--------------------

sub_exit:
    midi_in_Close()
ExitApp

;-------------------------Miscellaneous hotkeys-----------------------
Esc::ExitApp

;-------------------------Midi "hotkey" functions---------------------
foobar(note, vel)
{
    if (vel)
    {
    run, calc
    }
}

;-------------------------  Midi input library  ----------------------
#include midi_in_lib.ahk

Neu sind hier aber nur folgende Zeilen:

;Tastenzuordnung:
listenNote(36, "foobar")

;Funkion:
foobar(note, vel)
{
    if (vel)
    {
    run, calc
    }
}

Zunächst wird mit listenNote der MIDI-Note 36 der Name foobar zugeordnet. Anschließend läuft die Funktion foobar mit den beiden Parametern note (Taste) und vel (Anschlagsgeschwindigkeit) und führt auf Tastendruck mit run das Programm calc aus. Die if-Abfrage schaut einfach, ob eine Anschlagsgeschwindigkeit existiert (gleichbedeutend mit Note gespielt/Taste gedrückt). Ruft man die Funktion ohne if-Schleife auf, wird calc zweimal ausgeführt – vielleicht gibt es da noch eine andere Möglichkeit, aber wozu suchen? Diese funktioniert ;)

bild von nektar lx61+
Per MIDI-Note 36 (C) wird Calc.exe geöffnet – egal, ob Taste oder Drumpad.

Ihr könnt also ganz einfach erst die Tastenzuordnungen oben im Bereich Midi „hotkey“ mappings eintragen – dieser wird beim Start des Skript umgehend ausgeführt:

listenNote(36, "calc")
listenNote(37, "word")
listenNote(38, "irgendeinprogramm")
...

Und anschließend die Aufrufe unter Midi „hotkey“ functions eintragen:

irgendeinprogramm(note, vel)
{
    if (vel)
    {
    run, "C:\programme\mein-programm-xyz.exe"
    }
}

Und so weiter. Eine Übersicht der MIDI-Noten-Nummern findet Ihr hier.

Natürlich muss es nicht dabei bleiben. midi4ahk hat noch mehr zu bieten und innerhalb der if-Abfrage könnt Ihr sowieso aus dem Vollen schöpfen und mit Autohotkey zum Beispiel per Knopfdruck Textbausteine einfügen, Fenster transparent machen oder im Vordergrund halten oder in den Tray minimieren oder auf 720p skalieren oder auch Makros für Spiele, Gimp etc. triggern. Und auch bei den MIDI-Geräten muss es nicht bei den naheliegenden Launchpads bleiben – denkt zum Beispiel mal an Fußcontroller! Ganz neue Möglichkeiten eröffnen sich …

Hinweis: Bei den Amazon-Links im Artikel handelt es sich um Partnerlinks, sprich für alles, was Ihr kauft, bekommen wir Provision – weniger Geld für Amazon, mehr Geld für uns, kein Unterschied für Euch. Und damit Ihr wisst, dass wir es ernst meinen: Wenn Ihr mittels Autohotkey-Tastenzuordnungen und diesem Gerät (oder einem ählichen …) einen Kommentar mit mindestens 500 Zeichen schreibt und das auf Video festhaltet, gibt’s eine Tutonaut-Kaffeetasse ;)

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds. Wenn Ihr hier mehr über Open Source, Linux und Bastelkram lesen und Tutonaut unterstützen möchtet: Über Kaffeesponsoring via Paypal.freue ich mich immer. Schon mal im Voraus: Danke! Nicht verpassen: cli.help

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Do NOT follow this link or you will be banned from the site!