Mercurial > hg > match-vamp
comparison MatchVampPlugin.cpp @ 25:e6a143e4e143
Add zonewidth parameter (setting the block time in the matcher) and rename the max run count to "gradient limit"
author | Chris Cannam |
---|---|
date | Fri, 17 Oct 2014 12:57:14 +0100 |
parents | 64c4c0cf80c9 |
children | 9f60d097f0b2 |
comparison
equal
deleted
inserted
replaced
24:89929e9e54fb | 25:e6a143e4e143 |
---|---|
199 desc.defaultValue = m_defaultParams.useChromaFrequencyMap ? 1 : 0; | 199 desc.defaultValue = m_defaultParams.useChromaFrequencyMap ? 1 : 0; |
200 desc.isQuantized = true; | 200 desc.isQuantized = true; |
201 desc.quantizeStep = 1; | 201 desc.quantizeStep = 1; |
202 list.push_back(desc); | 202 list.push_back(desc); |
203 | 203 |
204 desc.identifier = "maxruncount"; | 204 desc.identifier = "gradientlimit"; |
205 desc.name = "Max Run Count"; | 205 desc.name = "Gradient Limit"; |
206 desc.description = "Limit of number of frames that will be accepted from one source without a frame from the other source being accepted"; | 206 desc.description = "Limit of number of frames that will be accepted from one source without a frame from the other source being accepted"; |
207 desc.minValue = 1; | 207 desc.minValue = 1; |
208 desc.maxValue = 10; | 208 desc.maxValue = 10; |
209 desc.defaultValue = m_defaultParams.maxRunCount; | 209 desc.defaultValue = m_defaultParams.maxRunCount; |
210 desc.isQuantized = true; | 210 desc.isQuantized = true; |
211 desc.quantizeStep = 1; | 211 desc.quantizeStep = 1; |
212 list.push_back(desc); | |
213 | |
214 desc.identifier = "zonewidth"; | |
215 desc.name = "Search Zone Width"; | |
216 desc.description = "Width of the search zone (error margin) either side of the ongoing match position, in seconds"; | |
217 desc.minValue = 1; | |
218 desc.maxValue = 60; | |
219 desc.defaultValue = m_defaultParams.blockTime; | |
220 desc.isQuantized = true; | |
221 desc.quantizeStep = 1; | |
222 desc.unit = "s"; | |
212 list.push_back(desc); | 223 list.push_back(desc); |
213 | 224 |
214 return list; | 225 return list; |
215 } | 226 } |
216 | 227 |
225 return (int)m_params.distanceNorm; | 236 return (int)m_params.distanceNorm; |
226 } else if (name == "usespecdiff") { | 237 } else if (name == "usespecdiff") { |
227 return m_params.useSpectralDifference ? 1.0 : 0.0; | 238 return m_params.useSpectralDifference ? 1.0 : 0.0; |
228 } else if (name == "usechroma") { | 239 } else if (name == "usechroma") { |
229 return m_params.useChromaFrequencyMap ? 1.0 : 0.0; | 240 return m_params.useChromaFrequencyMap ? 1.0 : 0.0; |
230 } else if (name == "maxruncount") { | 241 } else if (name == "gradientlimit") { |
231 return m_params.maxRunCount; | 242 return m_params.maxRunCount; |
243 } else if (name == "zonewidth") { | |
244 return m_params.blockTime; | |
232 } | 245 } |
233 | 246 |
234 return 0.0; | 247 return 0.0; |
235 } | 248 } |
236 | 249 |
245 m_params.distanceNorm = (Matcher::DistanceNormalisation)(int(value + 0.1)); | 258 m_params.distanceNorm = (Matcher::DistanceNormalisation)(int(value + 0.1)); |
246 } else if (name == "usespecdiff") { | 259 } else if (name == "usespecdiff") { |
247 m_params.useSpectralDifference = (value > 0.5); | 260 m_params.useSpectralDifference = (value > 0.5); |
248 } else if (name == "usechroma") { | 261 } else if (name == "usechroma") { |
249 m_params.useChromaFrequencyMap = (value > 0.5); | 262 m_params.useChromaFrequencyMap = (value > 0.5); |
250 } else if (name == "maxruncount") { | 263 } else if (name == "gradientlimit") { |
251 m_params.maxRunCount = int(value + 0.1); | 264 m_params.maxRunCount = int(value + 0.1); |
265 } else if (name == "zonewidth") { | |
266 m_params.blockTime = value; | |
252 } | 267 } |
253 } | 268 } |
254 | 269 |
255 size_t | 270 size_t |
256 MatchVampPlugin::getPreferredStepSize() const | 271 MatchVampPlugin::getPreferredStepSize() const |