使用域变量 - AWS Elemental MediaTailor

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

使用域变量

使用动态域变量,您可以将多个域名(例如 URL http://my-ads-server.com 中的.com 部分)与您的配置中的玩家参数一起使用。my-ads-server这样,您就可以在单一配置中使用多个内容来源或广告决策服务器 (ADS)。

您可以将域变量与任何包含 URI 的参数一起使用:

  • AdDecisionServerUrl

  • AdSegmentUrlPrefix

  • ContentSegmentUrlPrefix

  • LivePreroll.AdDecisionServerUrl

  • VideoContentSourceUrl

域变量与配置别名一起使用以执行动态变量替换。配置别名将一组别名和值映射到用于动态域配置的玩家参数。

创建配置别名以用作动态变量

在开始使用域变量之前,需要为配置创建配置别名。在会话初始化时,您可以使用配置别名作为域替换变量。例如,您可以使用配置别名在会话初始化期间动态配置源 URL。

创建配置别名

要使用 MediaTailor控制台创建用于域替换的配置别名,请执行以下步骤。

使用控制台创建配置别名
  1. 打开 MediaTailor 控制台,网址为 https://console.aws.amazon.com/mediatailor/

  2. 配置页面的配置别名部分,选择添加玩家参数

  3. 键入要用作域名替换的动态变量的玩家参数名称。名称前必须加上player_params.

  4. 选择 OK(确定)

    AWS Elemental MediaTailor在 “配置别名” 部分的表中显示新参数。

  5. 现在,您将添加别名和值。选择您刚才命名的玩家参数。这将扩展参数名称下方的部分。

    选择 “添加新别名”。

  6. 输入名密钥和。 MediaTailor 使用 Valu e 作为域变量的替换值。

使用配置别名为会话动态配置域

设置配置别名后,可以在会话初始化请求中将其用作域的替换变量。这使您能够动态配置会话的域。

限制

使用配置别名时,请注意以下限制:

  • 域中使用的所有动态变量都必须定义为ConfigurationAliases动态变量。

  • 玩家参数变量前缀必须为。player_params.例如,player_params.origin_domain

  • 每个玩家参数的别名值列表必须详尽无遗。

  • 如果请求域中使用的动态值,而该请求要么没有指定动态变量,要么没有为该变量指定预先配置的别名之一,则请求将失败,并显示 HTTP 400 状态码。

例 用法示例

以下是包含配置别名和动态域变量的配置示例。请特别注意玩家参数变量[player_params.origin_domain],例如AdDecisionServerUrlVideoContentSourceUrl参数域中的变量。

PUT /playbackConfiguration { "Name": "aliasedConfig", ... "AdDecisionServerUrl": "https://abc.execute-api.us-west-2.amazonaws.com/ads?sid=[session.id]&ad_type=[player_params.ad_type]", "VideoContentSourceUrl": "https://[player_params.origin_domain].mediapackage.[player_params.region].amazonaws.com/out/v1/[player_params.endpoint_id]", ... "ConfigurationAliases": { "player_params.origin_domain": { "pdx": "abc", "iad": "xyz" }, "player_params.region": { "pdx": "us-west-2", "iad": "us-east-1" }, "player_params.endpoint_id": { "pdx": "abcd", "iad": "wxyz" }, "player_params.ad_type": { "customized": "abc12345", "default": "defaultAdType" }, }, ... }

使用上述配置,创建会话初始化请求,指定玩家变量和别名:

POST master.m3u8 { "playerParams": { "origin_domain": "pdx", "region": "pdx", "endpoint_id": "pdx", "ad_type": "customized" } }

MediaTailor 用配置别名配置中的映射值替换别名字符串。

向 ADS 发出的请求如下所示:

https://abc.execute-api.us-west-2.amazonaws.com/ads?sid=[session.id]&ad_type=abc12345

对的请求VideoContentSource如下所示:

https://abc.mediapackage.us-west-2.amazonaws.com/out/v1/abcd