Audioanalyzer DMXC3: Unterschied zwischen den Versionen

Aus Deutsches DMXC-Wiki
Zur Navigation springen Zur Suche springen
 
(38 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Kapitelüberschrift|Version=DMXControl 3.2.0}}
+
{{Kapitelüberschrift|Version=DMXControl 3.2.3}}
 
{{DMXC3_Manual-Navigation_Hauptprogramm}}
 
{{DMXC3_Manual-Navigation_Hauptprogramm}}
  
  
{{Inuse}}
+
Der {{Manual Windowcaption|Audioanalyzer}} ermöglicht die Echtzeitanalyse des Audiosignals mit der Übergabe von Beat, Lautstärke (Level) und Spektrumsdaten an die {{Manual Windowcaption|[[Input_Assignment_DMXC3|Eingangszuweisung (Input Assignment)]]}}.
  
  
=Überblick=
+
= Überblick =
*<span style="color:red;">Erklären, wie damit Szenenlisten gesteuert werden können</span>
+
Der Audioanalyzer ist ein Modul, mit dem du dein Lichtsetup automatisch zur Musik steuern kannst. Hierbei wird die Musik live durch die Software analysiert und versucht, zum Beispiel den Bassschlag (also die Beats) etc. herauszufinden. Passend zu diesen Beats werden dann Effekte im Taktschlag der Musik ausgeführt. Durch diese Liveanalyse passt das Licht mehr oder weniger gut auf die Musik. Dafür können hier vor allem auch Lieder abgespielt werden, auf die das Lichtsetup nicht speziell angepasst wurde. Trotzdem kommt immer ein einigermaßen passendes Licht heraus. Außerdem hält sich auch der Programmieraufwand für viele verschiedene Lieder in Grenzen. Diese Methode ist aber eher ungenau und die Show ist nicht 100%ig auf jedes Lied angepasst, insbesondere weil die Software die Stimmung des Liedes nicht fühlen kann. Für den Partykeller oder eine kleine Hobbydisco kann das jedoch trotzdem ausreichend sein.
 +
 
 +
Möchte man eine richtige Lichtshow schaffen, die an jedem Punkt exakt zum Song passt, sollte man diese entweder vollständig manuell vorprogrammieren, wodurch sie dann immer gleich aussieht. Oder man gestaltet sein Projekt in der Art, dass man situativ schnell neue Lichtstimmungen schaffen kann und die Show dabei die ganze Zeit live fährt. Im ersten Fall ist der Audioanalyzer das falsche Tool ist, im zweiten Fall kann zumindest das Beatsignal genutzt werden, um {{Manual Windowcaption|[[Cuelist_DMXC3|Szenenlisten (Cuelists)]]}} musikgesteuert anzutriggern.
 +
 
 +
= Wichtige Merkmale und Einschränkungen =
 +
* Das Plugin hat keine eigenen Einstellungen, aber fast alle Einstellungen werden im Projekt gespeichert.
 +
* ASIO-Soundkarten werden nicht unterstützt.
 +
* Sollte das interne Soundsignal nicht erkannt werden, überprüfe bitte unter den Soundeinstellungen von Windows ob "Stereo Mix" aktiviert ist. Dieses ist standardmäßig in Windows 10 deaktiviert.
 +
 
 +
= Nutzung =
 +
== Devices ==
 +
Um das Plugin zu nutzen, muss unter Device das richtige Audio Interface und der dazugehörige Input ausgewählt werden. Sollte die interne Systemwiedergabe verwendet werden, wird unter umständen ein Virtuelles Audio Kabel benötigt.
 +
Danach kann mit einem Klick auf "Start" das Plugin aktiviert werden. Eine generelle Anpassung des Levels ist mit dem "Gain"-Regler möglich.
 +
 
 +
{{Bild_mit_Unterschrift|AudioAnalyser Main.png|1.1|Audio Analyser Plugin|left|280px}}
 +
{{Bild_mit_Unterschrift|AudioAnalyser Main Dark.png|1.2|Audio Analyser Plugin Dark|center|280px}}
 +
 
 +
Nach Aktivierung des Plugins sind im Input Assignment folgende Eingänge verfügbar (die Anzahl der Spektrum-Eingänge ist abhängig von den Einstellungen):
 +
 
 +
{{Bild_mit_Unterschrift|AudioAnalyser IA-Inputs.png|2|Audio Analyser - Input Assignment|center|180px}}
 +
 
 +
Der Wertebereich für Level und Spektrum sind Werte zwischen 0 und 1.
 +
 
 +
== VU-Meter ==
 +
{{Bild_mit_Unterschrift|AudioAnalyser Level.png|3|Audio Analyser - Level|center|280px}}
 +
 
 +
Zur Einstellung des VU-Meters (Level) gibt es folgende Einstellungen:
 +
 
 +
* Regler zur Pegelkorrektur (Level correction)
 +
* Regler zur Einstellung der Haltezeit des Spitzenwerts (Peak Hold Time: 20-500 ms). Dies ist die Zeit, die der Level-Wert auf seinem Höchstwert bleibt, bevor er zurück auf den aktuellen Wert gesetzt wird oder langsam zurück geht zum aktuellen Wert (Peak Sink)
 +
* Schalter zum Aktivieren der Peak Sink Funktion (s.o.)
 +
 
 +
== Spektrum ==
 +
{{Bild_mit_Unterschrift|AudioAnalyser Spectrum.png|4|Audio Analyser - Spectrum|center|280px}}
 +
 
 +
Zur Einstellung des Spektrums gibt es folgende Einstellungen:
 +
 
 +
* Anzahl der Spektrumskanäle (8,16,32,64,96). Dabei wird immer das gesamte Spektrum auf die entsprechende Anzahl Kanäle zusammen gefasst.
 +
* Regler zur Pegelkorrektur (Level correction)
 +
 
 +
{{Manual Box | de | Important | Die massive Nutzung der Spektrumswerte (>10 Kanäle) im Input Assignment kann unter Umständen zu Performance-Problemen in der GUI führen.}}
 +
 
 +
== Beat Detection ==
 +
{{Bild_mit_Unterschrift|AudioAnalyser BeatDetection.png|5|Audio Analyser - BeatDetection|center|280px}}
 +
 
 +
Die wichtigste Einstellung bei der Beat Detection ist der verwendete Algorithmus.
 +
 
 +
=== Algorithmen  ===
 +
In dieser Version sind fünf Algorithmen zur Beaterkennung realisiert:  
 +
# <b>Standard Weight Method</b>: Diese Methode wertet nur einen kleinen Bereich (Bass oder Hihat oder Bass&amp;HiHat) des Frequenzspektrums aus und ermittelt den Beat anhand der Signalentwicklung in diesen Bändern. Man kann mit dem Sensitivity-Regler das Ansprechverhalten des Algorithmus in kleinen Grenzen beeinflussen.
 +
# <b>Human Hearing</b>: Diese Methode ist integriert in die im Plugin verwendete bass.dll.
 +
# <b>Simple Sound Energy</b>: Diese Methode bewertet die Entwicklung der Soundenergie des gesamten Spektrums als Ganzes.
 +
# <b>Frequency Selected Sound Energy</b>: Diese Methode erweitert die SimpleSoundEnergy-Methode um die Aufteilung der Soundenergie auf mehrere Frequenzbänder (8-256) und führt die Analyse getrennt für jedes Frequenzband durch. Mit dem Schalter "Interpreted Subbands" und dem dazugehörigen Regler kann man einstellen, dass nur die Bänder mit den stärksten Impulsen verwendet werden und wie viele davon zur Beaterkennung verwendet werden. Diese Methode ist recht rechenaufwendig und kann bei älteren Rechnern zu einer spürbaren Grundlast führen.
 +
# <b>Automatic</b>: Diese Methode nutzt alle vorher beschriebenen Algorithmen gleichzeitig. Mit dem Sensitivity-Regler stellt man dabei ein, wie viel Algorithmen gleichzeitig einen Beat finden müssen, damit wirklich ein Beat ausgegeben wird.
 +
 
 +
{{Manual Box | de | Reference | Für Mathe- und Statistik-Interessierte: Die Methoden 3 und 4 basieren auf [http://www.gamedev.net/page/resources/_/technical/math-and-physics/beat-detection-algorithms-r1952 dieser Publikation].}}
 +
 
 +
=== weitere Bedienelemente ===
 +
Der "MaxBPM-Schalter" begrenzt die maximal ausgegebenen Beats auf den darunter mit dem Regler eingestellten max.BPM-Wert (30-330 BPM).
 +
 
 +
mit dem "Additional Beats"-Regler kann eingestellt werden, wieviele Beats das Plugin künstlich mit der ermittelten BPM sendet (0-∞), solange kein neues Beatsignal erkannt wurde. Auch werden Beatsignale hier erkannt, die sehr nahe am theorethischen Beat liegen und die automatische Generierung wird entsprechend angepasst.
 +
 
 +
Die Schalter "double" and "half" haben nur eine Auswirkung, wenn "Additional Beats" einen Wert größer 0 hat. Bei "double" wird die künstliche BPM-Zahl verdoppelt, bei "half" halbiert.
 +
 
 +
<br>
 +
 
 +
== Mood ==
 +
{{Bild_mit_Unterschrift|AudioAnalyser Mood.png|6|Audio Analyser - Mood|center|280px}}
 +
 
 +
Das Mood-Fenster zeigt graphisch den Verlauf des gesamten Spektrums. Dabei läuft auf der X-Achse die Zeit und auf der Y-Achse ist die Frequenz (Bassfrequenzen sind unten, hohe Fequenzen ganz oben. Die Intensität der Signale wird durch die Farbe (blau-grün-rot-gelb-weiß) angezeigt.
 +
 
 +
Zusätzlich wird schon die Tonart und der Basiston ermittelt. Dies ist aber noch in einem experimentellen Stadium. Siehe auch "geplante Weiterentwicklung".
 +
 
 +
== Beat Generator ==
 +
{{Bild_mit_Unterschrift|AudioAnalyser BeatGenerator.png|7|Audio Analyser - BeatGenerator|center|280px}}
 +
 
 +
Der BeatGenerator ist eine Alternative zum ManualBeat in DMXControl3. Es bietet die Möglichkeit verschiedene Rhythmen auszuwählen (2/4, 3/4, 4/4, 5/4, Blues), wobei die ersten 4 Rhythmen keinen Unterschied in DMXControl3 machen, da so etwas wie HauptBeat (auf dem 1. Takt) bis jetzt nicht unterstützt wird. Lediglich der Blues-Rhythmus zeigt eine Wirkung, da er nicht gleichmäßig ist sondern im Verhältins 2/3 zu 1/3 den Beat ausgibt.
 +
 
 +
Wenn der BeatGenerator läuft ist die BeatDetection und Audioanalyse deaktiviert.
 +
 
 +
== Erstellen von Effekten ==
 +
=== Spektrum und VU-Meter ===
 +
Um das Spektrum oder das VU-Meter zu verwenden, können im Input Assignment die Eingänge mit Parametermastern verbunden werden. Dabei wird das Signal an Fader Value verbunden.
 +
--> Bild IA Parametermaster X
 +
 
 +
Nun kann der Parametermaster z.b. Effekte angewendet werden. Der Effekt "PWM Static" kann für ein Standard VU-Meter, oder für ein Spektrum verwendet werden.
 +
--> Bild Device Control Effekt Static PWM
 +
 
 +
=== Beat ===
 +
Um den Beat im Projekt zu verwenden, wird dieser einem Speedmaster zugeordnet. Zwischen dem Beat Input und dem Speedmaster wird noch eine Umwandlung von Beat nach Bool benötigt (Beat to Bool). Der umgewandelte Wert wird dann mit dem Speedmaster Eingang "Learn" verbunden. Bei dem Beat to Bool Knoten, sollte die "On Time" nicht größer als 100ms sein.
 +
Nun kann der zugewiesene Speedmaster ebenfalls auf Effekte und auch CueLists angewendet werden.
  
==Vor- und Nachteile==
 
Der Audioanalyzer ist ein Modul, mit dem du dein Lichtsetup automatisch zur Musik steuern kannst. Hierbei wird die Musik live durch die Software analysiert und versucht, zum Beispiel den Bassschlag (also die Beats) etc. herauszufinden. Passend zu diesen Beats werden dann Effekte im Taktschlag der Musik ausgeführt. Durch diese Liveanalyse passt das Licht mehr oder weniger gut auf die Musik. Dafür können hier vor allem auch Lieder abgespielt werden, auf die das Lichtsetup nicht speziell angepasst wurde. Trotzdem kommt immer ein einigermaßen passendes Licht heraus. Außerdem hält sich auch der Programmieraufwand für viele verschiedene Lieder in Grenzen. Diese Methode ist aber eher ungenau und die Show ist nicht 100%ig auf jedes Lied angepasst, insbesondere weil die Software die Stimmung des Liedes nicht fühlen kann. Für den Partykeller oder eine kleine Hobbydisco kann das jedoch trotzdem ausreichend sein.
 
  
Möchtest du eine richtige Lichtshow schaffen, die an jedem Punkt exakt zum Song passt, solltest du diese entweder vollständig manuell vorprogrammieren, wodurch sie dann immer gleich aussieht. Oder du gestaltest dein Projekt in der Art, dass du situativ schnell neue Lichtstimmungen schaffen kannst und die Show dabei die ganze Zeit live fährst. In beiden Fällen tritt der Audioanalyzer eher in den Hintergrund, da er an dieser Stelle das falsche Tool ist.
+
=geplante Weiterentwicklung=
=Wichtige Merkmale=
 
  
=Nutzung=
+
* erweiterte Einbindung ins Input Assignment (Start/Stop-Button, Gain-Regler vom InputAssignment aus steuerbar)
 +
* Beheben der Performance-Probleme bei massiver Spektrumsnutzung im Input Assignment
 +
* fortgeschrittene Musikanalyse --> automatische Lichtshow auf Basis Beat&Mood (Vision)
  
 
=Links und Referenzen=
 
=Links und Referenzen=

Aktuelle Version vom 11. April 2023, 14:14 Uhr

Books.png Audioanalyzer DMXC3 Artikel beschreibt
DMXControl 3.2.3
Inhaltsverzeichnis

A

B

C

D

E

F

G

H

K

L

M

N

O

P

R

S


Der Audioanalyzer ermöglicht die Echtzeitanalyse des Audiosignals mit der Übergabe von Beat, Lautstärke (Level) und Spektrumsdaten an die Eingangszuweisung (Input Assignment).


Überblick

Der Audioanalyzer ist ein Modul, mit dem du dein Lichtsetup automatisch zur Musik steuern kannst. Hierbei wird die Musik live durch die Software analysiert und versucht, zum Beispiel den Bassschlag (also die Beats) etc. herauszufinden. Passend zu diesen Beats werden dann Effekte im Taktschlag der Musik ausgeführt. Durch diese Liveanalyse passt das Licht mehr oder weniger gut auf die Musik. Dafür können hier vor allem auch Lieder abgespielt werden, auf die das Lichtsetup nicht speziell angepasst wurde. Trotzdem kommt immer ein einigermaßen passendes Licht heraus. Außerdem hält sich auch der Programmieraufwand für viele verschiedene Lieder in Grenzen. Diese Methode ist aber eher ungenau und die Show ist nicht 100%ig auf jedes Lied angepasst, insbesondere weil die Software die Stimmung des Liedes nicht fühlen kann. Für den Partykeller oder eine kleine Hobbydisco kann das jedoch trotzdem ausreichend sein.

Möchte man eine richtige Lichtshow schaffen, die an jedem Punkt exakt zum Song passt, sollte man diese entweder vollständig manuell vorprogrammieren, wodurch sie dann immer gleich aussieht. Oder man gestaltet sein Projekt in der Art, dass man situativ schnell neue Lichtstimmungen schaffen kann und die Show dabei die ganze Zeit live fährt. Im ersten Fall ist der Audioanalyzer das falsche Tool ist, im zweiten Fall kann zumindest das Beatsignal genutzt werden, um Szenenlisten (Cuelists) musikgesteuert anzutriggern.

Wichtige Merkmale und Einschränkungen

  • Das Plugin hat keine eigenen Einstellungen, aber fast alle Einstellungen werden im Projekt gespeichert.
  • ASIO-Soundkarten werden nicht unterstützt.
  • Sollte das interne Soundsignal nicht erkannt werden, überprüfe bitte unter den Soundeinstellungen von Windows ob "Stereo Mix" aktiviert ist. Dieses ist standardmäßig in Windows 10 deaktiviert.

Nutzung

Devices

Um das Plugin zu nutzen, muss unter Device das richtige Audio Interface und der dazugehörige Input ausgewählt werden. Sollte die interne Systemwiedergabe verwendet werden, wird unter umständen ein Virtuelles Audio Kabel benötigt. Danach kann mit einem Klick auf "Start" das Plugin aktiviert werden. Eine generelle Anpassung des Levels ist mit dem "Gain"-Regler möglich.


Abbildung 1.1:Audio Analyser Plugin
Abbildung 1.1: Audio Analyser Plugin
Abbildung 1.2:Audio Analyser Plugin Dark
Abbildung 1.2: Audio Analyser Plugin Dark


Nach Aktivierung des Plugins sind im Input Assignment folgende Eingänge verfügbar (die Anzahl der Spektrum-Eingänge ist abhängig von den Einstellungen):

Abbildung 2:Audio Analyser - Input Assignment
Abbildung 2: Audio Analyser - Input Assignment


Der Wertebereich für Level und Spektrum sind Werte zwischen 0 und 1.

VU-Meter

Abbildung 3:Audio Analyser - Level
Abbildung 3: Audio Analyser - Level


Zur Einstellung des VU-Meters (Level) gibt es folgende Einstellungen:

  • Regler zur Pegelkorrektur (Level correction)
  • Regler zur Einstellung der Haltezeit des Spitzenwerts (Peak Hold Time: 20-500 ms). Dies ist die Zeit, die der Level-Wert auf seinem Höchstwert bleibt, bevor er zurück auf den aktuellen Wert gesetzt wird oder langsam zurück geht zum aktuellen Wert (Peak Sink)
  • Schalter zum Aktivieren der Peak Sink Funktion (s.o.)

Spektrum

Abbildung 4:Audio Analyser - Spectrum
Abbildung 4: Audio Analyser - Spectrum


Zur Einstellung des Spektrums gibt es folgende Einstellungen:

  • Anzahl der Spektrumskanäle (8,16,32,64,96). Dabei wird immer das gesamte Spektrum auf die entsprechende Anzahl Kanäle zusammen gefasst.
  • Regler zur Pegelkorrektur (Level correction)


Wichtiger Hinweis Die massive Nutzung der Spektrumswerte (>10 Kanäle) im Input Assignment kann unter Umständen zu Performance-Problemen in der GUI führen.

Beat Detection

Abbildung 5:Audio Analyser - BeatDetection
Abbildung 5: Audio Analyser - BeatDetection


Die wichtigste Einstellung bei der Beat Detection ist der verwendete Algorithmus.

Algorithmen

In dieser Version sind fünf Algorithmen zur Beaterkennung realisiert:

  1. Standard Weight Method: Diese Methode wertet nur einen kleinen Bereich (Bass oder Hihat oder Bass&HiHat) des Frequenzspektrums aus und ermittelt den Beat anhand der Signalentwicklung in diesen Bändern. Man kann mit dem Sensitivity-Regler das Ansprechverhalten des Algorithmus in kleinen Grenzen beeinflussen.
  2. Human Hearing: Diese Methode ist integriert in die im Plugin verwendete bass.dll.
  3. Simple Sound Energy: Diese Methode bewertet die Entwicklung der Soundenergie des gesamten Spektrums als Ganzes.
  4. Frequency Selected Sound Energy: Diese Methode erweitert die SimpleSoundEnergy-Methode um die Aufteilung der Soundenergie auf mehrere Frequenzbänder (8-256) und führt die Analyse getrennt für jedes Frequenzband durch. Mit dem Schalter "Interpreted Subbands" und dem dazugehörigen Regler kann man einstellen, dass nur die Bänder mit den stärksten Impulsen verwendet werden und wie viele davon zur Beaterkennung verwendet werden. Diese Methode ist recht rechenaufwendig und kann bei älteren Rechnern zu einer spürbaren Grundlast führen.
  5. Automatic: Diese Methode nutzt alle vorher beschriebenen Algorithmen gleichzeitig. Mit dem Sensitivity-Regler stellt man dabei ein, wie viel Algorithmen gleichzeitig einen Beat finden müssen, damit wirklich ein Beat ausgegeben wird.


Wichtige Referenz Für Mathe- und Statistik-Interessierte: Die Methoden 3 und 4 basieren auf dieser Publikation.

weitere Bedienelemente

Der "MaxBPM-Schalter" begrenzt die maximal ausgegebenen Beats auf den darunter mit dem Regler eingestellten max.BPM-Wert (30-330 BPM).

mit dem "Additional Beats"-Regler kann eingestellt werden, wieviele Beats das Plugin künstlich mit der ermittelten BPM sendet (0-∞), solange kein neues Beatsignal erkannt wurde. Auch werden Beatsignale hier erkannt, die sehr nahe am theorethischen Beat liegen und die automatische Generierung wird entsprechend angepasst.

Die Schalter "double" and "half" haben nur eine Auswirkung, wenn "Additional Beats" einen Wert größer 0 hat. Bei "double" wird die künstliche BPM-Zahl verdoppelt, bei "half" halbiert.


Mood

Abbildung 6:Audio Analyser - Mood
Abbildung 6: Audio Analyser - Mood


Das Mood-Fenster zeigt graphisch den Verlauf des gesamten Spektrums. Dabei läuft auf der X-Achse die Zeit und auf der Y-Achse ist die Frequenz (Bassfrequenzen sind unten, hohe Fequenzen ganz oben. Die Intensität der Signale wird durch die Farbe (blau-grün-rot-gelb-weiß) angezeigt.

Zusätzlich wird schon die Tonart und der Basiston ermittelt. Dies ist aber noch in einem experimentellen Stadium. Siehe auch "geplante Weiterentwicklung".

Beat Generator

Abbildung 7:Audio Analyser - BeatGenerator
Abbildung 7: Audio Analyser - BeatGenerator


Der BeatGenerator ist eine Alternative zum ManualBeat in DMXControl3. Es bietet die Möglichkeit verschiedene Rhythmen auszuwählen (2/4, 3/4, 4/4, 5/4, Blues), wobei die ersten 4 Rhythmen keinen Unterschied in DMXControl3 machen, da so etwas wie HauptBeat (auf dem 1. Takt) bis jetzt nicht unterstützt wird. Lediglich der Blues-Rhythmus zeigt eine Wirkung, da er nicht gleichmäßig ist sondern im Verhältins 2/3 zu 1/3 den Beat ausgibt.

Wenn der BeatGenerator läuft ist die BeatDetection und Audioanalyse deaktiviert.

Erstellen von Effekten

Spektrum und VU-Meter

Um das Spektrum oder das VU-Meter zu verwenden, können im Input Assignment die Eingänge mit Parametermastern verbunden werden. Dabei wird das Signal an Fader Value verbunden. --> Bild IA Parametermaster X

Nun kann der Parametermaster z.b. Effekte angewendet werden. Der Effekt "PWM Static" kann für ein Standard VU-Meter, oder für ein Spektrum verwendet werden. --> Bild Device Control Effekt Static PWM

Beat

Um den Beat im Projekt zu verwenden, wird dieser einem Speedmaster zugeordnet. Zwischen dem Beat Input und dem Speedmaster wird noch eine Umwandlung von Beat nach Bool benötigt (Beat to Bool). Der umgewandelte Wert wird dann mit dem Speedmaster Eingang "Learn" verbunden. Bei dem Beat to Bool Knoten, sollte die "On Time" nicht größer als 100ms sein. Nun kann der zugewiesene Speedmaster ebenfalls auf Effekte und auch CueLists angewendet werden.


geplante Weiterentwicklung

  • erweiterte Einbindung ins Input Assignment (Start/Stop-Button, Gain-Regler vom InputAssignment aus steuerbar)
  • Beheben der Performance-Probleme bei massiver Spektrumsnutzung im Input Assignment
  • fortgeschrittene Musikanalyse --> automatische Lichtshow auf Basis Beat&Mood (Vision)

Links und Referenzen

Links