JSFiddle - React, Tailwind, and code Playground
by Ehsan Ziya
JavaScript
window.AudioContext = (window.AudioContext || window.webkitAudioContext || window.mozAudioContext || window.msAudioContext);
window.offlineAudioContext = (window.offlineAudioContext || window.webkitOfflineAudioContext || window.mozOfflineAudioContext || window.msOfflineAudioContext);
var context = new AudioContext();
var offline = new offlineAudioContext(1, 44100 * 10, 44100);
var osc = offline.createOscillator();
var scp = offline.createScriptProcessor(1024, 1, 1);
var analyser = offline.createAnalyser();
analyser.fftSize = 1024;
analyser.smoothingTimeConstant = 0.5;
var freqData = new Uint8Array(analyser.frequencyBinCount);
osc.connect(scp);
osc.connect(analyser);
scp.connect(offline.destination);
scp.onaudioprocess = function(e){
analyser.getByteFrequencyData(freqData);
console.log(freqData);
};
offline.oncomplete = function(e){
console.log('renderComplete');
};
offline.startRendering();
osc.start(0.5);