如何在自定义类中从AudioKit正确扩展AKNode

时间:2019-03-27 20:27:31

标签: swift audiokit

我有一个名为harmonizer的自定义类,该类扩展了AKNode并在其中包含AudioKit库中的其他几个AKNode。想法是在Harmonizer中具有信号链,该信号链可以集成到另一类的较大信号链中。我有协调器扩展AKNode并以AKNode作为输入,但是,每当我从另一个类调用协调器信号链时,应用程序在打开时崩溃。我想也许我没有正确指定协调器信号链的输出。

以下是调和器的外部调用:

input_signal = AKMicrophone()
input_booster = AKBooster(input_signal)
harmonizer = Harmonizer(input_booster)
output_mix = AKMixer(harmonizer)
AudioKit.output = output_mix

这是Harmonizer类的初始化函数:

init(_ input: AKNode) {
        freq_tracker = AKFrequencyTracker(input)
        chord_degree = 1
        current_chord = one_chord
        shifter1 = AKPitchShifter(freq_tracker)
        shifter2 = AKPitchShifter(freq_tracker)
        shifter3 = AKPitchShifter(freq_tracker)
        shifter4 = AKPitchShifter(freq_tracker)
        shifters = [shifter1, shifter2, shifter3, shifter4]
        lead_shifter = AKPitchShifter(input)
        tonic = 60.0
        super.init()
}

0 个答案:

没有答案