ESP32-AudioInI2S ESP32-AudioInI2S

ESP32 ⭐☆☆☆☆ (1/5) 已发布
sheaivey 79 Stars MIT BOM 完整度: /5 教程完整度: /5

项目简介

ESP32的MEMS I2S麦克风与音频处理库。


ESP32-AudioInI2S 是一个专为 ESP32 系列芯片设计的 MEMS I2S 麦克风音频采集与处理库,旨在简化音频数据读取和实时分析的开发流程。它解决了在嵌入式平台上快速搭建音频可视化、频谱分析或音量检测系统时,底层 I2S 配置复杂、信号处理代码重复编写的问题。核心功能包括:通过简单的引脚、采样率和采样大小设置即可启动 I2S 麦克风数据流;内置强大的音频处理类,支持快速傅里叶变换(FFT),可将音频信号分解为 2 至 64 个自定义频率段;提供音量单位表(VU Meter)用于实时响度监测;具备噪声门限设置、数值归一化、自动电平调节以及峰值衰减速率控制(支持无衰减、线性、加速和指数四种模式);还集成了均衡器,可独立调整每个频段的增益,便于根据环境抑制低频噪声或增强高频细节。技术栈基于 Arduino 框架和 ArduinoFFT 库,兼容 ESP32、ESP32-S2、ESP32-C2 和 ESP32-C3 等主流型号,典型硬件搭配为 INMP441 数字麦克风。适用场景广泛,包括:制作 LED 音乐频谱灯(如 WS2812B 灯带)、驱动 OLED 或 TFT 屏幕显示实时频谱、构建智能语音交互的前端音频预处理模块、以及环境噪声监测或音频特征提取等物联网项目。该库以 MIT 开源协议发布,示例丰富,从基础串口绘图到带视觉反馈的完整项目均有覆盖,非常适合创客和嵌入式开发者快速上手。

标签

项目特点

**简单易用**:只需选择引脚、采样大小和采样率即可开始读取 I2S 麦克风数据。
**强大的音频分析**:内置 FFT 计算,支持 2/4/8/16/32/64 个频段划分。
**灵活的频段处理**:支持自定义频率范围(新方式)或固定 20Hz-20kHz 频段(旧方式)。
**音量与动态控制**:提供 VU Meter、噪声门限、数值归一化、自动电平调整。
**峰值衰减效果**:支持无衰减、线性衰减、加速衰减、指数衰减四种模式。
**均衡器**:可调整每个频段的增益,用于补偿环境或麦克风频率响应。
**多平台支持**:兼容 ESP32、ESP32-S2、ESP32-C2、ESP32-C3 等芯片。
**丰富的示例**:包含 Serial Plotter 可视化、FastLED 灯带、OLED 显示、TFT 显示等多种示例。

技术规格

支持芯片
麦克风类型
采样率
采样大小
频段数量
峰值衰减模式
均衡器
依赖库
许可证

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
ESP32 开发板 1 推荐 ESP32 DevKit 或 TTGO T-Display
INMP441 MEMS I2S 麦克风模块 1 或其他兼容 I2S 麦克风
WS2812B LED 灯带 1 用于 FastLED 示例
128x64 OLED 显示屏 1 I2C 接口,用于 OLED 示例
240x135 TFT 显示屏 1 用于 TTGO T-Display 示例
杜邦线 若干 连接麦克风和 ESP32

所需工具

工具用途是否必需
Arduino IDE 或 PlatformIO 编写、编译和上传代码 ✅ 是
USB 数据线 连接 ESP32 到电脑 ✅ 是
焊台 焊接排针或模块(可选) ▢ 推荐
3D 打印机 打印外壳(可选) ▢ 推荐

能力画像

记忆与知识检索
1/5
逻辑推演
2/5
表达与交流
1/5
感知与观察
1/5
数理与计算
3/5
动手与操作
3/5
狂热与坚持
2/5
创造与创新
2/5

所需技能

🔧 **动手能力**:需要连接 I2S 麦克风到 ESP32(杜邦线或焊接),可选连接显示模块。 💻 **编程能力**:需要熟悉 Arduino 框架和 C++ 基础,理解 I2S 和 FFT 概念。 ⚡ **电子电路**:了解 I2S 协议引脚(BCK、WS、DATA)和 ESP32 引脚分配。

适用场景

**音频可视化**:将麦克风采集的音频实时显示在 LED 灯带、OLED 或 TFT 屏幕上。
**环境噪声监测**:分析环境噪声的频率分布和音量变化。
**语音预处理**:提取音频特征用于语音识别或唤醒词检测。
**音乐互动装置**:根据音乐频率控制灯光、电机或其他执行器。
**教学演示**:学习数字信号处理(DSP)和 FFT 原理的实践项目。