移植评估报告

一套算法, 哪儿都能跑

Happy Sound 是跨平台 C++ 源码引擎, 无平台专属依赖. 这里汇总各目标平台的移植可行性评估与实测数据, 持续更新.

移植状态总览

点击平台名跳转到对应评估报告

目标平台类型可行性状态
ESP32-S3 嵌入式 MCU 可行 (需 PSRAM) 已完成算力/内存实测

ESP32-S3 · 嵌入式落地评估

基于生产源码的实机基准测试 (非估算) · 2026-07-02

测试工况: 48 kHz, 一帧 512 采样 (约 10.67 ms), idle → 红线 → idle 全转速扫描 (含交叉淡入, 最坏情况均值). 结论: 算力几乎不构成压力, 真正的约束是内存.

算力 (实测)

车型每帧运算量ESP32-S3 单帧耗时单核占用
Camaro SS (单声道)约 4.2 万次浮点运算≈ 0.35 ms≈ 3%
Ferrari 430 (最重, 单声道)约 5.3 万次浮点运算≈ 0.44 ms≈ 4%
Lamborghini Huracán (双声道)与单声道相近≈ 0.35 ms≈ 3%

每帧预算 10.67 ms, 实际只用掉 3 – 4%. ESP32-S3 (240 MHz) 理论上不到 10 MHz 主频即可满足单车型实时合成.

内存 (关键约束)

项目大小说明
引擎运行时工作内存≈ 50 KB芯片内部 SRAM 即可容纳
单个车型音源数据1 – 4 MB需外部 PSRAM 承载
完整车型库 (47 款)50 – 190 MB需 SD 卡或大容量 Flash, 设备端常驻少量车型

推荐硬件配置

主控

ESP32-S3 (双核 240 MHz, 单精度 FPU + 向量指令). 一核跑合成, 一核跑音频 I/O.

PSRAM

≥ 8 MB Octal, 承载当前车型音源.

存储

≥ 16 MB Flash 或外挂 SD 卡, 承载完整车型库, 按需加载切换.

输出

I2S 外接 DAC / 功放, 双缓冲.

注: 以上为纯计算实测 + 架构投影. 实机上音源访问 PSRAM 的延迟会带来少量额外开销, 建议在目标板做单车型移植验证. ESP32-C3 (无硬件 FPU) / ESP32-S2 (单核) 不推荐.