SuperAPI AI 工具集

audio-analysis

编程与开发

查看项目

更新于 10-15 17:24

技能介绍

用途:该技能用于在浏览器音频链路上做实时分析,基于 Tone.js 与 Web Audio API,适合音频可视化、节拍检测与频谱数据处理。

主要能力:提供三种分析器。FFT 分析器使用 Tone.Analyser('fft', 256) 获取频域 dB 数据;波形分析器使用 Tone.Analyser({type:'waveform', size:1024}) 获取 -1 到 1 的时域振幅;Tone.Meter 用于测量整体音量电平,可返回 dB 或 0-1(normalRange 为 true 时)。FFT size 需为 2 的幂,如 32、64、128、256、512、1024、2048,size 越大频率分辨率越高、时间分辨率越低。

使用方式:将音频源连接到分析器。示例:const analyser = new Tone.Analyser('fft', 256); const player = new Tone.Player('/audio/music.mp3'); player.connect(analyser); player.toDestination(); 然后通过 analyser.getValue() 取得 Float32Array。可手动按频段范围求平均提取 sub、bass、lowMid、mid、highMid、high 等频段,并将 dB 值归一化到 0-1。节拍检测可用简单峰值检测或能量历史法。振幅分析包含 RMS 与峰值。平滑可用指数平滑或移动平均。资料还给出了完整 AudioAnalysisSystem 类与计数据用法。

适用场景:音频驱动的动画与视觉效果、音量表、频谱可视化、节拍触发。

限制:资料未提供安装方式、收费、价格、平台支持与运行步骤;FFT 频段划分基于约 44.1kHz 采样率的估算。性能建议包括使用较小 FFT size、降低分析频率、复用数组与启用平滑。