View a markdown version of this page

live-to-VOD内容交付入门 MediaPackage - AWS Elemental MediaPackage

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

live-to-VOD内容交付入门 MediaPackage

本入门教程向您展示了如何使用 AWS Elemental MediaPackage 控制台创建 live-to-VOD(视频点播)资源并使其可供播放。

要提供 live-to-VOD内容,您需要做以下三件事:

  • 将 HLS 直播内容流收录到 MediaPackage

  • 从流中提取 VOD 资产

  • 使资产可用于播放

    注意

    您无需使用即可将 live-to-VOD资产交付 MediaPackage 给观众。本教程旨在说明如何使用 MediaPackage 来完成工作 live-to-VOD流程。

以下各节是指导教程,使您熟悉这三件事和其他支持操作。

先决条件

在使用之前 AWS Elemental MediaPackage,您需要一个 AWS 帐户和相应的权限才能访问、查看和编辑 MediaPackage 组件。确保系统管理员已完成设置 MediaPackage中的以下步骤,然后返回到本教程。

步骤 1:访问 MediaPackage

使用您的 IAM 凭证登录 AWS Elemental MediaPackage 控制台:

https://console.aws.amazon.com/mediapackage/

步骤 2:摄取实时内容

要将直播内容流摄入直播内容流 AWS Elemental MediaPackage 并从中提取视频点播 (VOD) 资产,请创建频道和端点。频道是该频道的入口点 MediaPackage,端点提供对直播的 MediaPackage 访问权限,以便它可以提取 VOD 资产。以下各节描述如何使用 MediaPackage 控制台创建通道和终端节点。

创建通道

该频道是其中的第一个组件 MediaPackage。它表示来自编码 MediaPackage 器的传入直播内容的输入,例如 AWS Elemental MediaLive。

MediaPackage 不要求您提供任何客户数据。当需要您提供客户数据时,通道中没有字段。

创建通道
  1. 在 MediaPackage 频道页面上,选择创建频道。

  2. 对于 ID,请输入描述通道的名称,例如 channelHLS1。ID 是通道的主要标识符,并且对于 AWS 区域中的账户必须是唯一 ID。支持的字符包括字母、数字、下划线(_)和短划线(-)。您不能在 ID 中使用空格。

  3. 保留其余字段的默认值,然后选择创建。

    MediaPackage 显示新频道的详细信息页面。

  4. 在通道的详细信息页面上,记下 URL、用户名和密码的值。如果您使用的是输入冗余,则两个输入都需要此信息 URLs。如果您只向通道发送一个流,则可以记下任一输入 URL 的信息。

    MediaPackage WebDAV 在创建频道时会安全地生成 WebDAV 用户名和密码。如果需要更改这些凭证,请参阅在输入 URL 上轮换凭证。

    从这些字段向负责上游编码器的人提供信息。在编码器的流配置中,此人必须键入输入 URL 以作为目标,并将通道的用户名和密码作为 WebDAV 凭证。上游编码器必须使用摘要身份验证,并通过 HTTPS 将 WebDAV 推送 MediaPackage到并包含这些凭据。如果您使用的是输入冗余,则此通道的输入流必须具有相同的编码器设置。有关为输入冗余设置源流的详细信息,请参阅实时输入冗余 AWS Elemental MediaPackage 处理流程。

创建端点

终端节点附加到通道,且表示实时内容的输出。当您创建采集作业以从实时内容中提取 VOD 资产时,必须指出要从中进行提取的终端节点。您可以从明文(未加密)或加密的 HLS 和 DASH 端点采集资产,并且端点必须定义一个启动窗口。如果您只有加密的终端节点,请参阅 使用创建 live-to-VOD资产 AWS Elemental MediaPackage 功能参考。

MediaPackage 不要求您提供任何客户数据。在需要您提供客户数据的终端节点中没有字段。

创建端点
  1. 在通道页面上,选择将与终端节点关联的通道。

  2. 在通道详细信息页面上的源端点下,选择管理端点。

  3. 对于 ID,请输入描述终端节点的名称,例如 HLSendpoint1。ID 是端点的主要标识符,并且对于 AWS 区域中的账户必须是唯一 ID。支持的字符包括字母、数字、下划线(_)和短划线(-)。您不能在 ID 中使用空格。

  4. 保留其余字段的默认值,然后选择 Save (保存)。

    MediaPackage 显示频道的详细信息页面,包括您刚刚创建的端点。

  5. 在通道的详细信息页面上,记下端点的 URL 字段中的值。将此信息提供给负责下游设备 (CDN 或播放器) 的人。在下游设备中,此人必须输入终端节点的 URL 以作为请求目标。

步骤 3:提取 VOD 资产

要从直播内容流中提取 live-to-VOD资产,请创建采集作业。收获任务可以识别资产的收获端点、资产的起点和终点,以及收获后在哪里 MediaPackage 保存资产。

创建采集作业
  1. 在采集作业页面上,选择创建采集作业。

  2. 对于 ID,请输入描述采集作业的名称,例如 gamehighlights。该 ID 是作业的主要标识符。您可以在账户中的收获作业过期后重新使用此 ID。支持的字符包括字母、数字、下划线(_)和短划线(-)。您不能在 ID 中使用空格。

  3. 对于 Origin endpoint (原始终端节点),选择要从中提取 VOD 资产的实时内容流的终端节点。端点必须提供明文(未加密)的 DASH 或 HLS 内容。如果要从加密的实时内容中提取,请参阅 使用创建 live-to-VOD资产 AWS Elemental MediaPackage。

  4. 对于 Date and time format (日期和时间格式),请保留默认值。

  5. 在 live-to-VOD资源开始时间和资源结束时间中 live-to-VOD,输入提取的 VOD 资产的开始和结束日期和时间。我们建议开始时间在实时流开始之后和当前时间(“现在”)之前。结束时间必须是过去的时间。

    注意

    “现在”是根据 EXT-X-PROGRAM-DATE-TIME 的当前时间(当其出现在编码器的源内容中时)。因此,我们建议上游编码器在源中提供一个 EXT-X-PROGRAM-DATE-TIME 标签。

  6. 对于 IAM 角色 ARN,请输入允许 MediaPackage 将您的 live-to-VOD资产写入您的 Amazon S3 存储桶的 IAM 角色。有关角色的帮助,请参阅AWS Elemental MediaPackage 允许访问其他 AWS 服务。

  7. 在 A mazon S3 存储桶名称中,选择 MediaPackage 要存储 live-to-VOD资产的 Amazon S3 存储桶。

  8. 对于清单密钥,输入 Amazon S3 存储桶中的路径和 live-to-VOD资产父清单的标识符。 MediaPackage 根据您输入的路径创建目录。

    重要

    清单密钥必须是唯一的。当您对多个采集作业使用相同的清单键时,资产的最新播放列表将覆盖现有播放列表。唯一应重复使用清单密钥的时间是在采集相同内容时,例如,如果先前内容的采集存在问题。

  9. 选择创建。

MediaPackage 处理收获任务时,它会在作业失败或成功时发送一个 CloudWatch 事件。事件中将包括采集作业的详细信息。如果作业失败,则事件将包括原因相关信息。此信息仅在 CloudWatch 活动中可用。有关示例事件,请参阅 采集作业通知事件。

(可选)步骤 4:输出 VOD 内容

MediaPackage 要使用使资源可供播放,请创建打包组、打包配置和资产资源。 live-to-VOD该 live-to-VOD资产从 Amazon S3 存储桶中提取资产。一个打包组包含一个或多个打包配置,这些配置定义输出格式和设置。

创建打包组

打包组包含一个或多个打包配置。通过打包配置,您可以定义所需的 VOD 输出类型。要应用这些输出定义,请将打包组关联到多个资产。

例

如果您有 15 个源内容。您希望把这些源内容全部作为 DASH、HLS 和加密 HLS 输出提供。为此,您定义了一个包含 DASH、HLS 和加密 HLS 打包配置的打包组。然后,将该组关联到代表这些内容的资产资源。您不必为每个资产创建新的配置。

MediaPackage 不要求您提供任何客户数据。打包组中没有任何字段需要您提供客户数据。

创建打包组
  1. 在打包组页面上,选择创建组。

  2. 对于 ID,输入描述组的名称,例如 gamehighlights。ID 是组的主要标识符,并且对于此 AWS 区域中的账户必须是唯一 ID。支持的字符包括字母、数字、下划线(_)和短划线(-)。您不能在 ID 中使用空格。

  3. 选择创建。

创建打包配置

打包配置指定如何配置输出清单,例如流选择限制和排序。

MediaPackage 不要求您提供任何客户数据。打包配置中没有任何字段需要您提供客户数据。

创建打包配置
  1. 在 Packaging groups (打包组) 页面上,选择刚创建的组。

  2. 在打包组详细信息页面的打包配置下,选择管理配置。

  3. 在管理打包配置页面上,选择添加,然后选择新配置。

  4. 对于 ID,请输入描述配置的名称,例如 hls_highlights。ID 是配置的主要标识符,并且对于此 AWS 区域中的账户必须是唯一 ID。支持的字符包括字母、数字、下划线(_)和短划线(-)。您不能在 ID 中使用空格。

  5. 保留其余字段的默认值,然后选择 Save (保存)。

创建资产

资产资源是提取、 AWS Elemental MediaPackage 打包和提供 VOD 内容的方式。资产与一个或多个打包配置相关联。下游设备向资产上的特定打包配置发送播放请求。

MediaPackage 不需要您提供客户数据,因此资产不包含这些字段。

创建资产并提取源内容
  1. 从 Amazon S3 存储桶中,确定您用作源内容的文件。记下以下内容:

    • 存储文件的 Amazon S3 存储桶名称

    • 文件的完整路径,例如 S3://bucket/path/source-file-nam e

    • 允许从 Amazon S3 读 MediaPackage 取数据的 IAM 角色

  2. 在 MediaPackage 控制台上,转到资产页面,然后选择收录资产。

  3. 对于 Amazon S3 存储桶名称,选择存储源内容的存储桶。

  4. 对于 IAM 角色,选择使用现有角色并选择允许从 Amazon S3 读 MediaPackage 取的 IAM 角色。

  5. 在 “文件名” 中,输入 Amazon S3 存储桶中 .smil 清单 (MP4) 或.m3u8 父播放列表 (HLS) 的完整路径,包括源内容的名称。例如,如果您的内容名为 lion_movie.m3u8,并且位于名为 thursday_night 的子目录中(该目录在名为 movies 的存储桶中),则您需要在文件名字段中输入以下内容:

    thursday_night/lion_movie.m3u8

    您无需输入存储桶名称,因为您已在 Amazon S3 存储桶名称字段中选择名称。

  6. 对于打包组,选择您在 创建打包组 中创建的组。

  7. 选择 Ingest assets (提取资产)。

提供播放 URLs

创建资产资源后, AWS Elemental MediaPackage 准备向查看者提供打包清单。该操作是在后台执行的,可能需要一些时间,具体取决于源内容大小和复杂性,但通常不到几分钟的时间。清单 URLs 中的清单可立即在资产的详细信息页面上找到,但内容尚未可供播放。

每份清单的处理完成后, MediaPackage 向您的账户发送一个 Amazon CloudWatch 事件。

在资产上, MediaPackage 为每个打包配置提供一个 URL。下游设备(CDN 或播放设备)通过该 URL 从 MediaPackage 中请求 VOD 内容。

要获得播放 URLs
  1. 在 MediaPackage 控制台上,转到资产页面,然后选择您在中创建的资产的 ID 步骤 4:创建资产。

  2. 在资产的详细信息页面上,获取每个打包配置的 URL。

  3. URLs 向下游设备(CDN 或播放器)的负责人提供。在下游设备中,此人必须输入相应打包配置中的 URL 以作为请求目标。

每个 URL 是非常稳定的。在该资产和打包配置组合的生命周期内,它永远不会发生变化。向负责下游设备(CDN 或播放器)的人员提供该 URL。在下游设备中,此人必须将资产的 URL 作为请求目标。

(可选)步骤 5:监控 MediaPackage 活动

使用 Amazon CloudWatch 跟踪 MediaPackage 活动,例如 MediaPackage 已接收和发送的字节数、响应时间和请求计数。指标的分组首先依据服务命名空间,然后依据每个命名空间内的各种维度组合。

使用 CloudWatch 控制台查看指标
  1. 打开 CloudWatch 控制台,网址为https://console.aws.amazon.com/cloudwatch/。

  2. 在导航窗格中,选择指标。

  3. 在所有指标下,选择 AWS/ MediaPackage 命名空间。

  4. 选择指标维度以查看指标 (例如,选择 channel 以查看每个通道的指标)。

有关 MediaPackage 指标列表,请参阅AWS Elemental MediaPackage 使用 Amazon CloudWatch 指标进行监控。

步骤 6:清除

要避免产生额外费用,请删除您不再使用的资源。

注意

采集作业会自动从您的账户中过期,而无法手动删除。

删除实时资源

完成从直播内容的摄取、提供和采集后,请删除通道和终端节点。您必须先删除通道中的所有终端节点,然后才能删除通道。

删除端点
  1. 在 MediaPackage 频道页面上,选择与端点关联的频道。

  2. 在通道详细信息页面上的源端点下,选择您要删除的源端点。

  3. 选择删除。

  4. 在删除端点确认对话框中,选择删除。

删除通道
  1. 在通道页面上,选择要删除的通道。

  2. 选择删除。

  3. 在通道删除确认对话框中,选择删除。

    MediaPackage 移除频道和所有关联的端点。

删除 VOD 资源

完成摄取和提供 VOD 内容后,请删除多余的资源。如果要使特定的输出不可用,请从打包组中删除打包配置。如果要使资产无法再从任何输出中播放,请删除该资产。

删除资产
  1. 在 MediaPackage 控制台上,转到资产页面,然后选择资产的 ID。

  2. 在资产的详细信息页面上,选择 Delete (删除)。

  3. 在确认对话框中,选择删除。

删除打包配置
  1. 在 MediaPackage 控制台上,转到打包组页面。

  2. 选择具有要删除的配置的组的 ID。

  3. 在打包组详细信息页面上的 Packaging configurations (打包配置) 部分中,找到该配置并选择其 ID。

  4. 在打包配置的详细信息页面上,选择 Delete (删除)。

  5. 在确认对话框中,选择删除。