Add ESP32-S3 camera component selection and support (#1670)

Introduces a new esp32s3_camera implementation for ESP32-S3 boards using the esp_camera component, with conditional compilation and Kconfig options to select between esp_camera and esp_video. Updates board initialization code and config files to use the new camera class where appropriate, and adjusts build system and dependencies to support both camera components on ESP32-S3 and ESP32-P4 targets.
This commit is contained in:
Kevincoooool
2026-01-20 19:56:36 +08:00
committed by GitHub
parent 89674f8838
commit d5ec8f7081
13 changed files with 699 additions and 170 deletions

View File

@ -737,6 +737,31 @@ menu "Camera Configuration"
comment "Warning: Please read the help text before modifying these settings."
choice XIAOZHI_CAMERA_COMPONENT
prompt "Camera Component Selection"
default XIAOZHI_USE_ESP_VIDEO if IDF_TARGET_ESP32S3
default XIAOZHI_USE_ESP_VIDEO if IDF_TARGET_ESP32P4
help
Select the camera component to use.
ESP32-S3 can choose between esp_camera (legacy) or esp_video (new).
ESP32-P4 only supports esp_video.
config XIAOZHI_USE_ESP_CAMERA
bool "Use esp_camera (legacy component)"
depends on IDF_TARGET_ESP32S3
help
Use the legacy esp32-camera component.
This is the traditional camera driver for ESP32-S3.
config XIAOZHI_USE_ESP_VIDEO
bool "Use esp_video (new component)"
depends on IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32P4
help
Use the new esp_video component.
This component provides V4L2-like interface and is required for ESP32-P4.
On ESP32-S3, it provides additional features but may require different camera configuration.
endchoice
config XIAOZHI_CAMERA_ALLOW_JPEG_INPUT
bool "Allow JPEG Input"
default n