Ein "Waveterm" für den Terratec Komplexer

Bewegung in Dateilisten über Mousewheel wäre auch nicht schlecht, dann könnte ich über mein Contour ShuttleXpress da durchscrollen, wieder ein paar Mausklicks weniger. :)

Sprung zwischen mehreren Input-Feldern mit TAB und rückwarts SHIFT-TAB wäre nett, im Sprungfeld angelangt Mousewheel um den Wert in Standardschritten zu ändern, Control+Mousewheel um den Wert in Alternativschritten zu ändern. Reaper nutzt Mousewheel für grobe Wertänderungen, Control-Mousewheel für feine Wertänderungen, sowas in der Art vielleicht, falls machbar und nicht allzu kompliziert.
 
Mal schauen, was geht. Anders als z.Bsp. bei Windowsoberflächen ist das ja nur ein Bild und alle Eingaben werden über die Curserposition relativ zum Fenster berechnet. Und es ist noch alles C - der Kenner mag sich ausmalen, welche Orgie von if/else/switch Anweisungen dahinter lauert.

Somit müsste ich für jede Seite alle Koordinaten der Eingabefelder indizieren und zuordnen. Deshalb finden die Parameteränderungen zu weiten Teilen in der Buttonleiste statt, das macht vieles einfacher. Ob und ab welcher Version das anders geht, kann ich aber noch nicht sagen. Ich bitte da um Nachsicht, ich lerne quasi während ich das Ding "baue" und irgendwie komm ich gar nicht so recht zur Musik selber. ;-) Aber ich bleib dran, soweit es die Zeit erlaubt!
 
Dein Design bislang finde ich sehr praktisch, weiter so. Einfach 24 Buttons, und wir können fast alles damit bedienen, ideal! Wohl ähnlich wie bei den MPC's, JJOS, Ensoniq? Hatte noch keins der genannten Geräte. Alles was Du mit C programmieren wolltest, könnte man genauso über AutoHotkey erledigen, nur viel einfacher vermutlich. Siehe mein Beispiel oben.

Ah, habe ich vergessen: Danke für das coole Programm!
 
Noch eine kleine Idee vielleicht: Die 12 Buttons unten, könnte man sie nicht auch als 3 * 4'er Buttons gruppieren, wäre leichter für die Orientierung beim Zählen, genauso wie in QWERTY's.
 
Da muss ich auch mal schauen, man könnte sie gruppenweise zusammenziehen und/oder zwischen den Gruppen einen Trennstrich einfügen. Hab das hier grad mal probiert, aber so wirklich bringt das optisch nix. Die Buttons selber kann ich auch nicht verändern, da ja das Erscheinungsbild (Hintergrundfarbe, Rahmenstärke und das <> Symbol) schon für bestimmte Typen von Funktionen reserviert sind ( z.Bsp. <> im Namen deuted darauf hin, dass dahinter weitere Einstellungen/Menüs/Seiten lauern, während Buttons ohne <> eine Funktion direkt ausführen).
 
Cyclotron schrieb:
Da muss ich auch mal schauen, man könnte sie gruppenweise zusammenziehen und/oder zwischen den Gruppen einen Trennstrich einfügen. Hab das hier grad mal probiert, aber so wirklich bringt das optisch nix.
Alles klar, danke, nö, dann mach Dir keine Umstände, nach einigem Herumtesten sollte man eh die Positionen mehr oder weniger auswendig kennen. Lass alles so wie es ist, minimal und cool!
 
Also das könnte so aussehen:

Audio-Term.jpg
 
Ich finde, es hilft schon etwas mehr bei der Orientierung. Wenn es sonst niemanden stört, warum nicht?
 
Notfalls kann ich ja in der geplanten Utility Page, die auch andere Systemparameter aufnehmen wird, auch die Keyboardsteuerung für die Menüleiste an- und abschaltbar machen. Dann wäre die Grafik nur dann so verändert, wenn der User eine Eingabe per Keyboard wünscht. Das wäre der geringste Teil der Arbeit.

Am WE werd ich dank Freundin, neuem Swimmingpool und Pferd wohl wieder zu nichts kommen (was gut so ist ;-) ). Erst in der nächsten Woche werde ich dann zumindest die Steuerung über die F-Tasten einbauen. Falls mir da nicht unerwartete Probleme auftreten, kommt das somit ins nächste Update. AT meldet sich ja, wenn es was zu saugen gibt.
 
V1.72 hat nun eine Steuerung über Shortcuts drin. Falls das jemand nicht mag (ich selber zum Beispiel :D ), wird es in einer der nächsten Versionen eine Möglichkeit geben, diese global zu deaktivieren.

Zunächst mal hab ich das Script oben für die Buttons übernommen:

Obere Buttonleiste: F1..F12
Untere Buttonleiste: STRG + F1...F12 oder ESC + F1...F12

In den Browsern wählt man die Files mit den Cursortasten UP und DOWN aus. Das ganze geht "modulo Dateien pro Seite", also wenn man unten angekommen ist, geht es wieder nach oben und umgekehrt. Wenn man die Tasten gedrückt hält, kann man die Seite "scrollen", ohne sich einen Wolf zu tippen. Hält man zusätzlich STRG oder ESC, wird die Prelistening Funktion aktiviert (also so, als ob man mit der Maus draufklickt). Dafür wird jedoch das Scrollen deaktiviert, weil das dann eh keinen Sinn macht.

Die Fader vom Harmonic Editor und vom Formantfilter werden ebenfalls über das Cursorkreuz bedient. Die Werte der Fader können langsamer/genauer eingegeben werden, wenn man STRG oder ESC gedrückt hält. Gleiches gilt im Übrigen für die Envelopes.

Die Sortiermatrix (SEDIT->ORDER) und die virtuelle Tastatur im Wavetable Analyzer werden ebenfalls mit den Cursortasten bedient, eine Shiftfunktion gibt es hier nicht.

Einzig das Wave Drawing auf dem Pad (HARM->WDRAW) geht nicht mit der Tastatur, aber das wird man hoffentlich überleben.
 
Kommt drauf an, in welchem Verzeichnis (sprich welcher Datentyp) Du Dich befindest.

Die KTERM Funktion kann keine Samples speichern, nur Komplexer WT, Single Cycles und Wavetables (als *.WAV oder für Blofeld als *.BWC)

Dazu gehst Du auf F_TYPE und wählst aus, welchen Datentyp Du speichern möchtest.

02 Single Cycles
03 KTERM Wavetables (WAV)
04 KTERM Wavetables (Komplexer WT)
05 KTERM Wavetables (Blofeld BWC)

Wenn Du das entsprechend auswählst, findest Du auch einen SAVE Button, ggf. muss man danach noch weitere Dinge einstellen (Anzahl der gerenderten Zyklen, Oktave etc.).

Bin grad dabei, die Grafikbibliothek zu hacken und einige unschöne Bugs im Browser und in der Sampleresynthese zu beheben. Außerdem wird dann der Seitenaufbau deutlich schneller. Wird wohl Mitte nächster Woche auf Version 1.76 hinauslaufen.
 
1.76 ist online.

Der Seitenaufbau sollte nun deutlich schneller gehen und die Redraw Artefakte sollten in den allermeisten Fällen verschwunden sein. Zudem sind noch einige Bugfixes drin:

- Seitenzahl und Titel werden jetzt korrekt angezeigt
- Crash bzw. falsche Werte in der Wavetableanalyse wurden behoben
- Fenstermenü und Buttons in der Titelleiste sind abschaltbar über eine neue Option in UTILITY (damit sich interne Shortcuts nicht mit denen von Windows beißen)
- Mausklicks sollten nun immer sofort erkannt werden, auch wenn Shortcut Support aktiv ist
- die Auswahl der Soundkarte bzw. die Anzeige dafür wird nun korrekt dargestellt
 
Wir sind grad bei v1.84:

- die automatische Dateiüberwachung kann jetzt intelligenter mit gelockten Files und namensgleichen Duplikaten umgehen

- exportiert jetzt auch Ensoniq EFE Transwaves (allerdings nur 128 Slots * 256 Samples)

- exportiert zudem Wavetables für Vember Audio Surge (33 Slots * 1024 Samples, IEEE float)

Zu den Exporten ist anzumerken, dass Audio-Term nur seine eigenen Ensoniq EFE / Surge WT Dateien lesen kann, wegen der Abweichungen vom Komplexer WT Format und den deshalb enthaltenen zusätzlichen Synthesedaten.

Link steht inner Signatur. :)
 
Wollen wir mal hoffen, dass das auch in den Geräten erkannt wird. Ich musste meinen ASR ja verscherbeln ... konnte das somit nur mit Awave und Translator testen. Und das Format ist dermaßen schlecht dokumentiert, dass ich ein Hexfile - Template nutzen musste, in welches dann die Daten (Sound, Layer und Loopdaten) hineingewurstelt hab. *ächz* :D
 
Hab v1.94 gerade hochgeladen. In den letzten Versionen hat sich wieder einiges getan:

- Scanloop Analyzer für Wavetables, wie sie zum Bsp. auch im VAZ Modular/2010 verwendet werden (Wave Datei, Mono, Loop auf der ersten Wellenform, Looplänge beliebig zwischen 128 und 4096 Samples, Dateilänge mindestens 2x Looplänge). Für solche Dateien ist dieser Algo besser geeignet als die Standartanalyse, da sie einen größeren Frequenzumfang hat. Derartige Dateien werden automatisch erkannt und haben im Browser den Vermerk 'Scanloop':

at194_scanloop_analysis.jpg


- Die Sloop - Funktion (das ist die Entsprechung der 'Synthesize - Loop" - Geschichte aus den Ensoniq Samplern) arbeitet jetzt schneller und erlaubt beim Speichern eine Auswahl des Loopstartpunktes:

at194_sloop_storage.jpg


Hier mal ein recht sinnfreies Audiobeispiel, ein plattgebügeltes Songintro. Die Loop selbst hat eine Länge von 60 Sekunden:


play:


Ansonsten noch exemplarisch ein paar weitere Änderungen:

- Ordner für die Dateitypen können jetzt beliebig im System verschoben werden (nützlich für Produkte, die ihre Daten in festgelegten Ordnern erwarten, z.Bsp. Vemberaudio Surge). Man macht das unter "UTILITY -> PATH".

- die Dateiverwaltung arbeitet jetzt schneller und kann auch mit Duplikaten und gelockten Dateien umgehen

- alle *.wav - Formate können ab sofort auch in 32 Bit IEEE Float exportiert werden (Standard ist 16 Bit)

- Audioplayback läuft jetzt auch mit Wine (da sollte jetzt übrigens alles bis auf die Keyboard Shortcuts laufen, dazu kam ich noch nicht)

- Updatefunktion umgeht automatisch die Offlinesettings vom Internet Explorer (weil sonst geht das Update nicht) und stellt die Einstellungen nach dem Update wieder zurück. Man kann den Update Lookup auch unter "Utility" deaktivieren. Manuelle Updates gehen dann trotzdem, nur benachrichtigt er nicht.

Noch zig andere Sachen wurden geändert, an die ich mich grad nicht erinnere. :D
 
V1.99 ist online.

Audio-Term schreibt jetzt direkt Sysex Wavetables für den Waldorf Blofeld. Die Umstellung auf das neue Format und die Konvertierung bestehender *.BWC Dateien wird während des Updates automatisch erledigt.

Die Sysex - Defaulteinstellungen (Blofeld - ID 0, Wavetable 80) können übrigens auch separat mit dem Button MODIFY im Browser geändert werden, ohne die Datei neu laden zu müssen. AT merkt sich die jeweils letzten gespeicherten Einstellungen.

Wie für alle Fremdformate gilt auch hier: Es werden nur Dateien unterstützt, die "Audio-Term" kompatibel sind bzw. mit dieser Software erzeugt wurden. Technisch ist das nicht anders lösbar und gilt im übrigen auch für Surge - Wavetables und Ensoniq - Transwaves. Das hat vor allem etwas mit der Anzahl der Wavetableslots und den Formattypen zu tun.

Speziell bei Sysex ergibt sich das Problem, dass man keine zusätzlichen Synthesedaten speichern kann. Um die Daten wieder in Audio-Term laden zu können, muss somit eine Extrapolation von nicht gespeicherten Daten und eine Resynthese vorgenommen werden. Davon merkt der User zwar nix, hat aber bestimmt 'ne Stunde Arbeit gekostet, mir diese Lösung aus dem Gehirn zu leiern. :D
 
Man kann bereits jetzt mit dem folgenden Tool die Wavetables aus Audio-Term in das A112 schicken:

http://rampe-d.de/Software/A-112_Sample_Dump_Tool.html

Dazu speichert man eine Wavetable als *.WAV mit den folgenden Parametern:

BASE: Alternate
Bits: 16 (Integer)
Slices: 256
Samples per Slice: 256

A112%20Export.jpg


Die oben verlinkte Software rechnet das automatisch in 8 Bit runter und sendet es an das Modul.

Allgemein ist Sysex recht schwierig zu händeln. Die gespeicherten Dateien fungieren ja auch als Library für das Zusammenbauen neuer Tables. Leider wird die Qualität gerade bei den 8-bit Wavetables ziemlich herabgesetzt bzw. ein Teil der Daten wird (weil 256 kein glattes Vielfaches von 33 ist) abgeschnitten.

Somit erfordert ein zurückladen der Datei in Audio-Term (z.Bsp. zum bearbeiten oder einfach nur zum Anhören, wenn man im Browser draufklickt) eine Resynthese des Sounds und eine Extrapolation der abgeschnittenen Daten. Dadurch treten mit jeder Dateigeneration mehr Quantisierungsartefakte und Rundungsfehler auf.

Das möchte ich eigentlich vermeiden, weshalb alle exportierten Formate zusätzlich eine Kopie der Synthesedaten drin haben. Bis auf Sysex, da geht das leider nicht.

Beim Blofeld habe den direkten Sysex - Export auch nur eingebaut, weil man sonst zusätzlich den "Blofeld Wavetable Creator" und noch ein weiteres Sysex-Dump-Tool braucht, was mir ein bisserl viel der Umwege war.
 
Also diese Tool eröffnet neue Möglichkeiten ... Danke

ist für mich etwas umständlich zu navigieren (Windows-User) aber dennoch danke für deine Bemühungen

Beim Blofeld habe den direkten Sysex - Export auch nur eingebaut, weil man sonst zusätzlich den "Blofeld Wavetable Creator" und noch ein weiteres Sysex-Dump-Tool braucht

muss ich mal ausprobieren .... dh. du hast hier auch die Slot-Belegung implementiert?

eine kleine Anregung noch:

So etwas wie einen Wavemorpher, das wäre geil
 
Ja, wenn Du ein Sysex speicherst, kommen nacheinander zwei Abfragen auf den Schirm: Zuerst die Blofeld ID und danach die Slotnummer. Das wird auch im Browser unter der Spalte "Parameter" angezeigt.

Man kann das in den Dateien auch nachträglich ändern, dazu klickt man eine Datei an und danach auf MODIFY<>. Damit kann man in den Dateien ID und Slot ändern, ohne sie erneut laden zu müssen. Der Wertebereich ist generell schon auf Blofeld begrenzt (ID 0 -127, Slot 80 - 118), so dass man hier nix falsches eingeben kann.

Die zuletzt gespeicherten Angaben für Slot und ID merkt sich AT und hat sie beim nächsten mal als Defaultwert drin. Wenn die okay sind, einfach mit "RET" (am Bildschirm) oder "Return" (auf der Tastatur) bestätigen. Wenn nicht, mit "<-I" oder "Backspace" löschen und eben den gewünschten Wert eintippen.

Wenn man bei der Eingabe der Slotnummer merkt, dass man sich bei der ID vertan hat, einfach mit "ESC" zurück.


Ähm.. was bitte ist ein "Wavemorpher" bzw. was genau sollte der ausspucken?
 
Cyclotron schrieb:
Ähm.. was bitte ist ein "Wavemorpher" bzw. was genau sollte der ausspucken?

Von Waveschnippsel A über B nach C. Damit meine ich nicht nur eine Volumen-Aus/Einblendung sondern ähnlich einem Wavetable eine Interpolation von einem Frequenzspektrum ab einem bestimmten Punkt zum nächsten.

Beispiel: Basedrum --> Vogelsound --> Snare
 
Ja, verstehe. Das ist aber weit jenseits meiner Möglichkeiten. Für AT im jetzigen Zstand hab ich ja schon 5 Jahre gebraucht (inklusive des Erlernens der Programmiersprache) und das basiert nur auf ein paar simplen FFT - Geschichten und ein bisserl Schulmathematik.

Der technische und mathematische Aufwand für Morphing ist um ein Vielfaches höher und wenn das Morphing gut klingt, ist es kaum zu erkennnen. Gerade im musikalischen Kontext, deshalb überzeugen mich auch die expliziten Morphingdemos nicht so wirklich, da das immer unter der Prämisse "Achtung, gleich morphen wir" und unter "Laborbedingungen" gezeigt wird.

Ich habe so etwas mal zu experimentellen Zwecken mit der Funktion XMRPH eingbaut, dort werden allerdings nur Magnituden und Phasen gemorpht. Eingesetzt habe ich das mal für den Übergang zwischen zwei Tracks ( von 5:55 - 6:33):



Für echtes Morphing müsste man Ankerpunkte definieren und zusätzlich auch die Entwicklung des Klanges über die Zeit berücksichtigen bzw. verbiegen. Das ist ein Thema, über sich die Leute an Unis den Kopf zerbrechen. Und somit keines (mehr) für mich. Es gibt zwar fertige Bibliotheken wie Loris, aber ich möchte sowas nicht bei mir einbauen. Ich will verstehen, was mit den Daten passiert und keine 'Black Box', die mich zudem noch an irgendwelche rechtlichen Auflagen bindet.
 
kyma macht ja morphing, mit ankerpunkten im zeit/frequenz gitter, tracking des grundtons und von formanten, etc pp.

und es klingt seeeehr unspektakulär.
 
Dafür aber ein wahnsinniger Aufwand an Programmierung und auf Userseite auch hohe Anforderungen an das Quellmaterial und den, der die Ankerpunkte definiert.
 
Übrigens Danke für den "Synthesizer"-Wavetable für den Blo.... den eingebunden und moduliert in einen Lead-Patch klingt echt erste Sahne
 
Cyclotron schrieb:
Dafür aber ein wahnsinniger Aufwand an Programmierung und auf Userseite auch hohe Anforderungen an das Quellmaterial und den, der die Ankerpunkte definiert.

exakt! mach das fass lieber nicht für Waveterm auf. Die Software kann so schon extrem viele, und coole, Dinge! :nihao:
 
AT exportiert jetzt auch für den PPG WaveGenerator. Das ist aber nicht offiziell und nicht autorisiert - wenn also etwas nicht so läuft, wie erwartet, bitte nicht PPG die Schuld daran geben. Wie bei allen anderen proprietären Wavetableformaten gilt auch hier, das AT nur seine eigenen Files wieder einlesen kann. Das hat sowohl technische als auch rechtliche Gründe.

Hier mal ein paar sinnfreie Testfiles, die man sich in den USER Ordner des WaveGenerators stopfen kann: https://www.dropbox.com/s/c0mwk0dz7mmbb10/Audio-Term to WaveGenerator Conversions.zip

Ich habe das auch nur mit der PC Version getestet. Wer den vollen Wavetablesupport mit 256 Slots für WaveGenerator wünscht, möchte sich bitte den WaveMapper kaufen oder selber ein Programm tippen.

Ansonsten gibt es noch ein paar Kleinigkeiten:

  • - eine Skalierungsfunktion (SCALE) für Wavetables; der Partialdatensatz wird abhängig vom gezeichneten Amplitudenprofil neu berechnet
    - die Backupfunktion inkrementiert nur, wenn sich tatsächlich Parameteränderungen ergeben
    - man kann jetzt mit den Cursortasten auch die Seiten der Browser wechseln
    - ein paar kleine optische Änderungen, diverse Optimierungen und Bugfixes
 


Neueste Beiträge

Zurück
Oben