JSFiddle - React, Tailwind, and code Playground

by Ehsan Ziya

JavaScript

var context = new webkitAudioContext();

function osc(type, frequency, detune){
    _oscillator = context.createOscillator();
    this.type = type;
    this.frequency = frequency;
    this.detune = detune;
    _oscillator.frequency.value = frequency;
    _oscillator.type = type;
    _oscillator.detune.value = detune;
    _oscGain = context.createGainNode();
    
}

osc.prototype.play = function(destination, gain){
    this.destination = destination;
    this.gain = gain;
    _oscillator.noteOn(0);
    _oscillator.connect(_oscGain);
    _oscGain.gain.value = gain;
    _oscGain.connect(destination);
    
       
};

osc.prototype.stop= function(){
    _oscillator.disconnect(0);
};

var OSC1 = new osc("sine" , 200 , 0);
OSC1.play(context.destination,0.8);
OSC1.stop();