Aktionen: Versionen anzeigen
NoiseComp

Idee

Die Idee ist ein Software Synthesizer der es ermöglicht in Echtzeit in Java berechnete Sounds abszuspielen. So weit so gut und im Grunde auch nicht schwierig. Das besondere daran ist die Verschaltung der Sound-Module auf einer Zeitachse. Wie in einem klassischem Sound-Editor sollen die Module auf "Tonspuren" plaziert werden können.
Jetzt geht es los:

  • Die Parameter der Module können als Funktion der Zeit beeinflußt werden.
  • Die Ausgänge der Module können zueinander als Eingänge geschaltet werden (immer unter berücksichtigung der Zeitachse).
  • Die Module können zu Untermodulen gruppiert werden und wiederum "relativ" in anderen Modulen auf der Zeitachse platziert werden. So entstehen Hierarchien von Modulen die "wiederverwendet" werden können.

Realisierung

Das ganze ist schon recht weit vorangeschritten und funktioniert auch schon ganz gut.

Berechungen

Da ein solch komplexes System natürlich (auch von Java ;-) nicht ganz in Echtzeit abgearbeitet werden kann, werden die Sounds vorberechnet und in Puffern abgelegt. An der Stelle hängt das Projekt momentan. Die Benachrichtigung von Änderungen an "übergeordneten" Modulen an die abhängigen Module ist ein recht kompliziertes Ding.

Oberfläche

Ursprünglich war es geplant die ganze Oberfläche "selbst" innerhalb eines grfischen Applets in der Tradition der MS-DOS MOD-Player zu programmieren.
Allerdings war das wohl eine Fehlentwicklung. Ich habe jetzt beschlossen schon eine Swing-Oberfläche zu verwenden. Momentan ist das Applet in ein MDI Framework jmdiframework eingehängt. Aber da muss noch einiges getan werden.

Sourcen

NoiseComp ist in Java programmiert und steht im Quelltexte auf SourceForge zur Verfügung:

Screenshots

Version 3 bearbeitet am {07.01.2008 22:16:16} von smk, Besitzer ist smk und die Berechtigungen sind eingeschränkt auf: Jeden