# 项目设计

[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_manager` 和 `esp_codec_dev` 初始化，见 ESP Board Manager 与 ESP 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.1 和 ESP32-P4 Function EV。

典型音频项目示例

## 方案对照

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

- 智能音响与闹钟

- 绘本点读与电子书

- 语音对讲与网络电话

- 可视对讲与门铃

- ESP-WebRTC 音视频实时通信方案

- 蓝牙音频

- 语音律动灯带

- 视频氛围灯带

- AI 陪伴对讲（喵伴）

提供有关此文档的反馈