Mercurial > hg > match-vamp
diff src/MatchVampPlugin.cpp @ 188:487261a22b18 re-minimise
distance_t * diagonalWeight might not fit in distance_t; use pathcost_t for it. Also remove C-style casts.
author | Chris Cannam |
---|---|
date | Thu, 26 Feb 2015 12:19:17 +0000 |
parents | a17b22abd551 |
children | 082ff90f1c82 |
line wrap: on
line diff
--- a/src/MatchVampPlugin.cpp Thu Feb 26 10:48:36 2015 +0000 +++ b/src/MatchVampPlugin.cpp Thu Feb 26 12:19:17 2015 +0000 @@ -152,7 +152,7 @@ desc.description = "Tuning frequency (concert A) for the reference audio."; desc.minValue = 220.0; desc.maxValue = 880.0; - desc.defaultValue = (float)m_defaultFeParams.referenceFrequency; + desc.defaultValue = float(m_defaultFeParams.referenceFrequency); desc.isQuantized = false; desc.unit = "Hz"; list.push_back(desc); @@ -162,7 +162,7 @@ desc.description = "Tuning frequency (concert A) for the other audio."; desc.minValue = 220.0; desc.maxValue = 880.0; - desc.defaultValue = (float)m_defaultFeParams.referenceFrequency; + desc.defaultValue = float(m_defaultFeParams.referenceFrequency); desc.isQuantized = false; desc.unit = "Hz"; list.push_back(desc); @@ -171,8 +171,8 @@ desc.name = "Minimum frequency"; desc.description = "Minimum frequency to include in features."; desc.minValue = 0.0; - desc.maxValue = (float)m_inputSampleRate / 4.f; - desc.defaultValue = (float)m_defaultFeParams.minFrequency; + desc.maxValue = float(m_inputSampleRate / 4.f); + desc.defaultValue = float(m_defaultFeParams.minFrequency); desc.isQuantized = false; desc.unit = "Hz"; list.push_back(desc); @@ -181,8 +181,8 @@ desc.name = "Maximum frequency"; desc.description = "Maximum frequency to include in features."; desc.minValue = 1000.0; - desc.maxValue = (float)m_inputSampleRate / 2.f; - desc.defaultValue = (float)m_defaultFeParams.maxFrequency; + desc.maxValue = float(m_inputSampleRate / 2.f); + desc.defaultValue = float(m_defaultFeParams.maxFrequency); desc.isQuantized = false; desc.unit = "Hz"; list.push_back(desc); @@ -209,7 +209,7 @@ desc.description = "Whether to use half-wave rectified feature-to-feature difference instead of straight spectral or chroma feature"; desc.minValue = 0; desc.maxValue = 1; - desc.defaultValue = (float)m_defaultFcParams.order; + desc.defaultValue = float(m_defaultFcParams.order); desc.isQuantized = true; desc.quantizeStep = 1; list.push_back(desc); @@ -219,7 +219,7 @@ desc.description = "Type of normalisation to use for features"; desc.minValue = 0; desc.maxValue = 2; - desc.defaultValue = (float)m_defaultFcParams.norm; + desc.defaultValue = float(m_defaultFcParams.norm); desc.isQuantized = true; desc.quantizeStep = 1; desc.valueNames.clear(); @@ -228,14 +228,14 @@ desc.valueNames.push_back("Long-term average"); list.push_back(desc); desc.valueNames.clear(); - desc.defaultValue = (float)m_defaultFcParams.silenceThreshold; + desc.defaultValue = float(m_defaultFcParams.silenceThreshold); desc.identifier = "metric"; desc.name = "Distance metric"; desc.description = "Metric for distance calculations."; desc.minValue = 0; desc.maxValue = 2; - desc.defaultValue = (float)m_defaultDParams.metric; + desc.defaultValue = float(m_defaultDParams.metric); desc.isQuantized = true; desc.quantizeStep = 1; desc.valueNames.clear(); @@ -250,7 +250,7 @@ desc.description = "Type of normalisation to use for distance metric"; desc.minValue = 0; desc.maxValue = 2; - desc.defaultValue = (float)m_defaultDParams.norm; + desc.defaultValue = float(m_defaultDParams.norm); desc.isQuantized = true; desc.quantizeStep = 1; desc.valueNames.clear(); @@ -265,7 +265,7 @@ desc.description = "Total frame energy threshold below which a feature will be regarded as silent"; desc.minValue = 0; desc.maxValue = 0.1f; - desc.defaultValue = (float)m_defaultFcParams.silenceThreshold; + desc.defaultValue = float(m_defaultFcParams.silenceThreshold); desc.isQuantized = false; list.push_back(desc); @@ -274,7 +274,7 @@ desc.description = "Whether to mix in a small constant white noise term when calculating feature distance. This can improve alignment against sources containing cleanly synthesised audio."; desc.minValue = 0; desc.maxValue = 1; - desc.defaultValue = (float)m_defaultDParams.noise; + desc.defaultValue = float(m_defaultDParams.noise); desc.isQuantized = true; desc.quantizeStep = 1; list.push_back(desc); @@ -284,7 +284,7 @@ desc.description = "Limit of number of frames that will be accepted from one source without a frame from the other source being accepted"; desc.minValue = 1; desc.maxValue = 10; - desc.defaultValue = (float)m_defaultParams.maxRunCount; + desc.defaultValue = float(m_defaultParams.maxRunCount); desc.isQuantized = true; desc.quantizeStep = 1; list.push_back(desc); @@ -294,7 +294,7 @@ desc.description = "Width of the search zone (error margin) either side of the ongoing match position, in seconds"; desc.minValue = 1; desc.maxValue = 60; - desc.defaultValue = (float)m_defaultParams.blockTime; + desc.defaultValue = float(m_defaultParams.blockTime); desc.isQuantized = true; desc.quantizeStep = 1; desc.unit = "s"; @@ -305,7 +305,7 @@ desc.description = "Weight applied to cost of diagonal step relative to horizontal or vertical step. The default of 2.0 is good for gross tracking of quite different performances; closer to 1.0 produces a smoother path for performances more similar in tempo"; desc.minValue = 1.0; desc.maxValue = 2.0; - desc.defaultValue = (float)m_defaultParams.diagonalWeight; + desc.defaultValue = float(m_defaultParams.diagonalWeight); desc.isQuantized = false; desc.unit = ""; list.push_back(desc); @@ -340,35 +340,35 @@ if (name == "serialise") { return m_serialise ? 1.0 : 0.0; } else if (name == "framenorm") { - return (float)m_fcParams.norm; + return float(m_fcParams.norm); } else if (name == "distnorm") { - return (float)m_dParams.norm; + return float(m_dParams.norm); } else if (name == "usespecdiff") { - return (float)m_fcParams.order; + return float(m_fcParams.order); } else if (name == "usechroma") { return m_feParams.useChromaFrequencyMap ? 1.0 : 0.0; } else if (name == "gradientlimit") { - return (float)m_params.maxRunCount; + return float(m_params.maxRunCount); } else if (name == "diagonalweight") { - return m_params.diagonalWeight; + return float(m_params.diagonalWeight); } else if (name == "zonewidth") { - return (float)m_params.blockTime; + return float(m_params.blockTime); } else if (name == "smooth") { return m_smooth ? 1.0 : 0.0; } else if (name == "silencethreshold") { - return (float)m_fcParams.silenceThreshold; + return float(m_fcParams.silenceThreshold); } else if (name == "metric") { - return (float)m_dParams.metric; + return float(m_dParams.metric); } else if (name == "noise") { return m_dParams.noise; } else if (name == "freq1") { - return (float)m_feParams.referenceFrequency; + return float(m_feParams.referenceFrequency); } else if (name == "freq2") { - return (float)m_secondReferenceFrequency; + return float(m_secondReferenceFrequency); } else if (name == "minfreq") { - return (float)m_feParams.minFrequency; + return float(m_feParams.minFrequency); } else if (name == "maxfreq") { - return (float)m_feParams.maxFrequency; + return float(m_feParams.maxFrequency); } return 0.0; @@ -380,11 +380,11 @@ if (name == "serialise") { m_serialise = (value > 0.5); } else if (name == "framenorm") { - m_fcParams.norm = (FeatureConditioner::Normalisation)(int(value + 0.1)); + m_fcParams.norm = FeatureConditioner::Normalisation(int(value + 0.1)); } else if (name == "distnorm") { - m_dParams.norm = (DistanceMetric::DistanceNormalisation)(int(value + 0.1)); + m_dParams.norm = DistanceMetric::DistanceNormalisation(int(value + 0.1)); } else if (name == "usespecdiff") { - m_fcParams.order = (FeatureConditioner::OutputOrder)(int(value + 0.1)); + m_fcParams.order = FeatureConditioner::OutputOrder(int(value + 0.1)); } else if (name == "usechroma") { m_feParams.useChromaFrequencyMap = (value > 0.5); } else if (name == "gradientlimit") { @@ -398,9 +398,9 @@ } else if (name == "silencethreshold") { m_fcParams.silenceThreshold = value; } else if (name == "metric") { - m_dParams.metric = (DistanceMetric::Metric)(int(value + 0.1)); + m_dParams.metric = DistanceMetric::Metric(int(value + 0.1)); } else if (name == "noise") { - m_dParams.noise = (DistanceMetric::NoiseAddition)(int(value + 0.1)); + m_dParams.noise = DistanceMetric::NoiseAddition(int(value + 0.1)); } else if (name == "freq1") { m_feParams.referenceFrequency = value; } else if (name == "freq2") { @@ -448,9 +448,9 @@ if (stepSize > blockSize/2 || blockSize != getPreferredBlockSize()) return false; - m_stepSize = (int)stepSize; + m_stepSize = int(stepSize); m_stepTime = float(stepSize) / m_inputSampleRate; - m_blockSize = (int)blockSize; + m_blockSize = int(blockSize); createMatchers(); m_begin = true; @@ -647,27 +647,19 @@ f.hasTimestamp = false; f.values.clear(); - for (int j = 0; j < (int)f1.size(); ++j) { - f.values.push_back(float(f1[j])); - } + for (auto v: f1) f.values.push_back(float(v)); returnFeatures[m_aFeaturesOutNo].push_back(f); f.values.clear(); - for (int j = 0; j < (int)f2.size(); ++j) { - f.values.push_back(float(f2[j])); - } + for (auto v: f2) f.values.push_back(float(v)); returnFeatures[m_bFeaturesOutNo].push_back(f); f.values.clear(); - for (int j = 0; j < (int)cf1.size(); ++j) { - f.values.push_back(float(cf1[j])); - } + for (auto v: cf1) f.values.push_back(float(v)); returnFeatures[m_caFeaturesOutNo].push_back(f); f.values.clear(); - for (int j = 0; j < (int)cf2.size(); ++j) { - f.values.push_back(float(cf2[j])); - } + for (auto v: cf2) f.values.push_back(float(v)); returnFeatures[m_cbFeaturesOutNo].push_back(f); // std::cerr << "."; @@ -692,7 +684,7 @@ double cost = m_pipeline->getOverallCost(); Feature costFeature; costFeature.hasTimestamp = false; - costFeature.values.push_back((float)cost); + costFeature.values.push_back(float(cost)); returnFeatures[m_overallCostOutNo].push_back(costFeature); int prevx = 0;