音频数据

有限可用性

此功能不是基线,因为它不适用于一些使用最广泛的浏览器。

注意: 此功能在 专用 Web 工作线程 中可用。

实验性: 这是一个 实验性技术
在生产环境中使用此功能之前,请仔细查看 浏览器兼容性表

AudioDataWebCodecs API 中表示音频样本的接口。

AudioData 是一个 可转移对象

描述

音频轨道由一系列音频样本组成,每个样本代表声音捕获的瞬间。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 表格仅在浏览器中加载