diff --git a/src/AudioAnalysisTools/DSP/DSP_Filters.cs b/src/AudioAnalysisTools/DSP/DSP_Filters.cs
index 130a22dc0..079c2dd8f 100644
--- a/src/AudioAnalysisTools/DSP/DSP_Filters.cs
+++ b/src/AudioAnalysisTools/DSP/DSP_Filters.cs
@@ -78,7 +78,7 @@ public static void TestMethod_GenerateSignal2()
int sampleRate = 64000;
double duration = 30; // signal duration in seconds
int[] harmonics = { 500, 1000, 2000, 4000, 8000 };
- var freqScale = new FrequencyScale(FreqScaleType.Linear125Octaves7Tones28Nyquist32000);
+ var freqScale = new FrequencyScale(FreqScaleType.Linear125OctaveTones28Nyquist32000);
string path = @"C:\SensorNetworks\Output\Sonograms\UnitTestSonograms\SineSignal2.png";
var recording = GenerateTestRecording(sampleRate, duration, harmonics, WaveType.Cosine);
diff --git a/src/AudioAnalysisTools/DSP/FrequencyScale.cs b/src/AudioAnalysisTools/DSP/FrequencyScale.cs
index 9b9927382..391d41103 100644
--- a/src/AudioAnalysisTools/DSP/FrequencyScale.cs
+++ b/src/AudioAnalysisTools/DSP/FrequencyScale.cs
@@ -26,14 +26,11 @@ public enum FreqScaleType
Linear = 0,
Mel = 1,
LinearOctaveStandard = 2,
- Linear62Octaves7Tones31Nyquist11025 = 3,
- Linear125Octaves6Tones30Nyquist11025 = 4,
- OctaveDataReduction = 5,
+ Linear62OctaveTones31Nyquist11025 = 3,
+ Linear125OctaveTones30Nyquist11025 = 4,
+ Linear125OctaveTones28Nyquist32000 = 5,
Octaves24Nyquist32000 = 6,
- Linear125Octaves7Tones28Nyquist32000 = 7,
-
- // alias Octave to predefined choice
- Octave = Linear125Octaves7Tones28Nyquist32000,
+ OctaveDataReduction = 7,
}
public class FrequencyScale
@@ -70,7 +67,7 @@ public FrequencyScale(FreqScaleType type, int nyquist, int frameSize, int finalB
if (type == FreqScaleType.Mel)
{
this.BinBounds = this.GetMelBinBounds();
- this.GridLineLocations = GetMelGridLineLocations(this.HertzGridInterval, nyquist, this.FinalBinCount);
+ this.GridLineLocations = SpectrogramMelScale.GetMelGridLineLocations(this.HertzGridInterval, nyquist, this.FinalBinCount);
this.LinearBound = 1000;
}
else
@@ -103,13 +100,9 @@ public FrequencyScale(FreqScaleType fst)
}
else if (fst == FreqScaleType.Mel)
{
- LoggedConsole.WriteErrorLine("WARNING: Assigning DEFAULT parameters for MEL FREQUENCY SCALE.");
- this.Nyquist = 11025;
- this.WindowSize = 512;
- this.FinalBinCount = 128;
- this.HertzGridInterval = 1000;
- this.LinearBound = this.Nyquist;
- this.GridLineLocations = GetMelGridLineLocations(this.HertzGridInterval, this.Nyquist, this.FinalBinCount);
+ // TODO - This scale type is YET TO BE IMPLEMENTED.
+ // MEL SCALE spectrograms are available by direct call to SpectrogramGenerator.Core.GetMelScaleSpectrogram()
+ SpectrogramMelScale.GetStandardMelScale(this);
}
else
{
@@ -153,12 +146,6 @@ public FrequencyScale(FreqScaleType fst)
///
public int LinearBound { get; set; }
- ///
- /// Gets or sets number of octave to appear above the linear part of scale.
- /// Can have a fraction of an octave.
- ///
- public double OctaveCount { get; set; }
-
///
/// Gets or sets number of bands or tones per octave.
///
@@ -308,33 +295,9 @@ public static int[] CreateLinearYaxis(int herzInterval, int nyquistFreq, int ima
return vScale;
}
- ///
- /// THIS METHOD NEEDS TO BE DEBUGGED. HAS NOT BEEN USED IN YEARS!
- /// Use this method to generate grid lines for mel scale image
- /// Currently this method is only called from BaseSonogram.GetImage() when bool doMelScale = true;
- /// Frequencyscale.Draw1kHzLines(Image{Rgb24} bmp, bool doMelScale, int nyquist, double freqBinWidth).
- ///
- public static int[,] GetMelGridLineLocations(int gridIntervalInHertz, int nyquistFreq, int melBinCount)
+ public static void DrawFrequencyLinesOnImage(Image bmp, FrequencyScale freqScale, bool includeLabels)
{
- double maxMel = (int)MFCCStuff.Mel(nyquistFreq);
- double melPerBin = maxMel / melBinCount;
- int gridCount = nyquistFreq / gridIntervalInHertz;
-
- var gridLines = new int[gridCount, 2];
-
- for (int f = 1; f <= gridCount; f++)
- {
- int herz = f * 1000;
- int melValue = (int)MFCCStuff.Mel(herz);
- int melBinId = (int)(melValue / melPerBin);
- if (melBinId < melBinCount)
- {
- gridLines[f - 1, 0] = melBinId;
- gridLines[f - 1, 1] = herz;
- }
- }
-
- return gridLines;
+ DrawFrequencyLinesOnImage(bmp, freqScale.GridLineLocations, includeLabels);
}
public static void DrawFrequencyLinesOnImage(Image bmp, int[,] gridLineLocations, bool includeLabels)
@@ -412,289 +375,5 @@ public static void DrawFrequencyLinesOnImage(Image bmp, int[,] gridLineLo
}
});
} //end AddHzGridLines()
-
- public static void DrawFrequencyLinesOnImage(Image bmp, FrequencyScale freqScale, bool includeLabels)
- {
- DrawFrequencyLinesOnImage(bmp, freqScale.GridLineLocations, includeLabels);
- }
-
- // ****************************************************************************************************************************
- // ******** BELOW ARE SET OF TEST METHODS FOR THE VARIOUS FREQUENCY SCALES
- // ******** They should probably be deleted as they have been replaced by proper VS Unit Testing methods in DSP.FrequencyScaletests.cs.
-
- ///
- /// METHOD TO CHECK IF Default linear FREQ SCALE IS WORKING
- /// Check it on standard one minute recording.
- ///
- public static void TESTMETHOD_LinearFrequencyScaleDefault()
- {
- var recordingPath = @"C:\SensorNetworks\SoftwareTests\TestRecordings\BAC2_20071008-085040.wav";
- var outputDir = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale".ToDirectoryInfo();
- var expectedResultsDir = Path.Combine(outputDir.FullName, TestTools.ExpectedResultsDir).ToDirectoryInfo();
- var outputImagePath = Path.Combine(outputDir.FullName, "linearScaleSonogram_default.png");
- var opFileStem = "BAC2_20071008";
-
- var recording = new AudioRecording(recordingPath);
-
- // default linear scale
- var fst = FreqScaleType.Linear;
- var freqScale = new FrequencyScale(fst);
-
- var sonoConfig = new SonogramConfig
- {
- WindowSize = freqScale.FinalBinCount * 2,
- WindowOverlap = 0.2,
- SourceFName = recording.BaseName,
-
- //NoiseReductionType = NoiseReductionType.Standard,
- NoiseReductionType = NoiseReductionType.None,
- NoiseReductionParameter = 0.0,
- };
-
- var sonogram = new SpectrogramStandard(sonoConfig, recording.WavReader);
- sonogram.Configuration.WindowSize = freqScale.WindowSize;
-
- // DO NOISE REDUCTION
- var dataMatrix = SNR.NoiseReduce_Standard(sonogram.Data);
- sonogram.Data = dataMatrix;
-
- var image = sonogram.GetImageFullyAnnotated(sonogram.GetImage(), "SPECTROGRAM: " + fst.ToString(), freqScale.GridLineLocations);
- image.Save(outputImagePath);
-
- // DO FILE EQUALITY TEST
- string testName = "testName";
- var expectedTestFile = new FileInfo(Path.Combine(expectedResultsDir.FullName, "FrequencyDefaultScaleTest.EXPECTED.json"));
- var resultFile = new FileInfo(Path.Combine(outputDir.FullName, opFileStem + "FrequencyDefaultScaleTestResults.json"));
- Acoustics.Shared.Csv.Csv.WriteMatrixToCsv(resultFile, freqScale.GridLineLocations);
- TestTools.FileEqualityTest(testName, resultFile, expectedTestFile);
-
- LoggedConsole.WriteLine("Completed Default Linear Frequency Scale test");
- Console.WriteLine("\n\n");
- }
-
- ///
- /// METHOD TO CHECK IF SPECIFIED linear FREQ SCALE IS WORKING
- /// Check it on standard one minute recording.
- ///
- public static void TESTMETHOD_LinearFrequencyScale()
- {
- var recordingPath = @"C:\SensorNetworks\SoftwareTests\TestRecordings\BAC2_20071008-085040.wav";
- var outputDir = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale".ToDirectoryInfo();
- var expectedResultsDir = Path.Combine(outputDir.FullName, TestTools.ExpectedResultsDir).ToDirectoryInfo();
- var outputImagePath = Path.Combine(outputDir.FullName, "linearScaleSonogram.png");
- var opFileStem = "BAC2_20071008";
-
- var recording = new AudioRecording(recordingPath);
-
- // specfied linear scale
- int nyquist = 11025;
- int frameSize = 1024;
- int hertzInterval = 1000;
- var freqScale = new FrequencyScale(nyquist, frameSize, hertzInterval);
- var fst = freqScale.ScaleType;
-
- var sonoConfig = new SonogramConfig
- {
- WindowSize = freqScale.FinalBinCount * 2,
- WindowOverlap = 0.2,
- SourceFName = recording.BaseName,
-
- //NoiseReductionType = NoiseReductionType.Standard,
- NoiseReductionType = NoiseReductionType.None,
- NoiseReductionParameter = 0.0,
- };
-
- var sonogram = new SpectrogramStandard(sonoConfig, recording.WavReader);
-
- // DO NOISE REDUCTION
- var dataMatrix = SNR.NoiseReduce_Standard(sonogram.Data);
- sonogram.Data = dataMatrix;
- sonogram.Configuration.WindowSize = freqScale.WindowSize;
-
- var image = sonogram.GetImageFullyAnnotated(sonogram.GetImage(), "SPECTROGRAM: " + fst.ToString(), freqScale.GridLineLocations);
- image.Save(outputImagePath);
-
- // DO FILE EQUALITY TEST
- string testName = "testName";
- var expectedTestFile = new FileInfo(Path.Combine(expectedResultsDir.FullName, "FrequencyLinearScaleTest.EXPECTED.json"));
- var resultFile = new FileInfo(Path.Combine(outputDir.FullName, opFileStem + "FrequencyLinearScaleTestResults.json"));
- Acoustics.Shared.Csv.Csv.WriteMatrixToCsv(resultFile, freqScale.GridLineLocations);
- TestTools.FileEqualityTest(testName, resultFile, expectedTestFile);
-
- LoggedConsole.WriteLine("Completed Linear Frequency Scale test");
- Console.WriteLine("\n\n");
- }
-
- ///
- /// METHOD TO CHECK IF SPECIFIED MEL FREQ SCALE IS WORKING
- /// Check it on standard one minute recording.
- ///
- public static void TESTMETHOD_MelFrequencyScale()
- {
- var recordingPath = @"C:\SensorNetworks\SoftwareTests\TestRecordings\BAC2_20071008-085040.wav";
- var outputDir = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale".ToDirectoryInfo();
- var expectedResultsDir = Path.Combine(outputDir.FullName, TestTools.ExpectedResultsDir).ToDirectoryInfo();
- var outputImagePath = Path.Combine(outputDir.FullName, "melScaleSonogram.png");
- var opFileStem = "BAC2_20071008";
-
- var recording = new AudioRecording(recordingPath);
-
- int nyquist = recording.Nyquist;
- int frameSize = 1024;
- int finalBinCount = 256;
- int hertzInterval = 1000;
- FreqScaleType scaleType = FreqScaleType.Mel;
- var freqScale = new FrequencyScale(scaleType, nyquist, frameSize, finalBinCount, hertzInterval);
- var fst = freqScale.ScaleType;
-
- var sonoConfig = new SonogramConfig
- {
- WindowSize = frameSize,
- WindowOverlap = 0.2,
- SourceFName = recording.BaseName,
- DoMelScale = (scaleType == FreqScaleType.Mel) ? true : false,
- MelBinCount = (scaleType == FreqScaleType.Mel) ? finalBinCount : frameSize / 2,
-
- //NoiseReductionType = NoiseReductionType.Standard,
- NoiseReductionType = NoiseReductionType.None,
- NoiseReductionParameter = 0.0,
- };
-
- var sonogram = new SpectrogramStandard(sonoConfig, recording.WavReader);
-
- // DRAW SPECTROGRAM
- var image = sonogram.GetImageFullyAnnotated(sonogram.GetImage(), "SPECTROGRAM: " + fst.ToString(), freqScale.GridLineLocations);
- image.Save(outputImagePath);
-
- // DO FILE EQUALITY TEST
- string testName = "MelTest";
- var expectedTestFile = new FileInfo(Path.Combine(expectedResultsDir.FullName, "MelFrequencyScaleTest.EXPECTED.json"));
- var resultFile = new FileInfo(Path.Combine(outputDir.FullName, opFileStem + "MelFrequencyLinearScaleTestResults.json"));
- Acoustics.Shared.Csv.Csv.WriteMatrixToCsv(resultFile, freqScale.GridLineLocations);
- TestTools.FileEqualityTest(testName, resultFile, expectedTestFile);
-
- LoggedConsole.WriteLine("Completed Mel Frequency Scale test");
- Console.WriteLine("\n\n");
- }
-
- ///
- /// METHOD TO CHECK IF Octave FREQ SCALE IS WORKING
- /// Check it on standard one minute recording, SR=22050.
- ///
- public static void TESTMETHOD_OctaveFrequencyScale1()
- {
- var recordingPath = @"G:\SensorNetworks\WavFiles\LewinsRail\FromLizZnidersic\Lewinsrail_TasmanIs_Tractor_SM304253_0151119_0640_1minMono.wav";
- var outputDir = @"C:\SensorNetworks\Output\LewinsRail\LewinsRail_ThreeCallTypes".ToDirectoryInfo();
-
- //var recordingPath = @"C:\SensorNetworks\SoftwareTests\TestRecordings\BAC\BAC2_20071008-085040.wav";
- //var outputDir = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale".ToDirectoryInfo();
- //var expectedResultsDir = Path.Combine(outputDir.FullName, TestTools.ExpectedResultsDir).ToDirectoryInfo();
- var outputImagePath = Path.Combine(outputDir.FullName, "octaveFrequencyScale1NoNoiseReduciton.png");
-
- //var opFileStem = "Lewinsrail_TasmanIs_Tractor";
-
- var recording = new AudioRecording(recordingPath);
-
- // default octave scale
- var fst = FreqScaleType.Linear125Octaves6Tones30Nyquist11025;
- var freqScale = new FrequencyScale(fst);
-
- var sonoConfig = new SonogramConfig
- {
- WindowSize = freqScale.WindowSize,
- WindowOverlap = 0.75,
- SourceFName = recording.BaseName,
- NoiseReductionType = NoiseReductionType.None,
- NoiseReductionParameter = 0.0,
- };
-
- // Generate amplitude sonogram and then conver to octave scale
- var sonogram = new AmplitudeSonogram(sonoConfig, recording.WavReader);
- sonogram.Data = OctaveFreqScale.ConvertAmplitudeSpectrogramToDecibelOctaveScale(sonogram.Data, freqScale);
-
- // DO NOISE REDUCTION
- //var dataMatrix = SNR.NoiseReduce_Standard(sonogram.Data);
- //sonogram.Data = dataMatrix;
- sonogram.Configuration.WindowSize = freqScale.WindowSize;
-
- var image = sonogram.GetImageFullyAnnotated(sonogram.GetImage(), "SPECTROGRAM: " + fst.ToString(), freqScale.GridLineLocations);
- image.Save(outputImagePath);
-
- // DO FILE EQUALITY TEST
- //string testName = "test1";
- //var expectedTestFile = new FileInfo(Path.Combine(expectedResultsDir.FullName, "FrequencyOctaveScaleTest1.EXPECTED.json"));
- //var resultFile = new FileInfo(Path.Combine(outputDir.FullName, opFileStem + "FrequencyOctaveScaleTest1Results.json"));
- //Acoustics.Shared.Csv.Csv.WriteMatrixToCsv(resultFile, freqScale.GridLineLocations);
- //TestTools.FileEqualityTest(testName, resultFile, expectedTestFile);
-
- LoggedConsole.WriteLine("Completed Octave Frequency Scale test 1");
- Console.WriteLine("\n\n");
- }
-
- ///
- /// METHOD TO CHECK IF Octave FREQ SCALE IS WORKING
- /// Check it on MARINE RECORDING from JASCO, SR=64000.
- /// 24 BIT JASCO RECORDINGS from GBR must be converted to 16 bit.
- /// ffmpeg -i source_file.wav -sample_fmt s16 out_file.wav
- /// e.g. ". C:\Work\Github\audio-analysis\Extra Assemblies\ffmpeg\ffmpeg.exe" -i "C:\SensorNetworks\WavFiles\MarineRecordings\JascoGBR\AMAR119-00000139.00000139.Chan_1-24bps.1375012796.2013-07-28-11-59-56.wav" -sample_fmt s16 "C:\SensorNetworks\Output\OctaveFreqScale\JascoeMarineGBR116bit.wav"
- /// ffmpeg binaries are in C:\Work\Github\audio-analysis\Extra Assemblies\ffmpeg.
- ///
- public static void TESTMETHOD_OctaveFrequencyScale2()
- {
- var recordingPath = @"C:\SensorNetworks\SoftwareTests\TestRecordings\MarineJasco_AMAR119-00000139.00000139.Chan_1-24bps.1375012796.2013-07-28-11-59-56-16bit.wav";
- var outputDir = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale".ToDirectoryInfo();
- var expectedResultsDir = Path.Combine(outputDir.FullName, TestTools.ExpectedResultsDir).ToDirectoryInfo();
- var outputImagePath = Path.Combine(outputDir.FullName, "JascoMarineGBR1.png");
- var opFileStem = "JascoMarineGBR1";
-
- var recording = new AudioRecording(recordingPath);
- var fst = FreqScaleType.Linear125Octaves7Tones28Nyquist32000;
- var freqScale = new FrequencyScale(fst);
-
- var sonoConfig = new SonogramConfig
- {
- WindowSize = freqScale.WindowSize,
- WindowOverlap = 0.2,
- SourceFName = recording.BaseName,
- NoiseReductionType = NoiseReductionType.None,
- NoiseReductionParameter = 0.0,
- };
-
- var sonogram = new AmplitudeSonogram(sonoConfig, recording.WavReader);
- sonogram.Data = OctaveFreqScale.ConvertAmplitudeSpectrogramToDecibelOctaveScale(sonogram.Data, freqScale);
-
- // DO NOISE REDUCTION
- var dataMatrix = SNR.NoiseReduce_Standard(sonogram.Data);
- sonogram.Data = dataMatrix;
- sonogram.Configuration.WindowSize = freqScale.WindowSize;
-
- var image = sonogram.GetImageFullyAnnotated(sonogram.GetImage(), "SPECTROGRAM: " + fst.ToString(), freqScale.GridLineLocations);
- image.Save(outputImagePath);
-
- // DO FILE EQUALITY TEST
- string testName = "test2";
- var expectedTestFile = new FileInfo(Path.Combine(expectedResultsDir.FullName, "FrequencyOctaveScaleTest2.EXPECTED.json"));
- var resultFile = new FileInfo(Path.Combine(outputDir.FullName, opFileStem + "FrequencyOctaveScaleTest2Results.json"));
- Acoustics.Shared.Csv.Csv.WriteMatrixToCsv(resultFile, freqScale.GridLineLocations);
- TestTools.FileEqualityTest(testName, resultFile, expectedTestFile);
-
- LoggedConsole.WriteLine("Completed Octave Frequency Scale " + testName);
- Console.WriteLine("\n\n");
- }
-
- public static void TESTMETHOD_DrawFrequencyLinesOnImage()
- {
- string filename = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale\Clusters50.bmp";
- string outputFile = @"C:\SensorNetworks\SoftwareTests\TestFrequencyScale\Clusters50WithGrid.bmp";
- var bmp = Image.Load(filename);
-
- int nyquist = 11025;
- int frameSize = 1024;
- int finalBinCount = 128;
- int gridInterval = 1000;
- var freqScale = new FrequencyScale(FreqScaleType.Mel, nyquist, frameSize, finalBinCount, gridInterval);
- DrawFrequencyLinesOnImage((Image)bmp, freqScale, includeLabels: false);
- bmp.Save(outputFile);
- }
}
}
\ No newline at end of file
diff --git a/src/AudioAnalysisTools/Indices/IndexCalculate.cs b/src/AudioAnalysisTools/Indices/IndexCalculate.cs
index 5e0fcdd88..95b34a68e 100644
--- a/src/AudioAnalysisTools/Indices/IndexCalculate.cs
+++ b/src/AudioAnalysisTools/Indices/IndexCalculate.cs
@@ -159,14 +159,14 @@ public static IndexCalculateResult Analysis(
// Linear or Octave or Mel frequency scale? Set Linear as default.
var freqScale = new FrequencyScale(nyquist: nyquist, frameSize: frameSize, hertzGridInterval: 1000);
var freqScaleType = config.FrequencyScale;
- bool octaveScale = freqScaleType == FreqScaleType.Linear125Octaves7Tones28Nyquist32000;
+ bool octaveScale = freqScaleType == FreqScaleType.Linear125OctaveTones28Nyquist32000;
bool melScale = freqScaleType == FreqScaleType.Mel;
if (octaveScale)
{
// only allow one octave scale at the moment - for Jasco marine recordings.
// ASSUME fixed Occtave scale - USEFUL ONLY FOR JASCO 64000sr MARINE RECORDINGS
// If you wish to use other octave scale types then need to put in the config file and and set up recovery here.
- freqScale = new FrequencyScale(FreqScaleType.Linear125Octaves7Tones28Nyquist32000);
+ freqScale = new FrequencyScale(FreqScaleType.Linear125OctaveTones28Nyquist32000);
// Recalculate the spectrogram according to octave scale. This option works only when have high SR recordings.
dspOutput1.AmplitudeSpectrogram = OctaveFreqScale.AmplitudeSpectra(
diff --git a/src/AudioAnalysisTools/Indices/IndexCalculateConfig.cs b/src/AudioAnalysisTools/Indices/IndexCalculateConfig.cs
index 457893402..98dcf2349 100644
--- a/src/AudioAnalysisTools/Indices/IndexCalculateConfig.cs
+++ b/src/AudioAnalysisTools/Indices/IndexCalculateConfig.cs
@@ -150,7 +150,7 @@ public FreqScaleType FrequencyScale
switch (value)
{
case FreqScaleType.Linear:
- case FreqScaleType.Octave:
+ case FreqScaleType.LinearOctaveStandard:
this.frequencyScale = value;
break;
default:
diff --git a/src/AudioAnalysisTools/LongDurationSpectrograms/LDSpectrogramRGB.cs b/src/AudioAnalysisTools/LongDurationSpectrograms/LDSpectrogramRGB.cs
index 29976e0fc..166000682 100644
--- a/src/AudioAnalysisTools/LongDurationSpectrograms/LDSpectrogramRGB.cs
+++ b/src/AudioAnalysisTools/LongDurationSpectrograms/LDSpectrogramRGB.cs
@@ -195,13 +195,13 @@ public LDSpectrogramRGB(LdSpectrogramConfig config, IndexGenerationData indexGen
//break;
case "Linear62Octaves7Tones31Nyquist11025":
- fst = FreqScaleType.Linear62Octaves7Tones31Nyquist11025;
+ fst = FreqScaleType.Linear62OctaveTones31Nyquist11025;
this.FreqScale = new FrequencyScale(fst);
throw new ArgumentException("Linear62Octaves7Tones31Nyquist11025 Scale is not yet implemented");
//break;
case "Linear125Octaves6Tones30Nyquist11025":
- fst = FreqScaleType.Linear125Octaves6Tones30Nyquist11025;
+ fst = FreqScaleType.Linear125OctaveTones30Nyquist11025;
this.FreqScale = new FrequencyScale(fst);
break;
case "Octaves24Nyquist32000":
@@ -211,7 +211,7 @@ public LDSpectrogramRGB(LdSpectrogramConfig config, IndexGenerationData indexGen
//break;
case "Linear125Octaves7Tones28Nyquist32000":
- fst = FreqScaleType.Linear125Octaves7Tones28Nyquist32000;
+ fst = FreqScaleType.Linear125OctaveTones28Nyquist32000;
this.FreqScale = new FrequencyScale(fst);
break;
default:
diff --git a/src/AudioAnalysisTools/SpectralPeakTracks.cs b/src/AudioAnalysisTools/SpectralPeakTracks.cs
index 879ddf580..1f63d9ba6 100644
--- a/src/AudioAnalysisTools/SpectralPeakTracks.cs
+++ b/src/AudioAnalysisTools/SpectralPeakTracks.cs
@@ -388,7 +388,7 @@ public static SpectralPeakTracks CalculateSpectralPeakTracks(AudioRecording reco
double[,] decibelSpectrogram;
if (octaveScale)
{
- var freqScale = new FrequencyScale(FreqScaleType.Linear125Octaves7Tones28Nyquist32000);
+ var freqScale = new FrequencyScale(FreqScaleType.Linear125OctaveTones28Nyquist32000);
decibelSpectrogram = OctaveFreqScale.DecibelSpectra(dspOutput.AmplitudeSpectrogram, dspOutput.WindowPower, sampleRate, epsilon, freqScale);
}
else
diff --git a/tests/Acoustics.Test/AnalysisPrograms/AnalyzeLongRecordings/TestAnalyzeLongRecording.cs b/tests/Acoustics.Test/AnalysisPrograms/AnalyzeLongRecordings/TestAnalyzeLongRecording.cs
index a2c347ba7..63fb18007 100644
--- a/tests/Acoustics.Test/AnalysisPrograms/AnalyzeLongRecordings/TestAnalyzeLongRecording.cs
+++ b/tests/Acoustics.Test/AnalysisPrograms/AnalyzeLongRecordings/TestAnalyzeLongRecording.cs
@@ -154,7 +154,7 @@ public void TestAnalyzeSr64000Recording()
var recordingPath = this.outputDirectory.CombineFile(recordingName + ".wav");
WavWriter.WriteWavFileViaFfmpeg(recordingPath, recording.WavReader);
- var fst = FreqScaleType.Linear125Octaves7Tones28Nyquist32000;
+ var fst = FreqScaleType.Linear125OctaveTones28Nyquist32000;
var freqScale = new FrequencyScale(fst);
/*