Skip to content

Commit 71eaa1c

Browse files
committed
Merge branch 'feat/add-jitsi-help' into staging
2 parents 41b89e3 + 2b87da4 commit 71eaa1c

File tree

1 file changed

+123
-11
lines changed

1 file changed

+123
-11
lines changed

community/tools/jitsi.md

Lines changed: 123 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,140 @@
11
# Jitsi
22

33
We use a self-hosted [Jitsi Meet](https://jitsi.org) instance for video conferencing.
4-
Thanks go to Cleura for providing the server for it.
4+
Thanks go to Cleura for providing the server VM for it.
5+
6+
Jitsi has served us well, providing good quality and reliable VC service while allowing
7+
multiple screen shares and conferences with (at least) up to 50 video participants.
58

69
The server uses an automated deployment based on the
710
[heat-docker-jitsi-meet](https://github.com/garloff/heat-docker-jitsi-meet) project.
811

912
Configuration is such everyone who knows the room can connect, unless the moderator
10-
sets a password/PIN. Opening a new room requires authentication. (Contact Kurt if
11-
you need a password.)
13+
sets a password/PIN. Opening a new room requires authentication. (Contact
14+
[Kurt](https://scs.community/garloff) if you need a password.)
1215

1316
Links to the meeting room (as well as dial-in information) are in the appointments
1417
in the public calendar.
1518

1619
## Usage
1720

18-
Connect with a desktop browser (Chrome/Chromium or other blink based browser
19-
recommended due to superior WebRTC implementation with SimulCast/SVC for VP8/VP9 --
20-
Safari & Firefox work, but cause higher data traffic). For mobile devices use
21-
the Jitsi Meet App.
21+
Connect with a desktop browser or (for mobile devices) the Jitsi Meet App.
2222

2323
Use the little arrows in the control bar at the bottom to select speaker, microphone
24-
and camera in case you lack audio/video. Occasionally, you can not hear all but
25-
one participant; in this case reconnecting typically helps.
24+
and camera in case you lack audio/video.
25+
26+
## Features
27+
28+
### Whiteboard and Etherpad
29+
30+
The Jitsi instance has an etherpad and a whiteboard enabled.
31+
These tools can be used for collaborative creation and collection of content.
32+
Don't forget to save the contents to a persistent place after the meeting.
33+
34+
### Codecs
35+
36+
It is configured to prefer video codecs [AV1](https://en.wikipedia.org/wiki/AV1)
37+
over [VP9](https://en.wikipedia.org/wiki/VP9)
38+
over [VP8](https://en.wikipedia.org/wiki/VP8)
39+
over [H.264](https://en.wikipedia.org/wiki/H.264/MPEG-4_AVC).
40+
It prefers the [opus](https://opus-codec.org/) audio codec.
41+
42+
These settings are chosen to provide good video and audio quality for clients
43+
with modern hardware at moderate bandwidth requirements.
44+
Clients can chose to use older codecs without impacting audio or video streams
45+
of others.
46+
47+
## Dial-In
48+
49+
Dial-In may be more stable for participants that have a stable phone connection, but
50+
not a reliable internet connection.
51+
52+
We thus have an audio bridge using jigasi and [asterisk](https://www.asterisk.org/)
53+
connected to a [SIP](https://en.wikipedia.org/wiki/Session_Initiation_Protocol) provider.
54+
This allows a distinct set of rooms to be provided with phone dial-in.
55+
56+
Here's the setup:
57+
58+
| Room Name | Dialin Suffix |
59+
| --------------- | ------------- |
60+
| SCS-Tech | 611 |
61+
| SCS-Governance | 612 |
62+
| Open-Operations | 613 |
63+
| SCS-OSISM | 614 |
64+
| SCS-Project | 615 |
65+
| SCS-Forum | 616 |
66+
| SCS-Kurt | 617 |
67+
| SCS-Taskforce | 618 |
68+
| SCS-ProjectTeam | 619 |
69+
70+
Dial +49-221-292772-Suffix to connect.
71+
72+
Rooms protected with a PIN would use 60x instead of 61x as suffix.
73+
Rooms with a three or four-digit number as room name would be connected to -61XXX or -61XXXX.
74+
Note that dial-in is not super-reliable due to occasional trouble with the SIP provider.
75+
So double-check ahead of important conference calls that require phone dial-in. Talk to Kurt
76+
to change room assignment or to resolve issues with dial-in.
77+
78+
## Browser specific hints
79+
80+
Traditionally, the [blink](<https://en.wikipedia.org/wiki/Blink_(browser_engine)-based>>
81+
browsers (like Google Chrome, Chromium, Edge, ...) supported WebRTC best.
82+
Safari and Firefox do work, but at the cost of inferior codecs or increased CPU or
83+
bandwidth requirements (e.g. due to missing [SimulCast](https://en.wikipedia.org/wiki/Simulcast)
84+
support or missing hardware acceleration).
85+
86+
### Firefox and VP9 / AV1
87+
88+
On [Firefox](https://www.mozilla.org), in `about:config`,
89+
you can enable `media.peerconnection.video.vp9_preferred` and
90+
`media.webrtc.simulcast.vp9.enabled` for using VP9 video codec (which is better than VP8).
91+
92+
By enabling experimental `media.webrtc.codec.video.av1.experimental_preferred` you even get AV1
93+
(which is even better) in Firefox 139+. Depending on whether your hardware has hardware support for VP9
94+
or AV1 encoding support and on whether that is exposed by your graphics driver stack, this may or may
95+
not create high CPU usage which you may not consider welcome as mobile user.
96+
97+
## Limitations
98+
99+
### Firewalls blocking UDP traffic
100+
101+
While the web interface uses https (port 8443) which most firewalls find acceptable, the audio and
102+
video is transmitted via UDP (port 10000+). Some corporate and many public sector firewalls believe
103+
that outgoing(!) UDP traffic is dangerous and needs to be intercepted. This means that our Jitsi
104+
setup will not work for participants behind such firewalls.
105+
(We do not currently have a [COTURN](https://github.com/coturn/coturn) server to work around this;
106+
instead we use other VC tools such as BB or OpenTalk or the tool of the partner.))
107+
108+
### Large conferences
109+
110+
For large conferences, it is recommended that participants stay muted and raise their hand
111+
in order to talk, so a moderator can ensure a somewhat structured discussion. While Jitsi can route
112+
a few dozens of video streams without trouble, the combines bandwidth may become a challenge for
113+
some of the participants and it is recommended to only switch on videos for the active participants.
114+
We have not tested much above 50 participants in the SCS community, so we don't know the precise limits
115+
of the server connection or capacity we use.
116+
117+
## Known Issues
118+
119+
### Local audio
120+
121+
A lack of audio is often in the local audio setup (mixer volumes turned to zero etc.).
122+
On Linux systems, the `pavucontrol` mixer may be the best starting point to resolve issues.
123+
124+
### Selective Stream forwarding failure
125+
126+
Jitsi receives one or several audio and video streams from every participiant and selectively
127+
forwards those to all recipients that have subscribed to these streams. (Typically, a low-res video
128+
stream is sent in addition to a medium-res and a high-res one — if any high-res subscribers exist).
129+
This approach to video-conferencing is called
130+
[selective forwarding unit (SFU)](https://bloggeek.me/webrtcglossary/sfu/).
131+
Occasionally, one of the participants can not hear one other (out of many) participants but everyone
132+
else can hear echa other - a subscription to an audio (or video) stream may have gotten lost.
133+
In this case, a reconnect by the one not hearing is the best remedy.
134+
135+
### Screen sharing frame rate
26136

27-
We have an asterisk connected to some conference rooms to provide dial-in capabilities
28-
for folks that lack internet connectivity (but have a working phone connection).
137+
Some browsers seem to ignore the FPS setting and try to transmit a shared window (or a shared
138+
desktop) at high resolution (e.g. 2560x1600) with 30fps. This requires more bandwidth than ADSL
139+
links typically handle. This can result in low-resolution streams rather than the (wanted) low-fps
140+
high-resolution stream.

0 commit comments

Comments
 (0)