def filter_band(input): import numpy as np output = np.zeros(input.shape, dtype=np.float64) infilter = DoubleInPointerFilter(input, False) infilter.set_input_sampling_rate(48000) bandpassfilter = DoubleButterworthBandPassFilter() bandpassfilter.set_input_sampling_rate(48000) bandpassfilter.set_cut_frequencies(200, 1000) bandpassfilter.set_order(5) bandpassfilter.set_input_port(0, infilter, 0) print bandpassfilter.get_coefficients_in() print bandpassfilter.get_coefficients_out() outfilter = DoubleOutPointerFilter(output, False) outfilter.set_input_sampling_rate(48000) outfilter.set_input_port(0, bandpassfilter, 0) outfilter.process(input.shape[1]) return output
from ATK.Dynamic import DoubleAttackReleaseFilter, DoubleGainCompressorFilter, DoublePowerFilter from ATK.Tools import DoubleApplyGainFilter, DoubleDerivativeFilter, DoubleVolumeFilter, DoubleSumFilter # get from http://www.telefunken-elektroakustik.com/download/brew/ filename = "Break Ca-01.wav" sampling_rate, data = wavfile.read(filename) processsize = len(data) data = data.reshape(-1, 1) infilter = Int16InPointerFilter(data, True) infilter.set_output_sampling_rate(sampling_rate) hffilter = DoubleButterworthBandPassFilter() hffilter.set_input_sampling_rate(sampling_rate) hffilter.set_cut_frequencies(1000, 5000) hffilter.set_order(5) hffilter.set_input_port(0, infilter, 0) derivativefilter = DoubleDerivativeFilter() derivativefilter.set_input_sampling_rate(sampling_rate) derivativefilter.set_input_port(0, hffilter, 0) powerfilter = DoublePowerFilter(1) powerfilter.set_input_sampling_rate(sampling_rate) powerfilter.set_input_port(0, derivativefilter, 0) powerfilter.set_memory(np.exp(-1 / (sampling_rate * 1e-3))) fastattackreleasefilter = DoubleAttackReleaseFilter(1) fastattackreleasefilter.set_input_sampling_rate(sampling_rate) fastattackreleasefilter.set_input_port(0, powerfilter, 0)
from ATK.Dynamic import DoubleAttackReleaseFilter, DoubleGainCompressorFilter, DoublePowerFilter from ATK.Tools import DoubleApplyGainFilter, DoubleVolumeFilter, DoubleSumFilter # get from http://www.telefunken-elektroakustik.com/download/brew/ filename = "Break Ca-01.wav" sampling_rate, data = wavfile.read(filename) processsize = len(data) data = data.reshape(-1, 1) infilter = Int16InPointerFilter(data, True) infilter.set_output_sampling_rate(sampling_rate) hffilter = DoubleButterworthBandPassFilter() hffilter.set_input_sampling_rate(sampling_rate) hffilter.set_cut_frequencies(1000, 5000) hffilter.set_order(5) hffilter.set_input_port(0, infilter, 0) powerfilter = DoublePowerFilter(1) powerfilter.set_input_sampling_rate(sampling_rate) powerfilter.set_input_port(0, hffilter, 0) powerfilter.set_memory(np.exp(-1/(sampling_rate*1e-3))) fastattackreleasefilter = DoubleAttackReleaseFilter(1) fastattackreleasefilter.set_input_sampling_rate(sampling_rate) fastattackreleasefilter.set_input_port(0, powerfilter, 0) fastattackreleasefilter.set_attack(np.exp(-1/(sampling_rate*1e-3))) fastattackreleasefilter.set_release(np.exp(-1/(sampling_rate*50.e-3))) slowattackreleasefilter = DoubleAttackReleaseFilter(1)