ok, vielleicht kann ich ja mal versuchen zusammenzufassen, w
ok, vielleicht kann ich ja mal versuchen zusammenzufassen, wie der "perfect syntheditor" so ungefähr aussehen soll:
1.) Geräte-Setups für vorhandene Synths werden erstellt bzw., falls schon vorhanden, einfach geladen.
1a)sonicwarriors Idee war, das ganze auf Textdatei-Basis zu erstellen (ausserhalb des Programms).Finde ich auch gut, in dem Falle würde man diese (xml) Datei einfach laden und der SysExDump könnte auf Buttondruck losgehen.
1aa)Diese xml Datei müsste auch für nicht-Programmierer leicht zu erstellen sein, etwa mit Vorangaben ala
#trage in die nächste Zeile den MidiIn-Port ein
.....
(weiss nicht, ob das mit der xml - Programmierung konform ist)
1b)welche Angaben müssen auf jeden Fall gemacht werden?
>MidiIn/Out port
>MidiCh bzw Basic Channel bei multimbralen Synths
>DeviceNr, falls mehrere gleiche Geräte (aber wer hat das schon)
>falls neues Device: natürlich der ganze SysEx-Kram (Sysex Preset data request string usw.)
1c)vorhandene MidiIns und -Outs müssen erkannt werden
1d)Spezialfälle (RolandChecksum) müssen gemeistert werden
1e)expansion boards sollten wenn möglich erkannt werden
2)wenn der Synth gedumpt ist, werden die Sounds übersichtlich angezeigt . Der Dump kann jetzt gespeichert werden (auch, damit man nicht jedes mal minutenlang auf die Beendigung des Dumps warten muß sondern stattdessen einfach von der Festplatte laden kann).
Durch Klick wird ein Sound in den Editbuffer geholt und kurz angetriggert.(kleine Sequenz?)
3)auf einer Edit-Seite kann der gewählte Sound ummh... editiert werden.
3a)Falls es noch keine Anpassung gibt, können Bedienfelder generiert werden. Diesen werden Parameter zugeordnet, die bei Bedienung gesendet werden.
3b1)Diese Parameter können flexibel MidiCC oder SysEx Daten sein.Der Midi-Kanal (von CC) ist ebenfalls flexibel einstellbar.
3b2)auf jeden Fall Midi-learn Funktion - wenn irgend möglich, auch für SysEx (Synth: Tx Edit data=On+ Faderbewegung=>das Programm erkennt, welche Bytes verändert werden)
3c)durch copy/paste auch mehrerer Objekte kann man Zeit sparen
Zu 3 sehe ich allerdings folgendes Problem, wenn die Geräteunterstützung zusammen mit den "Widgets" (Fader/knobs/data entry/textFelder,... in einer einzigen (großen)xml-Datei gespeichert wird.Von den Cubase Devices (wo ja auch alles in einer xml Datei gespeichert ist) weiss ich jedenfalls, daß dieser Grafikteil ein ziemlich unentwirrbarer, großer Block ist, teilweise mehrere Mb groß. Darin sind Position, Type, Bezeichnung ("Cutoff" u.ä.) und eventuell importierte Bitmaps hexadezimal (?) gespeichert. So ein Chaos wäre absolut nicht wünschenswert.( Kann gerne mal eine CubaseSx3 xml-Datei uploaden) Stattdessen wäre eine übersichtliche Ordnung besser, wie etwa
<parameterNr=...
<parameterVariable=...(Sysex/CC#)
<parameterRange=...
<parameterObject=...(knob/fader/switch...)
<parameterObjectPositionX=...usw.
ps Gui muß ja nicht "überbordend" sein, aaaber: wenn das Editieren Spaß machen soll, sollte die Grafik schon stimmen.
(Beispiel)
pps über die Integrierung in vorhandene Sequencer-Software wurde noch gar nicht gesprochen (Aufnahme von CC daten in Logic/Cubase).Ist aber wahrscheinlich zu kompliziert fürs erste (?)
ppps autom. Erkennung wäre IMHO übertrieben
pppps openSource ist sowieso besser, geht aber in diesem Falle eigentlich gar nicht anders, weil 1. niemand sämtliche grade oder jemals angesagten Synths zu Hause rumstehen hat und 2. niemand wirklich Lust hat bis zum Lebensende SysEx-Strings einzugeben
Naja, langes posting, hatte mir allerdings auch schon öfters Gedanken zu diesem Thema gemacht, grade eben weil Steinberg mit SX3 gezeigt hat, wie man's halt nicht machen sollte