Player Lautstärke automatisch absenken wenn das Mikrofon aktiv ist

Inhaltsverzeichnis / Gliederung


Nun denn.
Zustand nach :shower: und :spaghetti: : :sunglasses:

Vorbereitung

Scripte

Ein Script ist nichts anders als eine reine Textdatei, allerdings ohne die Endung *.txt.

:warning:
Das ist wichtig, denn die Datei muss scriptname.mls heißen und nicht scriptname.mls.txt.
Bitte bei der Erstellung der Datei, egal ob im Windows-Texteditor oder mit Notepad++, darauf achten.

Es braucht genau zwei Script-Dateien mit unterschiedlichen Namen. Diese Namen sind frei bestimmbar, ebenso wie ihr Speicherort.
In diesem Beispiel habe ich sie …

  • EncoderMicAbsenkungEin.mls
    … und …
  • EncoderMicAbsenkungAus.mls

… genannt.

Zu ihren Inhalten:

  • EncoderMicAbsenkungEin.mls
begin
  // Absenkung einschalten
  Encoder.SetOptions(Encoder.GetOptions + [eoDuckPlayerVolumeMic]);
end.
  • EncoderMicAbsenkungAus.mls
begin
  // Absenkung ausschalten
  Encoder.SetOptions(Encoder.GetOptions - [eoDuckPlayerVolumeMic]);
end.

Erweiterter Button

Der erweiterte Button wird als Bildschirmobjekt über Konfiguration > GUI hinzugefügt.

:information_source:
Diese Funktion ist nicht über die mAirList-Systemsteuerung erreichbar, da nach einer wesentlichen Änderung der GUI ein mAirList-Neustart notwendig ist. Das geht nicht mal eben so en passant im laufenden Betrieb.

Einrichtung

Die Konfiguration des erweiterten Buttons erfolgt in mehreren Schritten.

Aussehen

  • Unter “Standard-Text” trage ich einen Text ein, wenn der Text in jedem Zustand gleich bleiben soll. Ich komme später darauf zurück.

  • :arrow_right: Bei der “Button-Art” muss “Umschalt-Button” ausgewählt werden.

    • “Beim Programmstart aktiv” bewirkt, dass der Button unmittelbar nach dem Start von mAirList in den Modus “Aktiv” wechselt (und die damit verbundenen Aktionen ausführt), andernfalls beginnt er im Modus “Inaktiv”.
    • “Aktionen ausführen bei Fernsteuerung” sollte dann angehakt werden, wenn der Button in die mAirList-Fernsteuerung integriert werden soll. Hierzu gibt es nachfolgend einen eigenen Abschnitt.
  • Der markierte Kasten darunter ermöglicht es, für jeden Zustand eine eigene Vordergrund- und Rahmenfarbe sowie Variationen in der Schrift (Font, Stil, Farbe) zu wählen.
    Das ist bei gleich bleibendem Text (z.B. dem Standard-Text) sehr hilfreich.

Aktionen

Unter dem Reiter “Aktionen” wird definiert, was in welchem Zustand geschehen soll.
Ich muss eine Aktion hinzufügen und dabei auswählen, welche genau ausgeführt werden soll. Hier geht es darum, ein Script auszuführen:

Im nun folgenden Dialogfeld wähle ich das (bereits gespeicherte) Script aus.

Wie weiter oben bereits geschrieben, kann ich den Namen und den Speicherort des Scripts frei wählen. Als Beispiel liegen sie auf meinem Testsystem hier:

Explorer Ablageort der Scripte (Beispiel)

Wenn ich das nun bei “Aktionen wenn angeklickt bzw. aktiviert” durchführe und ebenso bei “Aktionen wenn deaktiviert”, sieht mein Aktionen-Fenster im erweiterten Button so aus:

Für den Basisbetrieb ist der Button nun einsatzbereit.

Erweitert (Button fernsteuern)

Wenn ich den Button nicht (nur) per Maus, sondern auch per Fernsteuerung (de-)aktivieren möchte, muss ich eine Fernsteuer-ID vergeben, über die ich diesen Button ansprechen kann.
In diesem Beispiel heißt sie ABSENKUNG.

:warning:
Die ID muss zwingend in Großbuchstaben geschrieben werden!

Um den Button z.B. über eine Taste erreichen zu können, richte ich mir über die Konfiguration oder mAirList-Systemsteuerung unter “Fernsteuerung” einen Hotkey ein.

:information_source:
Andere Fernsteuerungsarten sind natürlich auch denkbar; mit dem Hotkey wird die einfachste und in jeder Edition verfügbare Methode beschrieben.

Nachdem ich eine Taste ausgewählt habe, würde ich jetzt normalerweise über den dropdown-Pfeil einen Fernsteuerbefehl aus der Liste aussuchen. Da mAirList die Fernsteuer-ID ABSENKUNG standardmäßig nicht kennt, muss ich sie von Hand eintragen.

Möglich wären:

  • ON
  • OFF
  • ON/OFF
    (toggle)

In diesem Fall kann also ruhigen Gewissens ABSENKUNG ON/OFF eingetragen werden.

Fertig. :slightly_smiling_face:

Extras (aka “Sahnehäubchen”)

Individualisierung des Buttons

Ich hatte ja bereits angedeutet, dass man den Button mit einem Standard-Text versehen kann und jeweils nur die Farbe(n) und das Erscheinungsbild des Textes ändern kann.

Es ist aber auch möglich jedem Status einen individuellen Text zu verpassen. Dieser hat Vorrang vor dem Standardtext und kann zugleich den Schaltzustand ablesbar anzeigen.
Ein Vergleich:

Eurer Kreativität sind hier (fast) keine Grenzen gesetzt.

MIC ein / aus per Fernsteuerung schalten

Auch wenn ich diesen Button selber nicht schalten kann (er hat keine Fernsteuer-ID), so kann ich auch hier mit der Tastatur oder anderen Optionen die Funktion auslösen. Der Button selbst dient dann lediglich der Anzeige; er bleibt aber nach wie vor mit der Maus bedienbar.

Statt dessen benutze ich einen Fernsteuer-Befehl des Encoders:

  • ENCODER INPUT MIC ON/OFF

So erspare ich mir Mausfahrten und Klickereien. :sunglasses:

:bulb:
Wem der MIC Button im Encoder-Status nicht gefällt oder wer ihn selber gestalten möchte, stellt ihn im Encoder-Status ab und legt sich einen erweiterten Button zu wie oben beschrieben. Dieser kann textlich und grafisch nach Belieben gestaltet werden.

In den Aktionen muss lediglich …

  • Encoder >
    • Eingang ein- oder ausschalten >
      • Mikrofon-Eingang (an oder aus)

… eingetragen werden.

Scripte im mAirList-Verzeichnis

Durch die Möglichkeit, die Konfiguration komplett als *.zip-Datei sichern zu lassen (Konfiguration, Erweitert > Sichern/Wiederherstellen), kann ich natürlich auch Scripte mitnehmen - sofern ich sie in diesem Verzeichnis speichere.

Dazu muss das Script einfach nur im Verzeichnis
C:\ProgramData\mAirlist\[Versionsnummer]\config\
gespeichert werden.

Die Sache hat ein paar Haken:

  • Bei jedem Speichervorgang (Neuerstellung oder Änderung) muss das Administratorpasswort eingegeben werden. Dabei gehe ich davon aus, dass ihr nicht als Administrator angemeldet seid.
    :warning: Wir (ja, wir, die mairlist GmbH) raten dringend davon ab, den “Benutzer”, unter dem mAirList im täglichen Betrieb läuft, mit Administratorenrechten auszustatten! Manche PCs mögen aus Bequemlichkeitsgründen so vorkonfiguriert sein, aber die entsprechende Einrichtung und der Schutz eures Systems liegt in eurer Verantwortung.

  • Ein Unterordner “Scripte” innerhalb des config-Ordners wird nicht mitgesichert, auch wenn es so schön übersichtlich wäre.

  • Je mehr Scripte ich in diesen Ordner packe, um so unübersichtlicher wird es.

Und nun: Viel Spaß!

1 Like