You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
2.0 KiB
82 lines
2.0 KiB
# MJPEG Multiclient Streaming Server
|
|
|
|
## With latest ESP-CAM drivers
|
|
Full story: https://www.hackster.io/anatoli-arkhipenko/multi-client-mjpeg-streaming-from-esp32-47768f
|
|
|
|
### Procedure:
|
|
|
|
1. Download latest ZIP file from https://github.com/espressif/esp32-camera.git into the esp32-cam subfolder
|
|
|
|
2. unzip using `unzip -j esp32-cam-master.zip` command. This will place all files in the same folder
|
|
|
|
|
|
|
|
**NOTE:** please observe the `-j` flag: the sketch assumes all files are in the same folder.
|
|
|
|
|
|
|
|
In **esp32-cam.ino** sketch select your camera pin assignment.
|
|
|
|
The choices are:
|
|
|
|
- CAMERA_MODEL_WROVER_KIT
|
|
|
|
- CAMERA_MODEL_ESP_EYE
|
|
|
|
- CAMERA_MODEL_M5STACK_PSRAM
|
|
|
|
- CAMERA_MODEL_M5STACK_WIDE
|
|
|
|
- CAMERA_MODEL_AI_THINKER
|
|
|
|
|
|
|
|
Compile the **esp32-cam.ino** sketch using the following settings:
|
|
|
|
- ESP32 Dev Module
|
|
- CPU Freq: 240
|
|
- Flash Freq: 80
|
|
- Flash mode: QIO
|
|
- Flash Size: 4Mb
|
|
- Partition: Minimal SPIFFS (or any other that would fit the sketch)
|
|
- PSRAM: Enabled
|
|
|
|
|
|
|
|
### Results:
|
|
|
|
I was able to run multiple browser windows, multiple VLC windows and connect multiple Blynk video widgets (max: 10) to ESP-EYE chip. The delay on the browser window was almost unnoticeable. In VLC you notice a 1 second delay probably due to buffering. Blynk performance all depends on the phone, so no comments there.
|
|
|
|
This is incredible considering the size of this thing! The camera on ESP-EYE is actually quite good.
|
|
|
|
### Enjoy!
|
|
|
|
|
|
|
|
------
|
|
|
|
##### Other repositories that may be of interest
|
|
|
|
###### ESP32 MJPEG streaming server servicing a single client:
|
|
|
|
https://github.com/arkhipenko/esp32-cam-mjpeg
|
|
|
|
|
|
|
|
###### ESP32 MJPEG streaming server servicing multiple clients (FreeRTOS based):
|
|
|
|
https://github.com/arkhipenko/esp32-cam-mjpeg-multiclient
|
|
|
|
|
|
|
|
###### ESP32 MJPEG streaming server servicing multiple clients (FreeRTOS based) with the latest camera drivers from espressif.
|
|
|
|
https://github.com/arkhipenko/esp32-mjpeg-multiclient-espcam-drivers
|
|
|
|
|
|
|
|
###### Cooperative multitasking library:
|
|
|
|
https://github.com/arkhipenko/TaskScheduler
|
|
|