Mercurial > hg > pyin
comparison Yin.cpp @ 91:854d9403c5be
note separation based on RMS
author | matthiasm |
---|---|
date | Wed, 07 Jan 2015 16:30:16 +0000 |
parents | 83ee5e6d1577 |
children | 7ef7f6e90966 |
comparison
equal
deleted
inserted
replaced
90:b087967c4417 | 91:854d9403c5be |
---|---|
95 double probSum = 0; | 95 double probSum = 0; |
96 for (size_t iBin = 0; iBin < m_yinBufferSize; ++iBin) | 96 for (size_t iBin = 0; iBin < m_yinBufferSize; ++iBin) |
97 { | 97 { |
98 probSum += peakProbability[iBin]; | 98 probSum += peakProbability[iBin]; |
99 } | 99 } |
100 | 100 double rms = std::sqrt(YinUtil::sumSquare(in, 0, m_yinBufferSize)/m_yinBufferSize); |
101 Yin::YinOutput yo(0,0,0); | 101 Yin::YinOutput yo(0,0,rms); |
102 for (size_t iBuf = 0; iBuf < m_yinBufferSize; ++iBuf) | 102 for (size_t iBuf = 0; iBuf < m_yinBufferSize; ++iBuf) |
103 { | 103 { |
104 yo.salience.push_back(peakProbability[iBuf]); | 104 yo.salience.push_back(peakProbability[iBuf]); |
105 if (peakProbability[iBuf] > 0) | 105 if (peakProbability[iBuf] > 0) |
106 { | 106 { |