Skip to content

πŸ† WebRTC - SFU - Secure, Simple, and Scalable Real-Time Video Conferences Up to 4k, compatible with all browsers and platforms.

License

Notifications You must be signed in to change notification settings

bonheurswp/mirotalksfu

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MiroTalk SFU

Author License: AGPLv3 PayPal Digital Ocean Code style: prettier

Powered by WebRTC and SFU integrated server.

Open the app with the following supported browsers and many more.

Foo


mirotalksfu

Features

  • Is 100% Free - Open Source - Self Hosted
  • No download, plug-in or login required, entirely browser-based
  • Unlimited number of conference rooms and users, without call time limitation
  • Desktop and Mobile compatible
  • Optimized Room URL Sharing (share it to your participants, wait for them to join)
  • Possibility to Lock/Unlock the Room for the meeting
  • Webcam Streaming up to 4K quality (Front - Rear for mobile)
  • Echo cancellation and noise suppression that makes your audio crystal clear
  • Screen Sharing to present documents, slides, and more ...
  • File Sharing, share any files to your participants in the room
  • Chat with Emoji Picker to show you feeling and the possibility to Save the conversations
  • Advance collaborative whiteboard for the teachers
  • Select Microphone - Speaker and Video source
  • Recording your Screen, Audio, or Video
  • Share any YouTube video in real-time to your participants
  • Full-Screen Mode on mouse click on the Video element
  • Supports REST API (Application Programming Interface)

DigitalOcean

This application is running just for demonstration purposes on DigitalOcean droplet Ubuntu 20.04 (LTS) x64 [1 vCPU - 1GB Ram], with Ngnix and Let's Encrypt.

If you want to deploy a MiroTalk SFU instance on your dedicated droplet, or for other needs, don't hesitate to contact me at [email protected]

DigitalOcean Referral Badge

Live Demo

Live demo

mirotalksfu-qr

Run it locally

  • You will need to have NodeJS installed, this project has been tested with Node version 12.X and 14.X, python3-pip DEB package, build-essential DEB package and python version >= 3.6 with PIP.
  • The requirements can also be found here.
# 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
$ npm install
# Start the server
$ npm start

Docker

# 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
# Copy docker-compose.template.yml in docker-compose.yml and edit it if needed
$ cp docker-compose.template.yml docker-compose.yml
# Build or rebuild services
$ docker-compose build
# Create and start containers
$ docker-compose up # -d
# Stop and remove resources
$ docker-compose down

API

# 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.org/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","name":"mirotalksfu","audio":"0","video":"0"}'
$ curl -X POST "https://sfu.mirotalk.org/api/v1/join" -H "authorization: mirotalksfu_default_secret" -H "Content-Type: application/json" --data '{"room":"test","name":"mirotalksfu","audio":"0","video":"0"}'

Direct Join

Notes

  • Run the project on a Linux or Mac system as the mediasoup installation could have issues on Windows.

Credits

Contributing

  • Contributions are welcome and greatly appreciated!
  • Just run before npm run lint

License

AGPLv3


MiroTalk P2P

You can also try MiroTalk P2P, The difference between the two projects you can found here.

About

πŸ† WebRTC - SFU - Secure, Simple, and Scalable Real-Time Video Conferences Up to 4k, compatible with all browsers and platforms.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 86.5%
  • HTML 8.4%
  • CSS 4.8%
  • PHP 0.1%
  • Python 0.1%
  • Dockerfile 0.1%