Files
ros-raspbot-v2/webrtc_streamer/README.md
T
m5p3nc3r ef78f19e72 Add image and streaming from USB camera
Plus a little freshen up of the readme's
2026-05-07 16:38:36 +00:00

41 lines
1.0 KiB
Markdown

# WebRTC Streamer
ROS 2 node that subscribes to a camera image topic, encodes frames as VP8 via GStreamer, and streams them to browsers over WebRTC.
A single encode pass is shared across all connected clients.
---
## Architecture
```
/camera/image_raw → webrtc_streamer → WebSocket :8443 → Browser
(ROS 2 topic) (VP8 encode) (signaling)
```
---
## Subscribed topics
| Topic | Type | Description |
|---|---|---|
| `IMAGE_TOPIC` | `sensor_msgs/Image` | Camera frames to encode and stream |
---
## Environment variables
| Variable | Default | Description |
|---|---|---|
| `IMAGE_TOPIC` | `/camera/image_raw` | ROS 2 topic to subscribe to |
| `PORT` | `8443` | WebSocket signaling port |
| `BITRATE` | `2000000` | VP8 target bitrate in bps |
---
## Connecting a browser
Open `client.html` (located in this directory) in any browser that can reach the host. Enter the server hostname or IP and click **Connect**.
The client connects to `ws://<host>:8443` for WebRTC signaling. No TURN server is required for LAN use.