swapBM
Camera off
Tap Start to go live locallySwitching camera or mic while live replaces the track immediately.
Browsers cannot publish classic RTMP directly. Prefer a WHIP endpoint (Cloudflare Stream, MediaMTX, etc.). Keys are stored only on this device. Never claim live until the ingest accepts the session.
1:1 WebRTC call using public STUN. Share the invite text with the other person. For production multi-party, connect a signaling server later.
Uses Web Audio on your mic stream. Monitoring routes processed audio to speakers/headphones — use headphones to avoid feedback.
Browser engine works offline with no install. Qwen3-TTS (Apache-2.0) needs a local server — see services/qwen-tts-setup.md. MediaMTX for WHIP: docker compose -f services/docker-compose.yml up -d then WHIP URL http://localhost:8889/swapbm/whip.
Uses the Web Speech API (Chrome/Edge/Safari). Audio stays on device.
True cinematic live face swap needs a local NVIDIA/AMD GPU pipeline (not the browser alone). Use Deep-Live-Cam, FaceFusion, or StreamingSwap as the bridge; swapBM routes studio video to/from it and publishes via WHIP/OBS.