This article needs a technical review. How you can help.
The gain
property of the GainNode
interface is an a-rate AudioParam
representing the amount of gain to apply.
Syntax
var audioCtx = new AudioContext();
var gainNode = audioCtx.createGain();
gainNode.gain.value = 0.5;
Value
An AudioParam
.
Note: Though the AudioParam
returned is read-only, the value it represents is not.
Example
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.)
<div>
<a class="mute">Mute button</a>
</div>
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
var gainNode = audioCtx.createGain();
var mute = document.querySelector('.mute');
source.connect(gainNode);
gainNode.connect(audioCtx.destination);
...
mute.onclick = voiceMute;
function voiceMute() {
if(mute.id == "") {
gainNode.gain.value = 0;
mute.id = "activated";
mute.innerHTML = "Unmute";
} else {
gainNode.gain.value = 1;
mute.id = "";
mute.innerHTML = "Mute";
}
}
Specifications
Specification | Status | Comment |
---|---|---|
Web Audio API The definition of 'gain' in that specification. |
Working Draft |
Browser compatibility
See also
Document Tags and Contributors
Tags:
Contributors to this page:
fscholz,
chrisdavidmills
Last updated by:
fscholz,