/**
         * Updates the filter bank.
         *
         * (Re)creates new filter bank when sample frequency or spectrum size
         * changed. If requested, enables only some filters.
         *
         * @param frequency sample frequency
         * @param N spectrum size
         */
        protected virtual void UpdateFilters(uint frequency, int N)
        {
            if (filters == null)
            {
                filters = new MelFiltersBank(frequency, 200, N);
            }
            else
            {
                if (filters.GetSampleFrequency() != frequency || filters.GetSpectrumLength() != N)
                {
                    if (filters != null)
                    {
                        filters.Dispose();
                    }
                    filters = new MelFiltersBank(frequency, 200, N);
                }
            }

            if (enabledFilters.Length != 0)
            {
                filters.SetEnabledFilters(enabledFilters);
            }
        }
        /**
         * Updates the filter bank.
         *
         * (Re)creates new filter bank when sample frequency or spectrum size
         * changed. If requested, enables only some filters.
         *
         * @param frequency sample frequency
         * @param N spectrum size
         */
        protected new void UpdateFilters(uint frequency, int N)
        {
            if (hfccFilters == null)
            {
                hfccFilters = new MelFiltersBank(frequency, N, true);
            }
            else
            {
                if (hfccFilters.GetSampleFrequency() != frequency || hfccFilters.GetSpectrumLength() != N)
                {
                    if (hfccFilters != null)
                    {
                        hfccFilters.Dispose();
                    }
                    hfccFilters = new MelFiltersBank(frequency, N, true);
                }
            }

            if (enabledFilters.Length != 0)
            {
                hfccFilters.SetEnabledFilters(enabledFilters);
            }
        }