Seite 1 von 1

Basic Realtime Sequencer

Verfasst: 28. März 2011, 16:39
von macrospank
Hallooo und danke für die Einladung Herw.

Da ich in Reaktor bisher nur die SQP sequenzer zum Thema Realtime sequenzer gefunden habe dachte ich mir ich widme mich dem Thema und programmier einen einfachen Event Table der z.b. über die QWERTZ Tastatur oder ein Midi Drumpad gefüllt werden kann.

Das problem war wie krieg ich die Einträge mit dem Korrekten Timing in den Table ohne auf den Bildschirm sehen zu müssen.
Das machte mich nämlich nervös immer abzuwarten bis der Table an der Startposition ist und in 99% der Fälle trifft mann dann doch nicht am richtigen Punkt.

Die Lösung ist ganz einfach :)
Damit der Eventeintrag für die BassDrum an der ersten stelle platziert werden kann muss die Clock nur für das erste ankommende Gate Signal zurückgesetzt werden bevor der Eintrag in den Table geschrieben wird.

Weitere Tables für Snares und HiHat müssen dann nichtmehr so zurückgesetzt werden und können normal angeschlossen werden.
Schon ist der Drumcomputer fertig.

Ich poste hier gleich mal den fertigen Grundstein des Projekts. Bei fragen oder Anregungen einfach losschiessen.
Eventuell hab ich später noch ne Frage zur Synchronisation falls dieses Beispiel nich als Masterclock für andere Geräte dienen soll.

Poste das Ensemble gleich mal hier...

Re: Basic Realtime Sequencer

Verfasst: 28. März 2011, 16:48
von macrospank
Hier isset ::kaffee::

Re: Basic Realtime Sequencer

Verfasst: 28. März 2011, 17:00
von herw
macrospank hat geschrieben:Hier isset ::kaffee::
Hallo macrospank,
:willkommen: hier ist es ja auch viel gemütlicher ::kaffee::

ich dachte mir schon, dass es ein order-Problem ist; aber es hätte mich zuviel Zeit gekostet, das genau nachzuvollziehen.
An der Struktur erkenne ich, dass du das ganze „nach und nach” entwickelt hast.
Solche Order-Logikprobleme sind in der Regel viel leichter in Core zu erledigen.
Ich schau mir dein Ensemble gleich mal an.

ciao herw

Re: Basic Realtime Sequencer

Verfasst: 28. März 2011, 17:21
von macrospank
Yay, das mit core hätt ich gerne gemacht nur gibt es da ne Reihenfolge der Signale wie bei dem Order macro in Primary?
Soweit ich weiss ist alles gleichzeitig in core ?

Re: Basic Realtime Sequencer

Verfasst: 28. März 2011, 17:25
von herw
macrospank hat geschrieben:Yay, das mit core hätt ich gerne gemacht nur gibt es da ne Reihenfolge der Signale wie bei dem Order macro in Primary.
Soweit ich weiss ist alles gleichzeitig in core ?
zunächst mal zu deinem Ensemble: so ist es viel klarer strukturiert; da hast du ordentlich aufgeräumt.
In Core ist die Logik natürlicher, es funktioniert alles so, wie man denkt.
Die Frage ist eigentlich, ob es unbedingt nötig ist, dass manche Events hintereinander erfolgen müssen oder nicht einfach gleichzeitig stattfinden können.
Aber es wäre jetzt nicht gut, das funktionierende Ensemble nur deswegen umzustrukturieren oder neu aufzurollen.
In Core gewinnt man Zutrauen, wenn man von vorne herein gleich bei einem Projekt damit einsteigt.

ciao herw

Re: Basic Realtime Sequencer

Verfasst: 28. März 2011, 19:57
von macrospank
Danke herw das du dir die Zeit genommen hast mal reinzuschauen.

Yep, funktioniert jetzt wie es soll und ich bin auch zufrieden. Dachte mir bis die Internationalen mal in die Gänge kommen, mach ichs selber nochmal.
Das macht auch einiges übersichtlicher und leichter wenn die Struktur aufgeräumt ist.
Das kann ich dir aber nicht versprechen das ich das nicht auch noch in core versuche :)

Kannst du mir ein kleines Praxisbeispiel geben wie ein Order Modul in core aussieht, oder geht das prinzipiell nich?

Re: Basic Realtime Sequencer

Verfasst: 28. März 2011, 20:51
von herw
macrospank hat geschrieben:Danke herw das du dir die Zeit genommen hast mal reinzuschauen.

Yep, funktioniert jetzt wie es soll und ich bin auch zufrieden. Dachte mir bis die Internationalen mal in die Gänge kommen, mach ichs selber nochmal.
Das macht auch einiges übersichtlicher und leichter wenn die Struktur aufgeräumt ist.
Das kann ich dir aber nicht versprechen das ich das nicht auch noch in core versuche :)

Kannst du mir ein kleines Praxisbeispiel geben wie ein Order Modul in core aussieht, oder geht das prinzipiell nich?
Ein Order-Modul wie in primary gibt es in core nicht (leider). Es gibt die Regeln für die Gleichzeitigkeit: alle Events, die Ursprung einer Event-Quelle sind, finden in core gleichzeitig statt.
Kommen diese Events von außen (primary), dann finden sie in der entsprechenden Reihenfolge statt, wie sie eintreffen.
Mit dieser Regel muss man in core Entscheidungen treffen, meistens wie in deiner Struktur logische Entscheidungen. Der Sequenzer liefert regelmäßige Events durch eine Taktung. Der Event, der von der Tastatur kommt (gate-event), geschieht dazu unregelmäßig. Insofern stellt dieser Event auch eine andere Eventquelle dar und kann so den regelmäßigen Event des Sequenzers jederzeit unterbrechen, also in diesem Fall auf den Startpunkt zurücksetzen.
Das ist eine sehr einfache und logische Denkweise, nicht im Sinne von order, sondern als Reaktion auf unterschiedliche und somit nicht zeitgleiche Events.
Eine Reihenfolge von Events, die auf ein und derselben Eventquelle basieren, gibt es nur in der logischen Abfolge. Dazu ist das Beispiel im core-Handbuch ganz anschaulich.
Eine andere Form der Reihenfolge gibt es auch beim Zugriff auf Speicher (OBC-Verbindungen): hier gilt, je weiter links, desto eher der Zugriff bei logisch zeitgleichem Zugriff, zum Beispiel über eine Taktung wie der SampleRateClock.
Um sich mit dieser Denkweise vertraut zu machen, könntest du einen einfachen synchronisierbaren Sägezahn-LFO konstruieren, da hier genau diese Abfolgen (regelmäßige Audiotaktung) und zum Beispiel ein Gate-Events, der die Phase auf Null setzt, gut zusammenarbeiten und zu beobachten sind.
LFO_reset.jpg
Das Beispiel ist jetzt wirklich äußerst einfach gestaltet und auf die Schnelle gemacht; also bitte nicht sehr kritisch damit umgehen.

ciao herw

Re: Basic Realtime Sequencer

Verfasst: 30. März 2011, 13:57
von macrospank
Hi,

vielen Dank für die Erklärung. So ist das schon viel unkomplizierter zu verstehen. Ich befasse mich gleich mal mit deiner demo und schau mir das Beispiel Handbuch nochmal an.
cheers ::kaffee::