Skip to content

Commit 5666a0c

Browse files
garlofffkrdepressiveRobot
authored
Feat/add jitsi help (#317)
* Add Jitsi help page. Signed-off-by: Kurt Garloff <[email protected]> * Move Jitsi hints to existing Jitsi documentation. Signed-off-by: Kurt Garloff <[email protected]> * Link with parens ... Signed-off-by: Kurt Garloff <[email protected]> * Spellchecker. Signed-off-by: Kurt Garloff <[email protected]> * the employee pages have been turned off, use gh profile instead Signed-off-by: Felix Kronlage-Dammers <[email protected]> * add hint for Jitsi apps Signed-off-by: Marvin Frommhold <[email protected]> * lint Signed-off-by: Felix Kronlage-Dammers <[email protected]> --------- Signed-off-by: Kurt Garloff <[email protected]> Signed-off-by: Felix Kronlage-Dammers <[email protected]> Signed-off-by: Marvin Frommhold <[email protected]> Co-authored-by: Felix Kronlage-Dammers <[email protected]> Co-authored-by: Marvin Frommhold <[email protected]>
1 parent f260ba9 commit 5666a0c

File tree

2 files changed

+128
-16
lines changed

2 files changed

+128
-16
lines changed

community/cloud-resources/cloud-resources.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ As suggested in [#155](https://github.com/SovereignCloudStack/standards/issues/1
2424
2525
Example:
2626

27-
| github handle | plusserver login |
28-
| :-----------: | :-----------------: |
29-
| frosty-geek | u500924-frosty-geek |
30-
| fkr | u500924-fkr |
31-
| | |
27+
|github handle | plusserver login |
28+
|:-----------: | :-----------------: |
29+
| frosty-geek | u500924-frosty-geek |
30+
| fkr | u500924-fkr |
31+
| | |
3232

3333
### SCS2 Service Users
3434

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://github.com/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, the Jitsi [desktop app](https://github.com/jitsi/jitsi-meet-electron) or the Jitsi [mobile app](https://jitsi.org/downloads/).
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 | Dial-in 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_%28browser_engine%29)-based
81+
browsers (like Google Chrome, Chromium, Edge, ...) support WebRTC best.
82+
A Jitsi [desktop app](https://github.com/jitsi/jitsi-meet-electron) and Jitsi [mobile app](https://jitsi.org/downloads/) is also available.
83+
84+
Safari and Firefox do work, but at the cost of inferior codecs or increased CPU or
85+
bandwidth requirements (e.g. due to missing [SimulCast](https://en.wikipedia.org/wiki/Simulcast)
86+
support or missing hardware acceleration).
87+
88+
### Firefox and VP9 / AV1
89+
90+
On [Firefox](https://www.mozilla.org), in `about:config`,
91+
you can enable `media.peerconnection.video.vp9_preferred` and
92+
`media.webrtc.simulcast.vp9.enabled` for using VP9 video codec (which is better than VP8).
93+
94+
By enabling experimental `media.webrtc.codec.video.av1.experimental_preferred` you even get AV1
95+
(which is even better) in Firefox 139+. Depending on whether your hardware has hardware support for VP9
96+
or AV1 encoding support and on whether that is exposed by your graphics driver stack, this may or may
97+
not create high CPU usage which you may not consider welcome as mobile user.
98+
99+
## Limitations and issues
100+
101+
### Firewalls blocking UDP traffic
102+
103+
While the web interface uses https (port 8443) which most firewalls find acceptable, the audio and
104+
video is transmitted via UDP (port 10000+). Some corporate and many public sector firewalls believe
105+
that outgoing(!) UDP traffic is dangerous and needs to be intercepted. This means that our Jitsi
106+
setup will not work for participants behind such firewalls.
107+
(We do not currently have a [COTURN](https://github.com/coturn/coturn) server to work around this;
108+
instead we use other VC tools such as BB or OpenTalk or the tool of the partner.)
109+
110+
### Local audio
111+
112+
A lack of audio is often in the local audio setup (mixer volumes turned to zero etc.).
113+
On Linux systems, the `pavucontrol` mixer may be the best starting point to resolve issues.
114+
115+
### Selective Stream forwarding failure
116+
117+
Jitsi receives one or several audio and video streams from every participant and selectively
118+
forwards those to all recipients that have subscribed to these streams. (Typically, a low-res video
119+
stream is sent in addition to a medium-res and a high-res one — if any high-res subscribers exist).
120+
This approach to video-conferencing is called
121+
[selective forwarding unit (SFU)](https://bloggeek.me/webrtcglossary/sfu/).
122+
Occasionally, one of the participants can not hear one other (out of many) participants but everyone
123+
else can hear each other - a subscription to an audio (or video) stream may have gotten lost.
124+
In this case, a reconnect by the one not hearing is the best remedy.
125+
126+
### Large conferences
127+
128+
For large conferences, it is recommended that participants stay muted and raise their hand
129+
in order to talk, so a moderator can ensure a somewhat structured discussion. While Jitsi can route
130+
a few dozens of video streams without trouble, the combined bandwidth may become a challenge for
131+
some of the participants and it is recommended to only switch on videos for the active participants.
132+
We have not tested much above 50 participants in the SCS community, so we don't know the precise limits
133+
of the server connection or capacity we use.
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)