Input- Assignment: 1 Befehl zum Laden und 1 Befehl zum durchschalten

  • Hallo!


    Um eine Cuelist nur jeden zweiten, dirtten oder x-ten Takt weiterzuschalten, greifst du am besten auf die entsprechenden Cuelists selbst zurück. Wenn du den Trigger auf beat stellst und bei Value zum Beispiel 5 einträgst, wird die nächste Cue erst nach dem 5. Beat weiter geschaltet. Auch ist es in DMXControl 3 möglich, in jedem Cue einer Cuelist unterschiedliche Werte zum Weiterschalten beim Beat zu nutzen. Von daher würde ich empfehlen, über das Plugin grundsätzlich jeden Beat durchzureichen und erst in den entsprechenden Cuelist bzw. Cues zu entscheiden, wann weiter geschaltet wird.


    Gruß, Stefan.

  • Ja mein Ziel ist ja das jeder Bass Drum Schlag (Midi Note) als Beat durchgereicht wird.


    Deswegen will ich ja das über Beat lösen. (Falls das increment Beat das auch macht).


    Btw: ich hab jetzt ehrlich gesagt nicht ganz genau verstanden was diese Antwort mit meiner Frage zu tun hat ;) Aber trotzdem danke. :)

  • Ah ok, alles klar.


    Danke für den Hinweis.


    Ziel ist einfach nur jede hinterlegte Midi Note an Beat durchzureichen.

    Evtl. hinterlege ich das Midi Gerät und die Midi Noten hardcodiert.

    Je nachdem wie viel Zeit bleibt, da ich das ganze bis Samstag abschließen will.


    Nur die Infos wie ich an das BeatIncrement komme und aus welcher DLL die von Soekkle genante Klasse "AbstractKernelInputLayer " stammt, um das Input ASsignment zu verwenden fehlen mir noch.

  • Moin,


    Also die abstrakte Klasse kommt aus der Lumos.exe als dem Kernel und ist im Namespace org.dmxc.lumos.Kernel.Input. Die Methode IncrementBeat() signalisirt geneu einen Beatschlag. Die mit dem Channel vorbundenen Cue-Liste springen, wenn sie auf ensprechend eingestellt sind. um einen Schritt weiter.


    Hier mal ein auszug aus menen entsprechenden Code:

    Die Metode BeatCall wird über einen Call-Back aufgerufen. Der Vollständigkeit wegen hier noch ein Link zu anpassen der Geschwindigkeit: Cuelist Speed ;)


    ich hoffe das hilft dir weiter.


    Viele Grüße

    soekkle

  • Ok, also deine Klass LinkInputLayer muss dann im startUpPlugin registriert werden?


    Code
    protected override void startupPlugin()
    {
    
    LinkInputLayer lay = new LinkInputLayer("WO bekomme ich Session Name her???");
    InputLayerManager.getInstance().registerInputLayer(lay);
    }


    Wo bekomme ich dann den Session Name her?

    Was bewirkt das registerInputLayer genau? Heißt das, das durch deinen kleinen Code Schnipsel, mein Plugin schon im InputAssignment erscheint und ich dieses auf Beat rechts ziehen kann?


    Wenn ich dann mir einen Listener implementiert hat, der auf meine Midi Ereigniss reagiert, wie kann ich dann das BeatCall aufrufen? Oder muss ich das irgendwie über den ManualBeatProvider machen?


    Das schlimme ist mein Programm wäre eigentlich so einfach, nur ich bin einfach noch zu weit weg von der Materie.

  • Den Session Namen kannst du einfach auf "Kernel" setzen, wie bei allen Kernel Plugins.


    registerInputLayer macht genau das was du gesagt hast, es sagt dem Kernel, dass hier ein neuer Input verfügbar ist. Dein Input sollte im Input Assignment auftauchen und kann verbunden werden.


    Vom durchlauf her muss es so aussehen:


    "Dein Code tut irgendwas" => "Increment Beat" (=> Signal an Input Layer => Übertragen der Daten => Verwendung in Cuelist)


    Die eingeklammerten Sachen übernimmt DMXControl, bedeutet, du bist fertig wenn du "IncrementBeat" aufgerufen hast.

  • Newly created posts will remain inaccessible for others until approved by a moderator.

    The last reply was more than 365 days ago, this thread is most likely obsolete. It is recommended to create a new thread instead.