Streaming Remote bietet eine sichere Fernsteuerung von OBS Studio oder XSplit über TCP-Sockets oder WebSockets.
Ein StreamDeck-Plugin und eine grundlegende Web-Benutzeroberfläche werden ebenfalls bereitgestellt.
Laden Sie Dateien aus der neuesten Version herunter. Die meisten Benutzer möchten die „Debug-“-Downloads nicht.
Anweisungen finden Sie unter INSTALL.md
Die Web-Benutzeroberfläche wurde auf Chrome und Safari getestet; Es ist bekannt, dass es unter Edge nicht funktioniert.
Wenn lokaler Speicher verfügbar ist, speichert die Web-Benutzeroberfläche die Verbindungseinstellungen. Der lokale Speicher ist nicht verfügbar, wenn Sie die Datei index.html direkt in Safari öffnen, funktioniert aber in Chrome.
Rufen Sie eine Liste der Ausgänge und Zustände ab
eine Ausgabe starten (Stream oder Aufnahme)
eine Ausgabe stoppen
Push-Benachrichtigungen für Änderungen des Ausgabestatus
Softwareunabhängig: Es gibt keine Protokoll- oder Clientunterschiede bei der Verwendung von OBS und XSplit
moderne Sicherheit (Authentifizierung und Verschlüsselung) über libsodium
Wir gehen davon aus, dass wir die Fähigkeiten in Zukunft erweitern werden.
CMake
Qt5 die Web-Benutzeroberfläche oder das XSplit-Plugin
OBS Studio – aus dem Quellcode erstellt – wenn das OBS-Plugin erstellt wird
Visual Studio 2019 oder aktueller XCode
streaming-remote$ mkdir build streaming-remote$ cd build build$ cmake .. -DWITH_XSPLIT=ON -DWITH_OBS_ON -DOBS_SOURCE_DIR=/path/to/obs-studio -DOBS_BUILD_DIR=/path/to/obs-studio/build build$ cmake --build . --parallel
Das XSplit-Plugin kann auf allen Plattformen erstellt werden, auch wenn XSplit selbst nur unter Windows verfügbar ist. Dies ist nützlich, wenn Sie an Änderungen arbeiten, die sich auf die StreamingSoftware
-Klasse auf einem Nicht-Windows-Computer auswirken.
Typoskript
Garn (bevorzugt) oder NPM
Führen Sie in js-client-lib
yarn install && tsc
aus
Führen Sie in xsplit-js-plugin
, streamdeck-plugin
und webui
Folgendes aus: yarn install && yarn run webpack --mode production
Es gibt zwei nachrichtenbasierte Protokolle:
ein binäres Handshake-Protokoll zur Authentifizierung und Initialisierungsverschlüsselung
ein verschlüsseltes JSON-RPC-basiertes RPC-Protokoll
Für WebSockets werden die standardmäßigen binären Nachrichtenfunktionen verwendet.
Für TCP-Sockets, Unix-Sockets (MacOS, Linux) und Named Pipes (Windows) wird ein ASCII- Content-Length:
-Header gesendet, der die Anzahl der Bytes, dann CRLF CRLF und dann den Blob enthält. Der nächste Content-Length-Header folgt unmittelbar auf den Blob.
"Content-Length: 7rn" "rn "hello, Content-Length: 6rn" "rn" "world."
Dieses Repository ist größtenteils unter der MIT-Lizenz lizenziert, obwohl einige Teile des OBS-Plugins unter der GNU General Public License, Version 2, lizenziert sind, ebenso wie die OBS-Plugin-Binärdateien.
Einzelheiten finden Sie in der [LICENSE](LICENSE-Datei) und den einzelnen Quelldateien.