annotate yeti/test.yeti @ 40:031386846e3c

Return bin frequencies, for reference; some padding
author Chris Cannam <c.cannam@qmul.ac.uk>
date Tue, 19 Nov 2013 14:37:23 +0000
parents c0514dd5be60
children ae7d2e558ed1
rev   line source
c@37 1
c@37 2 program test;
c@37 3
c@37 4 af = load may.stream.audiofile;
c@37 5 plot = load may.plot;
c@37 6 cm = load may.matrix.complex;
c@37 7 mat = load may.matrix;
c@37 8 vec = load may.vector;
c@37 9 manipulate = load may.stream.manipulate;
c@37 10 syn = load may.stream.syntheticstream;
c@37 11
c@37 12 { cqt } = load cqt;
c@37 13
c@37 14 //testStream = manipulate.withDuration 96000 (syn.sinusoid 48000 500);
c@37 15 //testStream = manipulate.withDuration 96000 (syn.pulseTrain 48000 4);
c@37 16 //testStream = af.open "sweep-48000.wav";
c@37 17 //testStream = af.open "sweep.wav";
c@37 18
c@38 19 testStream = manipulate.withDuration 64 (syn.sinusoid 8 2);
c@38 20
c@38 21 // So the stream is [ 0, 1, 0, -1, 0, 1, 0, -1, ... ]
c@37 22
c@37 23 eprintln "have test stream";
c@37 24
c@38 25 cq = cqt { maxFreq = testStream.sampleRate/2, minFreq = 1, binsPerOctave = 4 } testStream;
c@37 26
c@40 27 eprintln "bin frequencies: \(cq.kernel.binFrequencies)";
c@40 28
c@40 29 for cq.output do c:
c@37 30 mm = cm.magnitudes c;
c@37 31 for (mat.asColumns mm) (println . strJoin "," . vec.list);
c@37 32 done;
c@37 33
c@40 34 bigM = mat.concatHorizontal (map cm.magnitudes cq.output);
c@37 35
c@38 36 eprintln "overall output size = \(mat.size bigM)";
c@38 37
c@39 38 mat.print bigM;
c@38 39
c@38 40 //\() (plot.plot [Contour bigM]);
c@38 41 //\() (plot.plot [Grid bigM]);
c@37 42
c@37 43 ()
c@37 44