Main features
- Group video through a mediasoup selective forwarding unit
- Screen sharing, recording and picture-in-picture
- Chat with Markdown and emoji, and file sharing
- Collaborative whiteboard and rich text editor
- Lobby, room passwords and host protection
- JWT credentials and OpenID Connect login
- RTMP live streaming
- Speech recognition and optional ChatGPT and DeepSeek integration
- REST API, embeddable iframe and widget
- Slack, Discord and Mattermost integrations
- Interface translated into 133 languages
What MiroTalk SFU does
MiroTalk SFU is a browser meeting app built on mediasoup, a selective forwarding unit (SFU). Each participant sends one stream to the server, which forwards it to everyone else, so a meeting does not depend on every laptop uploading video to every other laptop. The MiroTalk documentation positions it for group meetings, classes and webinars, while its sibling MiroTalk P2P connects browsers directly and suits small calls.
Most of the P2P feature set carries over: screen sharing, recording, picture-in-picture, chat with Markdown and emoji, file sharing and a collaborative whiteboard. The SFU edition adds a lobby where hosts admit guests, a rich text editor that participants edit together, and RTMP streaming to platforms such as YouTube through FFmpeg. Speech recognition, ChatGPT and DeepSeek assistants and video AI avatars are optional extras. Developers can embed rooms with an iframe or a widget and control them through a REST API, and there are integrations for Slack, Discord and Mattermost.
Security and access
Media is routed through the mediasoup server you run, protected by standard WebRTC transport encryption; MiroTalk does not describe end-to-end encryption for SFU meetings. Access controls include room passwords, a lobby, a host protection mode that stops strangers from opening rooms, JWT credentials for API-created meetings, OpenID Connect login and spam mitigation. The AI features call OpenAI or DeepSeek, so prompts leave your server when you turn them on.
Self-hosting MiroTalk SFU
MiroTalk SFU is a single Node.js application with no database. You can run it with npm, with Docker Compose, or as a Cloudron app. The self-hosting guide targets Ubuntu 22.04 LTS (the README example uses 24.04) and needs Python 3 and build tools so that npm can compile mediasoup’s C++ worker; the current package declares Node.js 24 or newer. FFmpeg is only needed for RTMP streaming.
The app listens on TCP 3010 behind Nginx or Apache with a Let’s Encrypt certificate, and media uses a TCP and UDP port range, 40000 to 40100 by default. The documentation notes that about 100 ports support about 50 participants, so the range must grow with expected load. Configuration lives in a .env file and a config file. There is no documented hardware sizing beyond that, so plan capacity by testing on your own server.
Hosted version
The MiroTalk documentation points to MiroTalk Cloud, a hosted MiroTalk WEB platform that can be started for free. sfu.mirotalk.com is a public live demo rather than a supported service.
Limitations
Capacity depends on the media port range and server CPU, and the project gives no sizing table. MiroTalk is largely the work of one maintainer, and commercial licensing is handled through CodeCanyon rather than a company with a support organization. There are no native mobile apps and no breakout rooms in the documented features. The AI features rely on external services.
Who it suits
MiroTalk SFU fits individuals and small organizations that want a self-hosted meeting server with many features and a quick Docker or Node.js setup, without operating a database or several services. For larger organizations that need mobile apps or phone dial-in, Jitsi Meet is the more established choice.
License details
AGPL-3.0. Licenses with different terms are also sold for a one-time fee through CodeCanyon for those who cannot meet the AGPL conditions.
Technical details
Self-hosting needs
- Node.js
- FFmpeg (optional
- for RTMP)
Built with
- Node.js
- Express
- Socket.IO
- mediasoup
- JavaScript
GitHub topics
- collaboration
- file-sharing
- jitsi-alternative
- jitsi-meet
- live-streaming
- mediasoup
- mirotalk
- nodejs
- open-source
- real-time-communication
- rtmp
- screen-sharing
- self-hosted
- video-chat
Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.