|
|
|
Aktionen:
Versionen anzeigen
NoiseComp
IdeeDie 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.
Der "Unterschied" zu den anderen Tonerzeugern liegt darin, dass alle Operationen auf einer (grafischen) Zeitachse stattfinden. Jeder Parameter ist also jederzeit über die Zeit zu beeinflussen. RealisierungDas ganze ist schon recht weit vorangeschritten und funktioniert auch schon ganz gut. BerechungenDa ein solch komplexes System natürlich (auch von Java ;-) nicht ganz in Echtzeit abgearbeitet werden kann, werden die Sounds vorberechnet und in Puffern abgelegt. History
Ursprünglich war es geplant die ganze Oberfläche "selbst" innerhalb eines grafischen Applets in der Tradition der MS-DOS MOD-Player zu programmieren.
Zeitweilig ist das Applet in ein MDI Framework jmdiframework eingehängt worden. Aber da muss noch einiges getan werden.
Momentan habe ich alles auf eine normale Swing Oberfläche umgeschrieben. Diese bietet die notwendigen Features und läuft nach Umschiffung aller "Feinheiten" ganz gut: AnleitungDie grundlegende Struktur ist folgende:
FileEin File ist ein im XML Format abgelegte Definition der oben genannten Inhalte mit der Endung "*.noiseComp.xml". GeneratorDie Generatoren sind die eingebauten Soundquellen zur Signal-Erzeugung und Signal-Beeinflussung. FolderDie Folder organisierst Du am besten so, das es beim späteren importieren in Deine eigenen Songs keine Namensüberschneidungen gibt. Per Konvention gilt, dass folgende Haupt-Folder verwendet werden:
In diesen legst Du Deine eigenen Instrument-Modules in möglichst eindeutigen Sub-Foldern ab. ModuleEin Module verwendet Genaratoren oder andere Moule eine Signalquellen. TimelineBeim Anlegen einer Timeline sagst Du welcher Generator da drauf liegt (z.B. Sinus), dass ist dann die Funktion. InputsDie Inputs jedes Genertors auf den Timelines legen die Eingangswerte fest. Diese sind normalerweise die Outputs anderer Generatoren in dem Modul. Features
SourcenNoiseComp ist in Java programmiert und steht im Quelltexte auf SourceForge zur Verfügung: Download
Screenshots
Version 29
bearbeitet am {30.03.2011 22:14:30}
von smk,
Besitzer ist smk
und die Berechtigungen sind eingeschränkt auf: Jeden
|
|