|
1 | 1 | # Jitsi
|
2 | 2 |
|
3 | 3 | 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. |
5 | 8 |
|
6 | 9 | The server uses an automated deployment based on the
|
7 | 10 | [heat-docker-jitsi-meet](https://github.com/garloff/heat-docker-jitsi-meet) project.
|
8 | 11 |
|
9 | 12 | 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.) |
12 | 15 |
|
13 | 16 | Links to the meeting room (as well as dial-in information) are in the appointments
|
14 | 17 | in the public calendar.
|
15 | 18 |
|
16 | 19 | ## Usage
|
17 | 20 |
|
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. |
22 | 22 |
|
23 | 23 | 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 |
26 | 136 |
|
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