AudioContext: close() メソッド
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2021年4月.
close() は AudioContext インターフェイスのメソッドで、音声コンテキストを閉じて使っていたシステムの音声リソースを全て解放します。
この関数は、他の参照も同様に解放されない限り、 AudioContext が生成したオブジェクトは自動的には解放しません。しかし、これは音声リソースを強制的に解放します。よって、音声コンテキストの更なる生成と使用はできなくなり、音声コンテキストの時間の流れは止まり、音声データの処理は停止します。 AudioContext の生成をブロックするリソースがすべて解放されたとき、返された Promise が解決します。このメソッドは OfflineAudioContext で呼ばれたとき INVALID_STATE_ERR 例外が発生します。
構文
js
close()
引数
なし。
返値
例
次のスニペットは AudioContext states デモ(すぐ実行)から取ったものです。stop ボタンをクリックすると、 close() が呼び出されます。プロミスに成功すると、リセットされ最初の状態に戻ります。
js
stopBtn.onclick = () => {
audioCtx.close().then(() => {
startBtn.removeAttribute("disabled");
susresBtn.setAttribute("disabled", "disabled");
stopBtn.setAttribute("disabled", "disabled");
});
};
仕様書
| Specification |
|---|
| Web Audio API> # dom-audiocontext-close> |
ブラウザーの互換性
Loading…