多个频道和独立叠加层

在一个停靠面板中阅读所有聊天,同时选择每个观众叠加层显示哪些平台。

1. 在同一会话中合并捕获

在 SSN 中添加需要的聊天来源,并确认各来源的一条新消息都到达同一个未筛选的 直播聊天停靠面板。保留该停靠面板作为操作员视图。

复制生成的链接以保留会话、密码、版本和服务器设置。将每个观众视图添加为单独的 OBS 浏览器来源。为 OBS 来源使用说明性名称,例如 Twitch 聊天 和 YouTube 聊天.

  1. 捕获 Twitch + YouTube
  2. 一个 SSN 会话 操作员停靠面板显示两者
  3. OBS 视图 仅 Twitch 和仅 YouTube
一个捕获数据流可提供多个不同筛选条件的视图。

2. 按平台拆分滚动聊天

对于滚动聊天,将生成的以下链接复制两份: dock.html URL。在各自副本后追加以下选项:

观众视图 追加到其停靠面板 URL
Twitch 聊天 &onlyfrom=twitch&hidemenu
YouTube 聊天 &onlyfrom=youtube&hidemenu
Twitch 与 YouTube 合并显示 &onlyfrom=twitch,youtube&hidemenu
除 Discord 之外的所有来源 &hidefrom=discord&hidemenu

例如,使用默认连接时:

https://socialstream.ninja/dock.html?session=YOUR_SESSION_ID&onlyfrom=twitch&hidemenu

使用 onlyfrom 和 hidefrom 适用于这些页面。不要假定某个选项(例如 onlytype )从其他叠加层拿来就能在此使用。请使用 youtubeshorts ,在捕获报告该类型时单独添加。参见 来源类型.

4. 同一平台上的两个频道

onlyfrom=twitch 选择的是 Twitch 平台,而非某个特定 Twitch 频道。频道名称和直播标题是元数据,不能直接作为 URL 筛选器名称互换使用。添加 &showchannelname 以显示来源提供的频道名称。

对于高级停靠面板筛选, &filtertid=123 接受来源标签页的数字 ID;支持逗号分隔的多个 ID。检查实际捕获的载荷以获取其 tid (参见 事件参考 和 命令与 API)。不要在此使用平台频道 ID。来源重新打开时,标签页 ID 可能改变,没有匹配标签页 ID 的来源可能被排除。这是停靠面板选项,不是精选聊天的通用频道筛选器。

对于完全独立的制作,请使用具有不同会话的独立捕获实例/配置文件,并且仅在其中打开该制作需要的来源。仅为某个叠加层设置不同会话而没有匹配的捕获,会使其处于闲置状态。叠加层的 label 用于识别页面以进行路由;它不是频道筛选器。

5. 验证每个观众视图

  1. 使用以下功能向隔离会话发送一条虚构 Twitch 测试消息和一条虚构 YouTube 测试消息: 创建测试消息.
  2. 确认两者都出现在操作员停靠面板中,并且每个滚动叠加层只显示预期来源。
  3. 逐一精选各条消息并测试清除按钮。切换平台后检查所有可见的精选页面。
  4. 使用您自己连接的每个来源中的真实消息重复测试,因为合成消息无法确定实际的来源标签页 ID。

如果视图空白,请暂时移除筛选器。如果聊天恢复,请检查确切的来源类型或标签页 ID。如果仍为空白,请使用 会话和路由故障排查。更改 OBS 来源名称不会更新其保存的 URL。

6. 在一个浏览器标签页中显示聊天和提醒

使用 合并叠加层 ,在一个标签页或一个 OBS 浏览器来源中叠加现有叠加层 URL。这适合在户外直播时用手机阅读聊天。

  1. 将生成的直播聊天停靠面板 URL 粘贴到底层,并将多平台直播提醒框 URL 粘贴到顶层。保留两个链接中的会话、密码和连接选项。
  2. 将 透明 SSN 背景 保持为选中状态。为聊天启用“允许在此图层上点击和滚动”,为提醒禁用此选项,以免提醒阻挡聊天交互。
  3. 选择 预览,然后 显示二维码 并用手机相机扫描。或选择 复制组合链接 以将结果粘贴到浏览器来源中。组合视图没有设置控件。

最多可添加八个 URL,并使用箭头按钮将图层移到其他图层的后面或前面。默认情况下,图层填满浏览器。展开 尺寸和位置 ,以像素设置该图层的宽度、高度、左侧偏移量和顶部偏移量(例如 450)或百分比(例如 100%)。宽度和高度留空时会填满浏览器;偏移量留空时从左上角开始。 重置为全屏 会清除该图层的位置设置。各叠加层保留自身内容和设置。

要在 1920×1080 的 OBS 浏览器来源中设置左侧聊天列,请将聊天图层宽度设为 450,高度设为 1080,左侧偏移量设为 0,顶部偏移量设为 0。其他图层可保持全屏。如需将 Hype 放在聊天上方,并将精选聊天向右移,请使用 下方的 OBS 布局方案。浏览器尺寸改变时,像素尺寸保持固定;百分比随浏览器宽度或高度变化。

使用可编辑链接重新打开设置,其中会填入您的 URL 和位置。若要稍后编辑组合链接,请添加 ?edit=1 ,位置在其以下部分之前: #.

您的链接和图层选项会自动保存在此浏览器中,包括尚未完成的设置。重新打开 合并叠加层 以继续编辑,或选择 清除已保存的设置 以重新开始。在隐私浏览中,浏览器存储可能不可用或仅临时存在。

组合链接和二维码包含完整布局和 URL。在桌面端设置,在手机上扫描一次,然后将组合视图加入书签。打开它也会将该设置保存在手机浏览器中。桌面端更改不会自动更新旧链接:编辑后需复制或扫描新链接。此功能不会通过会话 ID 同步设置。

像保护各个叠加层链接一样保护组合链接和二维码。SSN 捕获仍须运行,且手机必须能连接原始 URL 使用的服务器。 localhost 或 127.0.0.1 地址指向打开链接的设备。过长的 URL 可能超出二维码容量,但仍可复制组合链接。

OBS 方案:左侧聊天列配合全屏效果

此布局不需要 CSS。 每个图层都有自己的浏览器区域。将整个 OBS 浏览器来源设为 1920×1080,然后在各层的以下设置中使用这些值: 尺寸和位置。只输入数字,不要输入逗号或“px”。按以下顺序添加图层,从底层开始:

图层宽度高度左侧偏移顶部偏移
1. 实时聊天/停靠面板4501000080
2. Hype 计数器4508000
3. Emoji/表情墙1920108000
4. 精选聊天147010804500
5. NinjaBacker(可选)1920108000

顶部 80 像素留给 Hype,下方保留宽 450 像素的聊天列。若希望聊天在 Hype 后方占满整个高度,请将实时聊天的高度设为 1080 ,顶部偏移量设为 0。其他场景尺寸需要不同的像素值。

  1. 粘贴完整的叠加层 URL。 从现有浏览器来源属性中复制它们,保留会话、密码、样式和连接设置。保持 透明 SSN 背景 为选中状态。OBS 裁剪、变换、滤镜及其自定义 CSS 字段不属于 URL,不会随之转移。
  2. 让 Hype 在此列中居中。 在其 hype.html URL,设置 align=center (替换已有的 align=left 或 align=right,并移除 alignright (如有))。对于已含以下内容的 URL: ?session=...,追加 &align=center。可选的紧凑起始样式为 &combineall&hidetitle&style=compact&scale=0.75;替换已有值,不要重复添加。如果所选样式需要更多空间,请增加 Hype 图层的高度。
  3. 让精选聊天避开聊天列。 设置 同时设置 Left = 450 和 Width = 1470:450 + 1470 = 1920。将宽 1920 的图层向右移 450 会裁掉其右边缘。精选聊天仍将消息放在自身区域的底部附近。要使较短的消息在该区域内居中,请添加 &center 到其 featured.html URL。如果希望消息在整个场景中居中,请改用 Left = 0、Width = 1920,以及 &center.
  4. 将 NinjaBacker 放在精选聊天上方。 将其观众叠加层 URL 粘贴为最后一个图层,并保留现有的从右侧进入动画设置。组合器控制其区域和图层顺序;NinjaBacker 叠加层控制其动画和内部位置。其背景必须透明,网站必须允许嵌入。此可选图层未包含在四个叠加层的示例测试中。
  5. 以 1920×1080 预览。 发送一条含 emoji 的测试聊天消息,从停靠面板精选一条消息,并在 SSN 中启用 Hype 数据。仅发送普通聊天不会选中精选聊天消息。如果叠加层仍为空白,请确认它们能分别正常工作。
  6. 将新的组合链接复制到 OBS。 将该浏览器来源自身的宽度设为 1920、高度设为 1080。组合器的预览尺寸不会设置 OBS 尺寸。使新来源适合场景且不裁剪。每次编辑布局后,都要重新复制新的组合链接;旧的 OBS 链接会保留旧布局。
测试后的组合输出:Hype 在左侧窄聊天列上方居中,emoji 横跨场景,精选消息位于聊天右侧的底部。
使用四个 SSN 叠加层和隔离测试数据流进行的实际 Chromium 测试。图像是透明的;这里显示深色背景以便阅读。点击查看原尺寸。字体、颜色和消息间距取决于您自己的叠加层设置。

性能: 一个浏览器来源仍会运行每个嵌入的叠加层及其连接。组合可减少 OBS 来源数量,但不保证降低 CPU 或内存使用量。完成后关闭浏览器预览,并在停用旧来源后比较 OBS 性能。M1 macOS/OBS 的性能以及您具体的 NinjaBacker URL 仍需在您的环境中检查。如果效果更好,也可以将实时聊天独立保留,只组合其他叠加层。

图层空白或盖住聊天时

  • 先分别打开每个原始 URL。提醒通常在事件到达之前保持空白;合并页面不会捕获新事件。
  • 自动透明支持 dock.html, featured.html, multi-alerts.html,以及 minecraft.html。其他页面需要各自的透明背景设置。一些外部网站完全禁止嵌入。
  • 透明图层仍可能挡住点击。请关闭 允许点击和滚动 ,针对聊天上方任何不需要交互的图层。
  • 移动浏览器可能要求先与页面交互才能播放声音。如有需要,请为该图层启用交互并点击它;浏览器自动播放限制仍然适用。在依赖音频之前,请在实际手机上检查声音。