ESP32-S3 capacity to relay 1080P/2K video

Crazy electron
Posts: 15
Joined: Wed Feb 01, 2023 3:25 am

ESP32-S3 capacity to relay 1080P/2K video

Postby Crazy electron » Mon Jun 10, 2024 1:38 pm

Hello! Greetings!

I'm working on a project where I have ESP32-S3 connected to my RPi (Running HAAS OS). ESP32-S3 is programmed thru ESP-HOME inside HAAS OS Admin panel.

I need to have a high quality video like 1080P to be streamed as well. For this I'm using Realtek IoT AMB82. Now, I plan to send this video to ESP-32 via either I2C/SPI or UART and I want the ESP32 to stream it to RPi. All this needs to be live streamed, meaning I don't need to store that video on any device.

So, my question is:
1. Is it possible to send such video from AMB 82 to ESP32-S3 via SPI or UART?
2. Can ESP32-S3 relay such received video to RPi via wifi?

Any leads or pointers to links would be much helpful and heartly appreciated.

Thanks and regards

eriksl
Posts: 116
Joined: Thu Dec 14, 2023 3:23 pm
Location: Netherlands

Re: ESP32-S3 capacity to relay 1080P/2K video

Postby eriksl » Mon Jun 10, 2024 3:03 pm

Very important if it's raw video or compressed video. I assume raw RGB24 here (8 bits per channel). For 1080p25 you'd need this bandwidth: 24 bits per pixel times 1920 pixels per row times 1080 pixels per column times 25 refresh rate.

24 * 1920 * 1080 * 25 = 1244160000 bps = 1244160 kbps = 1244 Mbps = 1.244 Gbps.

The max speed of SPI is 80 Mhz. You may be able to used quad mode, you'll get 320 Mbps. You see the mismatch?

Crazy electron
Posts: 15
Joined: Wed Feb 01, 2023 3:25 am

Re: ESP32-S3 capacity to relay 1080P/2K video

Postby Crazy electron » Mon Jun 10, 2024 5:25 pm

So what would be the best way to do this? any leads please?

Thanks in advance

Linetkux Wang
Posts: 9
Joined: Sun Jun 16, 2024 2:25 pm

Re: ESP32-S3 capacity to relay 1080P/2K video

Postby Linetkux Wang » Tue Jun 18, 2024 2:52 pm

It seems AMB82 has H264/H265 support, so you can make it possible for 1080P/30FPS with much lower bitrates. UART is much simpler that SPI, and ESP32S3 UART supports up to 5Mbps. Also you may limit the bitrates on AMB82 side, and I beleive that AMB82 has such kind of API. So the conclusion is that:
1. Limit bitrates on AMB82 side to 4Mbps
2. Configure UART to 5Mbps (margin is 1Mbps compared to 4Mbps)
3. ESP32S3 receive the video stream through UART and send it through Wi-Fi (AP mode?)
4. RPI side only decode the video frame with whole information needed, such as I frame/P frame. AMB82 side should have such info, just send it to RPI.

Who is online

Users browsing this forum: Bing [Bot] and 367 guests