streaming-webrtc is a Vite-based example suite for validating and learning Red5 Pro WebRTC SDK workflows.
This repository serves two goals:
- Product validation - a broad test matrix for Red5 SDK + Server/Stream Manager scenarios.
- Developer guidance - concrete reference implementations showing how each flow is assembled.
- WHIP and WHEP examples (publish, subscribe, and two-way)
- Legacy RTCPublisher/RTCSubscriber examples
- Stream Manager workflows (transcoder, mixer, live seek, proxy tests)
- Feature-focused examples (data channel, AMF, reconnection, mute, media swap, castLabs, etc.)
- Node.js + npm
- A reachable Red5 Pro deployment (local or remote)
- HTTPS/TLS for most WebRTC publish scenarios outside
localhost
npm install
npm run devOpen the app in your browser (Vite default: http://localhost:5173), then configure Settings (at minimum):
HostStream Name(and any example-specific fields)Use Stream Manager+ admin credentials for Stream Manager examples
npm run dev- local development servernpm run build- type-check + production buildnpm run preview- preview production buildnpm run lint- lintsrc/**/*.tsnpm run format- formatsrcwith Prettier
These links point to each example directory root under src/examples/.
- whip-basic
- whip-amf
- whip-audio-constraints
- whip-codec-preference
- whip-connection-params
- whip-data-channel
- whip-live-encoding
- whip-media-source-swap
- whip-mute-api
- whip-remote-call
- whip-resiliency
- whip-screenshare
- whip-social-pusher
- whip-supported-resolutions
- rtc-publisher
- whep-basic
- whep-amf
- whep-audio-playback
- whep-codec-preference
- whep-connection-params
- whep-data-channel
- whep-interstitial
- whep-manual-stream
- whep-mute-api
- whep-reconnect
- whep-remote-call
- whep-renegotiation
- whep-standby
- whep-switch-streams
- rtc-subscriber
- brew-mixer
- whep-live-seek
- transcoder-form-only
- transcoder-form-and-publish
- transcoder-form-publish-amf
These are root-level HTML pages used for Stream Manager automated tests: