AVAudioEngine - output volume drops when I create an InputNode, why ?

I have an audioengine that takes a number of playernodes as input and chains them through the mixer for output.


        //micInputNode = engine.inputNode
        //guard let micInputNode = micInputNode else { return }

        // 2
        engine.attach(musicPlayer)
        engine.attach(drumsPlayer)
        engine.attach(clickPlayer)
        engine.attach(tambPlayer)
        engine.attach(shufflePlayer)
        engine.attach(rateEffect)
        engine.attach(reverb)
        engine.connect(musicPlayer, to: engine.mainMixerNode, format: audioFormat)
        engine.connect(drumsPlayer, to: engine.mainMixerNode, format: audioFormat)
        engine.connect(clickPlayer, to: engine.mainMixerNode, format: audioFormat)
        engine.connect(tambPlayer, to: engine.mainMixerNode, format: audioFormat)
        engine.connect(shufflePlayer, to: engine.mainMixerNode, format: audioFormat)
        //engine.connect(micInputNode, to: engine.mainMixerNode, format: audioFormat)
        engine.connect(engine.mainMixerNode, to: rateEffect, format: audioFormat)
        engine.connect(rateEffect, to: engine.outputNode, format: audioFormat)
        engine.connect(engine.mainMixerNode, to: reverb, format: audioFormat)
        engine.connect(reverb, to: engine.outputNode, format: audioFormat)


However as soon as I uncomment the micInputNode = engine.inputNode as I want to take input from the Mic, the output volume drops significantly ?


Can anyone explain why or if this is the best way of doing this ?