用途:为 @web-kits/audio 生成 SoundDefinition。支持三种输入:仅自然语言提示、仅音频文件、提示加音频。
主要能力与用法:
- 检测输入模式并路由。仅提示时跳过音频解析步骤;仅音频时执行全部解析规则、跳过事件与情绪规则;两者兼有时先解析音频,再把提示作为对实测 SoundDefinition 的细化层。音频信号可通过 .wav、.mp3、.flac、.ogg 等附件或音频路径识别。
- 从提示的事件类别挑选基础层,按 token 映射事件规则(click/tap 对应 event-click,success 对应 event-success,error 对应 event-error 等);open/confirm 用上升音高,close/cancel 用下降音高;无法确定时默认 event-click。
- 叠加情绪形容词:波形类(warm、bright、glassy 等)改 source.type、source.fm 或加 filter;包络类(punchy、airy)改 envelope;效果类(reverby、delayed)追加 effects。冲突时后出现的 token 优先(warm 对 bright),lofi 加 glassy 同时生效但 effects 上限 2 个。
- 决定单层或多层:click/tick/hover 等默认单层,toggle/copy 等默认双层,success/level-up 默认三层以上,error/delete 默认双层。每层增益之和建议不超过约 0.6。
- 输出可粘贴到 .web-kits/<patch>.ts 的 TypeScript 片段,附一行说明所依据的提示 token。可选渲染预览 WAV 与回环校验(对渲染 WAV 重新解析并与目标值比对,基频 ±5%、attack ±2ms、decay ±10%、谱质心 ±20% 容差)。
音频解析能力:把源音频拆成单声道 44.1kHz 16-bit PCM 的 WAV(支持 npm 包内 sprite 与 ffmpeg 静音检测切分),提取基频与音高扫频、ADSR 包络、由谐波分类振荡器波形、滤波类型截止频率与共振、混响/延迟/FM/颤音/比特压碎等效果、LFO 调制、多层结构与立体声定位。
限制:资料仅提供生成流程与规则,未说明收费、价格、平台或效果保证;效果检测标注为低置信度提示而非保证,难辨别的算法(如 chorus/flanger/phaser)建议人工复核。无法合成的素材需回退为 sample。音频解析步骤依赖未在资料中完整展开的 analyze 模块。