--- title: AudioContext.createGain() slug: Web/API/BaseAudioContext/createGain translation_of: Web/API/BaseAudioContext/createGain original_slug: Web/API/AudioContext/createGain ---
{{ APIRef("Web Audio API") }}
インターフェースのcreateGain()メソッドは、音声の全体的なボリュームを操作する{{ domxref("GainNode") }}を生成します。
var audioCtx = new AudioContext(); var gainNode = audioCtx.createGain();
{{domxref("GainNode")}}
次の例では{{domxref("AudioContext")}}、GainNodeを生成する基本的な使い方を示しています。生成したGainNodeは、Muteボタンを押したときにgainプロパティの値を設定することで、無音・無音解除するために使っています。完全な例と情報は、Voice-change-O-maticデモ(ソースの閲覧)をクリックしてください。
<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";
}
}
| Specification | Status | Comment |
|---|---|---|
| {{SpecName('Web Audio API', '#widl-AudioContext-createGain-GainNode', 'createGain()')}} | {{Spec2('Web Audio API')}} |
{{Compat("api.BaseAudioContext.createGain")}}