Weboberfläche von RawCast: Streamen in voller Qualität, selbst gehostet. Gehört zu rawcast-server
3.0K
Bildschirm teilen in voller Qualität, für kleine Gruppen, auf dem eigenen Server.
RawCast ist eine selbst gehostete Plattform zum Streamen, Reden und Schreiben, gedacht für Freundeskreise und Gaming-Gruppen. Statt WebRTC, das die Qualität von sich aus senkt, kodiert RawCast mit WebCodecs direkt auf der Grafikkarte, mit genau der Auflösung, Bildrate und Bitrate, die eingestellt sind. Der Server reicht die Bilder nur weiter.
Quellcode, Anleitung und Changelog: codeberg.org/BiguL91/RawCast
| Image | Inhalt |
|---|---|
bigul91/rawcast-server | Anmeldung, Räume, Chat, Rechte und die Vermittlung der Streams. Node.js mit SQLite. |
bigul91/rawcast-client (dieses) | Die Weboberfläche hinter nginx, mit TLS und der Desktop-App zum Herunterladen. |
Der Client leitet API und WebSocket an den Server weiter und erwartet ihn im Docker-Netz unter dem Namen server.
mkdir rawcast && cd rawcast
curl -O https://codeberg.org/BiguL91/RawCast/raw/branch/main/docker-compose.yml
curl -o .env https://codeberg.org/BiguL91/RawCast/raw/branch/main/.env.example
# in .env mindestens ADMIN_EMAIL, ADMIN_PASSWORD und JWT_SECRET eintragen
docker compose up -d
Danach läuft RawCast unter https://<server>:8443, im lokalen Netz mit einem selbst erzeugten Zertifikat. Für den Betrieb im Internet gehört ein Reverse Proxy mit echtem Zertifikat davor. Eine kurze Beispiel-Compose-Datei steht im README.
Nutzer brauchen einen Browser auf Chromium-Basis (Chrome, Edge, Vivaldi …). Die Desktop-App für Windows steckt in diesem Image, und die Oberfläche bietet sie zum Herunterladen an. Es ist eine App für jeden Server: Beim ersten Start fragt sie nach der Adresse.
latest: die neueste Fassung.1.63.39 und so weiter: eine feste Fassung. Für den Weg zurück trägt man die alte Nummer in der .env als RAWCAST_VERSION ein.test: Testbauten vor einem Release. Nicht für den Betrieb.Server und Client immer mit derselben Nummer betreiben. Die mitgelieferte docker-compose.yml sorgt dafür über RAWCAST_VERSION.
| Port | Wozu |
|---|---|
443 | HTTPS mit einem selbst erzeugten Zertifikat, für den Zugriff im lokalen Netz. Die Compose-Datei legt ihn auf 8443. |
80 | Für einen Reverse Proxy davor, der TLS schon beendet hat. |
| Variable | Wozu |
|---|---|
LOCAL_TLS_SANS | Adressen, unter denen der Server im lokalen Netz erreichbar ist, mit Komma getrennt. Dafür stellt der Client sein Zertifikat aus. |
TRUSTED_PROXY_IPS | Adressen des Reverse Proxys, damit die Mengenbremse je Besucher greift und nicht für alle gemeinsam. |
Alle weiteren stehen mit Erklärung in der .env.example.
| Pfad im Container | Inhalt |
|---|---|
/etc/nginx/certs | Das selbst erzeugte Zertifikat. Bleibt über Neustarts erhalten und wird nur neu ausgestellt, wenn sich LOCAL_TLS_SANS ändert. |
/usr/share/nginx/html/sounds | Eigene Stimmen (freiwillig, nur lesend). Jeder Unterordner ist eine Stimme, die Dateien heißen nach dem Ereignis. Die Liste steht im README. |
Aktualisieren: docker compose pull && docker compose up -d
GNU AGPL 3.0. Die Emoji stammen aus Microsofts Fluent Emoji (MIT). RawCast gibt es nur auf Deutsch.
Content type
Image
Digest
sha256:6eaa10629…
Size
130.4 MB
Last updated
1 day ago
docker pull bigul91/rawcast-client