(Unnamed SFU) is a videoconferencing server that is very easy to deploy (just copy a few files and run the binary) and that requires moderate server resources. It is suitable for lectures and conferences (where a single speaker streams audio and video to hundreds or thousands of users), and for multi-party discussions (where a few dozen speakers stream audio and video in a full mesh).
You are welcome to check out our videoconferencing server.
Get the source code by doing
The server is reasonably complete:
The following server features are planned but haven't been implemented yet:
I'm less sure about the following features:
The frontend is now quite usable thanks to the work of Alain Takoudjou :
If you don't like our frontend, it should be easy to roll your own. Human-readable outline. API documentation.
The server is used in production in our department. In typical usage, it is limited by the CPU — memory and network throughput are not usually a problem.
For one-to-many communication (lectures), it currently handles at least 150 participants per core. For many-to-many communication (meetings), the behaviour is quadratic (the server load grows as the square of the number of participants) — expect to be able to handle on the order of 16 participants on one core, 30 on four cores (more if some participants don't switch their camera on).
(Unnamed SFU) assumes that the server is trusted: all media is decrypted by the server and reencrypted before it is sent to the clients. This is, as far as I know, unavoidable with DTLS-SRTP, the security mechanism used by WebRTC. (Yes, I know about insertable streams.)
Note however that I am neither a security specialist nor a competent system administator, and I may have gotten something wrong.
Just pick your favourite PDF reader, scale it to a reasonable size, and
share its window using the
allow-recording is set in your group
configuration. Log-in as an operator, then say
before you start your lecture. Don't forget to say
at the end. You will find your recordings under
Just open the same group in two browser windows. Choose Present in one but not the other. Make sure you are using headphones.
If you sound like you're under water, you are putting too much load on the echo suppressor. This is a problem on the sender side. Please use headphones, or at least reduce your speakers' volume.
If your voice occasionally sounds robotic, then you're suffering from more packet loss than the loss concealement algorithm can handle. This could be a problem on the sender side, on the receiver side, or both. Please use a wired connection, or at least avoid having a bearing wall between you and your access point.
Open the same group in a two browser windows. Select your second camera in one of the two windows, disable the microphone, and choose Receive: nothing.
It increases the resolution and attempts to preserve detail at the cost of framerate. Your blackboard will be legible, but your movements might become choppy.
It attempts to preserve audio quality at the cost of disabling noise and echo suppression. It also attempts to reduce audio latency at the cost of slightly higher network load. Use it with headphones, in a quiet environment, and avoid touching the microphone (or the laptop itself, if the microphone is built-in).
Activity detection relies on the
which is not implemented in Firefox. Sorry.