Sign inSign up

bigul91/rawcast-client

By bigul91

•Updated 1 day ago

Weboberfläche von RawCast: Streamen in voller Qualität, selbst gehostet. Gehört zu rawcast-server

Image
Web servers
0

3.0K

bigul91/rawcast-client repository overview

⁠RawCast – Client

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⁠

⁠Zwei Images, die zusammengehören

ImageInhalt
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.

⁠Schnellstart

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.

⁠Tags

  • 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.

⁠Ports

PortWozu
443HTTPS mit einem selbst erzeugten Zertifikat, für den Zugriff im lokalen Netz. Die Compose-Datei legt ihn auf 8443.
80Für einen Reverse Proxy davor, der TLS schon beendet hat.

⁠Wichtige Einstellungen

VariableWozu
LOCAL_TLS_SANSAdressen, unter denen der Server im lokalen Netz erreichbar ist, mit Komma getrennt. Dafür stellt der Client sein Zertifikat aus.
TRUSTED_PROXY_IPSAdressen 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⁠.

⁠Daten

Pfad im ContainerInhalt
/etc/nginx/certsDas selbst erzeugte Zertifikat. Bleibt über Neustarts erhalten und wird nur neu ausgestellt, wenn sich LOCAL_TLS_SANS ändert.
/usr/share/nginx/html/soundsEigene 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

⁠Lizenz

GNU AGPL 3.0⁠. Die Emoji stammen aus Microsofts Fluent Emoji⁠ (MIT). RawCast gibt es nur auf Deutsch.

Tag summary

Content type

Image

Digest

sha256:6eaa10629…

Size

130.4 MB

Last updated

1 day ago

docker pull bigul91/rawcast-client