抖音开放平台Logo
控制台

AudioContext.createVolumeDetection
收藏
我的收藏

基础库 1.34.0 开始支持本方法,这是一个同步方法。

创建并返回一个新的 VolumeDetectionNode,用于获取输入源的音量检测数据。约 20ms 检测一次。音高数据最多保存 2 秒,每次调用获取的是最近 2s 的数据。

前提条件
业务背景
使用限制
注意事项

音频检测节点的输出是和音频信号振幅的平方成正比的

相关教程

语法

AudioContext.createVolumeDetection()

参数说明

返回值

类型说明最低支持版本
object

VolumeDetectionNode 对象实例

1.34.0

代码示例

// 1. 创建一个 AudioContext 和 Audio
const ctx = tt.getAudioContext();
const audio = ctx.createAudio();
audio.src = "xxxx.mp3";

const source = context.createMediaElementSource(audio);
const volumeDetectionNode = context.createVolumeDetection();
source.connect(volumeDetectionNode);
volumeDetectionNode.connect(context.destination);

audio.oncanplay = () => {
  audio.play();
};

setInterval(() => {
  const data = volumeDetectionNode.getVolumeDetectionData();
  console.log(`[API: audio] size of data: ${data.size}`);
  console.log(`[API: audio] time: ${data.time}`);
  console.log(`[API: audio] data: ${data.data}`);
}, 2000);