AudioContext
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
AudioContext
インターフェイスは AudioNode
によって表現され、互いにリンクする音声モジュールから作られた音声処理グラフを表します。
音声コンテキストは、それが格納するノードの作成と、音声処理(デコード)の実行の両方を制御します。何らかの処理を行う前に AudioContext
を作成する必要があります。毎回新しいものを初期化するのではなく、 1 つの AudioContext を作成し、それを再利用することを推奨します。また、 1 つの AudioContext
を複数の異なるオーディオソースに使用し、同時にパイプラインを使用しても問題ありません。
コンストラクター
AudioContext()
-
AudioContext
オブジェクトを新しく作成し、返します。
インスタンスプロパティ
親インターフェイスである BaseAudioContext
から継承したプロパティもあります。
AudioContext.baseLatency
読取専用-
AudioContext
がAudioDestinationNode
から音声サブシステムに音声を渡す際に発生する処理遅延の秒数を返します。 AudioContext.outputLatency
読取専用-
現在の音声コンテキストの出力レイテンシーの見積を返します。
AudioContext.sinkId
読取専用 Experimental-
現在の出力音声機器のシンク ID を返します。
インスタンスメソッド
親インターフェイスである BaseAudioContext
から継承したメソッドもあります。
AudioContext.close()
-
任意のシステム音声リソースをリリースするために、音声コンテキストを閉じます。
AudioContext.createMediaElementSource()
-
HTMLMediaElement
と関連付けられたMediaElementAudioSourceNode
を生成します。これは<video>
要素もしくは<audio>
要素からの再生や操作をするために使うことができます。 AudioContext.createMediaStreamSource()
-
ローカルのコンピューターのマイクもしくは他のソースから来る音声ストリームを表現している
MediaStream
と関連付けられたMediaStreamAudioSourceNode
を生成します。 AudioContext.createMediaStreamDestination()
-
ローカルファイルに保存されたものかその他のコンピューターに送信された音声ストリームを表す
MediaStream
と関連付けられたMediaStreamAudioDestinationNode
を生成します。 AudioContext.createMediaStreamTrackSource()
-
メディアストリームトラックを表す
MediaStream
と関連づけられたMediaStreamTrackAudioSourceNode
を生成します。 AudioContext.getOutputTimestamp()
-
2 つの関連づけられたコンテキストの音声ストリームの位置の値を含む新しい
AudioTimestamp
オブジェクトを返します。 AudioContext.resume()
-
前回中断/一時停止した音声コンテキストの時間の進行を再開します。
AudioContext.setSinkId()
Experimental-
この
AudioContext
用の出力音声機器を設定します。 AudioContext.suspend()
-
一時的に音声ハードウェアアクセスを停止し、プロセスの CPU/バッテリー使用を減らすために、音声コンテキストの時間の進行を中断します。
イベント
sinkchange
Experimental-
出力音声デバイスが変更された (そしてその結果
AudioContext.sinkId
が変更された) 時発火します。
例
基本的な音声コンテキストの作成方法です。
const audioCtx = new AudioContext();
const oscillatorNode = audioCtx.createOscillator();
const gainNode = audioCtx.createGain();
const finish = audioCtx.destination;
// etc.
仕様書
Specification |
---|
Web Audio API # AudioContext |
ブラウザーの互換性
BCD tables only load in the browser