AudioData: copyTo() 方法

可用性有限

此功能并非基线功能,因为它在一些最常用的浏览器中无法正常工作。

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

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

copyTo()AudioData接口的一个方法,用于将AudioData对象的一个平面复制到目标缓冲区。

语法

js
copyTo(destination, options)

参数

destination

要将平面复制到的ArrayBufferTypedArrayDataView

options

包含以下内容的对象

planeIndex

要从中复制平面的索引。

frameOffset 可选

一个整数,指示平面数据中开始复制的位置的偏移量。默认为 0

frameCount 可选

一个整数,指示要复制的帧数。如果省略,则将复制平面中的所有帧,从frameOffset指定的帧开始。

返回值

未定义。

异常

InvalidStateError DOMException

如果AudioData对象已被传输,则抛出此异常。

RangeError

如果满足以下条件之一,则抛出此异常

  • 样本长度超过目标长度。
  • AudioData对象的格式描述了一种平面格式,但options.planeIndex超出了可用平面的数量。
  • AudioData对象的格式描述了一种交错格式,但options.planeIndex大于0

示例

以下示例将索引为1的平面复制到目标缓冲区。

js
AudioData.copyTo(AudioBuffer, { planeIndex: 1 });

规范

规范
WebCodecs
# dom-audiodata-copyto

浏览器兼容性

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