Revision 41:16908c2bd781
| Makefile.inc | ||
|---|---|---|
| 1 | 1 |
|
| 2 | 2 |
PLUGIN_EXT ?= .so |
| 3 |
PLUGIN ?= cepstral-pitchtracker$(PLUGIN_EXT) |
|
| 3 |
|
|
| 4 | 4 |
CXX ?= g++ |
| 5 | 5 |
CC ?= gcc |
| 6 | 6 |
|
| 7 |
CFLAGS := $(CFLAGS) |
|
| 8 |
CXXFLAGS := $(CXXFLAGS) |
|
| 9 |
LDFLAGS := $(LDFLAGS) -lvamp-sdk |
|
| 7 |
CFLAGS := $(CFLAGS) |
|
| 8 |
CXXFLAGS := -I. $(CXXFLAGS) |
|
| 9 |
|
|
| 10 |
LDFLAGS := $(LDFLAGS) -lvamp-sdk |
|
| 11 |
PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS) |
|
| 12 |
TEST_LDFLAGS := $(LDFLAGS) -lboost_unit_test_framework |
|
| 13 |
|
|
| 14 |
PLUGIN := cepstral-pitchtracker$(PLUGIN_EXT) |
|
| 10 | 15 |
|
| 11 | 16 |
HEADERS := CepstralPitchTracker.h \ |
| 12 | 17 |
NoteHypothesis.h \ |
| ... | ... | |
| 14 | 19 |
|
| 15 | 20 |
SOURCES := CepstralPitchTracker.cpp \ |
| 16 | 21 |
NoteHypothesis.cpp \ |
| 17 |
PeakInterpolator.cpp \ |
|
| 18 |
libmain.cpp |
|
| 22 |
PeakInterpolator.cpp |
|
| 23 |
|
|
| 24 |
PLUGIN_MAIN := libmain.cpp |
|
| 25 |
|
|
| 26 |
TESTS := test/test-notehypothesis \ |
|
| 27 |
test/test-peakinterpolator |
|
| 19 | 28 |
|
| 20 | 29 |
OBJECTS := $(SOURCES:.cpp=.o) |
| 21 | 30 |
OBJECTS := $(OBJECTS:.c=.o) |
| 22 | 31 |
|
| 23 |
all: $(PLUGIN)
|
|
| 32 |
PLUGIN_OBJECTS := $(OBJECTS) $(PLUGIN_MAIN:.cpp=.o)
|
|
| 24 | 33 |
|
| 25 |
$(PLUGIN): $(OBJECTS) |
|
| 26 |
$(CXX) -o $@ $^ $(LDFLAGS) |
|
| 27 |
$(MAKE) -C test |
|
| 34 |
all: $(PLUGIN) $(TESTS) |
|
| 35 |
for t in $(TESTS); do echo "Running $$t"; ./"$$t" || exit 1; done |
|
| 36 |
|
|
| 37 |
$(PLUGIN): $(PLUGIN_OBJECTS) |
|
| 38 |
$(CXX) -o $@ $^ $(PLUGIN_LDFLAGS) |
|
| 39 |
|
|
| 40 |
test/test-notehypothesis: test/TestNoteHypothesis.o $(OBJECTS) |
|
| 41 |
$(CXX) -o $@ $^ $(TEST_LDFLAGS) |
|
| 42 |
|
|
| 43 |
test/test-peakinterpolator: test/TestPeakInterpolator.o $(OBJECTS) |
|
| 44 |
$(CXX) -o $@ $^ $(TEST_LDFLAGS) |
|
| 28 | 45 |
|
| 29 | 46 |
clean: |
| 30 |
rm -f $(OBJECTS) |
|
| 31 |
$(MAKE) -C test clean |
|
| 47 |
rm -f $(OBJECTS) test/*.o |
|
| 32 | 48 |
|
| 33 | 49 |
distclean: clean |
| 34 |
rm -f $(PLUGIN) |
|
| 35 |
$(MAKE) -C test distclean |
|
| 50 |
rm -f $(PLUGIN) $(TESTS) |
|
| 36 | 51 |
|
| 37 |
libmain.o: $(HEADERS) $(SOURCES) |
|
| 38 |
CepstralPitchTracker.o: $(HEADERS) $(SOURCES) |
|
| 39 |
NoteHypothesis.o: $(HEADERS) $(SOURCES) |
|
| 40 |
PeakInterpolator.o: $(HEADERS) $(SOURCES) |
|
| 52 |
# DO NOT DELETE |
|
| 53 |
|
|
| 54 |
CepstralPitchTracker.o: CepstralPitchTracker.h NoteHypothesis.h |
|
| 55 |
libmain.o: CepstralPitchTracker.h NoteHypothesis.h |
|
| 56 |
NoteHypothesis.o: NoteHypothesis.h |
|
| 57 |
PeakInterpolator.o: PeakInterpolator.h |
|
| 58 |
test/TestNoteHypothesis.o: NoteHypothesis.h |
|
| 59 |
test/TestPeakInterpolator.o: PeakInterpolator.h |
|
| Makefile.linux64 | ||
|---|---|---|
| 2 | 2 |
CFLAGS := -Wall -g -fPIC |
| 3 | 3 |
CXXFLAGS := $(CFLAGS) |
| 4 | 4 |
|
| 5 |
LDFLAGS := -shared -Wl,-Bstatic -lvamp-sdk -Wl,-Bdynamic |
|
| 5 |
PLUGIN_LDFLAGS := -shared -Wl,-Bstatic -lvamp-sdk -Wl,-Bdynamic
|
|
| 6 | 6 |
|
| 7 | 7 |
PLUGIN_EXT := .so |
| 8 | 8 |
|
| test/Makefile | ||
|---|---|---|
| 1 |
CXX ?= g++ |
|
| 2 |
CC ?= gcc |
|
| 3 |
|
|
| 4 |
CFLAGS := $(CFLAGS) |
|
| 5 |
CXXFLAGS := $(CXXFLAGS) -I.. |
|
| 6 |
LDFLAGS := $(LDFLAGS) -lvamp-sdk -lboost_unit_test_framework |
|
| 7 |
|
|
| 8 |
SUPER_OBJECTS := ../NoteHypothesis.o ../PeakInterpolator.o |
|
| 9 |
|
|
| 10 |
OBJECTS := TestNoteHypothesis.o TestPeakInterpolator.o |
|
| 11 |
|
|
| 12 |
TESTS := test-notehypothesis test-peakinterpolator |
|
| 13 |
|
|
| 14 |
all: run-tests |
|
| 15 |
|
|
| 16 |
test-notehypothesis: TestNoteHypothesis.o |
|
| 17 |
$(CXX) -o $@ $^ $(SUPER_OBJECTS) $(LDFLAGS) |
|
| 18 |
|
|
| 19 |
test-peakinterpolator: TestPeakInterpolator.o |
|
| 20 |
$(CXX) -o $@ $^ $(SUPER_OBJECTS) $(LDFLAGS) |
|
| 21 |
|
|
| 22 |
run-tests: $(TESTS) |
|
| 23 |
for t in $(TESTS); do ./"$$t" || exit 1; done |
|
| 24 |
|
|
| 25 |
clean: |
|
| 26 |
rm -f $(OBJECTS) |
|
| 27 |
|
|
| 28 |
distclean: clean |
|
| 29 |
rm -f $(TESTS) |
|
| 30 |
|
|
| test/TestPeakInterpolator.cpp | ||
|---|---|---|
| 98 | 98 |
BOOST_CHECK_EQUAL(result, 1.5); |
| 99 | 99 |
} |
| 100 | 100 |
|
| 101 |
BOOST_AUTO_TEST_CASE(aboveHalfway) |
|
| 102 |
{
|
|
| 103 |
double data[] = { 1.0, 1.5, 2.0, 1.0 };
|
|
| 104 |
PeakInterpolator p; |
|
| 105 |
double result = p.findPeakLocation(data, 4, 2); |
|
| 106 |
BOOST_CHECK(result > 1.5 && result < 2.0); |
|
| 107 |
} |
|
| 108 |
|
|
| 109 |
BOOST_AUTO_TEST_CASE(belowHalfway) |
|
| 110 |
{
|
|
| 111 |
double data[] = { 1.0, 2.0, 1.5, 1.0 };
|
|
| 112 |
PeakInterpolator p; |
|
| 113 |
double result = p.findPeakLocation(data, 4, 1); |
|
| 114 |
BOOST_CHECK(result > 1.0 && result < 1.5); |
|
| 115 |
} |
|
| 116 |
|
|
| 101 | 117 |
BOOST_AUTO_TEST_SUITE_END() |
| 102 | 118 |
|
Also available in: Unified diff