Introduction

Welcome to the Stream Video ESP32 SDK — an embedded SDK written in C that lets you add real-time video, audio, and signaling to ESP32 applications using Stream's SFU (Selective Forwarding Unit). You can publish H.264 video and Opus audio to a Stream call. The SDK currently supports publishing only; subscribing to remote participants' audio/video is not yet supported. Our goal is to bring video calling and livestreaming to resource-constrained embedded devices with an API that fits the ESP-IDF ecosystem.

Supported hardware

  • ESP32-S3 WROOM — Supported (example provided, default board).
  • XIAO ESP32-S3 Sense — Supported (selectable in menuconfig).

Requirements

  • ESP-IDF v5.4 or higher.
  • WiFi connectivity for signaling and media.

Documentation

DocumentDescription
InstallationAdd the SDK via Component Manager, dependencies, ESP-IDF setup
QuickstartApplication flow, minimal example, build and run
API ReferenceInit, join/leave, error handling, types
Example configurationToken service URL, call type/call ID, flow in main.c
SDK configurationAll SDK Kconfig options (core, ICE, board, video, audio, debug)
Client authApp fetches token, SDK accepts auth_data; token service format

If you feel like anything is missing or could be improved, please contact us. We're happy to help.