changeset 14:75fb80542cd2 matthiasm-plugin

lowered amplitude threshold
author matthiasm
date Fri, 02 Jul 2010 03:55:37 +0000
parents 9ae90fa5fa74
children 6f7fc832cb44
files NNLSChroma.cpp
diffstat 1 files changed, 10 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/NNLSChroma.cpp	Wed Jun 16 10:16:13 2010 +0000
+++ b/NNLSChroma.cpp	Fri Jul 02 03:55:37 2010 +0000
@@ -941,9 +941,18 @@
 	const float *fbuf = inputBuffers[0];	
 	
 	// make magnitude
+	float maxmag = -10000;
 	for (size_t iBin = 0; iBin < m_blockSize/2; iBin++) {
 		magnitude[iBin] = sqrt(fbuf[2 * iBin] * fbuf[2 * iBin] + 
-			fbuf[2 * iBin + 1] * fbuf[2 * iBin + 1]);
+			fbuf[2 * iBin + 1] * fbuf[2 * iBin + 1]);		
+		if (maxmag < magnitude[iBin]) maxmag = magnitude[iBin];
+	}
+	
+	if (maxmag < 12) {
+		// cerr << "timestamp " << timestamp << ": very low magnitude, setting magnitude to all zeros" << endl;
+		for (size_t iBin = 0; iBin < m_blockSize/2; iBin++) {
+			magnitude[iBin] = 0;
+		}
 	}
 		
 	// note magnitude mapping using pre-calculated matrix