Skills Development RTSP to WebRTC Multi-Camera Streaming

RTSP to WebRTC Multi-Camera Streaming

v20260421
go2rtc-cameras
This utility enables multi-camera streaming by converting standard camera protocols (RTSP, RTMP, HTTP) into low-latency WebRTC streams using the go2rtc sidecar. It is essential for building real-time surveillance dashboards, live video monitoring systems, or integrating diverse IP cameras into a single web interface.
Get Skill
405 downloads
Overview

go2rtc Multi-Camera Streaming

Registers RTSP camera streams with SharpAI Aegis's go2rtc sidecar for low-latency WebRTC live view in the browser.

How It Works

Your Cameras (RTSP)          go2rtc (in Aegis)           Browser
───────────────────          ─────────────────           ───────
rtsp://cam1:554/stream ───►  /api/webrtc?src=cam1  ───► WebRTC Player
rtsp://cam2:554/stream ───►  /api/webrtc?src=cam2  ───► WebRTC Player
rtsp://cam3:554/stream ───►  /api/webrtc?src=cam3  ───► WebRTC Player

Supported Sources

go2rtc accepts any stream source:

  • rtsp:// — standard RTSP cameras
  • rtmp:// — RTMP streams
  • http:// — MJPEG or HLS streams
  • ffmpeg: — FFmpeg pipeline
  • exec: — custom command

Protocol

Skill → Aegis (stdout)

{"event": "ready", "streams": 3}
{"event": "live_stream", "camera_id": "front_door", "camera_name": "Front Door", "url": "rtsp://192.168.1.100:554/stream1"}
{"event": "live_stream", "camera_id": "backyard", "camera_name": "Backyard", "url": "rtsp://192.168.1.101:554/stream1"}

Aegis registers each stream with go2rtc via IPC:

  • go2rtc:add-stream → registers camera
  • go2rtc:connection-info → returns WebRTC URL for player

Setup

python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
Info
Category Development
Name go2rtc-cameras
Version v20260421
Size 2.22KB
Updated At 2026-04-28
Language