给分场地负责人看的内部推流指南 - SJTU-Art-Center/ACLiveConsole GitHub Wiki

给分场地负责人看的内部推流指南

免责声明

  1. 所发现产品的漏洞均非商业使用,该方法仅供学习交流。AC 使用该方法的目的是为了内部传输超高清直播流,最终放送时会经过平台审核,在这个意义上并没有避免监管。
  2. 不保证该方法的稳定性。如果后续出现相关变动,将会更改相应方法。请尽量减少外传,以避免影响该方法的适用性。
  3. 将这种方法用于不良途径的,根据 AC Live Console 所遵守的 GNU通用公共许可协议

除非适用法律或书面协议要求,任何版权持有人或本程序按本协议可能存在的第三方修改和再发布者,都不对你的损失负有责任。

后果由本人承担,作者负有任何连带责任。

这是对于 Windows, macOS 的普适方案。

1. OBS —— 推流与画面美术

1.1 安装 OBS

请前往官网下载并安装 Open Broadcaster Software (OBS)

1.2 添加视频捕获设备

  1. 打开 OBS,在场景面板中按下 + 按钮添加一个场景
  2. 将你的视频捕获设备连接到电脑上。

a. 如果是 电脑摄像头 ,不需要额外操作。

b. 如果是 手机摄像头 ,一般使用移动端推流,请直接跳至 2.2 移动端 。当然,如果需要添加一定的画面美术必须需要接入电脑,Andriod 手机可以安装 DroidCam(提取码:y49a).apk结尾),电脑端安装客户端(.exe结尾),参照 该教程 将两者通过 局域网(LAN)数据线(USB) 的方式相连。这时候 OBS 就可以直接获取信号源了。注意:如果想升级画质,请翻墙升级至 Pro 版。 iPhone, iPad, Macbook 可以考虑自家的 隔空播放 功能。

c. 如果是 单反微单,请参照 该视频 将相机通过 micro-USB 转 USB 线(也就是相机的数据传输线,一般随相机附带)连接于电脑,然后下载厂商提供的软件获取视频信号,在 OBS 中通过窗口截取的方式完成信号源的设置。注意,一些早期的型号并不提供此功能。

对于SONY α6400,Imaging Edge 软件下载地址:https://www.sonystyle.com.cn/minisite/cross/app/imaging_edge.htm

  1. 在 OBS 的 来源 栏按下 + 号按钮,选择 视频捕获设备 。在 设备 中选择相应的输入源。

a. 如果是 电脑摄像头 ,请选择对应的摄像头。

b. 如果是 手机摄像头 ,Andriod 手机打开 DriodCam 连接后会有名为 DriodCam Source 的视频源。iPhone 需要截取屏幕窗口

c. 如果是 单反微单 ,也需要截取屏幕窗口

视频捕获设备若不附带声音,或者是外置麦克风的,需要添加音频捕获设备

1.3 截取屏幕窗口

  1. 在 OBS 的 来源 栏按下 + 号按钮,选择 窗口捕获
  2. 窗口 中选取对应的窗口。
  3. 捕获方式 中选择 Windows 图形捕获(Windows 10 1903 及上)

不正常设置该步骤会导致窗口元素丢失。OBS 目前仍然有 bug,该模式下没有办法去除光标,希望未来的版本能够加上该功能。

更加专业的做法是直接外接一个屏幕,然后通过 显示器捕获 的方式高效获取相关内容。

1.4 画面美术

网络直播中这一步约等于舞美可视化。如果认为有必要对画面做一些美化装饰的话,请阅读本段内容。当然,你也可以选择将这个工作交给主机导播,但是可视化内容是需要提前准备的。

a. 由于 OBS 还没有虚拟背景的功能,关于人像抠像,软件方式仍然推荐使用 Zoom 进行(画质上限 720P)。

b. 对画质有追求的情况下,就应当对场景进行一定的布置,最好买一块绿幕(或者是找一个区分度大的纯色背景),然后根据 1.5 OBS 抠像 的内容对画面进行抠像。

当然更好的办法是身后有一块屏幕。

c. 如果是叠在内容之上,就需要制作一个含有抠像纯色区域的视频,具体请见 1.6 可视化叠化

更加高级的操作是通过 AE 制作一个带有 Alpha 通道(透明通道)的 QuickTime 视频,请见 1.6 可视化叠化

AC Live Console 已经采用编程的方式制作自动化的弹幕动画,如果对于互动有要求的话,欢迎联系作者添加更多你想要的功能(包括统计以实现数据实时可视化,同屏等等),或者加入编程的队伍😁。

1.5 OBS 抠像

  1. 绿幕设置好的情形下,在 OBS 中右键对应的视频捕获设备,选择滤镜
  2. 效果滤镜 中,按下 + 键添加 色度键。调整 颜色 与相关的设定阈值对画面进行实时抠像。

1.6 可视化叠化

a. 使用 Pr 制作纯色蒙版。添加一个绿色纯色层,然后添加蒙版。添加适当的边缘羽化值,然后在 OBS 中添加媒体源,然后根据上一节的内容进行抠像。

b. 使用 Ae 制作含透明通道的视频。如果你希望向画面中添加尽可能简约的动态图形(MG),请学习 Ae,然后 该教程 在输出的时候选择 QuickTime 格式,色彩空间选择 RGB + Alpha 即可。注意,这一类的视频一般空间占用超大,请务必留足存储空间(~6GB/min)。

OBS 有许多插件,可以考虑自行探索。

2. 腾讯云 —— 信号传输

  1. 打开 腾讯云网站。在右上角登录。
  2. 选择微信扫码登录,之后会要求进行认证,按照流程即可通过微信绑定的方式完成认证。
  3. 在上端 云产品 一栏中搜索 云直播,接受协议后开通。

新用户开通都会免费送 20 GB 的直播流量。如果播送时间不超过 2.5h 都是够用的。对于接收主机来说,最好还是再买个 9.9 元 100GB 的流量包。

  1. 点击左侧的 辅助工具 ,选择 地址生成器
  2. 设置一个 比较晚 的过期时间,输入 StreamName
  3. 点击 生成地址

2.1 OBS

  1. 打开 OBS,点击 设置
  2. 点击 推流 选项,服务选 自定义
  3. 将网页中的 OBS推流地址OBS推流名称 分别复制粘贴至 OBS 设置的 服务器串流密钥 两个文本框中。
  4. 点击 确定 后,点击 开始推流 即可。

请注意节约流量。及时停止推流。

2.2 移动端

  1. 用微信扫描二维码,打开小程序。
  2. 点击 RTMP 推流
  3. 在推流获取选择 扫码读取 。然后在网页的 推流地址 中有一个二维码标识,鼠标悬浮上去就扫描这个二维码。
  4. 画面质量 可以选 FHD ,画面方向选择 横屏推流 。然后 开始 直播。

你可以使用自动地址,但是它的截止时间很近,目测仅能试用。

3. VLC —— 挂机与播流

3.1 播流地址挂机

(接上)

根据可见即可爬原则,我们绕过了域名设置。

  1. 开始直播后,在网页中进入 流管理 栏目。
  2. 点击正在直播的流的 测试 按钮。
  3. 请将弹出的对话框头部的地址发送给接收主机。

类似于 https://94875.liveplay.myqcloud.com/live/livetest.flv

14. 请务必务必不要关闭这个对话框!挂机即可!

This is tx's bug. We don't need to spend any money on tx during this process.😊

该部分方法未来可能会有变动。如果真的到了要域名的地步,可能还需要长达 15 天的建站与审批时间。

下面的步骤是为了实现实时连线。如果不进行互动可以不进行这一步。

3.2 安装 VLC

安装 VLC media player

3.3 使用 VLC 接收主机流

  1. 获取主机播流地址
  2. 打开 VLC,媒体(M) 选项卡中选取 打开网络串流(N)
  3. 网络URL 中将播流地址输入,按下播放即可。

Windows 系统可以下载 AC Live Console ,接收信号后,使用外置低延迟监视器可以将延迟控制在 1000ms - 1500ms 。