summaryrefslogtreecommitdiff
path: root/synth
diff options
context:
space:
mode:
Diffstat (limited to 'synth')
-rw-r--r--synth/.depend25
-rw-r--r--synth/Makefile8
-rw-r--r--synth/OPTIMIZATIONS7
3 files changed, 34 insertions, 6 deletions
diff --git a/synth/.depend b/synth/.depend
new file mode 100644
index 0000000..3a0b0ed
--- /dev/null
+++ b/synth/.depend
@@ -0,0 +1,25 @@
+channel.o: channel.cpp channel.h fixed.h programs.h note.h envelope.h \
+ filter.h defines.h util.h globals.h
+cli.o: cli.cpp util.h programs.h fixed.h globals.h channel.h note.h \
+ envelope.h filter.h defines.h load.h
+defines.o: defines.cpp defines.h
+envelope.o: envelope.cpp envelope.h programs.h fixed.h
+filter.o: filter.cpp filter.h fixed.h defines.h globals.h programs.h \
+ channel.h note.h envelope.h util.h
+globals.o: globals.cpp globals.h programs.h fixed.h channel.h note.h \
+ envelope.h filter.h defines.h util.h
+jack.o: jack.cpp defines.h globals.h programs.h fixed.h channel.h note.h \
+ envelope.h filter.h util.h jack.h
+load.o: load.cpp util.h programs.h fixed.h globals.h channel.h note.h \
+ envelope.h filter.h defines.h
+main.o: main.cpp jack.h load.h cli.h parser.h fixed.h programs.h \
+ channel.h note.h envelope.h filter.h defines.h util.h globals.h
+note.o: note.cpp note.h programs.h fixed.h envelope.h filter.h globals.h \
+ channel.h defines.h util.h
+parser.o: parser.cpp parser.h fixed.h programs.h defines.h globals.h \
+ channel.h note.h envelope.h filter.h util.h readwave.h
+programs.o: programs.cpp programs.h fixed.h globals.h channel.h note.h \
+ envelope.h filter.h defines.h util.h
+readwave.o: readwave.cpp readwave.h programs.h fixed.h util.h
+util.o: util.cpp util.h programs.h fixed.h globals.h channel.h note.h \
+ envelope.h filter.h defines.h
diff --git a/synth/Makefile b/synth/Makefile
index 3870262..75c49d3 100644
--- a/synth/Makefile
+++ b/synth/Makefile
@@ -14,19 +14,19 @@ all: $(BIN)
$(BIN): $(OBJ)
- $(CXX) $(CFLAGS) -o synth $(OBJ) $(LDFLAGS)
+ $(CXX) $(CFLAGS) -o $(BIN) $(OBJ) $(LDFLAGS)
-dep: $(SRC)
+depend dep: $(SRC)
$(CC) -MM $(SRC) > $(DEPENDFILE)
-include $(DEPENDFILE)
%.o: %.cpp
- $(CXX) $(CXXFLAGS) -g -c $<
+ $(CXX) $(CXXFLAGS) -c $<
-.PHONY: clean
+.PHONY: clean dep depend
clean:
rm -f $(OBJ) $(BIN)
diff --git a/synth/OPTIMIZATIONS b/synth/OPTIMIZATIONS
index 2dd003f..b8bfe0d 100644
--- a/synth/OPTIMIZATIONS
+++ b/synth/OPTIMIZATIONS
@@ -1,7 +1,7 @@
Sinnlose Optimierungen
o if(foo.fm_strength!=0) ...: kein effekt, höchstens leichter anstieg!
- Mögliche Optimierungen
+Mögliche Optimierungen
o 10% filter ganz auf fixed_t umstellen?
o 5% envelope::get_level nur alle n frames arbeiten lassen, sonst cachen?
o 2% bei LFOs: bei jedem LFO-update die werte für env-max, freqfactor
@@ -11,8 +11,11 @@ Sinnlose Optimierungen
x 0% beim channel::get_sample: pro note immer mehrere samples auf
einmal holen (iterator braucht recht viel leistung)
wird von g++ automatisch wegoptimiert -> ok
+
+Kein negativer Einfluss auf die Performance:
+ o _virtual_ void Note::get_samples (mit time nicht erkennbar)
- Mögliche Bugs und ihre Lösung:
+Mögliche Bugs und ihre Lösung:
o frequenz wird nicht genau eingehalten: phase um
foo*WAVE_RES erhöhen, entsprechend wave[][bar] ändern.
ABER: im testfall um bis zu 15% langsamer