I don't have the fancy board with 8 MB of PSRAM. I've tried increasing the resolution of the camera, but it runs out of memory. I don't know enough about camera modules or digital imaging to do this, but I'm wondering if maybe the camera could be put into a high-res mode and then capture only parts of a still image and then leave it to the client's web browser to put together.
If I remember correctly, the OV2640 can capture something like 1600x1200, but the ESP32 doesn't have the memory to keep the whole frame in memory. So instead, capture the 800x600 upper left-quadrant, send it to the client, capture the 800x600 upper-right quadrant, send it to the client, and repeat for the lower-left and lower-right quarters of the frame. The client browser then gets four individual JPGs and just displays them in a 2x2 table.
There would probably be a ton of screen-tearing type artifacts when the frame contains motion, but for low-motion scenes it would at least enable full use of the camera's capabilities.
I don't have the fancy board with 8 MB of PSRAM. I've tried increasing the resolution of the camera, but it runs out of memory. I don't know enough about camera modules or digital imaging to do this, but I'm wondering if maybe the camera could be put into a high-res mode and then capture only parts of a still image and then leave it to the client's web browser to put together.
If I remember correctly, the OV2640 can capture something like 1600x1200, but the ESP32 doesn't have the memory to keep the whole frame in memory. So instead, capture the 800x600 upper left-quadrant, send it to the client, capture the 800x600 upper-right quadrant, send it to the client, and repeat for the lower-left and lower-right quarters of the frame. The client browser then gets four individual JPGs and just displays them in a 2x2 table.
There would probably be a ton of screen-tearing type artifacts when the frame contains motion, but for low-motion scenes it would at least enable full use of the camera's capabilities.
Just an idea.