ESP32-CAM 视频流传输实战
硬件简介
ESP32-CAM 是一款小巧的摄像头模组,内置 OV2640/OV7670 传感器,支持独立工作。它集成了低功耗双核 32 位 CPU(主频 240MHz),内置 520KB SRAM 并支持外置 PSRAM,非常适合物联网监控、无线识别等场景。

主要特性包括支持 UART/SPI/I2C 等接口,内置闪光灯,支持 TF 卡存储,以及内嵌 LwIP 和 FreeRTOS 系统。开发板引脚定义如下,接线时请务必核对。

环境配置
安装 Arduino IDE
前往官网下载并安装对应操作系统的 Arduino IDE。由于 ESP32 并非官方默认支持,需要手动添加开发板管理地址。
在 IDE 中打开 文件 > 首选项,在'附加开发板管理器网址'栏填入:
https://dl.espressif.com/dl/package_esp32_index.json
随后进入 工具 > 开发板 > 开发板管理器,搜索 ESP32 并安装 ESP32 Wrover Module 或相关包。
局域网实时预览
Arduino 库自带了 CameraWebServer 示例,这是最快上手的方式。
修改示例代码
- 打开 文件 > 示例 > ESP32 > Camera > CameraWebServer。
- 修改 WiFi SSID 和密码为你的网络信息。
- 确认摄像头型号宏定义。对于常见的 AI Thinker 版本,需取消注释
#define CAMERA_MODEL_AI_THINKER。
#include "esp_camera.h"
#include "WiFi.h"
// ... (省略部分标准头文件)
#define CAMERA_MODEL_AI_THINKER // Has PSRAM
const char* ssid = "YOUR_WIFI_SSID";
const char* password = ;
{
Serial.();
config;
config.pixel_format = PIXFORMAT_JPEG;
(()) {
config.frame_size = FRAMESIZE_UXGA;
config.jpeg_quality = ;
config.fb_count = ;
} {
config.frame_size = FRAMESIZE_SVGA;
config.jpeg_quality = ;
config.fb_count = ;
}
err = (&config);
(err != ESP_OK) {
Serial.(, err);
;
}
* s = ();
WiFi.(ssid, password);
(WiFi.() != WL_CONNECTED) {
();
Serial.();
}
();
Serial.();
Serial.(WiFi.());
Serial.();
}
{
();
}


