⚡Real Working Code — Copy & Ship
8 Use Cases, One SDK
Each screen is built with MediaSFU's headless SDK — same API, your custom UI.
Flutter & React code included.
🎙 Spaces
Live audio & video rooms — up to 3,000 participants
MediasfuWebinar
Live PreviewInteractive mockup
LIVE
Tech Talks🎧 1,247A
Alex
S
Sam
J
Jo
Listeners
M
L
Z
K
A
E
N
J
🎤
✋
💬
👋
Mic/CameraScreen ShareRecordingPollsBreakout RoomsTranslationSubtitles
Code
spaces_live_screen.dartDart
import 'package:mediasfu_sdk/mediasfu_sdk.dart';class SpaceLiveScreen extends StatefulWidget {final String roomId;final bool isHost;const SpaceLiveScreen({required this.roomId, this.isHost = false});@override State<SpaceLiveScreen> createState() => _SpaceLiveScreenState();}class _SpaceLiveScreenState extends State<SpaceLiveScreen> {final _sdkParams = ValueNotifier<MediasfuParameters?>(null);@overrideWidget build(BuildContext context) {return Stack(children: [// Headless SDK — handles all WebRTC, SFU, and signalingHeadlessMediasfuWidget(options: MediasfuWebinar(credentials: MediasfuCredentials(apiUserName: user, apiKey: key),createMediaSFURoomOptions: CreateRoomOptions(eventType: EventType.webinar,capacity: 3000,duration: 60,),connectOptions: ConnectMediaSFUOptions(joinRoom: true),returnUI: false,noUIPreJoinOptions: true,),onParamsUpdate: (params) => _sdkParams.value = params,),// Your custom UI on top — speakers, listeners, reactionsValueListenableBuilder<MediasfuParameters?>(valueListenable: _sdkParams,builder: (ctx, p, _) => p == null? const CircularProgressIndicator(): Column(children: [_buildSpeakerGrid(p),_buildListenerBar(p),_buildControlDock(p), // mic, camera, raise hand, leave]),),]);}void _toggleMic() {final p = _sdkParams.value!;clickAudio(ClickAudioOptions(parameters: p));}}
How it works: Twitter Spaces / Clubhouse-style live rooms. Speakers on stage, listeners in audience. Supports audio-only or video modes.
SDK Feature Matrix— What each vertical uses
| Feature | 🎙 | 🔨 | 💕 | 🛒 | 🎓 | 🎧 | 🎪 | 🍿 |
|---|---|---|---|---|---|---|---|---|
| Event Type | webinar | broadcast | webinar | broadcast | webinar | webinar | webinar | conference |
| Max Capacity | 3K | 500K | 3K | 500K | 3K | 3K | 3K | 3K |
| Video Grid | ✓ | ✓ | ✓ | — | ✓ | — | ✓ | ✓ |
| Screen Share | ✓ | — | — | ✓ | ✓ | — | ✓ | ✓ |
| Recording | ✓ | ✓ | — | — | ✓ | ✓ | ✓ | — |
| Polls | ✓ | — | — | — | ✓ | ✓ | ✓ | — |
| Breakout Rooms | ✓ | — | — | — | ✓ | — | ✓ | — |
| Translation | ✓ | ✓ | ✓ | — | ✓ | ✓ | ✓ | ✓ |
| Subtitles | ✓ | — | — | — | ✓ | ✓ | ✓ | ✓ |
| Live Chat | — | ✓ | — | ✓ | ✓ | ✓ | ✓ | ✓ |
| Reactions | ✓ | — | — | — | — | — | — | ✓ |
| Meeting Timer | — | — | ✓ | — | ✓ | ✓ | ✓ | — |
Build Any Live Experience
Same SDK powers all 8 verticals. Headless mode gives you full UI control.
50K free minutes to start.