Suche ein Script

Hallo Ihr lieben,
Ich Arbeite mit Mairlist 4 und
dem Midi Controller Herkules ,
Ich wollte ein Script wo man wenn man
den Play Knopf drückt, die Lampe brennt
Sonst wenn player leer ist blinkt.

Ist Sowas möglich das umzusetzen?

Gruß Thorsten

Nur ganz kurz (ich hab leider den Kopf grad mit anderen Dingen voll):

Zum Einen wäre es gut, wenn Du mal eine genaue Gerätebezeichnung Hier reinstellst (evetuell mit Link), damit sich mögliche Aspiranten ein Bild machen können, um welches Gerät es genau geht.

Zu dem Script selber: wenn das Gerät MIDI spricht (über USB?), dann sollte das generell möglich sein. Ich habe etwas vergleichbares gerade für meinen Behringer CMD MM-1 geschrieben. Dieses müßte sich - theoretisch - an Dein Gerät anpassen lassen (vermutlich brauchst Du das meiste davon sogar gar nicht, wenn es Dir nur um ein Handvoll Knöpfe geht). Insofern kannst Du das vielleicht als Ausgangsbasis verwenden? Wie gesagt: Ohne Anpassung wird es vermutlich nicht funktionieren, da Du wahrscheinlich eine ganze Reihe Parameter anpassen mußt - aber mit der Dokumentation zum Gerät sollte das möglich sein.

LG

McCavity

Ich hatte das mit der VMS4 umgesetzt und das klappte Wunderbar, selbst als Nichtprogrammierer und Technik affiner. Besondere befehle wie z. .B Fadernutzung daüber gibt es auch Threads von Torben bzw. von mir erfragte.

Vorgehensweise: Systemsterung (in Mairlist) --> Fernsteuerung–> Hinzufügen -->Midi.

Dort die gewünschten Parameter ausuchen und Speichern… und jede Hercules (Miditaugliche) kann das was Du möchtest.

Hallo ,
ich habe das Hercules DJ Control mp3 e2 Midi.

Ich wollte wenn man den fader hochzieht und die Musik läuft das ,das lämpchen leuchtet .
Verzweifel schon ^^ .

Danke im Vorraus .

Cooles Script,

da ich mehr php bzw J-query Progi bin , kann mir einer sagen was das für eine Programmiersprache ist ?

Würde gerne wissen ab wo kopiere ich es , wie speicher ich sie ab , geht das mit einem normalen Editor ? bzw
mit welcher Endung .

Danke im vorraus

Moin,

erstmal danke für die Modellbezeichnung, anhand derer konnte ich schonmal das Handbuch finden, was die Sache ein bisschen erleichtert - aber kann das sein, daß das Schätzchen schon ein paar Tage älter ist? Wenn ich lese, das VirtualDJ 3 beigepackt ist und die Vorgeschlagene MacOS Versionen 10.4 und 10.5 sind… :wink: Aber egal, solange Du einen Treiber hast und das Ding an Deinem PC grundsätzlich funktioniert, muß uns alles andere nicht kümmern :slight_smile:

Zuerst mal zur Programmiersprache: Das ist Pascal Script von RemObjects - sehr eng an Pascal / Delphi angelehnt, was es zum idealen Partner in mAirlist macht, da letzteres in Delphi geschrieben ist. Ich programmiere meist auch andere Sprachen (Java, Swift, C, …) und Pascal hatte ich in der Schule mal gelernt (vor über 20 Jahren), aber ich eigentlich recht gut rein gekommen. Wenn ich mal irgendwo hänge, hilft meist eine Suche in Google, um das Problem zu lösen, da es tonnenweise Codebeispiele im Netz gibt - und auf dieser Seite: speziell, was die Interaktion mit mAirlist angeht, ist dieses Forum die beste Ressource (nicht nur mein Script, da sind noch ganz andere Könner unterwegs hier)

Zum Editieren reicht jeder einfache Editor (zur Not “Notepad.exe” in Windows), aber ich empfehle Dir einen Editor, der zumindest die Anzeige von Zeilenzahlen (bei längeren Scripts extrem sinnvoll) und ggf. Syntaxhighlighting für Pascal beherrscht. Ich selbst programmiere extrem viel in Unix, deshalb ist (nach wie vor) “vi” mein Haus-und-Hof-Editor und die “improved” Version (“vi improved” = “vim”) für Windows unterstützt sowohl Zeilennummern (":set nu") als auch Syntax Highlighting für Pascal.

Die Endung ist immer “.mls” (steht für “mAirlist Script”)

Abspeichern kannst Du sie im Prinzip, wo Du willst (mAirlist kann Scripts von überall her öffnen), ich empfehle Dir aber, ein Verzeichnis einzurichten, wo Du mAirlist Scripts sammeln kannsat, falls Du mal mehrere gleichzeitig benutzen möchtest. Ich habe dafür extra auf einem Datenlaufwerk einen Unterordner “mAirlist” eingerichtet, in dem ich weitere Unterverzeichnisse habe, zum Beispiel für Playlists, Scripts, etc, so daß ich alles beieinander habe (macht Dinge wie Backup oder das Teilen der (gleich bleibenden) Daten zwischen mAirlist Versionen bedeutend einfacher).

Jetzt wäre dann noch wichtig zu wissen: Du kannst in mAirlist Scripts auf zwei Arten und Weisen ausführen: Einmal gibt es im “Öffnen” Drop-Down eine Option “Script ausführen” (oder so ähnlich, ich sitze gerade nicht am Platz ;-)). Damit läßt Du ein Script *einmal * laufen, danach beendet es sich. Wenn Du Dir mein Script als Beispiel nimmst, dann findest Du ganz unten einen Abschnitt den ich mit dem Kommentar “// Main()” markiert habe (sorry, da war alter C-Programmierer am Werk ;-)): dieser wird durchlaufen, wenn das Script über das Menü einmal ausgeführt wird. Du siehst darin, daß ich nacheinander einige im Script definierte Prozeduren aufrufe und das war’s dann. Der Zweck dafür ist, daß man zum Beispiel an die Liste der MIDI-Geräte herankommt, die mAirlist erkennt. Dazu wie in der Kurzanleitung beschrieben den Wert der “DEBUG” Konstante auf “true” setzen und das Script einmal durchlaufen lassen. Danach sollte im Systemlog von mAirlist ein oder mehrere Einträge von MIDI-Geräten stehen.

Die Zweite Möglichkeit, die zum Tragen kommt, wenn Dein Script so weit angepaßt ist ist (d.h. mAirlist Device ID, MIDI-Channel und die Zuordnung der richtigen Werte zu den MIDI-Buttons (möglicherweise möchtest Du dazu andere Variablennamen nehmen, als ich, weil meine auf den Behringer CMD MM-1 angepaßt sind)), ist, Dein Script als Benachrichtigungsscript (im englischen “Notification script”) einzurichten. Dies geht in der mAirlist Systemsteuerung oder im Konfigurator. Dort gibt es in der Auswahlliste links den Punkt “Benachrichtigungsscripts”, wenn Du den auswählst, kannst Du den Pfad zu Deinem Script eintragen. Sobald Du das dort bestätigt hast, wird das Script geladen - allerdings wird jetzt nicht mehr der Abschnitt unten (der mit “// Main()” markierte) ausgeführt, der wird hier nicht mehr angefaßt, sondern jetzt kommen die vielen “on…” Prozeduren (Eventprozeduren) zum Tragen, die immer dann von mAirlist aufgerufen werden, wenn der entsprechende Event eintritt. Zwei dieser Prozeduren möchte ich an dieser Stelle besonders herausheben, das sind “onLoad” und “onUnload” - diese übernehmen im Benachrichtigungsscript (fast 1:1, ein paar Abweichungen sind drin) die Aufgaben des Teiles, der in der Einmalausführung durch “// Main()” markiert ist. Das funktioniert übrigens auch, wenn Du dann später zum Beispiel in der Systemsteuerung mit dem Häkchen bei Deinem Benachrichtigungsscript arbeitest: Wenn Du das Häkchen setzt, wird “onLoad” aufgerufen, nimmst Du es raus, wird “onUnload” aufgerufen - sehr praktisch, wenn Du Änderungen testen willst.

Noch ein Tipp zu Deinem Controller an sich: Dein Handbuch hat einen riesigen Vorteil gegenüber meinem: da stehen die genauen MIDI-Werte schon dezimal drin. Bei mir standen nur die Noten, so daß ich erstmal lernen mußte, die in dezimale MIDI-Werte zu übersetzen (und das mir, wo ich MIDI doch nur mal ganz rudimentär in den 80ern ausprobiert hatte ;-)). Schau Dir an, wie ich beim Behringer mit den “CUE” Buttons umgehe - die habe ich in meinem Setup als “Play” Buttons mißbraucht. Bei Dir ist dann der Blick auf die Seiten 22ff in Deinem Handbuch hilfreich: dort stehen sämtliche MIDI Codes schön in einer Tabelle beisammen. Interessant dürften für Dich vermutlich besonders “Play_DA” und “Play_DB” sein. Allerdings wirst Du andere “An- und Ausschaltcodes” verwenden müssen, als ich - der Behringer CMD MM-1 kennt die Zustände “aus”, repräsentiert durch den Wert “0” (wobei das nicht wirklich “aus” ist, die LEDs in den Schaltern leuchten immer orange, wenn das Gerät angeschaltet ist), “an”, repräsentiert durch “1” (was sich dadurch äußert, daß die Farbe der LED auf “blau” wechselt) und “blinkend”, repräsentiert durch “2” (was dazu führt, daß der Schalter abwechselnd orange und blau blinkt).

Dein Gerät kennt nur “an” (127) und “aus” (0) - d.h. Du mußt die Variablen “cLEDOn” und “cLEDOff” in meinem Script anpassen, “cLEDBlink” kannst Du komplett vergessen. Wenn Du blinken willst, mußt Du das selber machen. Tipp: je eine globale Variable für jeden Button, die den Status speichert (an, blinkend oder aus) und eine Timerprozedur, die alle halbe Sekunde (oder so) diesen Status überprüft und den an/aus Zustand der LED entsprechend kontrolliert.

Sollte eigentlich machbar sein, so weit ich das (ohe ein solches Gerät zu haben) sehen kann :slight_smile:

LG

McCavity

P.S.: Nicht über eventuelle Rechtschreibfehler wundern, es ist früh und ich hatte noch nicht genug Kaffee, um den Beitrag auch noch zu redigieren :wink:

Erstmal Danke für dein Report.

Ja das Gerät ist von 2008 - 2009 ca .