サポート問い合わせ先| システムステータス
ページコンテンツ

    概要:EPG API

    This topic provides and overview of the EPG API, which is used with Cloud Playout.

    入門

    に関連する2つのAPIがありますクラウドプレイアウト

    • EPG APIを使用すると、クラウドプレイアウトチャネルの電子番組ガイドを取得できます。Cloud Playoutは、次のスキーマで説明されているように、XMLTV標準に準拠したEPGを生成します。 https://repository.data2type.de/XMLTV/v_1.47/html/index.html
    • Channels APIを使用すると、UIまたはWebページに表示できるCloudPlayoutチャネルに関する情報を取得できます。見る概要:Channels API

    認証

    Cloud PlayoutAPIはBrightcoveOAuthシステムリクエストとともに認証ヘッダーで渡されるアクセストークンを介してリクエストを認証するには、次のようにします。

    Authorization: Bearer {access token}

    アクセストークンは、OAuthAPIを使用して取得されます-を参照してくださいアクセストークンの取得詳細については。アクセストークンのリクエストを認証するには、クライアントの資格情報も必要です。これらはStudioの管理セクションで作成できます-を参照してくださいAPI資格情報の管理。資格情報がEPG APIに必要とする権限は次のとおりです。

    EPG API Permissions
    EPG API のアクセス許可

    EPGリクエストパラメータ

    次のオプションのクエリパラメータをEPGリクエストに追加できます。

    EPG APIクエリパラメータ
    パラメーター デフォルト値 説明
    start (今から14日前) EPG応答を照会し、ISO8601日付形式で返すことができる日時
    end (現在-現在の日時) EPG応答を照会してISO8601日付形式で返すことができる日時
    limit (すべてのプログラム) 1つの要求で返されるプログラムの数を制御する整数値。制限値(デフォルト:100)により、指定した期間のすべてのプログラムが返されなくなる場合があることに注意してください。見るEPG APIのベストプラクティス詳細については
    include_ads false これをtrueに設定すると、応答に広告が含まれます

    1. ザ・start / endウィンドウは14日を超えることはできません。履歴EPGを照会するには、開始が現在の日時から14日遅れることがあります。また、現在の日時から最大14日間の将来のEPGデータを取得できます。
    2. 終了時刻と開始時刻の差が14日を超える場合、APIは、要求された時刻から終了時刻までの14日または14日のいずれか早い方のみを生成します。
    3. どちらもstartそしてendタイムゾーンオフセットがある場合とない場合の日時値を受け入れることができます-タイムゾーンオフセットが含まれていない場合、UTCが想定されます。
    4. どちらもstartそしてend URIエンコードする必要があります:
      URI エンコード
      ISO8601サンプル URIエンコード
      2020-07-24 15:30:00 2020-07-24%2015%3A30%3A00
      2020-07-24 15:30:00 +0530 2020-07-24%2015%3A30%3A00%20%2B0530

    サンプルEPG API応答

    以下は、APIからのサンプル応答です。

    <?xml version="1.0" encoding="utf-8"?>
        <tv source-info-name="Cloudplayout Schedules" source-info-url="http://www.cloudplayout.qa.brightcove.com">
            <channel id="9fb8032ff2fe4f55b388d8969c22ca58">
                <display-name>MyCloudChannel</display-name>
                <icon src="https://bc-cloudplayout-prod.s3.amazonaws.com/default_channel_image.png"/>
            </channel>
            <programme channel="9fb8032ff2fe4f55b388d8969c22ca58" start="20201120132000" stop="20201120132228">
                <title>Frozen</title>
                <desc>FrozenMultiLanguage</desc>
                <length units="seconds">147.605</length>
                <icon src="https://cf-images.us-east-1.qa.boltdns.net/v1/jit/6063799219001/43d57501-b98a-4708-bdd1-a09081f7a585/main/1280x720/1m13s802ms/match/image.jpg" width="1280" height="720"/>
                <category>video</category>
                <keyword>eyJ2aWRlb19pZCI6IjcwNzAwNDQxMDk2MjAyIiwib3JkZXIiOjEsInRhZ3MiOiJjaGlsZHJlbixjb21lZHkiLCJjdXN0b21fbWV0YWRhdGEiOnsicmVnaW9uIjoiYWZyaWNhIiwic29uZ3MiOjV9fQ==</keyword>
            </programme>
            <programme channel="9fb8032ff2fe4f55b388d8969c22ca58" start="20201120132228" stop="20201120133228">
                <title>LiveDemo</title>
                <desc>Live Demo</desc>
                <length units="seconds">600.0</length>
                <icon src="https://img.brightcove.com/cloudplayout/live-icon.jpg" width="1280" height="720"/>
                <category>live</category>
                <keyword>eyJ2aWRlb19pZCI6IjcwNzAxNDg0MjA3MjAyIiwib3JkZXIiOjIsInRhZ3MiOiJjcC1saXZlLXBsYWNlaG9sZGVyLGR1cmF0aW9uLTAwOjEwOjAwIiwiY3VzdG9tX21ldGFkYXRhIjp7InJlZ2lvbiI6Im5vcnRoIGFtZXJpY2EifX0=</keyword>
            </programme>
            <programme channel="9fb8032ff2fe4f55b388d8969c22ca58" start="20201120133228" stop="20201120133327">
                <title>ChildrenComedy</title>
                <desc>ChildrenComedy</desc>
                <length units="seconds">59.164</length>
                <icon src="https://cf-images.us-east-1.qa.boltdns.net/v1/jit/6063799219001/9430773f-76f5-476e-964d-a13b40cab90a/main/1280x720/29s582ms/match/image.jpg" width="1280" height="720"/>
                <category>video</category>
                <keyword>eyJ2aWRlb19pZCI6IjcwNzAxMjE2NDgyMjAyIiwib3JkZXIiOjMsInRhZ3MiOiJyb21hbmNlIiwiY3VzdG9tX21ldGFkYXRhIjp7InJlZ2lvbiI6ImFzaWEiLCJzb25ncyI6NX19</keyword>
            </programme>
            <programme>
                ...
            </programme>
        </tv>

    1. 開始タイムスタンプと終了タイムスタンプはUTC時間です。
    2. ザ・categoryそしてkeywordエントリは内部目的です。

    EPGデータには複数のプログラムデータが含まれており、各プログラムはビデオまたはライブアセットに関する詳細を表します。

    <programme channel = "27963aa756294a7c98ca1c2c459d4ba2" start = "20201118232206" stop = "20201118232305"> <title> ChildrenComedy </ title> <desc> ChildrenComedy </ desc> <length> units = "seconds"> 59.164 </ length> <icon > src = "https://cf-images.us-east-1.qa.boltdns.net/v1/jit/6063799219001/9430773f-76f5-476e-964d-a13b40cab90a/main/1280x720/29s582ms/match/image JPG」幅= "1280" 高さ= "720"> </アイコン> <カテゴリ>ビデオ</カテゴリ> <キーワード> eyJ2aWRlb19pZCI6IjcwNzAxMjE2NDgyMjAyIiwib3JkZXIiOjEsInRhZ3MiOiJjaGlsZHJlbixjb21lZHkiLCJjdXN0b21fbWV0YWRhdGEiOnsicmVnaW9uIjoiYWZyaWNhIiwic29uZ3MiOjV9fQ == </キーワード> </プログラム>

    ここでは、keyword base64でエンコードされたjson値が含まれます。のデコードされた値keyword以下に示します。

    • video_id:は、VideoCloudの場合と同様にビデオの識別子です。
    • order:は、CloudPlayoutプログラムリスト内のアセットの順序です。
    • tags:カンマ区切り(存在する場合)-ビデオクラウド内の対応するビデオに関連付けられます。
    • カスタムメタデータ:(存在する場合は、名前と値のペアとして表されます)ビデオクラウド内の対応するビデオに関連付けられます。
    {
      "video_id":"70701216482202",
      "order":1,
      "tags":"children,comedy",
      "custom_metadata":{
        "region":"africa",
        "songs":5
      }
    }

    EPGとバンパー

    EPGがバンパーを処理する方法

    EPGにはバンパー自体は含まれません。バンパーの持続時間は次のように反映されます。

    • プレロールバンパーの持続時間が追加されます以下ビデオの長さ
    • ポストロールバンパーの持続時間がに追加されますビデオの長さ

    潜在的な問題

    EPGが不正確になる原因となる可能性のある2つのことがあります。

    • 両方のプレロールになるようにビデオにタグを付ける(cp-preroll-bumperそしてポストロール(cp-postroll-bumper)期間を追加する場所を決定するのはタグに依存するため、EPGは不正確になります。動画に両方のタグがある場合、バンパーの長さは前の動画と次の動画の両方に追加されます。
    • Cloud Playoutプログラムリストでバンパーを移動できますが、プレロールバンパーの直後にポストロールバンパーが続くように配置すると、両方のバンパーが再生されますが、EPG APIはそれらとそのスケジュールを無視します期間は空になります。

    制限

    1. EPGは、ベストエフォート/ほぼ正確に生成されます。
    2. EPGが最初にプレイリストから作成されるとき、クラウドプレイアウトが切り替えを開始するのに時間がかかるため、開始時間エラーが発生する可能性があります。
    3. EPGは、保持している現在の情報に基づいて動的に構築されるため、プレイリストが変更されたときにすべての取得で一貫しているとは限りません。EPGを変更するアクションには、プレイリストの並べ替えやプレイリスト内のアセットの追加/削除などがあります。
    4. 切り替えで誤動作が発生し、切り替え時間が正確でない場合、将来のEPGでトランジットが不正確になる可能性があります。これを引き起こす可能性のあるアクションの例としては、プレイリストの切り替えや、プレイリスト内の現在アクティブなアセットの削除などがあります。
    5. EPGの消費者は、最も正確なバージョンを取得するために、可能な限りリアルタイムに近いものを要求する必要があります。

    ページの最終更新日22 Sep 2021