ESP32-S3 语音对话终于跑通:从分阶段处理到实时会话
记录一台 ESP32-S3 参考设备从完整但迟缓的录音、转写、AI 回复和语音合成链路,转向单个实时语音会话的过程;解释为什么实时交互到了资源有限的硬件上,不再只是接入一个 API,而是要重新调度音频、网络、显示与播放。
继续看这次记录从零开始的造物记录

当前章节
网站会跟着真实进度生长。这里始终保留最近一次公开的尝试、问题或阶段结果。
记录一台 ESP32-S3 参考设备从完整但迟缓的录音、转写、AI 回复和语音合成链路,转向单个实时语音会话的过程;解释为什么实时交互到了资源有限的硬件上,不再只是接入一个 API,而是要重新调度音频、网络、显示与播放。
继续看这次记录过程比答案更长
供电、结构、材料和表达方式都可能让一个想法停下来。把问题写清楚,下一次才不会重新踩一遍。
记录一台 ESP32-S3 参考设备从完整但迟缓的录音、转写、AI 回复和语音合成链路,转向单个实时语音会话的过程;解释为什么实时交互到了资源有限的硬件上,不再只是接入一个 API,而是要重新调度音频、网络、显示与播放。
复盘一次 ESP32-S3 录音严重欠采样故障:从 Base64 缓冲区错误,到定位低速 ST7789 重绘阻塞 I²S,再用独立 FreeRTOS 采集任务和分频局部刷新完成验证。
记录 ESP32-S3 与 INMP441 从按住录音、屏幕声量反馈、WAV 上传,到服务端音频处理、whisper.cpp 转写和网页显示的完整实测链路。
真正留下来的东西
这些想法已经经过试错和返工,变成了我自己会继续使用的物品。

完成一套由按钮触发的 AI 语音对话原型:ESP32-S3 持续发送麦克风音频,在同一个实时会话中接收 AI 回复,并通过屏幕和扬声器完成反馈。
从头看
这里会持续记录从第一次尝试,到失败、返工和真正做成的过程。你可以从最早的公开记录开始看。