项目设计

[English]

多媒体项目的选型依据是输入、输出和芯片型号。输入包括麦克风、摄像头、存储、网络和用户操作,输出包括扬声器、屏幕、存储、网络和状态指示。

输入与输出

输入

  • 模拟麦克风通过外置 Codec 完成模数转换。数字麦克风使用 PDM 或 I2S 接口。

  • 摄像头使用 DVP、MIPI CSI 或 USB 接口。

  • 本地音视频文件存储在 microSD 或片内 Flash。

  • 网络流媒体通过 Wi-Fi 或以太网获取。

  • 无线音频使用经典蓝牙或 LE Audio。

  • 用户操作来自按键或触摸屏。

输出

  • 外置 Codec 或片上 DAC 驱动耳机、功放和扬声器。

  • LCD 显示画面和 UI。

  • 录音、录像写入 microSD 或 Flash。

  • 推流使用 Wi-Fi、以太网或 WebRTC。

  • 经典蓝牙或 LE Audio 向耳机或音箱发送音频。

  • LED、灯带或振动用于状态指示。

主控

芯片完成采集、编解码与网络收发。ESP32-P4 使用硬件 JPEG、H.264 和 PPA 降低 CPU 占用。

芯片与模组

按功能选择型号。推荐使用带 PSRAM 的芯片或模组。Wi-Fi、蓝牙与媒体同时运行时,内部 RAM 通常不足。芯片与模组筛选见 产品选项工具

场景

建议型号

说明

纯音频播放、网络电台

ESP32、ESP32-S2、ESP32-C3

外置 Codec 音质更高;ESP32、ESP32-S2 提供片上 DAC

经典蓝牙音频

ESP32、ESP32-S31

ESP32、ESP32-S31 支持经典蓝牙

语音唤醒、AEC、双麦

ESP32-S3、ESP32-S31、ESP32-P4

需要 PSRAM

音视频播放、对讲、高分辨率编解码

ESP32-P4

更大 PSRAM;MIPI CSI / DSI;硬件 JPEG / H.264 / PPA

灯带等低成本外设

ESP32-C3

算力需求低;无 PSRAM

开发板列表见 多媒体开发板

软件组成

板卡外设由 esp_board_manageresp_codec_dev 初始化,见 ESP Board ManagerESP Codec Device

媒体处理使用 GMF 处理链(pipeline)串接处理单元(element),见 ESP-GMF 通用多媒体框架

播放、采集、联网等产品能力由 多媒体上层组件 提供。

        flowchart LR
    App["应用与产品服务"] --> Gmf["GMF 处理链"]
    App --> Board["esp_board_manager 与 esp_codec_dev"]
    Gmf --> Board
    Board --> Soc["SoC 与外设"]
    

硬件形态

最少外围

仅使用 I2S、PDM 或 DAC,即可构成外围最少的产品。数字麦克风采集语音后,通过 Wi-Fi 与云服务交互。

音频项目示例:向云服务发送语音命令

音频项目示例:向云服务发送语音命令

片上 DAC 用于网络电台一类播放器,音质低于外置 Codec。

音频项目示例:联网广播播放器

音频项目示例:联网广播播放器

典型整机

需要更高音质或更多接口时,使用外置 I2S Codec 处理模拟输入输出。Codec 提供前置放大、耳机放大和多路模拟口。音视频同时工作时增加摄像头与 LCD。

开发板示例见 ESP32-S3-Korvo-2 V3.1ESP32-P4 Function EV

典型音频项目示例

典型音频项目示例

方案对照

整机形态与软硬件组成见 方案中心