AudioContext

AudioContext インターフェイスはAudioNodeによって表現され、一緒にリンクした音声モジュールから作った音声処理グラフを表します。音声コンテキストはコンテキストを含むノードの作成と音声処理もしくはデコードの実行の両方を制御します。コンテキスト内部で全てのことが起こるので、何かをする前に AudioContext を作る必要があります。

EventTarget BaseAudioContext AudioContext

Constructor

AudioContext()

AudioContext オブジェクトを新しく作成し、返します。

プロパティ

親インターフェイスBaseAudioContextからプロパティを継承します。

AudioContext.baseLatency 読取専用 Experimental

AudioDestinationNodeから音声サブシステムまでの音声を渡すAudioContextによって起きる処理レイテンシーの秒数を返します。

AudioContext.outputLatency 読取専用 Experimental

現在の音声コンテキストの出力レイテンシーの見積もりを返します。

AudioContext.sinkId 読取専用 Experimental

現在の出力音声デバイスの sink ID を返します。

メソッド

親インターフェイスBaseAudioContext からメソッドを継承します。

AudioContext.close()

任意のシステム音声リソースをリリースするために、音声コンテキストを閉じます。

AudioContext.createMediaElementSource()

HTMLMediaElementと関連付けられたMediaElementAudioSourceNodeを生成します。これは<video>要素もしくは<audio>要素からの再生や操作をするために使うことができます。

AudioContext.createMediaStreamSource()

ローカルのコンピューターのマイクもしくは他のソースから来る音声ストリームを表現しているMediaStreamと関連付けられたMediaStreamAudioSourceNodeを生成します。

AudioContext.createMediaStreamDestination()

ローカルファイルに保存されたものかその他のコンピューターに送信された音声ストリームを表しているMediaStreamと関連付けられたMediaStreamAudioDestinationNodeを生成します

AudioContext.createMediaStreamTrackSource()

メディアストリームトラックを表しているMediaStreamと関連づけられたMediaStreamTrackAudioSourceNodeを生成します。

AudioContext.getOutputTimestamp()

二つの関連づけられたコンテキストの音声ストリームの位置の値を含んでいる AudioTimestamp オブジェクトを新しく返します。

AudioContext.setSinkId() Experimental

この AudioContext 用の出力音声デバイスを設定します。

AudioContext.suspend()

一時的に音声ハードウェアアクセスを停止し、プロセスの CPU/バッテリー使用を減らすために、音声コンテキストの時間の進行を中断します。

非推奨メソッド

AudioContext.resume()

あらかじめ中断させられた音声コンテキストの時間の進行を返します。

注意: resume() メソッドはまだ利用することができます。このメソッドはBaseAudioContextインターフェイス(BaseAudioContext.resume() (en-US)を見てください)上で現在定義されています。したがって、AudioContextインターフェイスとOfflineAudioContextインターフェイスの両方でアクセスすることができます。

イベント

sinkchange Experimental

出力音声デバイスが変更された (そしてその結果 AudioContext.sinkId が変更された) 時発火します。

基本的な音声コンテキストの作成方法:

js

var audioCtx = new AudioContext();

クロスブラウザー対応版:

js

var AudioContext = window.AudioContext || window.webkitAudioContext;
var audioCtx = new AudioContext();

var oscillatorNode = audioCtx.createOscillator();
var gainNode = audioCtx.createGain();
var finish = audioCtx.destination;
// etc.

仕様

Specification
Web Audio API
# AudioContext

ブラウザーの互換性

BCD tables only load in the browser

参考