jacksonliam / mjpg-streamer

Fork of http://sourceforge.net/projects/mjpg-streamer/
2.96k stars 1.21k forks source link

Buffer too small #375

Closed thomas-pegot closed 1 year ago

thomas-pegot commented 1 year ago

I am using esp32-camera module to send through http to orange pi zero (dietpy)

Command: mjpg_streamer -i "input_http.so -H 192.168.12 -p 81" -o "output_http.so -p 8082

Output :

: Success
Buffer too small
: Success
Buffer too small
...

The code related here

So the code for sending jpg chunk comes from espressif/esp32-camera and I took a look here : https://github.com/thomas-pegot/esp32-camera/blob/77f763038e76160f0a78a0f484d4d9788f9d915b/conversions/to_jpg.cpp#L212

Apparently the buffer is 128*1024 while the max buffer in mjpg-streamer is BUFFER_SIZE 1024 * 256 so it should be good enough.

jacksonliam commented 1 year ago

This input plugin is only really made for talking to other instances of mjpg streamer. The esp would have to send the data including the content length header exactly as mjpg streamer does.

thomas-pegot commented 1 year ago

The content sent is this : https://github.com/thomas-pegot/camera_web_server/blob/a30dacecc9ce6440874142d6b8ab1d6d26ffe6b4/src/app_httpd.c#L64

I can change variable such that it's exactly what mjpg-streamer is expecting.

But maybe it's better to look at motioneye drom dietpi instead. Will see thanks