AudioContext
Baseline 廣泛可用 *
AudioContext 介面表示一個由連結在一起的音訊模組構建的音訊處理圖,每個模組都由一個 AudioNode 表示。
音訊上下文控制著它包含的節點的建立和音訊處理或解碼的執行。在進行任何其他操作之前,您需要建立一個 AudioContext,因為所有操作都發生在上下文中。建議建立一個 AudioContext 並重用它,而不是每次都初始化一個新的,並且可以使用單個 AudioContext 同時處理多個不同的音訊源和管道。
建構函式
AudioContext()-
建立並返回一個新的
AudioContext物件。
例項屬性
還繼承了其父介面 BaseAudioContext 的屬性。
AudioContext.baseLatency只讀-
返回
AudioContext將音訊從AudioDestinationNode傳遞到音訊子系統所產生的處理延遲秒數。 AudioContext.outputLatency只讀-
返回當前音訊上下文的輸出延遲估算值。
AudioContext.sinkId只讀 實驗性 安全上下文-
返回當前輸出音訊裝置的接收器 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.resume()-
恢復先前已暫停/停止的音訊上下文的時間流逝。
AudioContext.setSinkId()實驗性 安全上下文-
設定
AudioContext的輸出音訊裝置。 AudioContext.suspend()-
暫停音訊上下文的時間流逝,暫時停止音訊硬體訪問,並在此過程中減少 CPU/電池使用。
事件
sinkchange實驗性-
當輸出音訊裝置(因此,
AudioContext.sinkId)發生更改時觸發。
示例
基本音訊上下文宣告
const audioCtx = new AudioContext();
const oscillatorNode = audioCtx.createOscillator();
const gainNode = audioCtx.createGain();
const finish = audioCtx.destination;
// etc.
規範
| 規範 |
|---|
| Web Audio API # AudioContext |
瀏覽器相容性
載入中…