WEBRTC GRATUITO - SFU - Video simples, seguras y escalables en tiempo real con soporte para una resolución de hasta 8k y 60 fps. Es compatible con todos los principales navegadores y plataformas.
Explore Mirotalk SFU

Únase a nuestra comunidad para preguntas, discusiones y apoyo en Discord
100% Free - Open Source (AGPLv3) - Self Hosted y PWA! Puede directly join a room usando un enlace como:
https://sfu.mirotalk.com/join?room=test&roompassword=0&name=mirotalksfu&audio=0&video=0&screen=0¬ify=0
| Parámetros | Tipo | Descripción |
|---|---|---|
| habitación | cadena | ID de habitación |
| palabra de cuarto de cuarto | cadena/booleano | Contraseña de habitación |
| nombre | cadena | Nombre de usuario |
| audio | booleano | Transmisión de audio |
| video | booleano | Transmisión de video |
| pantalla | booleano | Transmisión de pantalla |
| notificar | booleano | Mensaje de bienvenida |
| esconder | booleano | Me esconde |
| simbólico | cadena | Jwt |
Cuando host.protected o host.user_auth está habilitado, el host/usuarios puede proporcionar un token válido para unir directamente la habitación como se especifica en el archivo app/src/config.js .
| Parámetros | Valor | Descripción |
|---|---|---|
host.protected | true si la protección está habilitada, false si no (falso predeterminado) | Requiere que el host proporcione un nombre de usuario y contraseña válidos durante la inicialización de la habitación. |
host.user_auth | true Si se requiere autenticación del usuario, false si no (falso predeterminado). | Determina si se requiere autenticación del host. |
host.users | Json Array con objetos de usuario: {"username": "username", "password": "password"} | Lista de usuarios de host válidos con sus credenciales. |
Ejemplo:
host : {
protected : true ,
user_auth : true ,
users : [
{
username : 'username' ,
password : 'password' ,
} ,
{
username : 'username2' ,
password : 'password2' ,
} ,
//...
] ,
} , Antes de ejecutar Mirotalk SFU, asegúrese de tener Node.js y todos los requisitos instalados. Este proyecto ha sido probado con el nodo versión 18.X.
Requisitos de instalación de ejemplo para Ubuntu 24.04 LTS
# Gcc g++ make
$ apt-get update
$ apt-get install -y build-essential
# Python 3.8 and pip
$ DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata
$ apt install -y software-properties-common
$ add-apt-repository -y ppa:deadsnakes/ppa
$ apt update
$ apt install -y python3.8 python3-pip
# FFmpeg
$ apt install -y ffmpeg
Instale NodeJS 18.X y npm usando Node Version Manager
# Clone this repo
$ git clone https://github.com/miroslavpejic85/mirotalksfu.git
# Go to to dir mirotalksfu
$ cd mirotalksfu
# Copy app/src/config.template.js in app/src/config.js and edit it if needed
$ cp app/src/config.template.js app/src/config.js
# Install dependencies - be patient, the first time will take a few minutes, in the meantime have a good coffee ;)
$ npm install
# Start the server
$ npm start
# If you want to start the server on a different port than the default use an env var
$ PORT=3011 npm start:3011 si el puerto predeterminado se ha cambiado en su navegador.[!NOTA]
Para ejecutar
MiroTalk SFUen unWindows operating system, puede seguir las instrucciones proporcionadas en esta documentación.

# Clone this repo
$ git clone https://github.com/miroslavpejic85/mirotalksfu.git
# Go to to dir mirotalksfu
$ cd mirotalksfu
# Copy app/src/config.template.js in app/src/config.js IMPORTANT (edit it according to your needs)
$ cp app/src/config.template.js app/src/config.js
# Copy docker-compose.template.yml in docker-compose.yml and edit it if needed
$ cp docker-compose.template.yml docker-compose.yml
# (Optional) Get official image from Docker Hub
$ docker-compose pull
# Create and start containers
$ docker-compose up # -d
# To stop and remove resources
$ docker-compose down
Para incrustar una reunión dentro de your service or app utilizando un iframe, puede usar el siguiente código:
< iframe
allow =" camera; microphone; display-capture; fullscreen; clipboard-read; clipboard-write; web-share; autoplay "
src =" https://sfu.mirotalk.com/newroom "
style =" height: 100vh; width: 100vw; border: 0px; "
> </ iframe > Ngrok/HTTPS: puede iniciar una conferencia de video directamente desde su PC local y hacerlo accesible desde cualquier dispositivo fuera de su red siguiendo estas instrucciones, o exponerla directamente en HTTPS.
Self-hosting: para self-hosting MiroTalk SFU en su propio servidor dedicado, consulte esta guía completa. Le proporcionará todas las instrucciones necesarias para que su instancia de Mirotalk SFU funcione sin problemas.
Rest API: La documentación de la API usa Swagger en https: // localhost: 3010/API/v1/Docs o verificarlo en vivo aquí.
# The response will give you the total of rooms and users.
$ curl -X GET " http://localhost:3010/api/v1/stats " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json "
$ curl -X GET " https://sfu.mirotalk.com/api/v1/stats " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json "
# The response will give you the active meetings (default disabled).
$ curl -X GET " http://localhost:3010/api/v1/meetings " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json "
$ curl -X GET " https://sfu.mirotalk.com/api/v1/meetings " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json "
# The response will give you a entrypoint / Room URL for your meeting.
$ curl -X POST " http://localhost:3010/api/v1/meeting " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json "
$ curl -X POST " https://sfu.mirotalk.com/api/v1/meeting " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json "
# The response will give you a entrypoint / URL for the direct join to the meeting.
$ curl -X POST " http://localhost:3010/api/v1/join " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json " --data ' {"room":"test","roomPassword":"false","name":"mirotalksfu","audio":"false","video":"false","screen":"false","notify":"false"} '
$ curl -X POST " https://sfu.mirotalk.com/api/v1/join " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json " --data ' {"room":"test","roomPassword":"false","name":"mirotalksfu","audio":"false","video":"false","screen":"false","notify":"false"} '
# The response will give you a entrypoint / URL for the direct join to the meeting with a token.
$ curl -X POST " http://localhost:3010/api/v1/join " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json " --data ' {"room":"test","roomPassword":"false","name":"mirotalksfu","audio":"false","video":"false","screen":"false","notify":"false","token":{"username":"username","password":"password","presenter":"true", "expire":"1h"}} '
$ curl -X POST " https://sfu.mirotalk.com/api/v1/join " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json " --data ' {"room":"test","roomPassword":"false","name":"mirotalksfu","audio":"false","video":"false","screen":"false","notify":"false","token":{"username":"username","password":"password","presenter":"true", "expire":"1h"}} '
# The response will give you a valid token for a meeting (default diabled)
$ curl -X POST " http://localhost:3010/api/v1/token " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json " --data ' {"username":"username","password":"password","presenter":"true", "expire":"1h"} '
$ curl -X POST " https://sfu.mirotalk.com/api/v1/token " -H " authorization: mirotalksfu_default_secret " -H " Content-Type: application/json " --data ' {"username":"username","password":"password","presenter":"true", "expire":"1h"} '
Esta aplicación se está ejecutando para demonstration purposes en Hetzner, uno de the best proveedores de nubes y servidores raíz dedicados.
Use mi enlace personal para recibir €20 IN CLOUD CREDITS .

Experiencia también alojamiento web alemán de primer nivel: servidores dedicados, VPS y alojamiento web a unbeatable prices . Confiable, seguro y respaldado por soporte 24/7. Explore ahora aquí
Para configurar su propia instancia de MiroTalk SFU en un servidor en la nube dedicado, consulte nuestra documentación integral de auto-anfitrión. Esta guía lo guiará a través del proceso paso a paso, asegurando una implementación suave y exitosa.

https://sfu.mirotalk.com

npm run lint
Mirotalk SFU es gratuito y de código abierto bajo los términos de AGPLV3 (GNU Affero General Public License v3.0). respect the license conditions , en particular modifications need to be free as well and made available to the public . Obtenga una descripción general rápida de la licencia en Elija una licencia de código abierto.
Para obtener una licencia de Mirotalk SFU con términos diferentes del AGPLV3, puede hacer su compra convenientemente en CodeCanyon. Esto le permite adaptar las condiciones de licencia para adaptarse mejor a sus requisitos específicos.
¿Encuentra indispensable Mirotalk SFU para sus necesidades? Únase a nosotros para apoyar este proyecto transformador convirtiéndose en un patrocinador o patrocinador. Al hacerlo, su logotipo no solo aparecerá de manera prominente aquí, sino que también impulsará el crecimiento y la sostenibilidad de Mirotalk SFU. Su apoyo es vital para garantizar que esta valiosa plataforma continúe prosperando y permanezca accesible para todos. Haga un impacto: ¡regrese a Mirotalk SFU hoy y sea parte de este emocionante viaje!
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
![]() | ![]() |
![]() |

Intente también Mirotalk P2P peer to peer de video conferencias en tiempo real, optimizadas para grupos pequeños. Unlimited time, unlimited concurrent rooms cada una con 5-8 participantes.
Intente también Mirotalk C2C peer to peer , optimizado para CAM 2 CAM. Unlimited time, unlimited concurrent rooms cada una con 2 participantes.
Intente también Mirotalk Bro Live broadcast (Peer to Peer) Video, audio y transmisión de pantalla a todos los usuarios conectados (espectadores). Unlimited time, unlimited concurrent rooms cada una con una transmisión y muchos espectadores.
Intente también Mirotalk Web una plataforma que permita la administración de un unlimited number of users . Cada usuario debe registrarse con su correo electrónico, nombre de usuario y contraseña, después de lo cual obtiene acceso a su personal dashboard . Dentro del tablero, los usuarios pueden manage their rooms and schedule meetings utilizando la versión deseada de Mirotalk en una fecha y hora específicas. Las invitaciones a estas reuniones se pueden enviar por correo electrónico, compartir a través del navegador web o enviar a través de SMS.
Este proyecto se prueba con Browserstack.