Files

39 lines
2.1 KiB
Markdown

---
title: Element Call & MatrixRTC
description: Audio/Video/Screensharing-Infrastruktur
published: true
date: 2026-08-13T22:14:04.560Z
tags:
editor: markdown
dateCreated: 2026-08-13T20:27:21.708Z
---
Anrufe (Audio, Video, Screensharing) laufen über **Element Call** auf Basis von **MatrixRTC** (LiveKit-SFU) — nicht über die alten 1:1-WebRTC-Calls.
## Komponenten
- **matrix-rtc-sfu** (LiveKit) — der Media-Server (SFU). Die WebRTC-Medienports sind als NodePort nach außen offen — das ist Absicht (Media-Relay), kein Fehler in der NetworkPolicy.
- **matrix-rtc-authorisation-service** — vergibt die Call-Berechtigung, erreichbar unter `mrtc.axion1337.chat`.
- **coturn** — TURN/STUN-Relay für NAT-Durchgriff (`turn.axion1337.chat`); das Shared Secret wird monatlich per CronJob rotiert.
## Bekannter Stolperstein: Call-Widget initialisiert nicht
Braucht das Call-Widget einen OpenID-Token und schlägt still fehl (Login/Messaging läuft aber), fehlt meist die **`profiles`-Zeile des Kontos in Synapse** (Registrierungs-Default). Betroffen sind v.a. **Alt-Konten**, die vor der MAS/Authentik-Integration entstanden. Diagnose: `open_id_tokens=0`. Fix: die fehlende Default-`profiles`-Zeile ergänzen (Cross-Check gegen ein funktionierendes Konto).
Siehe auch [TURN-Server](/betrieb/turn-server).
## Fork-Basis & Änderungen (threadnet-call)
**Element Call** läuft als Fork **threadnet-call**, Basis **Element Call `0.19.2`** — nicht
direkt von `element-hq/element-call`, sondern von **`emmick4/element-call`, Branch `livekit`**
(bringt den noch nicht upstream gemergten Simulcast-PR
[element-hq/element-call#3736](https://github.com/element-hq/element-call/pull/3736) mit).
**Unsere Änderungen** — autoritativ in `threadnet-call:docs/axion1337-fork.md`:
- **media_quality-Defaults** angepasst.
- **VP9-Incident (2026-07-28)** — ⚠️ nicht ohne Browser-Repro erneut versuchen.
- **npm-Publish** des Embedded-Pakets nach Gitea (`@sorb/threadnet-call-embedded`).
- **Bewusst keine** server-seitige ML-Rauschunterdrückung.
- **Produktname im Widget** (`.env.production`): „aXion1337.Chat" statt „Element Call".
Porting-Ablauf → [Upgrades](/betrieb/upgrades).