MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

AudioContext.suspend()

インターフェースのsuspend()メソッドは、オーディオコンテキストの時間の流れを一時的に音声ハードウェアへのアクセスとプロセスのCPU/バッテリーの使用を減らすことで一時停止します—これはしばらくの間アプリケーションがオーディオハードウェアを使わないようにするとき便利です。

OfflineAudioContextでこのメソッドを呼ぶとINVALID_STATE_ERR例外が発生します。

構文

var audioCtx = new AudioContext();
audioCtx.suspend().then(function() { ... });

戻り値

voidで完了するPromise。コンテキストが既に閉じている場合、プロミスは失敗します。

次のスニペットはAudioContext states デモ(すぐ実行)から取ったものです。suspend/resumeボタンをクリックすると、AudioContext.stateを問い合わせます—もしrunningならば、suspend()が呼ばれます。suspendedならば、resumeが呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。

susresBtn.onclick = function() {
  if(audioCtx.state === 'running') {
    audioCtx.suspend().then(function() {
      susresBtn.textContent = 'Resume context';
    });
  } else if(audioCtx.state === 'suspended') {
    audioCtx.resume().then(function() {
      susresBtn.textContent = 'Suspend context';
    });  
  }
}

仕様

Specification Status Comment
Web Audio API
The definition of 'close()' in that specification.
草案  

ブラウザ互換性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 43.0 40.0 (40.0) 未サポート ? ?
Feature Android Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support ? ? ? ? ? ? 43.0

参考

ドキュメントのタグと貢献者

 このページの貢献者: maruhiro
 最終更新者: maruhiro,