使用 OBS 创建 Azure 媒体服务实时传送流
警告
Azure 媒体服务将于 2024 年 6 月 30 日停用。 有关详细信息,请参阅 AMS 停用指南。
本快速入门帮助用户使用 Azure 门户创建一个媒体服务直播活动,并使用 Open Broadcasting Studio (OBS) 进行广播。 本文假设你有一个 Azure 订阅,并已创建媒体服务帐户。
本快速入门将介绍以下方面的内容:
- 使用 OBS 设置本地编码器。
- 设置实时传送流。
- 设置实时传送流输出。
- 运行默认的流式处理终结点。
- 使用 Azure Media Player 观看实时传送流和按需输出。
先决条件
如果没有 Azure 订阅,可在开始前创建一个试用帐户。
登录到 Azure 门户
打开 Web 浏览器,并转到 Azure 门户。 输入登录到门户所需的凭据。 默认视图是服务仪表板。
使用 OBS 设置本地编码器
- 在 Open Broadcaster Software 网站上下载适用于你的操作系统的 OBS,然后进行安装。
- 启动应用程序,使其保持打开状态。
运行默认的流式处理终结点
- 在媒体服务列表中选择“流式处理终结点”。
- 如果默认流式处理终结点的状态为“已停止”,请选择它。 此步骤会将你转到该终结点的页面。
- 选择“开始”。
设置 Azure 媒体服务实时传送流
- 在门户中转到 Azure 媒体服务帐户,然后从“媒体服务”列表中选择“实时传送视频流”。
- 选择“添加实时事件”创建新的实时传送视频流事件。
- 在“实时事件名称”框中,输入新事件的名称,例如 TestLiveEvent。
- 在“说明”框中输入事件的可选说明。
- 选择基本的“标准直通”选项。
- 暂时使所有其余设置保持原样。
- 阅读在线服务条款和 Azure 隐私声明后,选中“我有使用内容/文件的所有权利,并同意...”复选框。
- 选择“查看 + 创建”按钮检查设置。
- 选择“创建”按钮以创建实时事件。 随后你会返回到实时事件列表。
- 选择已创建的直播活动的链接。 可以观察到你的事件已停止。
- 在浏览器中将此页保持打开状态。 稍后我们将返回到该文件。
使用 OBS Studio 设置实时传送流
OBS 启动时有一个默认场景,但未选择任何输入。
添加视频源
- 在“源”面板中,单击“添加”图标,选择新的源设备。 此时会打开“源”菜单。
- 从源设备菜单中选择“视频捕获设备”。 此时会打开“创建/选择源”菜单。
- 选择“添加现有”单选按钮,然后选择“确定”。 此时会打开“视频设备的属性”菜单。
- 从“设备”下拉列表中,选择要用于广播的视频输入。 暂时保留其余设置,选择“确定”。 输入源会添加到“源”面板中,视频输入视图会显示在“预览”区域中。
添加音频源
- 在“源”面板中,选择“添加”图标,选择新的源设备。 此时会打开“源设备”菜单。
- 从源设备菜单中选择“音频输入捕获”。 此时会打开“创建/选择源”菜单。
- 选择“添加现有”单选按钮,然后选择“确定”。 此时会打开“音频输入捕获的属性”菜单。
- 从“设备”下拉列表中,选择要用于广播的音频捕获设备。 暂时保留其余设置,选择“确定”。 音频捕获设备将添加到音频混合器面板中。
在 OBS 中设置流式处理和高级编码设置
在接下来的过程中,你将在浏览器中返回到门户中的“Azure 媒体服务”页来复制输入 URL,以便将其输入到输出设置中:
- 如果你尚未处于门户中的流式处理终结点页上,请从正在使用的媒体服务帐户导航到该页。
- 选择“启动”以启动实时流事件。 (现在开始计费。)
- 在“输入 URL”中,将 URL 复制到剪贴板。
- 切换到 OBS 应用程序。
- 在“控制”面板中,选择“设置”按钮。 此时会打开“设置”选项。
- 从“设置”菜单中选择“流”。
- 从“服务”下拉列表中,选择“全部显示”,然后选择“自定义...” 。
- 在“服务器”字段中,粘贴已复制到剪贴板的 RTMPS URL。
- 在“流键”字段中输入一些内容。 此字段的内容是什么并不重要,但需要有一个值。
- 从“设置”菜单中选择“输出”。
- 选择页面顶部的“输出模式”下拉列表,然后选择“高级”以访问所有可用编码器设置。
- 选择“流式处理”选项卡以设置编码器。
- 选择适合于系统的编码器。 如果硬件支持 GPU 加速,请选择 NVIDIA NVENC H.264 或 Intel QuickSync H.264。 如果系统没有受支持的 GPU,请选择 X264 软件编码器选项。
X264 编码器设置
如果已选择 X264 编码选项,请选中“重新缩放输出”框。 如果在媒体服务中使用“高级直播活动”,请选择 1920x1080,如果在使用标准 (720P) 直播活动,则选择 1280x720。 如果使用的是基本或标准直通直播活动,则可以选择任何可用的分辨率。
将“比特率”设置为 1500 kbps 到 4000 kbps 之间的任意值。 如果以 720P 使用标准编码直播活动,建议使用 2500 Kbps。 如果使用1080P 高级直播活动,建议使用 4000 Kbps。 可能需要根据可用的 CPU 能力和网络的带宽调整比特率,以实现所需的质量设置。
在“关键帧间隔”字段中输入“2”。 此值将关键帧间隔设置为 2 秒,这会控制通过 HLS 或 DASH 从媒体服务发送的片段的最终大小。 切勿将关键帧间隔设置为大于 4 秒。 如果广播时出现高延迟,应始终仔细检查或告知应用程序用户始终将此值设置为 2 秒。 如要尝试降低直播发送延时,可以选择将此值设置为低至 1 秒。
可选:将“CPU 使用率”预设值设置为“非常快”,并进行一些试验,看看本地 CPU 是否能够以合理的开销来处理比特率和预设值的组合。 尽量避免导致 CPU 平均使用率高于 80% 的设置,以避免实时传送视频流过程中出现任何问题。 要提高质量,可以通过“较快”、“快速”预设设置进行测试,直到达到 CPU 限制。
保留其余设置不变,然后选择“确定”。
Nvidia NVENC 编码器设置
- 如果已选择 NVENC GPU 编码选项,请选中“重新缩放输出”框,然后,如果在媒体服务中使用高级直播活动,选择 1920x1080,如果使用标准 (720p) 直播活动,选择 1280x720。 如果使用的是基本或标准直通直播活动,则可以选择任何可用的分辨率。
- 对于恒定比特率控制,将“比率控制”设置为“CBR”。
- 将“比特率”设置为 1500 Kbps 到 4000 Kbps 之间的任意值。 如果以 720P 使用标准编码直播活动,建议使用 2500 Kbps。 如果使用1080P 高级直播活动,建议使用 4000 Kbps。 可以选择根据可用的 CPU 能力和网络的带宽调整该值,以实现所需的质量设置。
- 在 X264 选项下将“关键帧间隔”设置为 2 秒,如上所述。 请勿超过 4 秒,否则可能会显著影响实时广播的延迟。
- 根据本地计算机上的 CPU 速度,将“预设”设置为“低延迟”、“低延迟性能”或“低延迟质量”。 用这些设置来试验,以根据自己的硬件实现质量和 CPU 使用率之间的最佳平衡。
- 如果使用更强大的硬件配置,请将“配置文件”设置为“主要”或“高”。
- 取消选中“提前查看”。 如果计算机性能非常强大,则可以选中此选项。
- 取消选中“Psycho 视觉优化”。 如果计算机性能非常强大,则可以选中此选项。
- 将“GPU”设置为 0 可自动决定要分配的 GPU。 如果需要,可以限制 GPU 使用率。
- 将“最大双向预测帧”设置为 2
Intel QuickSync 编码器设置
- 如果已选择 Intel QuickSync GPU 编码选项,请选中“重新缩放输出”框,然后,如果在媒体服务中使用高级直播活动,选择 1920x1080,如果使用标准 (720p) 直播活动,选择 1280x720。 如果使用的是基本或标准直通直播活动,则可以选择任何可用的分辨率。
- 将“目标使用”设置为“平衡”,或根据 CPU 和 GPU 组合负载,按需调整。 根据需要进行调整并进行试验,以在硬件能够产生的质量下实现 80% 的平均最大 CPU 利用率。 如果使用的硬件受到更多约束,请以“快速”进行试验,如果出现性能问题,则降为“非常快速”。
- 如果使用更强大的硬件配置,请将“配置文件”设置为“主要”或“高”。
- 在 X264 选项下将“关键帧间隔”设置为 2 秒,如上所述。 请勿超过 4 秒,否则可能会显著影响实时广播的延迟。
- 对于恒定比特率控制,将“比率控制”设置为“CBR”。
- 将“比特率”设置为 1500 Kbps 到 4000 Kbps 之间的任何值。 如果以 720P 使用标准编码直播活动,建议使用 2500 Kbps。 如果使用1080P 高级直播活动,建议使用 4000 Kbps。 可以选择根据可用的 CPU 能力和网络的带宽调整该值,以实现所需的质量设置。
- 将“延迟”设置为“低”。
- 将“双向预测帧”设置为 2。
- 取消选中“主观视频增强功能”。
“设置音频”设置
在接下来的步骤中调整音频编码设置。
- 在“设置”中选择“输出”->“音频”选项卡。
- 将曲目 1 的“音频比特率”设置为 128 Kbps。
- 在“设置”中选择“音频”选项卡。
- 将“采样率”设置为 44.1 kHz。
启动流式处理
- 在“控制”面板中,单击“启动流式处理”。
- 在浏览器中切换到 Azure 媒体服务实时事件屏幕,单击“重载播放器”链接。 现在应该可以在“预览播放器”中看到你的流。
设置输出
此部分将设置输出,并使你可以保存实时流的录制内容。
注意
若要流式传输此输出,流式处理终结点必须正在运行。 请参阅后面的运行默认的流式处理终结点部分。
- 选择“输出”视频查看器下面的“创建输出”链接。
- 如果需要,请将“名称”框中的输出名称编辑为用户更容易理解的内容,便于今后查找。
- 暂时不要理会其余所有框。
- 选择“下一步”添加流定位器。
- 如果需要,请将定位器的名称更改为用户更容易理解的内容。
- 暂时不要理会此屏幕上的其他任何设置。
- 选择“创建”。
使用 Azure Media Player 播放输出的广播
- 复制“输出”视频播放器下面的流 URL。
- 在 Web 浏览器中,打开 Azure Media Player 演示。
- 将流 URL 粘贴到 Azure Media Player 的“URL”框中。
- 选择“更新播放器”按钮。
- 选择视频中的“播放”图标查看实时传送流。
停止广播
如果你认为已流式传输了足够的内容,请停止广播。
在门户中选择“停止”。
在 OBS 的“控制”面板中,选择“停止流式处理”按钮。 此步骤会在 OBS 中停止广播。
使用 Azure Media Player 播放按需输出
现在,只要流式处理终结点正在运行,创建的输出就可供按需流式处理。
- 转到媒体服务列表并选择“资产”。
- 找到前面创建的事件输出,然后选择指向该资产的链接。 此时会打开资产输出页。
- 复制该资产的视频播放器下的流 URL。
- 在浏览器中返回到 Azure Media Player,将流 URL 粘贴到“URL”框中。
- 选择“更新播放器”。
- 选择视频中的“播放”图标以观看按需资产。
清理资源
重要
请停止服务! 完成本快速入门中的步骤后,请务必停止实时事件和流式处理终结点,否则系统会按它们的运行时间计收费用。 若要停止实时事件,请参阅停止广播过程的步骤 2 和 3。
若要停止流式处理终结点,请执行以下操作:
- 从媒体服务列表中选择“流式处理终结点”。
- 选择前面启动的默认流式处理终结点。 此步骤会打开该终结点的页面。
- 选择“停止” 。
提示
如果你不想要保留来自此事件的资产,请务必将其删除,以免产生存储费用。