Skip to content

Native WebRTC low-latency P2P video streaming on Raspberry Pi and NVIDIA Jetson with both hardware and software encoding support.

License

Notifications You must be signed in to change notification settings

TzuHuanTai/RaspberryPi-WebRTC

Repository files navigation

Pi 4b latency demo

Raspberry Pi WebRTC

Turn Raspberry Pi or NVIDIA Jetson into a low-latency ~200ms WebRTC streaming platform.

WebRTC Version Download Release License Apache


Requirements

  • Raspberry Pi (Zero/3/4/5) or NVIDIA Jetson (Nano/NX/Orin)
  • CSI or USB camera (supports libcamera, libargus or V4L2)

Quick Start for Pi

Check out the tutorial video or follow these steps.

1. Flash Raspberry Pi OS

Use Raspberry Pi Imager to flash Lite OS to SD card.

2. Install Dependencies

sudo apt update
sudo apt install libcamera0.5 libmosquitto1 pulseaudio libavformat59 libswscale6 libprotobuf32

3. Download Binary

Get the latest release binary .

wget https://github.com/TzuHuanTai/RaspberryPi-WebRTC/releases/latest/download/pi-webrtc-v1.2.0_raspios-bookworm-arm64.tar.gz
tar -xzf pi-webrtc-v1.2.0_raspios-bookworm-arm64.tar.gz

4. MQTT Signaling

Use HiveMQ, EMQX, or a self-hosted broker.

Tip

MQTT lets your Pi camera and client exchange WebRTC connection info. WHEP doesn’t need a broker but requires a public hostname.

Run the App

preview_demo

  • Open picamera-web, add MQTT settings, and create a UID.
  • Run the command on your Pi:
    ./pi-webrtc \
        --camera=libcamera:0 \
        --fps=30 \
        --width=1280 \
        --height=960 \
        --use-mqtt \
        --mqtt-host=your.mqtt.cloud \
        --mqtt-port=8883 \
        --mqtt-username=hakunamatata \
        --mqtt-password=Wonderful \
        --uid=your-custom-uid \
        --no-audio \
        --hw-accel # Only Pi Zero 2W, 3B, 4B support hw encoding

Important

Remove --hw-accel for Pi 5 or others without hardware encoder.

About

Native WebRTC low-latency P2P video streaming on Raspberry Pi and NVIDIA Jetson with both hardware and software encoding support.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Contributors 3

  •  
  •  
  •