Streaming Remote 通过 TCP 套接字或 WebSocket 提供对 OBS Studio 或 XSplit 的安全远程控制。
还提供了 StreamDeck 插件和基本的 Web UI。
从最新版本下载文件;大多数用户不想要“调试”下载。
有关说明,请参阅 INSTALL.md
Web UI 在 Chrome 和 Safari 上进行了测试;众所周知,它不适用于 Edge。
如果本地存储可用,Web UI 将保存连接设置;直接在 Safari 中打开 index.html 文件时,本地存储不可用,但在 Chrome 中可以使用。
检索输出和状态的列表
开始输出(流或录制)
停止输出
输出状态更改的推送通知
与软件无关:使用 OBS 与 XSplit 时没有协议或客户端差异
通过 libsodium 实现现代安全(身份验证和加密)
我们预计未来会扩展这些功能。
CMake
Qt5 Web UI 或 XSplit 插件
OBS Studio - 从源代码构建 - 如果构建 OBS 插件
Visual Studio 2019 或最新的 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
XSplit 插件可以在所有平台上构建,尽管 XSplit 本身仅在 Windows 上可用。当处理影响非 Windows 计算机上的StreamingSoftware
类的更改时,这非常有用。
打字稿
纱线(首选)或 npm
在js-client-lib
中,运行yarn install && tsc
在xsplit-js-plugin
、 streamdeck-plugin
和webui
中,运行: yarn install && yarn run webpack --mode production
有两种基于消息的协议:
提供身份验证和初始化加密的二进制握手协议
基于 JSON-RPC 的加密 RPC 协议
对于 WebSocket,使用标准二进制消息函数。
对于 TCP 套接字、Unix 套接字(MacOS、Linux)和命名管道(Windows),将发送一个 ASCII Content-Length:
标头,其中包含字节数,然后是 CRLF CRLF,然后是 blob。下一个 Content-Length 标头紧跟在 blob 之后。
"Content-Length: 7rn" "rn "hello, Content-Length: 6rn" "rn" "world."
该存储库主要根据 MIT 许可证获得许可,尽管 OBS 插件的某些部分是根据 GNU 通用公共许可证版本 2 获得许可的,OBS 插件二进制文件也是如此。
有关详细信息,请参阅[许可证](许可证文件)和各个源文件。