Would like to use ESP-NOW (instead of local router) to stream video from an ESP32-CAM Ai thinker camera board.
If anyone could indicate a link that would be great.
Thank you in advance.
I haven’t looked into this to any extent but I don’t believe that is possible. ESP-NOW is a protocol. So is RTSP (Real Time Streaming Protocol). MPEG and MJPEG are other protocols. You are asking to use one protocol over another prototype which doesn’t make sense.
what are you actually trying to do? Maybe we could suggest another solution. Maybe what you want is an RTSP server for ESP32? That might be a little processor intensive. Generally you have a video feed to a high power RTSP server which can feed multiple clients.
Thank you, Steve, for answering.
What I would like is to use a ESP32-CAM as a video stream server to enable android to watch the stream.
What I do not want is to be forced to use the local router.
I don’t think it is possible to use ESP-NOW for that purpose.
If you don’t want to connect to a router, you can use your video streaming code but set the ESP32-CAM as an access point. This way, you can connect your smartphone to the ESP32-CAM network and watch the video stream.
I hope this helps.
As Sara said.
One of the first examples for the ESP32-CAM is as a streaming server via your router. It’s quite easy to modify that code so that it doesn’t connect to a router. All you do is change it to access point mode, set a static IP and go.
Thank you very much for answering. I tried the “access point mode” with the example and it works a treat!
Now I need to merge, as you suggested, the Video stream in Access point mode instead of server mode..
Thank you again.
Here’s the video streaming example in access point mode: https://gist.github.com/RuiSantosdotme/d38d2b9cc5eef63862ccf4d9e8764e20
I hope this helps.
The sketch you pointed to came back with errors.
- camera_pins.h: No such file or directory
so as I am using AIThinker cam I did add:
#define PWDN_GPIO_NUM 32
#define RESET_GPIO_NUM -1
#define XCLK_GPIO_NUM 0
#define SIOD_GPIO_NUM 26
#define SIOC_GPIO_NUM 27
#define Y9_GPIO_NUM 35
#define Y8_GPIO_NUM 34
#define Y7_GPIO_NUM 39
#define Y6_GPIO_NUM 36
#define Y5_GPIO_NUM 21
#define Y4_GPIO_NUM 19
#define Y3_GPIO_NUM 18
#define Y2_GPIO_NUM 5
#define VSYNC_GPIO_NUM 25
#define HREF_GPIO_NUM 23
#define PCLK_GPIO_NUM 22
And removed the offending line: #include “camera_pins.h”
Now another error: undefined reference to `startCameraServer()’
Not sure why..
Thank you Sara.
You need the other files that come with the example.
In your Arduino IDE, go to File > Examples > ESP32 > Camera > CameraWebSeever
It should open a an example with several files (you can see several tabs in the Arduino window). You need all those files to compile the code.
Replace the CameraWebServer.ino file with the code that I’ve sent you and it should compile just fine.
it **COMPILED** Yay!! Thank you very much Sara. :-)..
I’ll try to upload the code when back where the AITHINKER esp32 cam board is..
(I hope the ps ram is enable on this board?)
What is the best quality jpeg_quality = ?
is the lowest number the best quality?