JSFiddle - React, Tailwind, and code Playground

by Ed Bulikyan

JavaScript

navigator.getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);

navigator.getUserMedia({ audio: true, video: false },
    function (stream) {
        var AudioContext = window.AudioContext || window.webkitAudioContext,
		    ctx = new AudioContext(),
            source = ctx.createMediaStreamSource(stream),
            analyser = ctx.createAnalyser(),
            processor = ctx.createScriptProcessor(2048, 1, 1);
        
        source.connect(analyser);
        source.connect(processor);
        analyser.connect(ctx.destination);
        processor.connect(ctx.destination);
    },
    function (error) {
		    //error processing
    }
);