它解决什么问题?
初学口琴最大的挫败感来自”吹出来的音对不对我自己也不知道”。HarpMaster 让每一次吹奏立刻得到反馈 —— 你吹的是哪个音?在哪个孔?音高准不准?——全都在屏幕上一目了然。
核心能力
- 实时音高识别 —— 麦克风采集 + YIN 算法,延迟 < 30ms
- 可视化口琴 —— 高亮当前吹/吸/压音/超吹 的孔位,颜色编码
- 音准偏差指示 —— cents 精度显示,告诉你偏高还是偏低
- 21 个调支持 —— Low C 到 High G,涵盖所有常见口琴
- 25+ 种调音系统 —— 十孔(Richter、Country、Paddy Richter 等)+ 半音阶(Solo / C6 / Richter,8/10/12/14/16 孔)
- A4 基准频率可调 —— 438–445 Hz,适配不同演奏标准
工作原理
底层使用业界经典的 YIN 音高检测算法,WASM(aubio yinfast)默认启用,兼容性问题时自动降级到纯 JS 版本。采样率 44.1 kHz,FFT 尺寸 2048,置信度阈值 0.7 过滤噪声。
iOS 上麦克风灵敏度偏低,我们加了 RMS 归一化 + 自动增益补偿,保证小声吹奏也能稳定识别。
为什么这样设计
所有音频处理都在设备本地完成,录音数据不上传服务器 —— 隐私优先。检测结果 UI 层节流到 30ms(约 33 fps),保证 60fps 动画不卡顿。检测与口琴高亮之间有一层孔位匹配引擎,根据当前选定的”调 + 把位 + 调音”动态计算,即使你用非 C 调的口琴也准确映射。
