sonible’s Alexander Wankhammer erklärt wie die neuronalen Netzwerke für smart:gate trainiert wurden und gibt Einblicke in die Entscheidungsfindung und die Herausforderungen hinter dem neuesten Mitglied der smart: -Familie.
Our new plugin, smart:gate, is a content-aware audio gate that can perceive the presence of its target instrument.
Wie auch bei den anderen Plug-ins unserer smart-Produktreihe nimmt sich smart:gate einer klassischen Aufgabe im Bereich der Audioproduktion auf eine neue Weise an – jedoch nicht um den ganzen Job alleine zu machen. Es unterstützt dich auf deinem Weg zum perfekten Ergebnis mit künstlicher Intelligenz. Du behältst das Ruder in der Hand, bekommst jedoch einen hilfreichen Steuermann an die Seite gestellt.
smart:gate wird nicht alleine durch den Pegel des Audiosignals ausgelöst, wie es bei klassischen Gates der Fall ist. So wird die Erkennung des ausgewählten Zielsignals von einer KI gesteuert, wodurch sich das Gate öffnet, wenn es die gewünschte Zielquelle erkennt.
Um den Entwicklungsprozess des Plug-ins und seine zukunftsorientierte Technologie genauer zu beleuchten, gibt sonible CMO Alexander Wankhammer einen kleinen Einblick hinter die Kulissen von smart:gate.
Was ist der Hauptvorteil von smart:gate gegenüber traditionellen Gates?
Du kannst Dinge gaten, die du sonst nicht gaten könntest. Angenommen, es gibt ein Übersprechen anderer Signale die lauter sind als das Zielsignal selbst. Ein konventionelles Gate könntest du hier nicht verwenden. smart:gate geht jedoch intelligenter vor, da es nicht auf das übersprechende Signal reagiert.
Wenn du außerdem ein Signal hast, das an manchen Stellen sehr laut ist und an anderen Stellen leise, kannst du den Level-Bias Parameter reduzieren und smart:gate so mehr oder weniger unabhängig vom tatsächlichen Signalpegel machen. smart:gate betrachtet nur die Präsenz des Signals – es ist ihm schlicht egal, wie laut es ist. Auch Drums können voneinander getrennt werden. So kannst du die einzelnen Schläge eines Drum-Loops einfach mit den verschiedenen Profilen separieren.
Habt ihr schon länger geplant, ein Gate-Plugin mit der smarten, KI-gestützten Technologie von sonible zu entwickeln oder kam die Idee erst später auf?
Unsere Mission mit der smart-Produktreihe war und ist es, intelligentere Versionen der klassischen Helferlein im Bereich der Musikproduktion zu schaffen. Mit smart:EQ, smart:comp und den anderen Plug-ins, haben wir schon einige Tools mit unseren Technologien ausgestattet. Jedoch hatten wir schon länger im Sinn, auch das Gate weiterzuentwickeln.
Ein Gate ist trickreich. Einerseits ist es ein sehr einfaches, auf der anderen Seite ein sehr kniffliges Werkzeug – abhängig von dem, was du damit erreichen möchtest. Eines der Dinge, die die Verwendung eines Gates manchmal schwierig macht, ist, dass es auf die Lautstärke reagiert und unabhängig von dem, was tatsächlich reinkommt, öffnet und schließt.
Schon in einer frühen Phase, als wir mit der Erkennung von Instrumenten experimentierten, dachten wir uns: “Wäre es nicht schön, wenn es eine Art Echtzeit-Erkennung dafür gäbe, was in das Gate geleitet wird?” Und nur wenn das Quellsignal, das du durchlassen möchtest, auch tatsächlich vorhanden ist, öffnet sich das Gate. Und wenn es nicht da ist, egal wie laut es ist, bleibt das Gate geschlossen. Das war und ist immer noch die Kernidee von smart:gate.
Wie beginnt der Entwicklungsprozess und wie schafft ihr es einen funktionierenden Prototyp zu erschaffen?
Wenn wir ein neues Produkt entwickeln, arbeiten wir mit Python, um die ersten Prototypen zu erstellen. Vieles in Bezug auf Machine Learning erledigen wir mit Python. Wir starten zunächst ohne die Einschränkungen, die wir in einem Plugin hätten und versuchen nicht sofort alles echtzeitfähig umzusetzen. So arbeiten wir zu Beginn häufig offline und optimieren die entwickelten Prozesse, damit sie Schritt für Schritt auch in Echtzeit lauffähig werden.
Anfangs haben wir uns darauf fokussiert die Verarbeitung für Vocals richtig hinzubekommen. Einer der Gründe, warum wir mit der menschlichen Stimme begonnen haben, ist, dass wir dort auf die größte Menge an Trainingsdaten zurückgreifen konnten. Wir wussten, wenn wir es für Vocals nicht hinbekommen, dann schaffen wir es wahrscheinlich auch nicht bei anderen Signalquellen.
Wir wussten, wenn wir es für Vocals nicht hinbekommen, dann schaffen wir es wahrscheinlich auch nicht bei anderen Signalquellen.
Da es geklappt hat haben wir anschließend versucht, auch Instrumente wie Gitarre und Klavier zum Laufen zu bringen. Auch Drums standen natürlich auf unserer Liste, da sie sehr relevant in Bezug auf das Gating sind.
Eine Rhythmussektion kann ziemlich unterschiedlich klingen – von Breakbeats bis hin zu Bongos. Wie habt ihr sichergestellt, dass das System eine breite Palette von Drums aus modernen Genres erkennen kann?
Als wir begannen, unsere Software mit Drums zu testen, hatte ich zwei ähnliche Samples zur Hand. Eines funktionierte großartig, das andere wiederum nicht. Mit meinen menschlichen Ohren konnte ich nicht sagen, warum das so ist und worin der Unterschied lag. Für mich klangen beide Samples in Bezug auf ihren Charakter nahezu identisch. Aber für das neuronale Netzwerk gab es da etwas – in einem der Samples – das einfach nicht funktionierte.
In solchen Situationen muss das Netzwerk mit einer größeren Vielfalt an Samples gefüttert werden, also mehr Beispiele dafür bekommen, wie Drums klingen könnten. Und wir haben ja auch Unterscheidungen innerhalb der Drums mit Kick, Snare usw.
Man versucht dem System idealerweise jeden möglichen Klang zu zeigen, der zum Beispiel eine Kickdrum sein könnte. Natürlich ist das nicht möglich. Wir müssen dennoch dafür sorgen, die Vielfalt der Samples so hoch wie möglich zu halten, damit es egal ist, welche Art von Kick und welches Tempo das Gate verarbeitet. Das System muss verstehen: “Okay, das ist eine Kick”, und das Gleiche gilt auch für alle anderen Instrumente.
Bei der Snare hängt es zum Beispiel davon ab, wie sie angeschlagen wird, von der Position und Platzierung sowie von der Instrumentenstimmung – einfach von allem. Es gibt so viele Details, aber als Mensch denkst du: „Das ist eine Snare, das ist eine Snare und das ist eine Snare.“ Die KI kann das auch lernen, aber für ein automatisches System ist dies manchmal überraschend schwierig.
Also, ihr beginnt damit ein Offline-Modell zu erarbeiten. Wie schafft ihr es in den Real-Time-Betrieb überzugehen, damit das gesamte System als Plugin in einer DAW ausgeführt werden kann?
Worauf das Netzwerk – im Falle von smart:gate – tatsächlich trainiert ist, ist die Abschätzung des RMS-Pegels des Zielsignals. Wenn du eine Mischung aus dem Zielsignal und anderen Signalen einspielst, versucht das System, den RMS-Pegel des Zielsignals zu schätzen. Es versucht nicht, das Zielsignal mit all seinen Frequenzinformationen zu rekonstruieren, da das viel schwieriger wäre. Je höher der RMS des Zielsignals im Vergleich zum Mix ist, desto stärker ist die Präsenz des Signals. Das ist es, was es tut.
Es arbeitet in Echtzeit, sodass jeder Frame, der ankommt, zu sagen versucht: „Ich habe -15 dB Klavier in diesem Frame, im nächsten Frame -15,1 dB, im nächsten Frame …“ Innerhalb des Plugins nutzen wir diese Informationen auf zwei Arten: Eine davon ist, das Verhältnis der Quelle zur Mischung zu bestimmen – oder die Energie des Zielsignals zur Gesamtenergie des Signals. Wenn das übersprechende Signal genauso laut ist wie das Zielsignal, liegen wir bei 50/50. In einem anderen Signal, wenn das Übersprechen noch lauter ist, hast du einen noch niedrigeren Wert dafür. Es hängt also nicht vom absoluten Pegel des Signals ab, sondern von der relativen Pegelbeziehung vom Zielsignal zum Gesamtsignal.
Du kannst smart:gate 30 Tage lang kostenlos ausprobieren oder hier eine Lizenz erwerben. Übrigens: smart:gate ist nun auch Teil unseres beliebten smart:bundle.