MediaStreamAudioSourceNode

基线 广泛可用

此功能已完善,可在许多设备和浏览器版本上运行。它自以下时间起在各浏览器中可用: 2021 年 4 月.

MediaStreamAudioSourceNode 接口是一种 AudioNode 类型,它充当音频源,其媒体来自使用 WebRTC 或媒体捕获和流 API 获取的 MediaStream

此媒体可能来自麦克风(通过 getUserMedia())或 WebRTC 通话中的远程对等方(使用 RTCPeerConnection 的音频轨道)。

MediaStreamAudioSourceNode 没有输入,只有一个输出,并且是使用 AudioContext.createMediaStreamSource() 方法创建的。

MediaStreamAudioSourceNode 获取来自第一个 MediaStreamTrack 的音频,其 kind 属性值为 audio。有关轨道的顺序,请参阅 轨道排序

节点输出的通道数与选定的音频轨道中找到的轨道数匹配。

EventTarget AudioNode MediaStreamAudioSourceNode
输入数量 0
输出数量 1
通道数 2(但请注意,AudioNode.channelCount 仅用于对 AudioNode 输入进行上混和下混,并且 MediaStreamAudioSourceNode 没有任何输入)

构造函数

MediaStreamAudioSourceNode()

使用指定的选项创建一个新的 MediaStreamAudioSourceNode 对象实例。

实例属性

除了以下属性之外,MediaStreamAudioSourceNode 还继承了其父级 AudioNode 的属性。

mediaStream 只读

构造此 MediaStreamAudioSourceNode 时使用的 MediaStream

实例方法

继承自其父级 AudioNode 的方法.

使用说明

轨道排序

出于 MediaStreamTrackAudioSourceNode 接口的目的,流上音频轨道的顺序是通过获取 kindaudio 的轨道,然后按其 id 属性值(基本上,对于简单的字母数字字符串 ID 而言,按字母或词典顺序)对轨道进行排序来确定的。

因此,第一个轨道是当所有轨道的 ID 按 Unicode 代码点排序时,其 id 位于首位的轨道。

但是,需要注意的是,建立此排序规则的规则是在此接口首次引入 Web Audio API 之后很久才添加的。因此,您无法轻松地依赖任何两个浏览器或浏览器版本之间的顺序匹配。

MediaStreamTrackAudioSourceNode 接口类似于 MediaStreamAudioSourceNode,但通过允许您指定要使用的轨道来避免此问题。

示例

有关使用此对象的示例代码,请参阅 AudioContext.createMediaStreamSource()

规范

规范
Web Audio API
# MediaStreamAudioSourceNode

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅