aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 435b31dbd70d7503a84e9bd445292de554c13856 (plain)

Hosted realtime audio/video conferencing

Use https://sip2sip.info/ for now, and try limit max. 6 video participants

Recommendations

Ideal would be to self-host, but no such solutions are readyly available in Debian yet. Current recommendation is therefore to use a cloud service built with Free software, light on resources, and realistic to fully self-host later if needed.

Generally most reliable is https://sip2sip.info/, so use that unless you need a specific feature unavailable there.

sip2sip.info

Login is intuitive and step-wise, using ad-hoc identity. Connect to https://sip2sip.info/ and select room name, and you are redirected to a room URL (room URL is however long to type and at another commercial site).

Media selection is done reliably before entering the room (except if you cancel browser dialog, then login page is trapped).

Streaming and rendering is efficient. Video focus can optionally be locked onto 1-2 "speakers". Unknown how larger meetings are handled.

Includes text chat (crucial in case of audio trouble).

letsmeet.no

Login is intuitive and step-wise, using either ad-hoc or Feide (EduGAIN, Twitter, Facebook, LinkedIn) identity. Connect to https://letsmeet.no/ and select room name, and you are redirected to an intuitive room URL.

Media selection is done unreliably (not reliably detecting available devices) when entering the room (if browser dialog is cancelled you enter room in a broken unrepariable state)

Streaming and rendering is inefficient (heavy CPU load). Video focus can optionally be limited to an arbitrary amount of "speakers" (limiting only by number not locked onto specific participants). Unknown how larger meetings are handled.

Includes text chat (crucial in case of audio trouble).

tawk.space

No login. Connect to https://tawk.space/ which is one big "room".

Media selection is done only using browser dialog. (if browser dialog is cancelled you enter room in a broken unrepariable state)

Streaming is unreliable (may fail to initiate video, and video freezes after ~10 seconds); rendering is efficient. Unknown how larger meetings are handled.

Includes text-based scratch-space.

Includes per-participant pointer.

Features

Functionality to consider when considering tool/platform.

  • topology
    • mesh (P2P) all processing at end-points, participants limited by bandwidth
    • routing (SFU) light server processing, participants limited by bandwidth
    • mixing (MCU) heavy server processing
  • stream source efficiency
  • security
  • stream forwarding efficiency
  • meeting management
    • Personalized Meeting rooms
    • Scheduled/Meet-me Meetings
    • Instant/Direct Meetings
    • Presence Support
    • Recording
    • Text chat
    • Screen sharing
  • conference stream efficiency
    • Skip video streams beyond a threshold of participants
    • Skip video streams tied to quiet audio streams
    • Skip streams of explicitly tagged non-speaker participants
  • conference management
    • Conference Recording
    • force-mute participants
    • "Raise a hand" for muted participants
  • meeting room
    • Dual stream for dual screen
  • Dial in from telephone
  • Dial in from SIP audio-only
  • Dial in from SIP with video
  • Dial in from SIP with SIMPLE text chat

See also

Tools

Janus Gateway WebRTC SFU/bridge/broker written in C

Mediasoup WebRTC SFU written in C

Kurento WebRTC MCU written in C++

drachtio SIP "SFU" written in C++

Licode WebRTC MCU written in C++

Medooze WebRTC Media Server WebRTC/SIP MCU written in C++

SylkServer SIP "SFU" written in Python

Spreed WebRTC WebRTC SFU written in NodeJS and Go

Jitsi Videobridge XMPP SFU written in Java

Jigasi WebRTC bridge to Jitsi Videobridge written in Java

Platforms

multiparty-meeting using Mediasoup (and optionally drachtio and Kurento) written in JavaScript hosted at https://letsmeet.no/

Jangouts using Janus written in CoffeeScript

tawk.space using Janus written in CoffeeScript hosted at https://tawk.space/

SIP2SIP using SylkServer and Janus hosted at https://sip2sip.info/ and https://webrtc.sipthor.net/

Roll Call audio-only hosted at https://roll.call

Spreed.ME using Spreed WebRTC

Nextcloud Talk using Spreed WebRTC

Jitsi Meet using Jigasi and Jitsi Videobridge hosted at https://meet.jit.si/

Matrix using Jigasi and Jitsi Videobridge

BigBlueButton using Kurento written in Java

mConf using Kurento written in Java and Ruby

OpenMeeting written in Java

Wire proprietary-protocol Free Software stack written in Haskell, Rust, C

Talky cloud SFU service hosted at https://talky.io/

Me cloud SFU service

GoToMeeting cloud SFU service

Zoom Meetings cloud SFU service supporting "up to 50 participants at once" (but client bandwidth and resource demands and stability of such session is unknown)

Hangouts Meet cloud SFU service

Webex Meetings cloud SFU service

Skype cloud SFU service suporting "up to 25 participants at once" (but client bandwidth and resource demands and stability of such session is unknown)

MoxieMeet cloud SFU service requiring Google account supporting "up to 32 users all on video together" (but client bandwidth and resource demands and stability of such session is unknown)

TeamViewer cloud SFU service