AWS Elemental MediaTailorで設定エイリアスを試してみた

AWS Elemental MediaTailorで設定エイリアスを試してみた

AWS Elemental MediaTailorの設定エイリアス(Configuration alias)を使い、1つのConfiguration設定内でPOSTするデータにより異なるコンテンツソースにアクセスする挙動を確認してみました。
Clock Icon2021.03.30

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

清水です。AWS Media Servicesの細かなアップデートを追っていくコーナーです。本エントリで紹介するのはこちら、AWS Elemental MediaTailorで設定エイリアス(Configuration alias)をサポートし、1つのMediaTailor Configuration内で複数のコンテンツソースやADサーバを指定できるようになりました。(2021/02/25にポストされたアップデート内容になります。)

MediaTailorの設定(リソース)単位であるConfiguration、これまではこのConfigurationに対してそれぞれ1つずつのコンテンツソース、ADサーバを指定するかたちだったと記憶しています。今回アップデートされた設定エイリアス(Configuration alias)を利用することで、コンテンツソース、ADサーバを変数を使うようなかたちで指定することができます。

実際にMediaTailorのユーザガイド記載の内容を確認すると、コンテンツソースは、

  • https://[player_params.origin_domain].mediapackage.[player_params.region].amazonaws.com/out/v1/[player_params.endpoint_id]

またADサーバは

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

という形式でConfiguration設定時に指定が可能となります。そしてBrackets[]で囲まれた箇所は動的変数(dynamic variables)や動的ドメイン変数(dynamic domain variables)と呼ばれ、ユーザがMediaTailorにリクエストを行う際に指定が可能となります。

AWS Elemental MediaTailorで設定エイリアスを試してみた

設定エイリアスを含めたMediaTailor Configurationの作成

それでは実際にこの設定エイリアス(Configuration alias)機能を試してみたいと思います。今回は2種類のドメインからなるコンテンツソースを準備しました。具体的にはそれぞれのコンテンツソースはS3でホスティングしており、広告挿入を行わないかたちでのアクセスの際のドメインはそれぞれ以下となります。

  • https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/
  • https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/

ADサーバについては、以下のaws-samplesに記載があるADサーバ(サンプルのstatic VAST)を使用しました。

MediaTailorのマネジメントコンソール、[Create configuration]ボタンから進みます。

Nameを適切に入力します。続いてContent sourceは以下の形式で入力しました。ドメインvvvで共通ではない部分を動的変数[player_params.origin_domain]としています。

  • https://[player_params.origin_domain].s3-ap-northeast-1.amazonaws.com/

ADサーバについても入力し、その下のConfiguration aliasesの項目、[Add player parameter]ボタンを押下します。

Add player parameterのダイアログが現れます。origin_domainと入力して[Okay]ボタンをクリックします。

Configuration aliasesにplayer_params.origin_domainの項目が現れます。パラメータとしてfirstであれば1つ目のコンテンツソース(末尾が-1のS3バケット)、secondであれば2つ目のコンテンツソース(末尾が-2のS3バケット)というようにしてみます。

[Create configuration]ボタンでConfigurationを作成します。

設定エイリアスを使った広告付き動画再生までの流れの確認

Configuration作成後、このConfiguration aliasを使った変数とエイリアスを使った広告付き動画再生までの流れを確認してみます。

1つ目のコンテンツソースにアクセスするパターン

まずは1つ目のコンテンツソースにアクセスするパターンを確認します。コンテンツソースのドメインは以下です。

  • https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/

コンテンツ自体は、このドメインのhls/sample59.m3u8とします。

  • https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59.m3u8

MediaTailorで設定エイリアスを使った広告付き動画再生を行う場合、MediaTailor側に変数情報のPOSTが必要です。本来は動画再生プレイヤー側などでこの処理を行うことかと思いますが、今回はcurlコマンドで行います。

MediaTailorのConfigurationでSession initialization prefixを確認しましょう。

  • https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/session/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/

この末尾にコンテンツへのパスhls/sample59.m3u8を追加します。

  • https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/session/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/hls/sample59.m3u8

変数部分の指定はPOST時のデータとして指定します。データは以下で、変数origin_domainfirstという値を指定しています。

{
  "playerParams": {
    "origin_domain": "first"
  }
}

これで、コンテンツソースのドメインは

  • https://[player_params.origin_domain].s3-ap-northeast-1.amazonaws.com/

から[player_params.origin_domain]の箇所が上記変数の実際の値(マネジメントコンソールで指定したmy-bucket-1)に置き換わり、

  • https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/

となります。実際に上記データでcurlコマンドからPOSTして確認していきましょう。

% curl -X POST \
       -d '{"playerParams":{"origin_domain":"first"}}' \
       https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/session/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/hls/sample59.m3u8
{"manifestUrl":"/v1/master/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/hls/sample59.m3u8?aws.sessionId=8c55XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX","trackingUrl":"/v1/tracking/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/8c55XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"}

戻り値が返ってきました。戻り値からマニフェストのURLは以下となります。

  • https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/master/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/hls/sample59.m3u8?aws.sessionId=8c55XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

このマニフェストファイルの内容について、引き続きcurlコマンドを使って確認していきます。

% curl "https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/master/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/hls/sample59.m3u8?aws.sessionId=8c55XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:CODECS="avc1.640028,mp4a.40.2",AVERAGE-BANDWIDTH=8922027,RESOLUTION=1920x1080,FRAME-RATE=29.97,BANDWIDTH=9078841
../../../../manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/8c55XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/0.m3u8

0.m3u8を取得してみます。広告動画再生が終わり、実際のコンテンツについては、 https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/ からコンテンツを取得していることがわかります。

% curl "https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com//v1/manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/8c55XXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/0.m3u8"

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-TARGETDURATION:13
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-DISCONTINUITY
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00001.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00002.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00003.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00004.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00005.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00006.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00007.ts
#EXTINF:1.001,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/cdich7rna5ahjlrzq5ljehmye7sb4ucg/asset_1080_9_0_00008.ts
#EXT-X-DISCONTINUITY
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00001.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00002.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00003.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00004.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00005.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00006.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00007.ts
#EXTINF:1.001,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/2uun5ve62rhhjgq6yehczbcqp5cplaz6/asset_1080_9_0_00008.ts
#EXT-X-DISCONTINUITY
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00001.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00002.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00003.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00004.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00005.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00006.ts
#EXTINF:2.002,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00007.ts
#EXTINF:1.001,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/e2fvjwqcjrhq3koo2rfyq5wg4iugsb47/asset_1080_9_0_00008.ts
#EXT-X-DISCONTINUITY
#EXTINF:12.0,
https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59_1080_00001.ts
#EXTINF:12.0,
https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59_1080_00002.ts
#EXTINF:12.0,
https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59_1080_00003.ts
#EXTINF:12.0,
https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59_1080_00004.ts
#EXTINF:12.0,
https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59_1080_00005.ts
#EXTINF:1.0,
https://my-bucket-1.s3-ap-northeast-1.amazonaws.com/hls/sample59_1080_00006.ts
#EXT-X-ENDLIST

2つ目のコンテンツソースにアクセスするパターン

続いて、2つ目のコンテンツソースにアクセスするパターンです。手順は1つ目と同様で、まずMediaTailorに変数情報を含めてデータをPOSTする必要があります。

コンテンツは以下とします。(ドメインのS3バケット名部分ほか、コンテンツへのパスも変わっています。)

  • https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908.m3u8

MediaTailorのSession initialization prefixは先ほどと同じく以下です。

  • https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/session/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/

これにコンテンツのパスtestfolder1/IMG_5908.m3u8を加えつつ、変数部分の指定をPOSTするデータで行います。変数origin_domainsecondという値を指定します。

{
  "playerParams": {
    "origin_domain": "second"
  }
}

これで、コンテンツソースのドメイン部分の[player_params.origin_domain]が上記変数の実際の値(マネジメントコンソールで指定したmy-bucket-2)に置き換わります。

こちらも実際に確認してみましょう。curlコマンドからPOSTします。

% curl -X POST \
       -d '{"playerParams":{"origin_domain":"second"}}' \
       https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/session/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/testfolder1/IMG_5908.m3u8
{"manifestUrl":"/v1/master/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/testfolder1/IMG_5908.m3u8?aws.sessionId=32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX","trackingUrl":"/v1/tracking/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"}

戻り値からマニフェストファイルのURLを確認、ファイルを取得します。

  • https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/master/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/testfolder1/IMG_5908.m3u8?aws.sessionId=32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
% curl "https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/master/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/testfolder1/IMG_5908.m3u8?aws.sessionId=32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:CODECS="avc1.4d401f,mp4a.40.5",AVERAGE-BANDWIDTH=1395661,RESOLUTION=640x360,FRAME-RATE=60.0,BANDWIDTH=1588725
../../../../manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/0.m3u8
#EXT-X-STREAM-INF:CODECS="avc1.640028,mp4a.40.5",AVERAGE-BANDWIDTH=3776644,RESOLUTION=1280x720,FRAME-RATE=60.0,BANDWIDTH=4174602
../../../../manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/1.m3u8
#EXT-X-STREAM-INF:CODECS="avc1.64002a,mp4a.40.2",AVERAGE-BANDWIDTH=8980610,RESOLUTION=1920x1080,FRAME-RATE=60.0,BANDWIDTH=9955979
../../../../manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/2.m3u8
#EXT-X-STREAM-INF:CODECS="avc1.640034,mp4a.40.2",AVERAGE-BANDWIDTH=20843962,RESOLUTION=3840x2160,FRAME-RATE=60.0,BANDWIDTH=22867318
../../../../manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/3.m3u8

3.m3u8にアクセスしてみます。広告動画再生が終わり実際のコンテンツにアクセスする際には、https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/、つまり2つ目のコンテンツソースにアクセスできていることが確認できます。

% curl "https://e660XXXXXXXXXXXXXXXXXXXXXXXXXXXX.mediatailor.ap-northeast-1.amazonaws.com/v1/manifest/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ConfigurationAliasTest/32caXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/3.m3u8"
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-TARGETDURATION:3
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-DISCONTINUITY
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00001.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00002.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00003.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00004.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00005.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00006.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00007.ts
#EXTINF:1.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/x5oxnuzttbb3tjkosr7d53nsjajgkgxt/asset_2160_22_0_00008.ts
#EXT-X-DISCONTINUITY
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00001.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00002.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00003.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00004.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00005.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00006.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00007.ts
#EXTINF:1.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/nyoqhpktsnhu5heli6yfhup25sffxk32/asset_2160_22_0_00008.ts
#EXT-X-DISCONTINUITY
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00001.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00002.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00003.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00004.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00005.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00006.ts
#EXTINF:2.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00007.ts
#EXTINF:1.0,
https://segments.mediatailor.ap-northeast-1.amazonaws.com/tm/75e6XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/arkeqqbs4zdrjl5n55exlasa6fcki7i6/asset_2160_22_0_00008.ts
#EXT-X-DISCONTINUITY
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00001.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00002.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00003.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00004.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00005.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00006.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00007.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00008.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00009.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00010.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00011.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00012.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00013.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00014.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00015.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00016.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00017.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00018.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00019.ts
#EXTINF:3.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00020.ts
#EXTINF:1.0,
https://my-bucket-2.s3-ap-northeast-1.amazonaws.com/testfolder1/IMG_5908_2160_00021.ts
#EXT-X-ENDLIST

まとめ

AWS Elemental MediaTailorの設定エイリアス(Configuration alias)を使い、1つのConfiguration設定内でPOSTするデータにより異なるコンテンツソースにアクセスする挙動を確認してみました。今回はコンテンツソースのドメイン部分のみを変数で指定したかたちでしたが、コンテンツソースのパス部分やADサーバのパラメタなどにも、設定エイリアス(Configuration alias)/動的ドメイン変数(dynamic domain variables)は使用可能です。これまでコンテンツソース、ADサーバの違いなどにより複数のConfigurationにわけていたものを容易にまとめることができそうです。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.