AudioContext.createGain()

インターフェースのcreateGain()メソッドは、音声の全体的なボリュームを操作するGainNode (en-US)を生成します。

構文

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

戻り値

GainNode (en-US)

次の例ではAudioContextGainNodeを生成する基本的な使い方を示しています。生成した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
Web Audio API
createGain() の定義
勧告  

ブラウザ互換性

BCD tables only load in the browser

参考