comparison src/LiveInstruments.cpp @ 299:a4216826f01c livemode

Re-normalise
author Chris Cannam
date Fri, 28 Nov 2014 10:31:59 +0000
parents ebe5e0942bb8
children ba5f3b084466
comparison
equal deleted inserted replaced
298:ebe5e0942bb8 299:a4216826f01c
33 t.highestNote = i->highestNote; 33 t.highestNote = i->highestNote;
34 t.data.resize(i->data.size()); 34 t.data.resize(i->data.size());
35 35
36 for (int j = 0; j < int(i->data.size()); ++j) { 36 for (int j = 0; j < int(i->data.size()); ++j) {
37 t.data[j].resize(SILVET_TEMPLATE_HEIGHT/5); 37 t.data[j].resize(SILVET_TEMPLATE_HEIGHT/5);
38 float sum = 0.f;
38 for (int k = 0; k < SILVET_TEMPLATE_HEIGHT/5; ++k) { 39 for (int k = 0; k < SILVET_TEMPLATE_HEIGHT/5; ++k) {
39 t.data[j][k] = i->data[j][k * 5 + 2 - SILVET_TEMPLATE_MAX_SHIFT]; 40 t.data[j][k] = i->data[j][k * 5 + 2 - SILVET_TEMPLATE_MAX_SHIFT];
41 sum += t.data[j][k];
40 } 42 }
43 // re-normalise
44 for (int k = 0; k < (int)t.data[j].size(); ++k) {
45 t.data[j][k] *= 1.f / sum;
46 }
41 } 47 }
48
42 templates.push_back(t); 49 templates.push_back(t);
43 } 50 }
44 51
45 InstrumentPack live(original.lowestNote, 52 InstrumentPack live(original.lowestNote,
46 original.highestNote, 53 original.highestNote,