MediaStreamAudioSourceNode

Baseline 已廣泛支援

此功能已成熟,可跨多種裝置和瀏覽器版本使用。自 2017 年 9 月以來,它已在瀏覽器中提供。

MediaStreamAudioSourceNode 介面是一種 AudioNode,它充當音訊源,其媒體來自使用 WebRTC 或 Media Capture and Streams API 獲取的 MediaStream

此媒體可能來自麥克風(透過 getUserMedia())或來自 WebRTC 通話中的遠端對等方(使用 RTCPeerConnection 的音訊軌道)。

MediaStreamAudioSourceNode 沒有輸入,只有一個輸出,並且是使用 AudioContext.createMediaStreamSource() 方法建立的。

MediaStreamAudioSourceNode 獲取的是其 kind 屬性值為 audio 的*第一個* MediaStreamTrack 的音訊。有關軌道順序的更多資訊,請參閱 Track ordering

該節點輸出的聲道數量與所選音訊軌道中找到的軌道數量相匹配。

EventTarget AudioNode MediaStreamAudioSourceNode
輸入數量 0
輸出數量 1
聲道數 2(但請注意,AudioNode.channelCount 僅用於上混和下混 AudioNode 輸入,而 MediaStreamAudioSourceNode 沒有輸入)

建構函式

MediaStreamAudioSourceNode()

建立一個具有指定選項的新 MediaStreamAudioSourceNode 物件例項。

例項屬性

除了以下屬性外,MediaStreamAudioSourceNode 還繼承了其父級 AudioNode 的屬性。

mediaStream 只讀

用於構造此 MediaStreamAudioSourceNodeMediaStream

例項方法

繼承自其父級 AudioNode 的方法.

用法說明

軌道順序

對於 MediaStreamTrackAudioSourceNode 介面而言,流中音訊軌道的順序是透過獲取 kindaudio 的軌道,然後根據其 id 屬性的值,按 Unicode 程式碼點順序(本質上,對於簡單的字母數字字串 ID,則是按字母或字典順序)排序來確定的。

因此,**第一個**軌道是當所有軌道的 ID 按 Unicode 程式碼點排序時,ID 排在最前面的那個軌道。

然而,需要注意的是,確立此順序的規則是在此介面首次引入 Web Audio API 很久之後才新增的。因此,您無法輕鬆地在任何兩個瀏覽器或瀏覽器版本之間依賴匹配的順序。

MediaStreamTrackAudioSourceNode 介面與 MediaStreamAudioSourceNode 類似,但透過允許您指定要使用的軌道來避免此問題。

示例

有關使用此物件的示例程式碼,請參閱 AudioContext.createMediaStreamSource()

規範

規範
Web Audio API
# MediaStreamAudioSourceNode

瀏覽器相容性

另見