怎么用OBS和WebSockets播放视频流

技术怎么用OBS和WebSockets播放视频流这篇文章主要为大家展示了“怎么用OBS和WebSockets播放视频流”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么用OB

本文主要向您展示如何使用OBS和WebSockets播放视频流。内容简单易懂,条理清晰,希望能帮你解开疑惑。让边肖带领大家学习《如何用光突发交换和网络套接字播放视频流》一文。

OBS是视频直播的主流之一。最近最热门的直播视频网站之一的Twitch,是直播流媒体的首选。有一些优秀的附加组件,允许流媒体人从他们的手机或另一个屏幕控制,而不影响运行的视频。事实上,使用Node-RED和obs-websockets插件构建自己的控制面板真的很容易。

怎么用OBS和WebSockets播放视频流

我的OBS控制仪表板。

我知道你们很多人在想什么。mdash"他在同一句话中提到了网络套接字和简单性?"许多人在设置和使用网络套接字时遇到困难,网络套接字允许通过网络服务器的单个连接进行双向通信。Node-RED内置了对WebSockets的支持,这也是它容易的原因之一,至少与编写自己的客户机/服务器相比是如此。

开始之前,请确保您已经安装并配置了OBS。首先,下载并安装最新稳定版本的obs-websockets插件。就本文而言,默认设置是可以的,但是我强烈建议您按照说明来保护obs-websockets的安全。

接下来,下载并安装Node-RED,可以在同一个系统上,也可以在不同的系统上(比如树莓Pi)。同样,默认安装对于我们的文章来说已经足够了,但是最好按照他们网站上的说明安全安装。

有趣的是。启动Node-RED,打开web界面(默认为http://localhost:1880),你有一个空白画布。打开右侧的“汉堡”菜单,选择“管理口味管理口感”。然后单击“安装”选项卡,搜索node-red-contrib-dashboard和node-red-contrib-rbe模块。

安装完这些模块后,单击右侧的列表,并将以下模块拖到画布上。

1个网络插座输出

1个网络插座输入

1调试

1注射

1开关

1变更

2 JSON

1抓

按照以下顺序连接它们:

注入-按钮-更改-JSON-WebSocketoutWebSocketin-JSON-开关-RBE-调试批次-调试怎么用OBS和WebSockets播放视频流

基本过程

当按下“按钮”(或“注入”节点发送时间戳)时,有效载荷通过“更改”节点发送,从JSON对象转换为字符串,然后发送到“WebSocket Out”节点。当“WebSocket In”节点收到消息后,会转换成JSON对象,如果不是重复的,会发送到“Debug”节点进行输出。“捕获”节点捕获任何错误,并将其放入“调试”面板。

有效载荷里有什么?让我们把一切都安排好,然后找出答案。

首先,双击按钮打开设置对话框。使用下拉菜单将有效负载更改为“JSON”。在此字段中,添加以下内容:

{ ' request-type ' : ' get version ' }启用“如果输入消息到达,模拟按钮单击”复选框,然后单击“完成”关闭“按钮”配置。当消息来自“注入”节点时,或者当用户界面中的“按钮”被按下时,它会将JSON有效载荷发送到下一个节点。

g src="https://cache.yisu.com/upload/information/20210521/375/497403.jpg" alt="怎么用OBS和WebSockets播放视频流">

设置 “Button”

现在打开 “Change” 节点。我们要将 msg.payload.message-id 设置为 msg._msgid,方法是将第一个字段从 payload改为 payload.message-id,然后使用第二个字段的下拉菜单将类型从 String 改为 msg.,然后我们将 _msgid 放入该字段。这样就会把唯一的消息 ID 复制到 JSON 对象的有效载荷中,这样每个请求就有一个唯一的 ID 进行跟踪。

然后将其发送到 “JSON” 节点,以便将 JSON 对象转换为字符串,然后传递给 “Websocket Out” 节点。打开 “Websocket Out” 节点,配置到 OBS 的连接。首先,将 Type 更改为 Connect to,然后单击铅笔图标以创建新的连接 URL。将其设置为 ws://OBSMachine:4444/,然后关闭对话框进行保存。OBSMachine 是 OBS 和 obs-websocket 运行的机器名称。例如,如果 Node-RED 运行在同一台机器上,则为 ws://localhost:4444,如果是在名为 luxuria.local 的机器上,则为 ws://luxuria.local:4444。关闭并更新 “Websocket Out” 节点。这将向 OBS 中的 WebSocket 发送有效载荷文本字符串。

怎么用OBS和WebSockets播放视频流

“Websocket Out” 节点配置

进入 “WebSocket In” 流程!打开 “WebSocket In” 节点,并对其设置 Type 为 Connect to 和我们之前定义的连接的 URL(应自动填充)。接下来是第二个 “JSON” 节点,我们可以不用管它。它接受 OBS 的输出,并将其转换为有效载荷对象。

接下来,我们将从中过滤出常规的心跳和状态更新。打开 “Switch”,将 Property 值设置为 payload["update-type"]。现在从它下面的下拉菜单中选择 Is Not Null。点击 + 添加第二个选项,并从下拉菜单中选择 otherwise

怎么用OBS和WebSockets播放视频流

“Switch” 节点配置

将 “Switch” 上的新输出直接连接到 “Debug” 节点的输入。

RBE 节点将过滤掉重复的内容,需要告诉它要观察什么字段。由于它应该连接到 “Switch”  的输出,而它只发送状态更新,所以这一点很重要,因为 obs-websocket 每隔几秒钟就会发送更新。默认情况下,RBE  会比较整个有效载荷对象,它将不断变化。打开 RBE 节点,将 Property 从 payload 改为 payload.streaming。如果 payload 的 streaming值发生了变化,那么就把消息传递过去,否则就丢弃。

最后一步是将 “Debug” 节点的输出从 msg.payload 改为完整的 msg 对象。这使我们能够看到整个对象,有时在 payload 之外还有有用的信息。

现在,单击 “Deploy” 以激活更改。希望 WebSocket 节点下面会有绿色的 Connected 消息。如果它们是红色或黄色的,则连接 URL 可能不正确,需要更新,或者连接被阻止。请确保远程机器上的 4444 端口是开放的、可用的,并且 OBS 正在运行!

如果没有 RBE 节点对 streaming 值的过滤,调试面板(点击画布右侧的“虫子”图标)大约现在就会被心跳消息填满。点击 “Inject” 节点左边的按钮,发送一个模拟按钮点击的信号。如果一切顺利,你应该会看到一个对象到达,它有一个 obs-websocket 可以做的所有事情的列表。

怎么用OBS和WebSockets播放视频流

对 “GetVersion” 的回应

现在在另一个标签或窗口中打开 http://localhost:1880/ui。它应该显示一个单一的按钮。按下它! 调试面板应该会显示和之前一样的信息。

恭喜你!你已经发送了你的第一个(希望不是最后一个)WebSocket 消息!

这只是使用 obs-websockets 和 Node-RED 可以做的事情的起步。支持的完整文档记录在 obs-websockets 的 GitHub 仓库的 protocol.md 文件中。通过一点点的实验,你可以创建一个功能齐全的控制面板来启动和停止流媒体、改变场景,以及更多。如果你和我一样,在意识到之前,你就可以设置好各种控件了。

怎么用OBS和WebSockets播放视频流

以上是“怎么用OBS和WebSockets播放视频流”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/50273.html

(0)

相关推荐

  • 如何理解mysql的锁机制

    技术如何理解mysql的锁机制本篇文章为大家展示了如何理解mysql的锁机制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 锁0.1 锁机制当前MySQL已经支持 ISAM, M

    攻略 2021年11月16日
  • 桂花的样子描写,描写桂花的姿态,至少5句话

    技术桂花的样子描写,描写桂花的姿态,至少5句话1、八月桂花的样子描写,我又嗅到了花香,桂花的香……有道是“八月桂花香”许是因为出生在八月,我格外觉得桂花香……夏的阳光,花的芬芳,不经意间,满眼的桂花树露出了笑脸,蝶舞双飞

    生活 2021年10月27日
  • 一个动态波浪纹Android界面

    技术一个动态波浪纹Android界面 一个动态波浪纹Android界面IndexActivity.javapackage com.example.rubikrobot;import androidx.a

    礼包 2021年11月12日
  • 如何进行Spring框架中的后置增强

    技术如何进行Spring框架中的后置增强这篇文章将为大家详细讲解有关如何进行Spring框架中的后置增强,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在这一篇中我们看一下

    攻略 2021年12月2日
  • 如何用OAuth 2.0实现权限认证mybatis连接mysql数据库

    技术如何用OAuth 2.0实现权限认证mybatis连接mysql数据库本篇内容介绍了“如何用OAuth 2.0实现权限认证mybatis连接mysql数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困

    攻略 2021年12月4日
  • 在SQL Server中如何查询资料库的TABLE数量与名称的sql语句

    技术在SQL Server中如何查询资料库的TABLE数量与名称的sql语句今天就跟大家聊聊有关在SQL Server中如何查询资料库的TABLE数量与名称的sql语句,可能很多人都不太了解,为了让大家更加了解,小编给大

    攻略 2021年12月1日