音频数据
描述
音频轨道由一系列音频样本组成,每个样本代表声音捕获的瞬间。AudioData
对象表示此类样本。与 可插入流 API 的接口一起工作,您可以使用 MediaStreamTrackProcessor
将流分解为单独的 AudioData
对象,或者使用 MediaStreamTrackGenerator
从一组帧构建音频轨道。
注意: 在 数字音频概念 中了解有关 Web 上音频的更多信息。
媒体资源
AudioData
对象包含对附加的媒体资源的引用。此媒体资源包含对象描述的实际音频样本数据。媒体资源由用户代理维护,直到不再被 AudioData
对象引用,例如,当调用 AudioData.close()
时。
平面和音频格式
要返回 AudioData
的样本格式,请使用 AudioData.format
属性。格式可以描述为交织或平面。在交织格式中,来自不同通道的音频样本在一个称为平面的单个缓冲区中排列。此平面包含数量等于 AudioData.numberOfFrames
* AudioData.numberOfChannels
的元素。
在平面格式中,平面的数量等于 AudioData.numberOfChannels
,并且每个平面都是包含数量等于 AudioData.numberOfFrames
的元素的缓冲区。
构造函数
AudioData()
实验性-
创建一个新的
AudioData
对象。
实例属性
AudioData.format
只读 实验性-
返回音频的样本格式。
AudioData.sampleRate
只读 实验性-
以赫兹为单位返回音频的采样率。
AudioData.numberOfFrames
只读 实验性-
返回帧数。
AudioData.numberOfChannels
只读 实验性-
返回音频通道数。
AudioData.duration
只读 实验性-
返回音频的持续时间(以微秒为单位)。
AudioData.timestamp
只读 实验性-
返回音频的时间戳(以微秒为单位)。
实例方法
AudioData.allocationSize()
实验性-
返回保存样本所需的字节数,这些样本由传递给方法的选项过滤。
AudioData.copyTo()
实验性-
将
AudioData
对象的指定平面的样本复制到目标。 AudioData.clone()
实验性-
创建一个新的
AudioData
对象,该对象引用与原始对象相同的媒体资源。 AudioData.close()
实验性-
清除所有状态并释放对媒体资源的引用。
规范
规范 |
---|
WebCodecs # audiodata-interface |
浏览器兼容性
BCD 表格仅在浏览器中加载