Generell sucht der Chrome Browser auf alles Interfaces nach möglichen Verbindungen zum BBB und vor allen Dingen auch zum stun und turn Servern. Wenn auf dem Endgerät also viele Interfaces z.B. durch die Software Cisco AnyConnect VPN existieren und nicht connected sind oder gerade nicht zum Ziel führen häuft sich da eine ganze mehe Timeouts an. > 10 sec. (Edited)
# Patch back to 24h format
APPLICATION_HELPER="$HOME/greenlight/app/helpers/application_helper.rb"
sudo sed -i --follow-symlinks 's/"%b %d, %Y %-I:%M%P"/"%Y-%m-%d, %H:%M:%S"/' "$APPLICATION_HELPER" (Edited)
wenn automatic closed captions nicht enabled ist, sollte in Browsern, die kein SpeechRecognition beherrschen, der Hinweis, dass dieser Browser zur Anzeige von Untertiteln nicht in der Lage ist, nicht angezeigt werden (issue dazu ist erstellt)
stun-check schlägt bei neuer coturn-Version und der Verwendung des Parameters no-stun-backward-compatibility fehl; dies gilt auch für die BBB Version 2.5.9 (issue dazu ist erstellt)
Präsentation mit kleiner Auflösung öffnen und dann vergrößern führt zu pixeligen Effekten
Weiße Hintergrundfolie wird fälschlicherweise angezogen
Läuft auch mit Fullaudio (1. aktivieren in BBB-WebRTC-SFU /etc/bigbluebutton/bbb-webrtc-sfu/production.yml (fullAudioEnabled: true), 2./etc/bigbluebutton/public.media.audio.defaultFullAudioBridge: 'f' )
Unterschiedliches Verhalten von Browsern beim Beitritt in Breakout-Räume bzw. beim Zurückgehen in den Hauptraum. Bekannt? Firefox fragt nach, Chrome verbindet direkt.
Add new option –no-rfc5780 to force disable RFC8750
Add new option –no-stun-backward-compatibility Disable handling old STUN Binding requests and disable MAPPED-ADDRESS attribute in binding response (use only the XOR-MAPPED-ADDRESS)
Add new option –response-origin-only-with-rfc5780 Add RESPONSE_ORIGIN attribute only if rfc5780 is enabled
Don't send SOFTWARE attribute if –no-software-attribute set on (BREAKING CHANGE)
Fragen –> Gibt es eine Möglichkeit eine 1 zu 1 "Stummschaltung" (Personal Mute) zu realisieren ohne den jeweiligen User für alle zu muten Usecase: (Wenn z.b. 2 Personen in einem Zimmer sitzen und am selben Meeting teilnehmen…)
auch integriert mit Greenlight auf dem gleichen Host, Greenlight wird dann über den Scalelite-Nginx mit ausgeliefert: https://github.com/blindsidenetworks/scalelite/issues/83 - lässt sich im zweifel sogar auf mehrere Greenlight-Instanzen erweitern, das habe ich an der Stelle dann aber nicht mehr dokumentiert…
Tipps & Tricks:
LOCALE_DE="/usr/share/meteor/bundle/programs/web.browser/app/locales/de.json"
LOCALE_EN="/usr/share/meteor/bundle/programs/web.browser/app/locales/en.json"
PROGRAM_JSON="/usr/share/meteor/bundle/programs/web.browser/program.json"
yq -jP w -i $LOCALE_EN '"app.video.virtualBackground.uhh"'"University of Hamburg"
yq -jP w -i $LOCALE_DE '"app.video.virtualBackground.uhh"'"Universität Hamburg"
yq -jP w -i $PROGRAM_JSON 'manifest[path==app/locales/de.json].size' $(stat -c %s $LOCALE_DE)
yq -jP w -i $PROGRAM_JSON 'manifest[path==app/locales/en.json].size' $(stat -c %s $LOCALE_EN)
yq -jP w -i $PROGRAM_JSON 'manifest[path==app/locales/de.json].hash' $(sha1sum $LOCALE_DE|cut -d" "-f1)
yq -jP w -i $PROGRAM_JSON 'manifest[path==app/locales/en.json].hash' $(sha1sum $LOCALE_EN|cut -d" "-f1)
```
- Neue Rechtsgrundlage für Aufzeichnungen von Lehrveranstaltungen in Niedersachsen: NHG §17 (6) (https://www.nds-voris.de/jportal/?quelle=jlink&query=HSchulG+ND+%C2%A7+17&psml=bsvorisprod.psml)- Scalelite config
https://jffederico.medium.com/scalelite-lazy-deployment-745a7be849f6
https://github.com/jfederico/scalelite-run- Redis systemd docker-unit:
Video-Layouts für Gebärdensprach-Übersetzung: Die "Fremdsprachler" {Gehörlose & mehrere Dolmetscher} müssen sich permanent gegenseitig sehen, egal wer spricht, idealerweise mehr als eine Kamera und vergrößert
–> in der settings.yml das auskommentierte kurento durch "mediasoup" ersetzen. Dreimal. Geht ab 2.4-rc3 /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml bzw. als override in /etc/bigbluebutton/bbb-html5.yml
Zusätzlich im sfu mediasoup definieren, falls nicht bereits geschehen: /usr/local/bigbluebutton/bbb-webrtc-sfu/config/default.yml bzw. als override in /etc/bigbluebutton/bbb-webrtc-sfu/production.yml
[Scalelite 1.1.6] *.tar Dateien werden nach dem Import nicht aus spool Verzeichnis entfernt. Import der Recordings startet erneut … endlos. Keine brauchbare Fehlermeldung in "docker logs scalelite-recording-importer"
panic/cordon/disable –> Aufklärung des Namenswirrwarrs für verschiedene Scalelite-Releases; siehe Readme -> sieht jetzt relativ sinnvoll aus, daher vermutlich keine größeren Änderungen mehr bei den Befehlen
Jemand schon den neuen Layout-Manager ausprobiert? (Feature von 2.4)
Das neue Audio-Connect-Feature schon ausprobiert (Trickle ICE durch Kurento, siehe Tipps & Tricks)? Insbesondere ipv6? Geht ja angeblich nicht, wenn man da nicht Freeswitch auch für konfiguriert. Freeswitch kann kein Trickle ICE, Kurento aber schon, daher hat man in
Issues
Warum "Serverfehler" beim Versuch, die Session zu joinen :-)
Trickle ICE Problem bei einigen alten Vodafone-Fritzboxen auch bei 2.3.6; Fritzbox Release Notes [1]
Schlechtere Audioqualität in 2.3? (im Vergleich zu 2.2)
Tipps & Tricks
Freeswitch kann kein Trickle ICE, Kurento aber schon, daher hat man in die Option bekommen Kurento für die Verbindungsaushandlung zu benutzen (siehe auch: https://bugzilla.mozilla.org/show_bug.cgi?id=1661059)
Obacht wenn das Netzwerk-Setup vom FS ein anderes ist als das vom Kurento. Beispiel: Kurento kann ipv6, FS-ipv6 wurde (aus guten Gründen :-)) nicht mit ipv6 eingerichtet. Wenn der Kurento-Trickle eine ipv6-Connection findet und die an den FS weitergibt, landet man vermutlich im Nirvana…
[1]
1007: ICE negotiation failed - The browser and FreeSWITCH try to negotiate ports to use to stream the media and that negotiation failed. Possible Causes: NAT is blocking the connection Firewall is blocking the UDP connection/ports
Die beste Problemlösung ist das Update auf die aktuelle Firmware. Das ist leider nicht immer möglich, wenn man z.B. eine Fritz!Box von Vodaphone hat ist man auf die automatischen Updates angewiesen und die ist mehrere Versionen in Verzug.
Eine Lösung bis zum Update erläutert AVM: "Wir kennen entsprechende Meldungen von weiteren Kunden. Die Symptome können dabei unterschiedlich sein. Eine störungsfreie Nutzung ist dabei nicht möglich. Bitte prüfen Sie zunächst, ob das Verhalten weiterhin auftritt, wenn Sie die Option "Hardware-Beschleunigung" in der FRITZ!Box abschalten. Sie finden die Einstellung auf der Startseite der FRITZ!Box unter "Inhalt" > "FRITZ!Box Support" > Paketbeschleunigung Tritt es ohne aktive Hardware-Beschleunigung nicht mehr auf, liegt die Ursache im FRITZ!OS und trifft daher auf ein Verhalten, welches wir bereits eingehend untersucht haben. Eine entsprechende Lösung stellen wir in Form eines FRITZ!OS Updates bereit."
Die Deaktivierung der Hardwarebeschleunigung führt aber zu deutlichen Geschwindigkeitseinbuße. Zumindest sollte es aber funktionieren.
Eine weitere Möglichkeit ist, die Ports der Fritzbox zu öffnen: Wenn Sie unter Freigaben für Gerät unter IPv4 und/oder IPv6: Dieses Gerät komplett für den Internetzugriff über IPv4/IPv6 freigeben. Unserer Erfahrung nach funktioniert es, Sicherheitstechnisch ist es natürlich nicht so schön, die Firewall auf Ihrem Rechner sollte funktionieren.
Etherpad/Shared Notes: Import-Funktion wird angezeigt, ist aber nicht verfügbar; kann man daraus ein feature machen, um Shared-Notes aus voriger Sitzung weiter zu bearbeiten?
BBB 2.3.1; soll ca. zwei Wochen nach 2.3 erscheinen
recordings mit BBB 2.3 - laufen wohl mit der 1.1-beta von scalelite und auch mit der v1.0-stable-bionic230-alpine Version
Moodle-Plugin 2.4 mit BBB 2.3; Link für die Einladung von Externen (im Moodle-Tracker voten!); Der PR der Uni Wien mit dem Link für Externe beim Moodle-Plugin für BBB ist wohl noch offen
Lassen sich "alte" Aufzeichnungen aus BBB 2.2 nach 2.3 "übernehmen"?; anscheinend noch nicht; solange das nicht gefixed ist sollte bbb 2.3 nur als Beta-Version laufen
Was ist der beste Umgang mit "alten" BBB 2.2 Aufzeichnungen?
Im Einsatz für die internationale Opencast-Konferenz
Spontane Umfrage: Welche BBB-Version wird zum Sommersemester bereitgestellt? (bei 2.2 bleiben / 2.3-beta anbieten / Wechsel im Semester sobald 2.3 released / 2.2 und 2.3 anbieten)
Workshop BBB WebRTC Streaming am 14.04.2021 ab 14:00:
Ubuntu 16.04 End of Life (EOL) is scheduled for April 30, 2021; What to do when BBB 2.3 is not stable until than? (Extended Security Maintenance (ESM)?)
Öffentlicher 2.3-Testserver mit Greenlight-Zugang, sodass auch 2.3-Features mit mehreren Teilnehmern getestet werden können?
cameraTimeouts:
# Base camera timeout: used as the camera *sharing* timeout and
# as the minimum camera subscribe reconnection timeout
baseTimeout: 60000
# Max timeout: used as the max camera subscribe reconnection timeout. Each
# subscribe reattempt increases the reconnection timer up to this
maxTimeout: 120000
yq w -i /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml public.kurento.cameraTimeouts.baseTimeout 60000
yq w -i /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml public.kurento.cameraTimeouts.maxTimeout 120000
Textbox in whiteboard stopped working for Firefox users
Zusammenhang mit NumberOfHTML5Processes -> 4 (dedizierter 4 Kerner bei Hetzner), 32GB RAM) (John Alistair, HLS OL) Update (23.02.2021): Ich habe nun auf zwei AX51 gewechselt - in Alpha5 mit 4 HTML5-Prozessen das gleiche Spiel bei 115 Nutzern. Habe bei Google Groups dann einen Anfrage eingestellt, Fred antwortete und bat um Geduld bis Alpha7; Alpha7 installiert, nun kann man setNumberOfHTML5Processes gar nicht mehr setzen (-> entfernt), Problem gelöst - DANKE! 300 Nutzer auf einem AX51 NVMe ohne Probleme.
Einzelmeeting mit 30 Webcams → Kurento macht schlapp
Eventuell zu hohe Kameraauflösungen?
Oder Screensharing?
Eventuell etwas mit „Webcams only for Moderators“ zutun?
Könnten dynamische Kameraprofile helfen?
Kurento Ports
:8888 -> Webcams
:8889 -> Listen only
:8890 -> Screenshare
enableMultipleKorentos (RT Priorität -2 geht dabei auf den neuen kurento Prozesse verloren) (Oliver Riesener, HSB)
freeswitch und meteor haben die erhöhte Priorität, nicht Kurento, alles Gut!
wenn man in der datei /usr/share/meteor/bundle/programs/web.browser/7ab5ebd28d0d066903f9363ec402d0fee931a588.js den teil t=e=>a("startUserTyping",e) ersetzt durch t=e=>{let cur = (+ new Date()); if (window.last_typed && (window.last_typed + 1000 > cur)) {return} else {window.last_typed = cur; return a("startUserTyping",e)}} verhindert man, dass jeder tastendruck im chat an den server ein event schickt.
Montag, 21. Dezember 2020 - 15-16 Uhr | Informelles Treffen
wenn BBB-Sessions nicht beendet werden, die BBB-Dienste aber neu gestartet werden, können die recording jobs nicht laufen (ein Issue dazu aufzumachen wäre hilfreich)
config für Greenlight (Anzahl der threads & worker erhöhen, um die Last bei vielen Anfragen an Greenlight besser zu verteilen):
Wegen der Malware-Mail: Es soll nur ein Hinweis sein dass die Nutzer da sehr "kreativ" sein können nur weil die Funktion des Downloads der Aufzeichnung fehlt. Ggf. sollte man die Nutzer auf solche Gefahren hinweisen.
Automatischer Import von Scalelite-Aufzeichnungen in Opencast (C. Eigenstetter - HS Wismar)
Maskierung aus der aktuellen Dokumentation verwenden
Weitere Entwicklung
Selber entwickeln
Aufträge vergeben
Feature-Wünsche
Was ist bereits in Entwicklung?
Grobe Idee oder konkret in Planung?
Gibt es gemeinsame Interessen?
Weiterentwicklung
Lastverteilung zwischen BBB-Knoten basierend auf Parametern wie z.B. der erwarteten Teilnehmerzahl, nicht nur auf Basis von Anzahl von Konferenzen pro Knoten
Da gab es Ideen, die jedoch bisher nicht in die offizielle Version eingeflossen sind. Voraussichtliche Teilnehmerzahl müsste z.B. per META-Info übergeben und im Scalelite ausgewertet werden!? Offenes Problem bei Load-Berechnung anhand von "Lastparametern" wie Meetings, Voice, Video war das Placement von gleichzeitig startenden Meetings. -CM
Das Frontend (LMS) hat mehr Information (Zeitpunkte der Meetings, erwartete Teilnehmerzahl) und könnte entsprechend das Load-Balancing effizienter umsetzen. In OpenOLAT ist das z.B. implementiert.
Wahlweise Platzhalter einblenden, falls kein Video verfügbar, um die Sichtbarkeit zu erhöhen. Eventuell Standbild oder eine Art "Profilbild". Ansonsten nur Text im Videorahmen.
Interesse: TU Clausthal
Direktes Streaming einer Veranstaltung (bereits Verfügbar als Paid Feature bei einem Cloud-Anbieter elos.vc/mconf.com)
Automatische sprecherbezogene Steuerung der Videogröße inkl. dynamischer Anpassung der Auflösung/Framerate/Bitrate (d.h. aktueller Sprecher groß/hohe Qualität, Zuhörer klein/geringe Qualität). Kamera-Profile zwischen denen automatisch gewechselt wird.
Ist in Entwicklung durch Paolo (plazarin auf Github)
Besseres Verhalten bei hoher Serverbelastung - z.B. Regulierung der Webcam Qualität basierend auf Serverauslastung bis hin zum - ggf. Abschalten von Webcam
Die meisten Probleme entstehen durch überlastete Clientes. Da muss man eher ansetzen.
Ja, aber bei uns gibt es leider auch überlastete Server - wenn zu viele (zu große) Sitzungen auf einem Server landen (s.o.)
Audio sollte über dem Videostream priorisiert werden
Limitierung der max. Anzahl der Webcams pro Sitzung in Abhängigkeit von der Teilnehmerzahl - Bsp: nur 1 Webcam bei > 150 Teilnehmern => Fehlbedienungen im Vorfeld vermeiden, welche zu Überlast führen
Man kann doch jetzt schon Webcams von Teilnehmern verbieten.
Ja, aber einige Moderatoren verstehen das 'gesperrt' nicht und entsperren alle. Die Limitierung sollte vom Admin eingestellt werden können, ohne dass Moderatoren das überschreiben / ausschalten können
Das müsste wohl im Frontend (Moodle?) implementiert werden. In OpenOLAT lassen sich Raumvorlagen definieren. In Stud.IP auch.
Bis hier sind wir gekommen
Statusmeldung/Warnung an Endbenutzer zur Verbindungsqualität (vgl. Balken bei Zoom)
Optimierung CPU-Belastung (end systeme) bei vielen Webcams => da ist der zoom-client weniger Ressourcen-hungrig (wenn auch nicht der zoom-webclient)
vermutlich generelles WebRTC Problem?
Das scheint auch an den Codecs zu liegen; H.264 wird meist in HW decoded.
Andere Codecs? VP9 / H.264?
Für Aufzeichnung bereits konfigurierbar
Optimierung Bandbreitenbedarf für Screensharing => 1-2Mbps ist für Home-Office zu viel (16 Mbps DSL: max. 1Mbps im uplink)
Einstellungen in settings.yml
Weitere Layout-Optionen (Präsentation/Video links/recht oder Präsentation mit Bild-im-Bild, vgl. Layouts bei Zoom)
Optional Steuerung des Layouts bei den Teilnehmern durch Moderator (Whiteboard/Chat/Notizen/Sprache/Teilnehmerliste ein/ausblenden) (Issue)
Speichermöglichkeit zur Folgebearbeitung bei späterem Termin
meetzi verwendet Jitsi Meet mit integriertem Whiteboard
Slides mit Annotationen als Download (issue)
Pollfunktionalitäten
Anonymisierte Umfrage (auch für den Moderator nicht sichtbar)
weitere Fragetypen
Schnittstelle zu Videokonferenz-Anlagen (H.323-Gateway)
hat hier schon jemand was?
Teilnehmerliste nur für Moderator sichtbar ✅
gibt es schon. Lock Viewers -> See other viewers in the Users list
Ton auch für Desktop-Audio (Issue?)
Konfiguration in settings.yml ohne Funktion
Pullrequest ist schon irgendwo
Audio-/Videodateien hochladen und abspielen (issue)
Wiedergabe von Videos von hochschuleigenen Video-Servern (z.B. auf Basis JW-Player/HLS oder Opencast/Paella-Player)
Man kann wohl den verwendeten "React-Player" mit einem "Custom-Player" ergänzen und so JW-Player einbinden, wenn das nicht schonmal jemand gemacht hat…
der integrierte Player folgt aktuell keiner Weiterleitung (nötig zB für Dateien in Seafile) (Issue)
Es tut auch https://…/xy#.mp4
Interesse an Einbettung des Opencast-Players
UOS, TU Clausthal hat Interesse
Aufzeichnungen: Aufbewahrungsfristen, Scheduling des Rederings (mittels systemd-timer vs. cronjob) und Absicherung der Links (Greenlight/Scalelite/Moodle)