Swingende MIDI-Clock: warum funktioniert das?

NickLimegrove

NickLimegrove

postprofessionell
Ja, das ist kein Tippfehler im Threadtitel. Ich wundere mich tatsächlich, warum das anscheinend so problemlos geht.

Und zwar:

Es gibt ja mittlerweile so einige Geräte, die damit werben, dass sie ein MIDI-Clock-Signal mit Swing ausgeben können. Die Idee ist dann, dass andere (sich selbst sequenzierende) Geräte, die dies Signal empfangen, dann ebenfalls anfangen zu swingen. Und zwar ohne dass man deren eingebaute Swingfunktion nutzen muss. Sie müssen nicht mal eine haben. Und noch schöner: mehrere Geräte, die die gleiche swingende Clock empfangen, sollen dann im Gleichschwung swingen.

Das klang für mich vor ein paar Jahren so genial, dass ich es gar nicht für nötig befunden habe, es mal auch wirklich zu probieren. Denn es hätte ja geheißen, dass man damit eines der großen Mankos der ollen 707, oder auch der gar nicht so ollen Drumatix (u.v.a.m.) beheben könnte: dass sie Swing nur in ganz grober Rasterung haben, und dass (v.a. bei der 707) schon die niedrigste Stufe oftmals viel zu schwungvoll swingt. Auch wäre das Problem der RX5 oder RY30 gelöst: dass der Swing hier "hart" in die Patterns einprogrammiert ist (die Noten also entsprechend dequantisiert sind), man also nicht nach Belieben im Nachhinein während des Abspielens umschalten kann. ...Dass solche Macken auf einmal wegfielen, das wäre zu heftig gewesen um wahrzusein.

Jetzt habe ich das dann doch mal probiert und kann gar nicht fassen, dass es doch irgendwie geht. Clockgeber ist bei mir der gute alte MIDIpal, dessen swingende Clock per MIDITemp auf mehrere Geräte verteilt wird. Und es geht ganz wunderbar.

Aber dass es das tut, das wundert mich halt weiterhin.

Weil:

Ich hatte gedacht, dass MIDI-Clock so funktioniert, dass auf der Empfängerseite immer Päckchen von 24 Ticks geschnappt werden, und der Zeitraum, in dem sie reinkommen, gemittelt und dann umgerechnet wird in einen BPM-Wert (den es ja defacto im MIDI-Standard nirgends gibt, IIRC). Wenn z.B. zwischen Tick Nr. 1 und Tick Nr. 25 ca. 500ms vergehen, dann wird das als "120 BPM" interpretiert. So jedenfalls stelle ich mir das vor. Und die Idee von der swingenden Clock beruht dann darauf, dass (für z.B. einen klassischen 16tel-Swing) immer abwechselnd 6 Ticks in langsamerer, und dann 6 Ticks in schnellerer Folge kommen. Sodass die "geraden" 16tel-Noten zwischen den 8tel-Noten ein Stückchen nach hinten wandern, weil der Empfänger 6 Ticks lang denkt: "118 BPM", und dann 6 Ticks lang: "122 BPM" o.ä.

Dass das aber in der Praxis *nicht* geht, hatte ich deshalb angenommen, weil das ja eine ziemlich schnelle und präzise Reaktion auf kleine Frequenzschwankungen innerhalb einer nur kurzen Anzahl von Ticks erfordern würde. Ich hätte nicht gedacht, dass 6 Ticks ausreichen, um daraus verlässlich ein Tempo zu mitteln (außer auf dem Papier, klar). Auch hätte ich gedacht, dass die Algorithmen der verschiedenen Maschinen zur Tempoermittlung so unterschiedlich sind, dass sich keine drei zufällig ausgewählten Maschinen bei einer swingenden Master-Clock einigermaßen harmonisch verhalten.

Aber anscheinend haut das doch irgendwie alles hin. Mag jemand erklären, wieso? Wie funktioniert die Umsetzung der Ticks in ein Tempo? Also, nicht, dass es fürs Musizieren irgendwie relevant wäre (hauptsache "it schwingt"). Freue mich dennoch über jeden Hinweis!
 
Zuletzt bearbeitet:
U

Uli_S

|||||
Es gibt ja mittlerweile so einige Geräte, die damit werben, dass sie ein MIDI-Clock-Signal mit Swing ausgeben können.
Kannst Du bitte außer dem von Dir genannten MidiPal nochmal "so einige Geräte" nennen?
MidiPal ist wohl seit 2014 nicht mehr bei Mutable Instruments zu bekommen.
 
fcd72

fcd72

|||||
Weil der Sequencer in deinem Gerät nicht nach einer Internen Clock läuft, sondern ganz dumm bei jedem eingehendem Tick den Sequencer einfach um einen Tick weiterbewegt. So folgt der Sequencer exakt der Eingangsclock - was er ja auch soll. Ist die Clock "wobbly" dann ist das dann eben so, weil "wobbly" kann ja auch Swing/Shuffle sein.
Der Ansatz das Tempo zu errechnen und danach zu laufen führt - weil es keinen genormten Algorhitmus gibt - möglicherweise zu abweichenden oder nicht exakt berechneten Tempi und somit zum auseinanderlaufen von Sequenzen. Was man ja nicht will.

Nebenbei: das ist das schwierige an Polyrhytmischen (digitalen) Sequenzern: da es eine gewisse kleinste Zeiteinheit gibt lässt sich das exakte Tempoverhältniss nicht immer genau wiedergeben - man muss sich dann überlegen wie man das auf die einzelnen Steps aufteilt. Auch wenn sich das meistens nur um Mikrosekunden handelt, wer Polyrhythmen verwendet lässt gerne auch mal den Sequencer so lange laufen bis das so weit auseinander läuft dass man es hört.
 
Zuletzt bearbeitet:
NickLimegrove

NickLimegrove

postprofessionell
Weil der Sequencer in deinem Gerät nicht nach einer Internen Clock läuft, sondern ganz dumm bei jedem eingehendem Tick den Sequencer einfach um einen Tick weiterbewegt.

Ist das so, ja? Daran hatte ich zunächst natürlich auch gedacht -- das dann aber wieder verworfen, weil es ja (soweit ich weiß) im MIDI-Standard heißt "24 Ticks pro Viertelnote". Daraus hatte ich dann das Prozedere mit der empfängerseitigen Tempo-Ermittlung geschlossen.
 
NickLimegrove

NickLimegrove

postprofessionell
Kannst Du bitte außer dem von Dir genannten MidiPal nochmal "so einige Geräte" nennen?
MidiPal ist wohl seit 2014 nicht mehr bei Mutable Instruments zu bekommen.

Gerne verwendet werden glaubich die Produkte von E-RM. Müsste es hier im Forum einiges zu geben.
 
fcd72

fcd72

|||||
Ist das so, ja? Daran hatte ich zunächst natürlich auch gedacht -- das dann aber wieder verworfen, weil es ja (soweit ich weiß) im MIDI-Standard heißt "24 Ticks pro Viertelnote". Daraus hatte ich dann das Prozedere mit der empfängerseitigen Tempo-Ermittlung geschlossen.
Zumindest funktionieren alle meine Sequencer so. Wieso man eine Interne Clock berechnen möchte, wenn man 24ppqn versteh ich nicht, es sei denn du brauchst eine höhere Auflösung. Aber auch bei der würde ich streng auf 24ppqn synchronisieren, egal was ich so zwischen den Ticks mache. Wenn man eine interne Clock benutzen sollte, würde MIDI einfach einen definierten Controller senden, oder?
 
NickLimegrove

NickLimegrove

postprofessionell
Kannst Du bitte außer dem von Dir genannten MidiPal nochmal "so einige Geräte" nennen?
MidiPal ist wohl seit 2014 nicht mehr bei Mutable Instruments zu bekommen.

Gern genommen werden glaubich die Produkte von E-RM (müsste es einiges dazu hier im Forum geben).

Auch hat der MIDIpal mindestens zwei Nachfolger inspririert: das MidiGAL und den MIDIbro.

Der ACME4 wäre ein weiteres Beispiel.

Denke, das kann als "so einige" durchgehen...
 
NickLimegrove

NickLimegrove

postprofessionell
Zumindest funktionieren alle meine Sequencer so. Wieso man eine Interne Clock berechnen möchte, wenn man 24ppqn versteh ich nicht, es sei denn du brauchst eine höhere Auflösung. Aber auch bei der würde ich streng auf 24ppqn synchronisieren, egal was ich so zwischen den Ticks mache. Wenn man eine interne Clock benutzen sollte, würde MIDI einfach einen definierten Controller senden, oder?

Okay, soweit verstanden. Das heißt dann in der Konsequenz: solange nach dem letzten Tick noch kein neuer reingekommen ist, macht ein (durchschnittlicher) Clock-Slave also nichts -- richtig?
 
Max

Max

|||||
die meisten Geräte hängen sich "stur" an die Clock - es gibt aber auch Geräte, die die Zeit zwischen Ticks messen (um so eine höhere Auflösung für Events zu bekommen) oder sogar nochmal komplett ein eigenes Zeitsystem verwenden (im letzteren Fall funktioniert dann auch eine swingende Clock nicht mehr, ich glaube z.B. bei manchen Elektron-Geräten ist das so)
 
S

Sabicas

Guest
Kannst Du bitte außer dem von Dir genannten MidiPal nochmal "so einige Geräte" nennen?
MidiPal ist wohl seit 2014 nicht mehr bei Mutable Instruments zu bekommen.


Ich nutze hier zweimal Swynx von Future Retro.. das läuft so stabil (umschalten der Clockteiler und Shuffle Intensität in Echtzeit) und macht die gewisse Würze aus.
Was mir fehlt wäre ein Sync Start Button.



 
S

Sabicas

Guest
Hier mal eine Demo wie das Swynx arbeitet. Ich hab die unterschiedlichen Clockteiler in Echtzeit umgeschaltet (wird immer Syncron zur Midiclock, bei der nächsten Eins umgeschaltet) und hab den Swing Faktor verändert.
Das ist jetzt nur der analoge Trigger Output, der ein SH101 Sequenzer syncronisiert, aber das funktioniert auch mit angeschlossenen DINSync und MIDI Sequenzer genauso gut und vor allem tight/stabil, zumindest bei dem Gear was bei mir rumsteht.
Der Drumbeat ist gerade, bis auf das shakerartige im Hintergrund, das hat 56% MPC Shuffle .

Anhang anzeigen swynx demo.mp3
 
Zuletzt bearbeitet von einem Moderator:
 


Neueste Beiträge

Oben