集成 CDN - AWS Elemental MediaTailor

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

集成 CDN

以下步骤介绍如何将 AWS Elemental MediaTailor 与内容分发网络 (CDN) 集成。根据您使用的 CDN,某些术语可能与这些步骤中使用的术语不同。

步骤 1:(CDN) 创建路由行为

在 CDN 中,创建将播放请求路由到 MediaTailor 的行为和规则。对所有分段请求使用以下规则(内容、普通广告效用和前置式广告效用):

  • 创建一个行为,该行为将内容分段 请求路由到来源服务器。根据使用短语区分内容分段请求和广告分段请求的规则来执行此操作。

    例如,CDN 可以根据请求中的关键字 subdir 将对 https://CDN_Hostname/subdir/content.ts 的 HLS 播放器请求路由到源服务器路径 http://origin.com/contentpath/subdir/content.ts

    例如,CDN 可以根据请求中的关键字 subdir 将对 https://CDN_Hostname/subdir/content.mp4 的 DASH 播放器请求路由到源服务器路径 http://origin.com/contentpath/subdir/content.mp4

  • (可选)创建一种行为,将广告细分请求路由到AWS Elemental MediaTailor存储转码广告的亚马逊内部 CloudFront 分发。根据包含短语来区分广告分段请求和内容分段请求的规则来执行此操作。此步骤是可选的,因为 AWS Elemental MediaTailor 提供了默认配置。

    AWS Elemental MediaTailor使用以下默认的亚马逊 CloudFront 分配来存储广告:

    例 广告区段路由

    模式:https://segments.mediatailor.<region>.amazonaws.com

    示例:https://segments.mediatailor.eu-west-1.amazonaws.com

步骤 2:(AWS Elemental MediaTailor) 使用 CDN 映射创建配置

创建一个 AWS Elemental MediaTailor 配置,该配置将 CDN 路由行为的域映射到来源服务器和广告存储位置。在配置中输入域名,如下所示:

  • 对于 CDN content segment prefix (CDN 内容分段前缀),输入您创建的用于将内容请求路由到来源服务器的行为中的 CDN 域。在清单中, MediaTailor 将内容分段 URL 前缀替换为 CDN 域。

    例如,考虑以下设置。

    • MediaTailor配置中的@@ 视频内容来源http://origin.com/contentpath/

    • CDN content segment prefix (CDN 内容分段前缀)https://CDN_Hostname/

    对于 HLS,如果完整内容文件路径为http://origin.com/contentpath/subdir/content.ts,则由提供的清单中的内容段 MediaTailor 为https://CDN_Hostname/subdir/content.ts

    对于 DASH,如果完整内容文件路径为http://origin.com/contentpath/subdir/content.mp4,则由提供的清单中的内容段 MediaTailor 为https://CDN_Hostname/subdir/content.mp4

  • 对于 CDN ad segment prefix (CDN 广告分段前缀),输入您创建的用于通过 CDN 路由广告请求的 CDN 行为的名称。在清单中, MediaTailor 将亚马逊 CloudFront 分配替换为行为名称。

第 3 步:(CDN) 为清单和报告请求设置 CDN

对清单和报告请求使用 CDN 可以在工作流中提供更多功能。

对于清单,在清单规范前引用 CDN 可让您使用 CDN 功能(如地理围栏),还可让您通过您自己的域名提供一切。对于此路径,请不要缓存清单,因为它们都是个性化的。清单规范为 /v1/master(对于 HLS 主清单请求)、/v1/manifest(对于 HLS 媒体清单请求)和 /v1/dash(对于 DASH 清单请求)。

确保您的 CDN 将所有查询参数转发到。AWS Elemental MediaTailor MediaTailor 依靠查询参数来满足您对个性化广告的 VAST 请求。

对于服务器端报告,在广告分段请求中的 /v1/segment 前引用 CDN 有助于防止 AWS Elemental MediaTailor 发送重复的广告跟踪信标。当播放器请求 /v1/segment 广告时, MediaTailor 会将 301 重定向发送到实际 *.ts 分段。当 MediaTailor 看到该 /v1/segment 请求时,它会发出信标调用以跟踪广告的视图百分比。如果同一个玩家在一个会话/v1/segment中为同一个玩家发出多个请求,而你的广告决策服务器 (ADS) 无法删除重复的请求,则会向同一个信标 MediaTailor 发出多个请求。使用 CDN 缓存这些 301 响应可确保 MediaTailor 不会对重复请求进行重复的信标调用。对于此路径,您可以使用高或默认缓存,因为这些分段的缓存键是唯一的。

要利用这些优势,请在 CDN 中创建将请求路由到 AWS Elemental MediaTailor 配置终端节点的行为。将您创建的行为基于区分主 HLS 清单、HLS 清单、DASH 清单和报告的请求的规则。

请求遵循以下格式:

  • HLS 主清单格式

    https://<playback-endpoint>/v1/master/<hashed-account-id>/<origin-id>/<master>.m3u8

    示例

    https://a57b77e98569478b83c10881a22b7a24.mediatailor.us-east-1.amazonaws.com/v1/master/a1bc06b59e9a570b3b6b886a763d15814a86f0bb/Demo/assetId.m3u8
  • HLS 清单格式

    https://<playback-endpoint>/v1/manifest/<hashed-account-id>/<session-id>/<manifestNumber>.m3u8

    示例

    https://a57b77e98569478b83c10881a22b7a24.mediatailor.us-east-1.amazonaws.com/v1/manifest/a1bc06b59e9a570b3b6b886a763d15814a86f0bb/c240ea66-9b07-4770-8ef9-7d16d916b407/0.m3u8
  • DASH 清单格式

    https://<playback-endpoint>/v1/dash/<hashed-account-id>/<origin-id>/<assetName>.mpd

    示例

    https://a57b77e98569478b83c10881a22b7a24.mediatailor.us-east-1.amazonaws.com/v1/dash/a1bc06b59e9a570b3b6b886a763d15814a86f0bb/Demo/0.mpd
  • 服务器端报告的广告报告请求格式

    https://<playback-endpoint>/v1/segment/<origin-id>/<session-id>/<manifestNumber>/<HLSSequenceNum>

    示例

    https://a57b77e98569478b83c10881a22b7a24.mediatailor.us-east-1.amazonaws.com/v1/segment/Demo/240ea66-9b07-4770-8ef9-7d16d916b407/0/440384

在 CDN 中,创建一个将清单请求路由到 AWS Elemental MediaTailor 配置终端节点的行为。将行为基于包含短语来区分清单请求和分段请求的规则。

例 路由
  • 根据请求中的关键字 *.m3u8,播放器对 https://CDN_Hostname/some/path/asset.m3u8 的请求将路由到 AWS Elemental MediaTailor 路径 https://mediatailor.us-west-2.amazonaws.com/v1/session/configuration/endpoint

  • 根据请求中的关键字 *.mpd,播放器对 https://CDN_Hostname/some/path/asset.mpd 的请求将路由到 AWS Elemental MediaTailor 路径 https://mediatailor.us-west-2.amazonaws.com/v1/dash/configuration/endpoint