From d9fd174884bf999fa53216b2cc307379fe9b1084 Mon Sep 17 00:00:00 2001 From: Florian Jung Date: Sat, 1 Jan 2011 16:39:35 +0100 Subject: Update and move todo-list --- synth/TODO | 33 --------------------------- synth/TODO.done | 71 --------------------------------------------------------- 2 files changed, 104 deletions(-) delete mode 100644 synth/TODO delete mode 100644 synth/TODO.done (limited to 'synth') diff --git a/synth/TODO b/synth/TODO deleted file mode 100644 index d5f5534..0000000 --- a/synth/TODO +++ /dev/null @@ -1,33 +0,0 @@ -TODO für den synth - o notes compilieren und als .so-datei laden - o programme on-the-fly (um)laden - - o RAM aufräumen? - - o jedes programm eigene LFOs? - o andere wellenformen bei LFOs? - o mehr wellen für wave[] - - o parser: sehr redundante funktionen zusammenführen - o parser: direkt in result schreiben? - - o attack und release ggf. auf niedrigen wert (<=0.01) initen, um - knackser zu vermeiden? - - o chorus, reverb etc. - - o konnte-nicht-verbinden-warnung weniger schlimm machen - - o max_pitchbend per controller setzen? - o nur auf bestimmte channels reagieren - - o diverse pedale (soft, sostenuto, halte, legato (?)) - - (o)programs on-the-fly ändern (n_osc ändern) - (o)lfo-maxima getrennt regeln. nää - (o)bei filter-envelopes: ksr/ksl? nää. - (o)resonanz-tremolo bei tiefpass? nää. - - -TODO fürs CLI - x ... diff --git a/synth/TODO.done b/synth/TODO.done deleted file mode 100644 index 0cd6d16..0000000 --- a/synth/TODO.done +++ /dev/null @@ -1,71 +0,0 @@ -TODO für den synth - x knistern bei aktivem frameskip - x tremolo und vibrato: phase nurnoch ++ - x rettack im monomode abschalten (sondern einfach nur freq ändern) - x bei freqänderung: aufpassen, ob nicht das programm auch geändert - wurde. wenn ja: delete && new - x note-limit - x stereo: pan/balance - x envelopes on-the-fly ändern - x programs laden - x beim note-limit: statt abzuschneiden ausblenden - x einstellmöglichkeiten via MIDI-controller - x grund-controller bearbeiten - x ein port pro channel - x controllern einen defaultwert pro programm mitgeben - x monophoner modus - x reattack - x alwaysreattack setzen können - x portamento testen - x memcheck-clean! - x memcpy durch copy() plus operator= ersetzen? - x pitch-bend - x controller-reset - x key scale level, key scale rate - x akkurates note-on - x frameskip - x globale config-datei, oder alle programs in einem verz. einlesen etc. - x auf dateifehler reagieren! - x sampler-"oscs", d.h. laden von wav-dateien, die sich sonst - wie oscs verhalten (fm möglich usw.) - x analoge synthese auf den output jeder note anwenden - x tiefpass via def.datei setzen: trem, env, res - x tiefpass via controller setzen - x osc-sync - x bei genügend xruns noten töten - x filter knackst - x bei self-mod mit faktor 1 (auch ohne filter): segfault - x bei starken vibratos: segfault, weil fm zu extrem wird - x bei bug.prog: auch ohne filter: knacksen bei den meisten noten (z.B. C) - x per velocity statt lautstärke andere params steuern - x frameskip so implementieren, dass bufsize irrelevant ist - x lfo_update_frames einstellbar machen - sollte durch frameskip dividiert werden - x tremolo- und vibrato-arrays sind mit mehreren MB zu groß! - ein wert pro sample ist unnötig. könnte auch rechenzeit in - calc_foo sparen, da seltener aufgerufen - x sample-and-hold -> fm_strength, -> freq, -> VCF - * bei osc-envelopes ggf. auch nur alle n frames neu setzen? [verschoben] - * filter optimieren? (arbeiten momentan mit floats) [verschoben] - verstehen, optimieren und dann profilen - x stimmt die stereo-implementierung? [ja] - - -TODO fürs CLI - x filter_update_frames, lfo_update_frames in config, in sec (auch im CLI) - x max_port_time einstellen - x manuelle program -> datei - mappings - x automatische mappings ( xxxIGNORIERT.prg, xxx ist die programmnummer), - alle dateien eines verzeichnisses einlesen. bei nichtexistenz - auf normalen sinus zurückfallen - x konfigdateien lesen (inhalt wie CLI-optionen) - x vibrato- und tremolo-frequenzen einstellen - x cleanup-intervall setzen - x space-sicher machen - x fehlerbehandlung: - syntaxfehler sollten übergangen werden, sofern möglich - in parser: throw!, sonst: meckern und nächste zeile parsen - x automatisch an alle midi-outs hängen - x interface div-by-zero-sicher machen - - -- cgit v1.2.3