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.

⚡ Zero-Code AI Agents🎤 Live Voice for Webinars

🎙 Spaces

Live audio & video rooms — up to 3,000 participants

MediasfuWebinareventType: webinarcapacity: 3,000
Live PreviewInteractive mockup
LIVE
Tech Talks🎧 1,247
A
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);
  @override  Widget build(BuildContext context) {    return Stack(children: [      // Headless SDK — handles all WebRTC, SFU, and signaling      HeadlessMediasfuWidget(        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, reactions      ValueListenableBuilder<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 Typewebinarbroadcastwebinarbroadcastwebinarwebinarwebinarconference
Max Capacity3K500K3K500K3K3K3K3K
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.