インターフェースの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 |