Home 技术文章 在云端进行视频编码以流化大规模直播事件
Applications

在云端进行视频编码以流化大规模直播事件

About The Author

Outline

随着广告收入和观众不断从传统电视中转移,内容所有者和广播公司正在寻找广告支持的直播活动流媒体,以吸引新的受众并通过顶级(OTT)流媒体增加收入 。 OTT提供了新的分销机会,使发行商能够播放以前在广播电视上没有位置的许可内容并从中获利。 但是,在发行商开始流式直播活动之前,必须考虑流式视频工作流程第一步中的技术障碍:

  • 在工作流程中,连接质量和场地与接入点之间的带宽可用性可能是一个薄弱环节。 必须内置冗余和可靠性。
  • 实时馈送必须编码为各种自适应比特率格式和协议,如Apple HLS和MPEG-DASH,同时最大限度地减少延迟。
  • 上传和编码解决方案必须面向未来,可靠且可扩展,以应对4K和其他高质量格式的出现。
  • 视频工作流应能够支持服务器端广告插入,以获得最佳观众体验和最合适的盈利策略。

在本技术博客中,我们将介绍我们如何构建平台,使发行商能够优化流媒体视频工作流的第一步,了解涉及的一些挑战,并说明我们如何对直播流进行编码,以实现高性能,低延迟,支持广告的直播流媒体。

‍Background:The Slicer.

在我们深入研究编码的技术考虑之前,我们需要解释我们称为”切片器”的技术。 强大的软件客户端Slicer可将您的场地直播流式传输到我们的云视频平台。 它在不牺牲灵活性和功能的情况下简化了极其复杂的任务。 Slicer是拥有丰富技术资源的广播公司和没有技术资源的广播公司能够利用我们的平台打造与众不同的OTT体验的一个关键原因。

Slicer可准备您的内容以进行编码,计算理想的编码设置并管理广告插入标记。 您可以在安全硬件上运行Slicer,也可以选择支持各种格式(包括SDI,IP视频,RTP/FEC和RTMP)的云无关位置的成本节省和可扩展性。

Slicer将您的内容分成小块,并在将其发送到我们的ISO认证云编码堆栈之前对其进行加密,让您安心无忧,因为您知道您的内容始终是安全的。 它提供了一系列灵活的工作流,从简单的一键配置到采用所选编程语言的更高级脚本,再到编写可触发通知,作业处理和机器学习集成的工作流的云功能。

我们的”实时切片器”是Slicer的一个版本,针对实时事件流进行了优化。 HD-SDI或基于IP的视频源可以以所需的最高比特率快速摄取并分块成2秒或4秒加密段,从而将1080p的带宽要求降低到3–5 Mbps,4K的带宽要求降低到大约15 Mbps。 我们的流程会自动保留带内和带外元数据和消息,以触发节目和广告中断或替换内容。 我们的插件架构允许您创建自定义脚本,以处理您独特的信号事件要求。 Live Slicer还可以收听SCTE 35/104消息或接收API调用以插入广告中断,内容启动或中断触发器。

OTT流由实时线性馈送生成,前期投资最少,带宽要求低。

最小化带宽

现在您已经了解了 许可证,您可能会想知道为什么我们会开发一个前端软件组件,以便将直播流从事件移动到云。 例如,为什么发布者无法通过RTMP (实时消息协议)流发送? (如果需要,您可以这样做,但我们的大多数客户都利用Slicer。)答案与客户对高质量直播流媒体的期望有着同样的关系,就像解决直播场所的带宽挑战一样。 这是一个在许多竞争因素之间找到正确平衡的问题。 一方面,您需要保留尽可能多的原始源,着眼于更高质量的格式和4K。 另一方面,您需要优化流,使其可以有效地交付,而不会被额外的开销困扰,如个性化广告。 找到合适的平衡对于视频工作流程的这一步至关重要。

下面是切片器的关键所在。 如上所述,它通过在站点上创建最高比特率配置文件并仅将该配置文件发送到云,显著降低了给定源所需的带宽。 在我们的观察中—基于向全球数十亿观众流式传输数百万小时的直播视频—将更大的RTMP流发送到云的替代方法不会显著提高观看体验的质量。 但它确实显著增加了带宽,从而提高了成本。

回程成本会迅速增加。 如果您的需求是这样,您需要一个卫星上行链路,卡频卡车,例如,租金约2000美元/天,带宽成本约400美元/小时。 鉴于酒店或会议中心等一些场所的情况不一致和带宽受限, 或者甚至是全球的体育场馆,底线是,最好尽可能降低上传带宽要求,同时确保为观众提供类似广播的体验。

编码障碍

实时视频源离开会场后,工作流程中的下一步是编码。 在这里,视频编码器可以创建不同比特率,分辨率和质量级别的音频和视频的多个版本或变体。 然后将变体分段为小文件或媒体段。 必须执行几个附加步骤,例如为每个变体创建媒体播放列表,其中包含指向变体媒体段的URL列表。 生成的主播放列表是播放器为设备选择的最合适的变体以及当前测量的或可用的带宽。

两种主要的视频流协议增加了复杂性,其他协议可能需要支持才能覆盖大量潜在的播放设备。 HLS是Apple实施的基于HTTP的媒体流通信协议。 它支持所有Apple设备以及大多数Google,Android,Linux和Microsoft浏览器和设备。 大多数但不是全部。 您还需要MPEG-DASH,这是一种竞争对手的基于HTTP的媒体流协议。 您可能还需要为游戏控制台添加对Microsoft Smooth Streaming的支持。

DRM还需要自己的多种格式集来支持大型受众要求,从而使编码变得复杂。 例如,不支持DRM的旧播放器需要HLS和-128。 较旧的iOS设备需要HLS和FairPlay。 较新的iOS设备支持HLS和FairPlay以及CMAF CBC。 较旧的Windows和Android仅支持CMAF CTR。 较新的Android,Windows和iOS应支持所有CMAF格式。 您的内容必须以多种格式打包才能在所有设备上播放。

如果这听起来像很多编码工作,你是对的。 随着分辨率的增加和编解码器变得更加复杂,在单台计算机上编码完整的ABR编码梯度变得更加困难,无论是在云中还是在本地。 如果您的编码硬件不能跟上实时源的任务,您可能需要减少编码阶梯上的梯级数量,这可能最终影响您的观众的体验。

为了满足更复杂的编码要求,传统模式意味着生产商必须不断投资新硬件以保持速度和质量。 最后,对于像Edgio (以前称为Verizon Digital Media Services)这样的流媒体服务,1:1流对编码器模式无法提供满足客户期望所需的可靠性,灵活性和可扩展性。

相反,我们开发了一个复杂的中介系统,允许使用我们需要的任意数量的编码器,所有编码器都在基于云的基础设施中运行。 代理系统接收来自Slicer实例的内容块并将其移动到最优编码器。 此操作可防止编码过程对特定计算机造成过重负担,并使数据块在系统中移动到存储位置,然后传输到查看器。

代理流程可无缝扩展我们的云编码器基础设施,更重要的是,可自动扩展。

在我们的实现中,代理实例充当管理器,在切片器和编码器之间进行对话。 代理可确保任何新切片器将其数据路由到正确的编码器,并验证编码器是否可以处理工作负载。 此外,我们还拥有一个非常强大的扩展基础架构。 如果我们突然被大量需要编码的VOD内容所倾倒,我们可以快速增加服务器实例并开始处理内容。 我们还可以同样快速地缩小规模以节省资源。 此代理流程可无缝管理我们的整个云基础设施,更重要的是,可自动管理。

无状态编码器

当然,经纪系统的价值将是有限的,如果它所能做的只是指向一个单一编码器,可能或可能无法跟上直播流的需求,这是一个严重的问题4K。 我们开发的解决方案涉及使用无状态编码器。 每个编码器一次只能接收一个2秒或4秒的视频片段,而不是将一台机器用于整个视频流。 每个段都包含足够的信息来灌注编码器,这样编码器就可以对该段进行编码,并丢弃任何不必要的引脚信息,例如引脚和引脚信息。 此时,整个段已完成并准备就绪,释放编码器,以便它可以开始对来自其他通道或其他任何内容的另一部分进行编码。

此模型还在系统中内置了大量冗余。 例如,如果编码器在处理某个段时崩溃,则同一段将在另一台计算机上启动并及时完成,然后才会在流中发现任何问题。

这种方法还允许使用更具成本效益的硬件。 例如,如果我们知道速度较慢的计算机可能需要8秒钟来处理来自切片器的4秒文件,我们可以将工作负载分散到多个编码器上,如下所示:服务器A获取切片1,服务器B获取切片2,依此类推。 然后,这些数据块在交付时没有出现问题,因为它们都是在可预测的时间完成的。 如下图所示,此示例将导致延迟16–20秒。

在云中使用多个编码器可最大程度地减少延迟,并允许使用服务器,否则这些服务器将无法跟上实时视频源的速度。

最终,云中的服务器数量(即使单个服务器速度较慢)意味着编码过程始终可以满足实时需求。 如果您想使用传统模式建立编码基础设施,您需要投资购买昂贵的高性能机器或专业硬件,每台机器都能够处理整个传入视频,而无需实时帮助。 通过利用云的可扩展性,我们显著降低了编码成本。

无状态云编码的另一个优势是,我们可以轻松地将工作负载转移到备用云提供商,因为我们没有专门的服务器要求。 凭借250+ Tbps的容量网络,多云方法具有固有优势。

经济高效的直播流媒体

对于直播内容制作者而言,准备实时视频进行云流化的技术考虑因素可能会带来巨大的障碍。 您将面临各种问题,从场地带宽限制到编码器和流媒体协议的复杂问题。 尽管它不能消除场地上的某些连接需求,但简化的工作流和前端的带宽要求可显著减少前期和持续支出,同时提供观众期望的高质量,低延迟流媒体。