Den Traktor Loop-Recorder mappen
Die Loop-Recorder-Section auf dem S4-Controller bildet den Loop-Recorder der Traktor-Oberfläche 1:1 ab. Mit den Mapping-Commands lässt sich für die Funktionalität des Loop-Recorders recht einfach ein Mapping erstellen, und dieses entweder in ein User-Mapping für den S4-Controller oder in das Mapping für einen anderen Controller einbauen.
Ein Problem gibt es jedoch mit der Del/Undo/Redo-Funktionalität, für die es sowohl in der Traktor-Oberfläche als auch auf dem S4-Controller nur einen Button, aber zwei MIDI-Commands gibt. Das eingebettete S4-Mapping erlaubt den Zugriff auf alle drei Funktionen über einen Button, ohne hierzu einen Shift-Button drücken zu müssen. Lässt sich dies auch in einem S4-User-Mapping oder einem Mapping für einen anderen Controller implementieren? Leider nein.

Die In-Commands
Obige Abbildung zeigt das Mapping für die In-Commands des Loop-Recorders. Das Mapping ist
"straight forward" und weist keine Besonderheiten auf. Um auf den Delete-Button des Controllers sowohl die Delete-, als auch die Undo/Redo-Funktionalität zu mappen, führt in einem S4-User-Mapping und auch in Mappings für andere Controller kein Weg an einem Modifier vorbei. Obige Assignment Table verwendet Modifier #6, der entweder mit der linken oder der rechten Shift-Taste auf den Wert 1 gesetzt wird. Wenn M6 den Wert 0 hat, wird Delete ausgelöst, hat M6 den Wert 1, wird Undo/Redo ausgelöst.
Das eingebettete Mapping erreicht die Fallunterscheidung auch ohne Shift-Button, in dem es auf den Status des Loop-Recorders und den Status der Undo/Redo-Funktionalität zurückgreift. In eigenen Mappings stehen diese Informationen zwar zur Verfügung, jedoch leider nur in den Out-Commands und nicht als erweiterte Modifier-Bedingung. Stünden uns auch diese beiden Status-informationen – ähnlich wie für Slot State – als erweiterte Modifier-Bedingung zur Verfügung, könnte man einen Controller-Button wie folgt mappen:
| Command | Button in der Oberfläche | Loop-Recorder-Status | Undo-Status |
| Loop Recorder Delete |  | Recorder State = 1 | Undo State = 0 |
| Loop Recorder Undo/Redo |  | | Undo State = 1 |
| Loop Recorder Undo/Redo |  | | Undo State = 2 |
Dies alles ohne Modifier auf einen Button zu mappen wäre also ganz einfach gewesen. Ich verste-he nicht, warum diese Statusinformationen nicht als Modifier-Bedingungen vorhanden sind, um sowohl für User des Kontrol-S4-Controllers als auch für andere das Mapping an dieser Stelle zu vereinfachen. Dass dies ohne Shift-Modifier nicht funktioniert sollte auch bei Native
Instruments bekannt sein, da auch das exemplarische S4-User-Mapping die Shift-Tasten verwendet.
Status der Buttons anzeigen
Die zweite spannende Frage bei diesem Mapping ist, wie man es hinbekommt, dass sich der Ak-tiv-/Inaktiv-Status der Loop-Recorder-Buttons in den Buttons auf dem Controller widerspiegelt. Einfach ist dies bei den Buttons Record und Play, da diese in der Traktor-Oberfläche immer aktiv sind. Beim Play-Button ist dies jedoch unsinnig, da er nur dann aktiv sein sollte, wenn auch Au-dio im Loop-Recorder vorhanden ist. Um Verwirrung zu vermeiden, tue ich einfach so, als ob dieser Bug nicht vorhanden ist und mappe die beiden Out-Commands Loop Recorder Play/Pause und Loop Recorder Record auf die entsprechenden LEDs des S4-Controllers.
Nehmen wir uns nun die Buttons Size und Del/Undo/Redo vor. Diese beiden Buttons sind nur unter bestimmten Bedingungen aktiv.
Der Size-Button
Der Size-Button kann nur verwendet werden, wenn der Loop-Recorder leer ist. Diese Informati-on steht im Out-Command Loop Recorder State = 0 zur Verfügung. Um den Size-Button nur dann auf On zu stellen, wenn der Loop-Recorder kein Audio enthält, fügst du das Out-Command Loop Recorder | State ein und lässt den Status im S4-Button Center.LoopRec.Size ausgeben. Trage dann bei Controller Range sowohl für Min als auch für Max eine 0 ein; dieses Mapping sorgt dafür, dass der LED-Button nur an ist, wenn Loop Recorder | State den Wert 0 hat. Das Dialogfeld Controller Manager sieht für dieses Command dann so aus:

Die Buttons Del und Undo/Redo
Ähnlich steuern wir den On/Off-Status des Del-Buttons. Wegen der doppelten Funktionalität des Buttons für Del und Undo/Redo müssen wir im Del-Button sowohl den Loop Recorder | State als auch den Loop Recorder | Undo State anzeigen lassen:
- Ob Delete derzeit möglich ist oder nicht, wird angezeigt, wenn M6 den Wert 0 hat (Shift-Button ist nicht gedrückt). Der Status der LED hängt vom Wert des Out-Commands Loop Recorder | State ab.
- Ob Undo/Redo derzeit möglich ist oder nicht, wird angezeigt, wenn M6 den Wert 1 hat (Shift-Button ist gedrückt). Der Status der LED hängt vom Wert des Out-Commands Loop Recorder | Undo State ab.
Die folgende Tabelle fasst die für das Mapping benötigten Informationen zusammen:
| LED-Button | Funktionalität/ Button ist akiv wenn | Entspricht Statuswert | Button gemappt für | Modifier |
| Size | Set Loop Length Loop-Recorder leer | Loop Recorder | State = 0 | Loop Recorder | State Controller Range Min = 0 Controller Range Max = 0 | - |
| Del | Delete Loop-Recorder enthält
Audio und steht
auf Pause | Loop Recorder | State = 1 | Loop Recorder | State Controller Range Min = 1 Controller Range Max = 1 | M6=0 |
| Del | Undo Undo-Funktion verfügbar Redo Redo-Funktion verfügbar | Loop Recorder | Undo State = 1 Loop Recorder | Undo State = 2 | Loop Recorder | Undo State Controller Range Min = 1 Controller Range Max = 2 | M6=1 |
Das Mapping für das Out-Command Undo State sieht im Controller Manager so aus:

Autor: Rainer G. Haselier
Auszug aus Traktor 2 Bible
Letztes Update: 16. April 2011
3 Comments