一、项目基础信息
- 仓库地址:https://github.com/rzeldent/esp32cam-rtsp
- 定位:把 ESP32-CAM/ESP32-S3 摄像头模块一键变成标准 RTSP 网络摄像头,同时附带 HTTP 流、抓拍、网页全配置面板,无强制云端、纯本地运行
- 开发框架:基于 Arduino ESP32 内核,编译工具固定为PlatformIO(不原生支持 Arduino IDE 一键打开)

二、核心三大流媒体协议能力
1. RTSP 实时流(最核心)
- 默认端口:554
- 访问地址:
rtsp://设备IP:554/mjpeg/1 - 编码格式:MJPEG(JPEG 帧封装 RTP)
- 兼容全平台播放器 / NVR:VLC、Blue Iris、Frigate、HomeAssistant、FFmpeg、监控录像机、手机 RTSP 播放器等
- 支持多客户端同时拉流,可配合 FFmpeg 推流存储录像
2. HTTP MJPEG 浏览器直播流
地址:http://设备IP/stream 电脑 / 手机浏览器直接打开看画面,无需额外播放器,适合快速预览调试
3. HTTP 单帧抓拍(快照)
地址:http://设备IP/snapshot 单次返回一张高清 JPEG 图片,适合自动化抓拍、定时截图、AI 图像识别取图场景
三、内置 Web 管理后台
开机默认启动WiFi 热点 AP(名称 ESP32-CAM-xxxx),手机连热点打开192.168.4.1即可配置:
- WiFi 参数:填写家里路由器 SSID / 密码,切换 STA 联网
- 图像参数:分辨率、JPEG 画质、帧率、白平衡、镜像翻转、对比度、灰度 / 复古滤镜
- 硬件控制:板载红外补光灯开关
- 系统信息:实时 IP、内存、PSRAM 占用、帧率、连接客户端数量
- 安全:网页基础认证、可清除 WiFi 配置、设备重启
- mDNS 局域网发现:局域网内可用
esp32cam.local代替 IP 访问
四、支持硬件列表
1. 经典 ESP32 系列
- Ai-Thinker ESP32-CAM(OV2640)最主流
- TTGO T-CAM、Wrover-Kit、M5Stack Atom S3R
2. 新版 S3 系列
- Seeed Studio XIAO ESP32S3、ESP32-S3-EYE 等 S3 摄像头板 依赖PSRAM:必须带外部 PSRAM 的摄像头模组才能稳定高分辨率推流。
- 本次部署使用ESP32-S3-WROOM N16R8开发板+OV3660摄像头
-

五、编译与烧录流程(PlatformIO)
1. 安装 PlatformIO Core(推荐编译方式)
pip3 install platformio
# 验证
pio --version
2. 拉取源码
git clone https://github.com/rzeldent/esp32cam-rtsp.git
cd esp32cam-rtsp
首次运行会自动下载:ESP32 Arduino 平台、工具链、摄像头依赖库,等待自动拉取。
3. 编译源代码
首先需要编译源代码以构建所有目标:
pio run
如果只需要特定目标,例如 esp32cam_s3_wroom_n16r8,请输入:
pio run -e esp32cam_s3_wroom_n16r8
完成后,需要上传固件。请确保 ESP32-CAM 处于下载模式(Boot+RST),然后输入以下命令:
pio run -t upload
或者,再次针对特定目标进行操作,例如 esp32cam_s3_wroom_n16r8:
pio run -t upload -e esp32cam_s3_wroom_n16r8
串口监视:
pio device monitor
开发时,节省编译下载时间,使用针对特定目标进行操作:
pio run -e esp32cam_s3_wroom_n16r8
pio run -t upload -e esp32cam_s3_wroom_n16r8
下载成功的提示:

4. WiFi 配置(两种方式)
方式 A:直接写死 WiFi(快速测试) 编辑 src/main.cpp
const char* ssid = "你的WiFi名称";
const char* password = "WiFi密码";
方式 B:上电 AP 配网(推荐成品使用,不用改代码) 默认开启 AP 模式,手机连 ESP32CAM-AP 热点,浏览器 192.168.4.1 填 WiFi。
5. 配置界面
电脑连接 ESP32 开发板的 WiFi 热点。

浏览器中输入 192.168.4.1 访问开发板。
注意:RTSP 功能需要使用 STA 模式,AP 模式下 RTSP 服务器不会启动。

6. 网页视频流

六、关键特性与优化点
- 内存优化:自动识别 PSRAM,帧缓冲分配到外部内存,避免小内存花屏、卡顿
- 轻量化:移除冗余 OTA(新版稳定分支关闭 OTA 提升推流性能)
- 低延迟 MJPEG RTSP 栈,专为 ESP32 弱 WiFi 芯片优化
- 无后台联网、不上传云端,隐私性强,适合自建智能家居监控
- 代码分层清晰:摄像头驱动、RTSP 服务、HTTP 网页、配置存储模块化,极易二次开发改功能
- 稳定迭代:持续更新 S3 支持、修复帧率崩溃、长连接断连重连 bugGitHub
七、常见使用场景
- HomeAssistant/Frigate 自建本地监控摄像头
- 低成本工业视觉采集、机器视觉抓拍
- 远程门岗、仓库、阳台简易监控
- 配合 FFmpeg 做录像、实时转码、推流到流媒体服务器
- 嵌入式 AI 前置图像采集(快照接口喂给识别模型)

725

被折叠的 条评论
为什么被折叠?



