Step-by-step guides to start streaming with WAVE. Choose your protocol and follow along. All examples use real API endpoints and production-ready code.
Make sure you have these prerequisites ready
Create and start your first live stream in 5 minutes with step-by-step instructions
// Create your first stream
const stream = await wave.streams.create({
title: "My First Stream",
protocol: "auto"
});
console.log(stream.ingest.rtmpUrl);
console.log(stream.playback.hlsUrl);Ultra-low latency streaming with WebRTC from browser or encoder
// WebRTC WHIP ingest
const pc = new RTCPeerConnection();
const stream = await navigator.mediaDevices
.getUserMedia({ video: true, audio: true });
stream.getTracks().forEach(t => pc.addTrack(t, stream));
const offer = await pc.createOffer();
await pc.setLocalDescription(offer);
const response = await fetch(whipEndpoint, {
method: 'POST',
headers: { 'Content-Type': 'application/sdp' },
body: offer.sdp
});Reliable, low-latency streaming with Secure Reliable Transport
Traditional RTMP streaming from OBS, vMix, or any encoder
Generate API keys and authenticate your applications securely
Access real-time analytics and viewer metrics via API
Receive events when streams start, end, or encounter issues
Use our TypeScript, Python, or Go SDKs for rapid integration
Stream directly from browser using MediaRecorder API
Build streaming apps for iOS and Android with React Native
Configure multiple ingest protocols for redundancy
Enable automatic recording and DVR functionality
Build a Twitch-like platform with chat, donations, and VOD
Host webinars and conferences with multi-speaker support
Live sports with instant replay and multi-camera
Interactive classes with screen sharing and recording
Create your free account and stream in under 5 minutes