实验概览
对于直播活动,实况与在设备上看到的内容之间的延迟或延时可能是个问题。AWS Elemental MediaStore 可以帮助缓解该问题。MediaStore 是一种媒体源和存储服务,可在对象存储前提供写后缓存。它专为性能、可预测的低延迟和一致性而设计。
如果最注重的是低延迟,并且您的工作流不需要 AWS Elemental MediaPackage 的即时打包和数字版权管理 (DRM) 互操作性(例如,实时流已采用正确的格式并应用了要求的任意 DRM),那么您可以将 AWS Elemental MediaStore 用作直通式视频源和存储服务,提供交付实时流媒体所需的性能和一致性,且兼具 AWS 各项服务共有的安全性和持久性。
直播工作流
在本实验中,您将使用 AWS Elemental MediaLive、AWS Elemental MediaStore 和 Amazon CloudFront 创建直播流视频工作流。MediaLive 将执行编码和压缩,在本使用案例中,还执行打包。MediaLive 将 MediaStore 容器用作目标生成自适应比特率 (ABR) 内容。您将为该容器创建策略,允许 CloudFront 将其用作源,并提供 ABR 流,让观众通过移动设备和桌面浏览器访问。为简单起见,您将只使用一种打包协议:Apple HLS(HTTP 实时流),这是一种常用的自适应比特率流媒体格式。
注意:直播环境通常涉及一个本地贡献编码器,可将夹层质量视频流式传输到 MediaLive。然后,MediaLive 将使用 MediaStore 容器终端节点作为其目标创建多个自适应比特率副本。CloudFront 分配将使用该 MediaStore 容器作为其源,并对其进行流式传输。
尝试在实验环境中重新创建此功能,而不是让您提供实时视频流,本实验提供了一个视频源文件来模拟实时流,供 MediaLive 进行编码。实验设置还使用 AWS CloudFormation 模板自动创建必要的 IAM 角色。
目标
本实验结束时,您将能够:
- 创建一个 MediaStore 容器作为 CloudFront 的源
- 创建 CloudFront 分配
- 设置 MediaLive 以摄取两个源输入提要
- 使用内置模板创建 MediaLive 频道,将内容转码为自适应比特率输出
- 将 MediaLive 配置为输出到 MediaStore 终端节点
- 创建允许访问其内容的 MediaStore 容器策略
- 使用播放器通过 CloudFront URL 播放串流视频
注意:您将在实验开始时创建 CloudFront 分配,因为完全部署需要 20 分钟。
技术性知识先决条件
为了成功完成本实验,您应该熟悉 AWS 管理控制台的基本导航操作。