/// <summary> /// Constructs extractor from configuration <paramref name="options"/>. /// </summary> public ChromaExtractor(ChromaOptions options) : base(options) { _options = options; _blockSize = options.FftSize > FrameSize ? options.FftSize : MathUtils.NextPowerOfTwo(FrameSize); FeatureCount = options.FeatureCount; _filterBank = FilterBanks.Chroma(_blockSize, SamplingRate, FeatureCount, options.Tuning, options.CenterOctave, options.OctaveWidth, options.Norm, options.BaseC); _fft = new RealFft(_blockSize); _spectrum = new float[_blockSize / 2 + 1]; }