             au[kDynamicsProcessorParam_MasterGain] = masterGain
     }
 
+    public var inputNode: AVAudioNode {
+        return inputGain.avAudioNode
+    }
+
     /// Function to start, play, or activate the node, all do the same thing
     open func start() {
         if isStopped {

    open dynamic var dryWetMix: Double = 100 {
        didSet {
            dryWetMix = (0...100).clamp(dryWetMix)
            inputGain?.volume = 1 - dryWetMix / 100
            effectGain?.volume = dryWetMix / 100
        }
    }

    fileprivate var lastKnownMix: Double = 100
    fileprivate var inputGain: AKMixer?
    fileprivate var effectGain: AKMixer?

    // Store the internal effect

            self.releaseTime = releaseTime
            self.masterGain = masterGain

            input?.connect(to: inputGain)
            inputGain.volume = 0
            mixer = AKMixer(inputGain)

            effectGain = AKMixer(input)
