Your Search Results


    The createGain() method of the AudioContext interface creates a GainNode, which can be used to control the overall volume of the audio graph.


    var audioCtx = new AudioContext();
    var gainNode = audioCtx.createGain();


    A GainNode.


    The following example shows basic usage of an AudioContext to create a GainNode, which is then used to mute and unmute the audio when a Mute button is clicked by changing the gain property value. For more complete applied examples/information, check out our Voice-change-O-matic demo (view source.)

      <a class="mute">Mute button</a>
    var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
    var gainNode = audioCtx.createGain();
    var mute = document.querySelector('.mute');
    mute.onclick = voiceMute;
    function voiceMute() {
      if( == "") {
        gainNode.gain.value = 0; = "activated";
        mute.innerHTML = "Unmute";
      } else {
        gainNode.gain.value = 1; = "";
        mute.innerHTML = "Mute";


    Specification Status Comment
    Web Audio API
    The definition of 'createGain()' in that specification.
    Working Draft  

    Browser compatibility

    Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
    Basic support 10.0webkit 25.0 (25.0)  Not supported 15.0webkit
    22 (unprefixed)
    Feature Android Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
    Basic support ? 26.0 1.2 ? ? ? 33.0

    See also

    Document Tags and Contributors

    Contributors to this page: teoli, chrisdavidmills
    Last updated by: teoli,