This guide demonstrates how to stream JPEG images over a WebRTC data channel using ESP32 hardware.
Device | Image |
---|---|
XIAO ESP32S3 Sense | ![]() |
ESP32-EYE | ![]() |
M5Camera | ![]() |
Bash
$ git clone -b v5.2.2 https://github.com/espressif/esp-idf.git
$ cd esp-idf
$ source install.sh
$ source export.sh
Bash
$ git clone https://github.com/sepfy/libpeer
$ cd libpeer/examples/esp32
Bash
$ idf.py menuconfig
# Choose Example Connection Configuration and change the SSID and password
Bash
$ idf.py build
Bash
$ idf.py flash
Monitor the serial port output:
Plaintext
I (10813) Camera: Camera Task Started
I (10813) webrtc: peer_signaling_task started
I (10813) webrtc: peer_connection_task started
I (10823) webrtc: [APP] Free memory: 3882160 bytes
I (10823) webrtc: open https://sepfy.github.io/webrtc?deviceId=esp32-xxxxxxxxxxxx
Open your browser and navigate to the URL provided in the serial port output:
To create a project from this example, run:
idf.py create-project-from-example "sepfy/libpeer=0.0.2:esp32"