Railsでマイク入力を録音したいのでまずrecorderjsを使ったサンプルAudioRecorderのサンプルを確認して、次にAudioRecordermain.jsののソースを読もうとしてるのですが、HTML5のAudioContextを全く知らないため読み進めても行けない状態です。

最低限recorderjsにマイクから録音したデータを流すだけの理解が欲しい状態です。

https://github.com/cwilso/AudioRecorder/blob/master/js/main.js#L138-L152

var audioContext = new AudioContext();
function gotStream(stream) {
    inputPoint = audioContext.createGain();

    // Create an AudioNode from the stream.
    realAudioInput = audioContext.createMediaStreamSource(stream);
    audioInput = realAudioInput;
    audioInput.connect(inputPoint);

//    audioInput = convertToMono( input );

    analyserNode = audioContext.createAnalyser();
    analyserNode.fftSize = 2048;
    inputPoint.connect( analyserNode );

    audioRecorder = new Recorder( inputPoint );

createGainがボリュームを司るGainNodeを作り、createMediaStreamSourceMediaStreamAudioSourceNodeを作るなど、ぼんやりとわかるんですが

何故ここで取得したNodeの複製を行っているのでしょうか?

    audioInput = realAudioInput;
    audioInput.connect(inputPoint);

まっと簡単な問題解決の道のりがあるなら、そちらを教えて下さい。