RE: ESP32-CAM and live streaming to Youtube (and Twitch)

Original post: forum

Hi everyone,

I wanted to share my experience with setting up live streaming from an ESP32-CAM to YouTube. After some research and experimentation, I was able to create a functional prototype in just a few hours. I’ve made the code available for free on GitHub and would really appreciate feedback from the community.

Here’s a quick summary of the process:

  1. Hardware: I used an ESP32-WROVER-DEV board paired with an OV2640 camera module, though any ESP32-CAM board should work.
  2. Software: The project uses the esp-idf framework. I set up the environment in VSCode with the ESP-IDF extension.
  3. Server: For handling RTMP protocol and H.264 encoding, I used a server that can run on a Raspberry Pi, a local machine, or a Digital Ocean droplet. The server-side processing was done using FFmpeg and Node.js.

The detailed instructions and code are available in the GitHub repository.

This project didn’t take me months - just 4 hours to get a working prototype. I’m not a fan of gatekeeping or charging for information that should be freely accessible. I do hate attitude. We are working from the same publicly available sources tho. Let’s collaborate to improve this project and learn together!

I’m looking forward to hearing your thoughts and suggestions.

Best regards,
Tolacika

1 Like

For a simpler setup with much higher quality images, dispense with the ESP32-CAM and connect a decent camera directly to the server.

1 Like

Thank you, that's exactly what I was looking for, to be able to make a live show visible outside the local network. However, I would need help with the server-side implementation, be it local or in the cloud. I would really appreciate it

It can be both. I have tested on a PC on my local network, but it could work as long as the server has a public IP address or at least the ESP can reach the server. Don't expect too much quality tho...

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.