IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブライトコーブ インコーポレイテッドの特許一覧

特表2023-528366追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI)
<>
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図1
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図2
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図3
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図4
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図5
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図6
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図7
  • 特表-追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI) 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-07-04
(54)【発明の名称】追加メタデータ及びクライアント機能を有するサーバ側広告挿入(SSAI)
(51)【国際特許分類】
   H04N 21/262 20110101AFI20230627BHJP
   H04N 21/235 20110101ALI20230627BHJP
【FI】
H04N21/262
H04N21/235
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022572708
(86)(22)【出願日】2021-05-28
(85)【翻訳文提出日】2022-12-23
(86)【国際出願番号】 US2021034908
(87)【国際公開番号】W WO2021243242
(87)【国際公開日】2021-12-02
(31)【優先権主張番号】63/031,446
(32)【優先日】2020-05-28
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521316660
【氏名又は名称】ブライトコーブ インコーポレイテッド
【氏名又は名称原語表記】BRIGHTCOVE INC.
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(74)【代理人】
【識別番号】100142907
【弁理士】
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】ミンゴラ、ジェイコブ ジョン
(72)【発明者】
【氏名】バーストウ、クレイグ ロッドマン
(72)【発明者】
【氏名】ラグルズ、トーマス ハーバート ザ サード
(72)【発明者】
【氏名】リベラ、ジョン-カルロス
(72)【発明者】
【氏名】セイン、トラビス アルバート
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA06
5C164FA25
5C164MA05S
5C164MB11S
5C164MB44S
5C164SB08P
5C164SC04S
5C164SC28P
(57)【要約】
オリジンサーバから取得したメタデータに基づいて、メディアプレーヤのカスタマイズされたインタラクションを提供する方法。1つのステップにおいて、オリジンサーバは、アクティブサブストリームコンテンツに関連するメタデータを取得する。メディアプレーヤには、プライマリビデオストリームを再生するためのプレイリストが提供される。プレイリストはメタデータのリクエストを含み、リクエストはプライマリビデオストリームの再生におけるアクティブサブストリームコンテンツの挿入に関連付けられている。オリジンサーバは、メディアプレーヤからメタデータのリクエストを受信する。オリジンサーバは、アクティブサブストリームコンテンツとメタデータセグメントとをプライマリビデオストリームに挿入する。セカンダリビデオストリームは、アクティブサブストリームコンテンツの挿入後に取得される。オリジンサーバは、メタデータストレージとメタデータサービスとを使用してメタデータをメディアプレーヤに提供する。メディアプレーヤは、セカンダリビデオストリームの再生中にメタデータを使用してインタラクションをカスタマイズする。
【特許請求の範囲】
【請求項1】
メディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法であって、
オリジンサーバによって、プライマリビデオストリームの再生のためのアクティブサブストリームコンテンツに対応するメタデータをサードパーティプロバイダから取得して、前記オリジンサーバによって前記メタデータをメタデータストレージに記憶することと、
前記プライマリビデオストリームを再生するためのプレイリストを前記メディアプレーヤに提供することであって、前記プレイリストが前記メタデータのリクエストを含み、前記リクエストが前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている、前記プレイリストを前記メディアプレーヤに提供することと、
前記オリジンサーバによって前記メディアプレーヤから前記メタデータの前記リクエストを受信することであって、前記リクエストが前記メディアプレーヤにおける前記プライマリビデオストリームの再生中に受信される、前記メタデータの前記リクエストを受信することと、
前記オリジンサーバによって前記メタデータの前記プレイリストに統一資源識別子(URI)を挿入することと、
セカンダリビデオストリームを取得するために、前記オリジンサーバによって、メタデータセグメントと共に前記アクティブサブストリームコンテンツを前記プライマリビデオストリームに挿入することと、
前記オリジンサーバによって、前記アクティブサブストリームコンテンツに対応する前記メタデータを、メタデータサービスを使用して前記メディアプレーヤに提供することであって、前記オリジンサーバによって前記メタデータを前記メディアプレーヤに提供することが、
前記メタデータサービスによって、
前記URIを使用して前記メタデータストレージからアプリケーションプログラミングインターフェース(API)レスポンスを取り出すことと、
前記オリジンサーバから前記アクティブサブストリームコンテンツのタイミング情報を取り出すことと、
を含み、前記タイミング情報と前記APIレスポンスとを含む前記メタデータが、前記メタデータセグメントを使用して前記メタデータサービスによって前記メディアプレーヤに提供される、前記メタデータを前記メディアプレーヤに提供することと、
前記メディアプレーヤによって、前記アクティブサブストリームコンテンツに関連付けられた機能を前記メタデータから抽出することと、
前記メディアプレーヤによって、前記アクティブサブストリームコンテンツに関連付けられた前記機能に基づいて、前記セカンダリビデオストリームの再生中に前記メディアプレーヤのインタラクションをカスタマイズすることと、
を備える方法。
【請求項2】
前記機能が、前記アクティブサブストリームコンテンツを早送り若しくはスキップするためのビデオカセットレコーダ(VCR)タイプの制御を無効にすること、サブストリーム区切り間隔における音量制御を無効にすること、及び/又はクリックスルー機能を有効にすることを含む、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項3】
前記オリジンサーバによって前記サードパーティプロバイダに分析情報を提供することと、
前記メディアプレーヤによって前記メタデータにより前記分析情報を提供することと、
を更に備える
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項4】
前記APIレスポンスがビデオ広告サービングテンプレート(VAST)を含む、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項5】
コンテンツ配信ネットワーク(CDN)が、空のヘッダからなり且つデータを含まないブランクセグメントを前記メタデータサービスのフェイルオーバ時に前記メディアプレーヤに提供することで前記メタデータセグメントを提供する、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項6】
前記メタデータのメタデータトラックが前記メディアプレーヤのカスタマイズ情報を含み、前記メタデータトラックが前記セカンダリビデオストリームのオーディオトラック及びビデオトラックから分離されている、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項7】
前記メディアプレーヤの前記インタラクションをカスタマイズするために、前記メタデータを解析するべくプラグインが前記メディアプレーヤによって使用される、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項8】
前記プレイリストが、前記メタデータの前記リクエストに関連付けられたゼロ秒持続時間セグメントを更に含む、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項9】
前記プライマリビデオストリームが、ハイパーテキスト転送プロトコル(HTTP)ライブストリーミング(HLS)フォーマット、動的アダプティブストリーミングオーバーHTTP(DASH)、又はSCTE-35フォーマットである、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項10】
メディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバであって、
通信インターフェースと、
メモリと、
前記通信インターフェース及び前記メモリに結合されたプロセッサと、
を備え、
前記プロセッサは、
プライマリビデオストリームの再生のためのアクティブサブストリームコンテンツに対応するメタデータをサードパーティプロバイダから取得して、メタデータストレージに前記メタデータを記憶することであって、前記プライマリビデオストリームを再生するためのプレイリストが前記メディアプレーヤに提供され、前記プレイリストが前記メタデータのリクエストを含み、前記リクエストが前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている、前記メタデータを記憶することと、
前記メディアプレーヤから前記メタデータの前記リクエストを受信することであって、前記リクエストが前記メディアプレーヤにおける前記プライマリビデオストリームの再生中に受信される、前記メタデータの前記リクエストを受信することと、
前記メタデータの前記プレイリストに統一資源識別子(URI)を挿入することと、
セカンダリビデオストリームを取得するために、メタデータセグメントと共に前記アクティブサブストリームコンテンツを前記プライマリビデオストリームに挿入することと、
前記アクティブサブストリームコンテンツのタイミング情報をメタデータサービスに提供することと、
前記アクティブサブストリームコンテンツに対応する前記メタデータを、前記メタデータサービスを使用して前記メディアプレーヤに提供することと、
を含む機能を実行するように構成されており、
前記URIを使用して前記メタデータサービスによって前記メタデータストレージからアプリケーションプログラミングインターフェース(API)レスポンスが取り出され、
前記タイミング情報と前記APIレスポンスとを含む前記メタデータが、前記メタデータセグメントを使用して前記メタデータサービスによって前記メディアプレーヤに提供され、
前記メディアプレーヤが、前記アクティブサブストリームコンテンツに関連付けられた機能を前記メタデータから抽出して、前記セカンダリビデオストリームの再生中に前記メディアプレーヤのインタラクションをカスタマイズする、
サーバ。
【請求項11】
前記機能が、前記アクティブサブストリームコンテンツを早送り若しくはスキップするためのビデオカセットレコーダ(VCR)タイプの制御を無効にすること、サブストリーム区切り間隔における音量制御を無効にすること、及び/又はクリックスルー機能を有効にすることを含む、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項12】
前記サードパーティプロバイダに分析情報を提供することを更に実行し、
前記メディアプレーヤが、前記メタデータにより前記分析情報を提供する、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項13】
前記APIレスポンスがビデオ広告サービングテンプレート(VAST)を含む、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項14】
コンテンツ配信ネットワーク(CDN)が、空のヘッダからなり且つデータを含まないブランクセグメントを前記メタデータサービスのフェイルオーバ時に前記メディアプレーヤに提供することで前記メタデータセグメントを提供する、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項15】
前記メタデータのメタデータトラックが前記メディアプレーヤのカスタマイズ情報を含み、前記メタデータトラックが前記セカンダリビデオストリームのオーディオトラック及びビデオトラックから分離されている、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項16】
前記メディアプレーヤの前記インタラクションをカスタマイズするために、前記メタデータを解析するべくプラグインが前記メディアプレーヤによって使用される、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項17】
前記プレイリストが、前記メタデータの前記リクエストに関連付けられたゼロ秒持続時間セグメントを更に含む、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項18】
ビデオの再生中にメタデータに基づいてメディアプレーヤのインタラクションをカスタマイズするための命令が埋め込まれた非一時的コンピュータ可読媒体であって、
前記命令は、1つ又は複数のコンピュータによって実行されたときに前記1つ又は複数のコンピュータに、
オリジンサーバによって、プライマリビデオストリームの再生のためのアクティブサブストリームコンテンツに対応するメタデータをサードパーティプロバイダから取得して、前記オリジンサーバによって前記メタデータをメタデータストレージに記憶することと、
前記プライマリビデオストリームを再生するためのプレイリストを前記メディアプレーヤに提供することであって、前記プレイリストが前記メタデータのリクエストを含み、前記リクエストが前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている、前記プレイリストを前記メディアプレーヤに提供することと、
前記オリジンサーバによって前記メディアプレーヤから前記メタデータの前記リクエストを受信することであって、前記リクエストが前記メディアプレーヤにおける前記プライマリビデオストリームの再生中に受信される、前記メタデータの前記リクエストを受信することと、
前記オリジンサーバによって前記メタデータの前記プレイリストに統一資源識別子(URI)を挿入することと、
セカンダリビデオストリームを取得するために、前記オリジンサーバによって、メタデータセグメントと共に前記アクティブサブストリームコンテンツを前記プライマリビデオストリームに挿入することと、
前記オリジンサーバによって、前記アクティブサブストリームコンテンツに対応する前記メタデータを、メタデータサービスを使用して前記メディアプレーヤに提供することであって、前記オリジンサーバによって前記メタデータを前記メディアプレーヤに提供することが、
前記メタデータサービスによって、
前記URIを使用して前記メタデータストレージからアプリケーションプログラミングインターフェース(API)レスポンスを取り出すことと、
前記オリジンサーバから前記アクティブサブストリームコンテンツのタイミング情報を取り出すことと、
を含み、前記タイミング情報と前記APIレスポンスとを含む前記メタデータが、前記メタデータセグメントを使用して前記メタデータサービスによって前記メディアプレーヤに提供される、前記メタデータを前記メディアプレーヤに提供することと、
前記メディアプレーヤによって、前記アクティブサブストリームコンテンツに関連付けられた機能を前記メタデータから抽出することと、
前記メディアプレーヤによって、前記アクティブサブストリームコンテンツに関連付けられた前記機能に基づいて、前記セカンダリビデオストリームの再生中に前記メディアプレーヤのインタラクションをカスタマイズすることと、
を実行させる、
非一時的コンピュータ可読媒体。
【請求項19】
前記プライマリビデオストリームが、ハイパーテキスト転送プロトコル(HTTP)ライブストリーミング(HLS)フォーマット、動的アダプティブストリーミングオーバーHTTP(DASH)、又はSCTE-35フォーマットである、
請求項18に記載の非一時的コンピュータ可読媒体。
【請求項20】
前記プレイリストが、前記メタデータの前記リクエストに関連付けられたゼロ秒持続時間セグメントを更に含む、
請求項18に記載の非一時的コンピュータ可読媒体。
【請求項21】
前記メディアプレーヤによって前記抽出することが、前記メタデータセグメント内のID3キューを復号することを含み、
前記メタデータセグメントが、ID3タグを搬送するゼロ長メディアセグメントとして提供される、
請求項1に記載のメディアプレーヤにおけるビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法。
【請求項22】
前記機能が、前記メタデータセグメント内のID3キューを復号することにより導出され、
前記メタデータセグメントが、ID3タグを搬送するゼロ長のメディアセグメントとして提供される、
請求項10に記載のメディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバ。
【請求項23】
前記機能が、前記メタデータセグメント内のID3キューを使用して導出され、
前記メタデータセグメントが、ID3タグを搬送するゼロ長のメディアセグメントとして提供される、
請求項18に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
追加メタデータ及びクライアント機能を有するサーバ側広告挿入に関する。本出願は、2020年5月28日に出願された米国特許仮出願第63/031,446号の利益を主張するものであり、あらゆる目的のためにその全体が参照により本明細書に組み込まれる。
【背景技術】
【0002】
ビデオストリームに広告が埋め込まれることにより、広告主は多数の視聴者と容易につながることができる。こうした広告は、広範囲の視聴者を確保するための独自の機会を広告主に提供する。広告付きビデオストリームは広く普及しており、これにより消費者はビデオストリームを無料で、又は低コスト若しくは最小限のコストで視聴することができる。
【0003】
ビデオへの広告の挿入は、従来、クライアント側広告挿入(client-side ad insertion:CSAI)及びサーバ側広告挿入(server-side ad insertion:SSAI)を使用して行われてきた。CSAIは、一般に、メディアプレーヤが広告プロバイダと直接通信することで、関連する視聴分析情報も提供しながら、広告のダウンロード及び再生を行うことを指す。CSAIソリューションは、一般に、開発者によるプレーヤ内のカスタマイズを可能にし、他のページ要素とのインタラクティブ性の増加を促進する。しかしながら、目障り且つ気を散らす広告は、消費者にとって迷惑なものとなり、そのような広告の再生を防止するために広告ブロッキングソフトウェアを使用することを消費者に強いる。また、広告ブロッカーが使用されると、広告からの分析情報の収集が妨げられ、広告付きビデオの収益性及び持続可能性の低下を引き起こす。
【0004】
一方、SSAIは、広告挿入及び分析情報のためにサーバを使用する。SSAIを使用すれば広告ブロッキング防止効果はあるが、従来のSSAIソリューションでは、CSAIソリューションよりも分析情報の精度が低く、カスタマイズ性に劣ると考えられる。信頼でき、且つ従来の広告ブロッカーによる妨害が困難な、誘出ページインタラクティブ性及びカスタマイズを有することは、広告プロバイダにとっても消費者にとっても重要である。
【発明の概要】
【0005】
本開示の一実施形態において、オリジンサーバから取得されたメタデータに基づいて、メディアプレーヤのカスタマイズされたインタラクションを提供する方法が提供される。1つのステップにおいて、前記オリジンサーバは、アクティブサブストリームコンテンツに関連するメタデータを取得する。前記メディアプレーヤには、プライマリビデオストリームを再生するためのプレイリストが提供される。前記プレイリストは前記メタデータのリクエストを含み、前記リクエストは、前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている。前記オリジンサーバは、前記メディアプレーヤから前記メタデータの前記リクエストを受信する。前記オリジンサーバは、前記アクティブサブストリームコンテンツと前記メタデータセグメントとを前記プライマリビデオストリームに挿入する。セカンダリビデオストリームは、前記アクティブサブストリームコンテンツの挿入後に取得される。前記オリジンサーバは、メタデータストレージとメタデータサービスとを使用して前記メタデータを前記メディアプレーヤに提供する。前記メディアプレーヤは、前記セカンダリビデオストリームの再生中に前記メタデータを使用して前記インタラクションをカスタマイズする。
【0006】
本開示の一実施形態において、メディアプレーヤにおけるビデオの再生中に、メタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法が提供される。1つのステップにおいて、プライマリビデオストリームの再生のためのアクティブサブストリームコンテンツに対応するメタデータが、サードパーティプロバイダからオリジンサーバによって取得され、記憶される。前記メタデータは、メタデータストレージに記憶される。前記プライマリビデオストリームを再生するためのプレイリストは、前記メディアプレーヤに提供される。前記プレイリストは前記メタデータのリクエストを含み、前記リクエストは、前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている。前記メタデータの前記リクエストは、前記メディアプレーヤから前記オリジンサーバによって受信される。前記リクエストは、前記メディアプレーヤにおける前記プライマリビデオストリームの再生中に受信される。統一資源識別子(Uniform Resource Identifiers:URI)は、前記オリジンサーバによって前記メタデータのプレイリストに挿入される。セカンダリビデオストリームを取得するために、前記オリジンサーバによって前記アクティブサブストリームコンテンツが、メタデータセグメントと共に前記プライマリビデオストリームに挿入される。前記アクティブサブストリームコンテンツに対応する前記メタデータは、メタデータサービスを使用して、前記オリジンサーバによって前記メディアプレーヤに提供される。前記オリジンサーバによる前記メディアプレーヤへの前記メタデータの提供は、前記メタデータサービスによって、前記URIを使用して前記メタデータストレージからアプリケーションプログラミングインターフェース(Application Programming Interface:API)レスポンスを取り出すこと、及び前記オリジンサーバから前記アクティブサブストリームコンテンツのタイミング情報を取り出すことに基づく。前記タイミング情報と前記APIレスポンスとを含む前記メタデータは、前記メタデータセグメントを使用して前記メタデータサービスによって前記メディアプレーヤに提供される。前記メタデータからの前記アクティブサブストリームコンテンツに関連付けられた機能は、前記メディアプレーヤによって抽出される。前記アクティブサブストリームコンテンツに関連付けられた機能に基づいて、前記セカンダリビデオストリームの再生中に前記メディアプレーヤのインタラクションがカスタマイズされる。
【0007】
本開示の別の実施形態において、メディアプレーヤにおけるビデオの再生中にメディアプレーヤのインタラクションをカスタマイズするためのメタデータを提供するように構成されたサーバが提供される。サーバは、通信インターフェースと、メモリと、通信インターフェース及びメモリに結合されたプロセッサとを備える。プライマリビデオストリームの再生のためのアクティブサブストリームコンテンツに対応するメタデータは、サードパーティプロバイダから取得される。前記メタデータは、メタデータストレージに記憶される。プライマリビデオストリームを再生するためのプレイリストは、前記メディアプレーヤに提供される。前記プレイリストは前記メタデータのリクエストを含む。前記リクエストは、前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている。前記メタデータの前記リクエストは、前記メディアプレーヤから受信される。前記リクエストは、前記メディアプレーヤにおける前記プライマリビデオストリームの再生中に受信される。統一資源識別子(URI)は、前記メタデータの前記プレイリストに挿入される。セカンダリビデオストリームを取得するために、前記アクティブサブストリームコンテンツが前記メタデータセグメントと共に前記プライマリビデオストリームに挿入される。メタデータサービスには、前記アクティブサブストリームコンテンツのタイミング情報が提供される。前記アクティブサブストリームコンテンツに対応する前記メタデータは、前記メタデータサービスを使用して前記メディアプレーヤに提供される。アプリケーションプログラミングインターフェース(API)レスポンスは、前記URIを使用して前記メタデータサービスによって前記メタデータストレージから取り出される。前記タイミング情報と前記APIレスポンスとを含む前記メタデータは、前記メタデータセグメントを使用して前記メタデータサービスによって前記メディアプレーヤに提供される。前記メディアプレーヤは、前記メタデータから前記アクティブサブストリームコンテンツに関連付けられた機能を抽出して、前記セカンダリビデオストリームの再生中に前記メディアプレーヤのインタラクションをカスタマイズする。
【0008】
本開示の更に別の実施形態において、ビデオの再生中にメタデータに基づいてメディアプレーヤのインタラクションをカスタマイズする命令が埋め込まれた非一時的コンピュータ可読媒体が提供される。前記命令は、1つ又は複数のコンピュータによって実行されたときに1つ又は複数のコンピュータに、
オリジンサーバによって、プライマリビデオストリームの再生のためのアクティブサブストリームコンテンツに対応するメタデータをサードパーティプロバイダから取得して、前記オリジンサーバによって前記メタデータをメタデータストレージに記憶することと、
前記プライマリビデオストリームを再生するためのプレイリストを前記メディアプレーヤに提供することであって、前記プレイリストが前記メタデータのリクエストを含み、前記リクエストが前記プライマリビデオストリームの再生における前記アクティブサブストリームコンテンツの挿入に関連付けられている、前記プレイリストを前記メディアプレーヤに提供することと、
前記オリジンサーバによって前記メディアプレーヤから前記メタデータの前記リクエストを受信することであって、前記リクエストが前記メディアプレーヤにおける前記プライマリビデオストリームの再生中に受信される、前記メタデータの前記リクエストを受信することと、
前記オリジンサーバによって前記メタデータの前記プレイリストに統一資源識別子(URI)を挿入することと、
セカンダリビデオストリームを取得するために、前記オリジンサーバによって、メタデータセグメントと共に前記アクティブサブストリームコンテンツを前記プライマリビデオストリームに挿入することと、
前記オリジンサーバによって、前記アクティブサブストリームコンテンツに対応する前記メタデータを、メタデータサービスを使用して前記メディアプレーヤに提供することであって、前記オリジンサーバによって前記メタデータを前記メディアプレーヤに提供することが、
前記メタデータサービスによって、
前記URIを使用して前記メタデータストレージからアプリケーションプログラミングインターフェース(API)レスポンスを取り出すことと、
前記オリジンサーバから前記アクティブサブストリームコンテンツのタイミング情報を取り出すことと、
を含み、前記タイミング情報と前記APIレスポンスとを含む前記メタデータが、前記メタデータセグメントを使用して前記メタデータサービスによって前記メディアプレーヤに提供される、前記メタデータを前記メディアプレーヤに提供することと、
前記メディアプレーヤによって、前記アクティブサブストリームコンテンツに関連付けられた機能を前記メタデータから抽出することと、
前記メディアプレーヤによって、前記アクティブサブストリームコンテンツに関連付けられた前記機能に基づいて、前記セカンダリビデオストリームの再生中に前記メディアプレーヤのインタラクションをカスタマイズすることと、
を実行させる。
【0009】
本開示の更なる適用可能性の領域は、以下に提供される発明を実施するための形態から明らかになる。発明を実施するための形態及び具体例は、様々な実施形態を示しているが、例示のみを目的とするものであり、必ずしも本開示の範囲を限定するものではないことを理解されたい。
【図面の簡単な説明】
【0010】
図1】ビデオ再生へのアクティブサブストリームコンテンツの挿入を対象とするメディアサービスシステムを示すブロック図。
図2】メディアサービスシステムを示すフロー図。
図3】アクティブサブストリームコンテンツが挿入されたビデオストリームの再生タイムラインを示す図。
図4】メタデータサービス及びメタデータストレージを使用して、オリジンサーバからメディアプレーヤにメタデータを提供するためのデータフロー図。
図5】コンテンツプロバイダ、サードパーティプロバイダ、オリジンサーバ、メタデータサービス、及びメディアプレーヤの間のインタラクションを示すスイムレーン図。
図6】ビデオの再生中にメタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法のフローチャートを示す図。
図7】ビデオの再生中にメタデータに基づいてメディアプレーヤの挙動をカスタマイズする方法のフローチャートを示す図。
図8】カスタマイズ情報に関連付けられたメタデータをメディアプレーヤに提供するためのフローチャートを示す図。
【発明を実施するための形態】
【0011】
本開示は、添付の図面と併せて説明される。添付の図面では、同様の構成要素及び/又は特徴は、同じ参照ラベルを有することがある。更に、同じタイプであっても各構成要素の区別を行う場合もあり、その場合は参照ラベルの後に、同様の構成要素を区別する第2のアルファベットラベルを続ける。第1の参照ラベルのみが本明細書で使用される場合、説明は、第2の参照ラベルにかかわらず、同じ第1の参照ラベルを有する同様の構成要素のうちの任意の1つに適用可能である。
【0012】
以下の説明は、好ましい例示的な実施形態を提供するだけのものであり、本開示の範囲、適用可能性、又は構成を限定することを意図するものではない。むしろ、好ましい例示的な実施形態の以下の説明は、好ましい例示的な実施形態を実装するための実施可能な説明を当業者に提供する。添付の特許請求の範囲に記載される趣旨及び範囲から逸脱することなく、要素の機能及び配置に様々な変更を行うことができることが理解される。
【0013】
最初に図1を参照すると、ビデオ再生へのアクティブサブストリームコンテンツの挿入を対象とするメディアサービスシステム100のブロック図が示されている。メディアサービスシステム100は、オリジンサーバ110と、サードパーティプロバイダ120と、コンテンツ配信ネットワーク(CDN)130と、クライアントデバイス140と、クライアントデバイス140のメディアプレーヤ145と、コンテンツプロバイダ150と、メタデータストレージ160と、メタデータサービス170とを含む。メディアサービスシステム100は、メディアプレーヤ145にメディアコンテンツを配信し、これがクライアントデバイス140によって実行されることで、クライアントデバイス140のエンドユーザにメディア再生を提供することができる。メディアプレーヤ145は、例えば、メディアプレーヤ、ブラウザ、又はメディアファイルをリクエスト及び/若しくは再生するように適合された他のアプリケーションであってよい。メディアコンテンツは、インターネット180などのネットワーク及び/又はテレビコンテンツの配信ネットワークなどの他のデータ通信ネットワークを経由して提供されてもよい。クライアントデバイス140は、インターネット180を経由してメディアを受信するように構成された任意の数のデバイスのうちの1つであってよく、携帯電話、タブレット、パーソナルコンピュータ、ポータブルメディアデバイス、テレビ、セットトップボックス、ビデオゲームシステムなどを含んでもよい。図1には1つのメディアプレーヤ145及び1つのクライアントデバイス140のみが示されているが、メディアサービスシステム100は、多数のクライアントデバイス140上の多数のメディアプレーヤ145にメディアを提供してもよいことが理解され得る。アクティブサブストリームコンテンツは、例えば、広告又は広告以外のメディアコンテンツであってよい。
【0014】
オンデマンドコンテンツの場合、コンテンツプロバイダ150によって提供されるメディアファイルは、CDN130上に記憶される。オンデマンドコンテンツは、プログレッシブダウンロード及び/又はストリーミングによりメディアプレーヤ145に提供される。処理時間及び/又は他のバッファ時間に応じて、リアルタイム又はほぼリアルタイムであるライブコンテンツについて、同様のプロセスを行うことができる。
【0015】
1つ又は複数のサードパーティプロバイダ120(又は1つ又は複数の広告プロバイダ)のうちの1つ以上は、広告を含むことができるアクティブサブストリームコンテンツを各種クライアントデバイス140上の各種メディアプレーヤ145に提供する。1つ又は複数のサードパーティプロバイダ120により、企業は、1つ又は複数のコンテンツプロバイダ150から受信したメディアコンテンツを視聴しているエンドユーザに広告を示すことができる。1つ又は複数のサードパーティプロバイダ120は、メディアコンテンツとは別個の広告及び/又は広告データを維持する。
【0016】
オリジンサーバ110は、コンテンツプロバイダ150からのメディアコンテンツ及びサードパーティプロバイダ120からのアクティブサブストリームコンテンツを処理するサーバ側広告挿入(SSAI)サーバであってよい。オリジンサーバ110は、アクティブサブストリームコンテンツをメディアコンテンツに挿入し、コンテンツ区切り間隔におけるメディアプレーヤ145のインタラクションのカスタマイズのためにメタデータをメディアプレーヤ145に提供する。
【0017】
メタデータをメディアプレーヤ145に提供するために、メタデータストレージ160及びメタデータサービス170は、オリジンサーバ110とメディアプレーヤ145との間の通信手段を提供する。メタデータストレージ160は、サードパーティプロバイダ120からのメタデータレスポンスを記憶するためのリポジトリである。メタデータレスポンスは、処理及び/又は取り出しに備え、オリジンサーバ110によってメタデータストレージ160に記憶される。メタデータレスポンスは、アプリケーションプログラミングインターフェース(API)レスポンス、広告APIレスポンス、又はビデオ広告サービングテンプレート(Video Ad Serving Template:VAST)レスポンスであってよい。
【0018】
メタデータサービス170は、メタデータストレージ160からメタデータレスポンスを取り出すために使用される。メタデータサービス170は、メタデータストレージ160からのメタデータレスポンスを、メディアプレーヤ145による消費に適したメタデータセグメントにシリアル化する。オリジンサーバ110は、メタデータサービス170及びメタデータストレージ160を使用してメタデータをメディアプレーヤ145に提供する。メタデータストレージ160はメタデータを記憶し、メタデータサービス170はメタデータをメディアプレーヤ145に供給する。
【0019】
図2を参照すると、メディアサービスシステム100のフロー図が示されている。メディアサービスシステム100は、ビデオストリームの再生中にアクティブサブストリームコンテンツのビデオストリームへの挿入を提供する。オリジンサーバ110は、クライアントデバイス140のメディアプレーヤ145上で再生するために、コンテンツプロバイダ150からビデオストリームを受信する。オリジンサーバ110はまた、サードパーティプロバイダ120からアクティブサブストリームコンテンツを受信する。オリジンサーバ110は更に、サードパーティプロバイダ120からアクティブサブストリームコンテンツに関連付けられたメタデータを取得する。サードパーティプロバイダ120は更に、VASTレスポンスを含むメタデータレスポンスをオリジンサーバ110に提供する。メタデータレスポンスは、コンテンツ区切り間隔におけるアクティブサブストリームコンテンツの再生中のメディアプレーヤ145のインタラクティブ性を促進する。メタデータレスポンスは、メディアプレーヤ145のインタラクションをカスタマイズするための情報を含む。オリジンサーバ110は、メタデータレスポンスをメタデータストレージ160に記憶する。オリジンサーバ110は、アクティブサブストリームコンテンツに関連付けられたタイミング情報をメタデータサービス170に提供する。
【0020】
オリジンサーバ110は、再生のためにメディアプレーヤ145にビデオストリームを提供する。ビデオストリームを再生するためのプレイリスト又はマニフェストファイルは、メディアプレーヤ145に提供される。プレイリストは、メタデータのリクエストを含む。このリクエストは、ビデオストリームの再生におけるアクティブサブストリームコンテンツの挿入に関連付けられている。オリジンサーバ110は、CDN130-1を経由してクライアントデバイス140と通信する。CDN130-1は、オリジンサーバ110とメディアプレーヤ145の統合を提供する。
【0021】
オリジンサーバ110は、メディアプレーヤ145からメタデータのリクエストを受信する。このリクエストは、メディアプレーヤ145におけるビデオストリームの再生中に受信される。
【0022】
メタデータサービス170は、メディアプレーヤ145と通信するためにCDN130-2とインタラクトする。CDN130-2は、最小限の待ち時間で、増加したスケーラビリティ及びグローバル配信を提供する。こうした機能の提供は、CDN130-2が別個に提供されていることで、オリジンサーバ110からのサポート欠如によりサービスが停止してしまう場合でも、メタデータサービス170がフェイルオーバメタデータセグメントを提供して行うことができる。CDN130-2は、パケット化エレメンタリストリーム(packetized elementary stream:PES)データを有さない空のトランスポートストリーム(Transport Stream:TS)ヘッダからなるハイパーテキスト転送プロトコルHTTPライブストリーミング(HTTP Live Streaming:HLS)におけるセグメントなどの汎用セグメントを備えている。例えば、メタデータサービス170のフェイルオーバ時に、空のヘッダからなり且つデータを含まないブランクセグメントがメディアプレーヤ145に提供されることで、メタデータセグメントが提供される。別の実施形態では、動的アダプティブストリーミングオーバーHTTP(Dynamic Adaptive Streaming over HTTP:DASH)、又はSCTE-35フォーマットなどの他のプロトコルを、メディアプレーヤ145がメタデータを受信するために必要とされる各種インタラクションのために使用することができる。
【0023】
オリジンサーバ110は、アクティブサブストリームコンテンツをビデオストリームに挿入する。オリジンサーバ110は、メタデータストレージ160及びメタデータサービス170を使用して、リクエストに応じてメタデータをメディアプレーヤ145に提供する。メディアプレーヤ145は、メタデータを取得するために、メタデータセグメントを使用してメタデータサービス170と通信する。メタデータサービス170は、メタデータストレージ160からメタデータレスポンスを抽出する。メタデータサービス170は、メタデータセグメント内のメタデータレスポンス及びタイミング情報を、CDN130-2を経由してメディアプレーヤ145に提供する。
【0024】
メディアプレーヤ145は、メタデータサービス170によって提供されるメタデータセグメントからメタデータを受信する。メディアプレーヤ145は、クライアントソフトウェア開発キット(Software Development Kit:SDK)を使用して、メタデータからアクティブサブストリームコンテンツに関連付けられた機能を抽出する。クライアントSDKはプラグインであってよい。抽出される機能にはメディアプレーヤ145のインタラクティブ性が含まれ、例えば、アクティブサブストリームコンテンツを早送り若しくはスキップするためのビデオカセットレコーダ(Video Cassette Recorder:VCR)タイプの制御を無効にすること、サブストリーム区切り間隔における音量制御を無効にすること、及び/又はクリックスルー機能を有効にすることなどが挙げられる。メディアプレーヤ145は、抽出した機能に基づいて、アクティブサブストリームコンテンツを有するビデオストリームの再生中のメディアプレーヤ145のインタラクションをカスタマイズする。
【0025】
次に図3を参照すると、アクティブサブストリームコンテンツ320が挿入されたビデオストリーム300の再生タイムラインが示されている。オリジンサーバ110は、メディアプレーヤ145からアクティブサブストリームコンテンツ320挿入リクエストを受信した後に、アクティブサブストリームコンテンツ320をビデオストリーム300に挿入する。ビデオストリーム300は、アクティブサブストリームコンテンツ320と共にコンテンツセグメント310、330を含む。アクティブサブストリームコンテンツ320は、コンテンツセグメント310と330との間の区切り期間又はコンテンツ区切りに挿入される。ビデオストリーム300に挿入されたアクティブサブストリームコンテンツ320と共にビデオストリーム300が再生されるとき、メディアプレーヤ145がプラグインを使用することで、メディアプレーヤ145のインターフェースのカスタマイズが行われる。
【0026】
次に図4を参照すると、メタデータサービス170及びメタデータストレージ160を使用してオリジンサーバ110からメディアプレーヤ145にメタデータを提供するためのデータフロー400が示されている。まず、エンドユーザ420によって使用されるメディアプレーヤ145は、アクティブサブストリームコンテンツに関連付けられたメタデータをリクエストする。アクティブサブストリームコンテンツは、ビデオストリームのコンテンツ区切りに挿入されることになる。メディアプレーヤ145によるこのリクエストはメタデータサービス170から行われ、メタデータサービス170との通信のための符号化されたパラメータを含むGETクエリ文字列が使用される。メディアプレイリスト440は、ビデオストリームを再生するために使用されるオリジンサーバ110からメディアプレーヤ145によって受信される。
【0027】
オリジンサーバ110は、ゼロ秒持続時間(zero-second duration)メタデータセグメントについて、ビデオストリームのメディアプレイリスト440に統一資源識別子(URI)を挿入する。URIは、メディアプレーヤ145のリクエストをメタデータサービス170にルーティングし、メタデータサービス170は、メタデータストレージ160からのメタデータレスポンスを、クライアントSDKによる解析に適したID3キューポイントにシリアル化する。ID3キューポイントは、メタデータを含む。ID3キューポイントは、ビデオストリームのメタデータトラック内のメタデータをタグ付けする。メタデータトラックは、再生時間に、その特定の時間に必要とされるメタデータセグメントのみをカプセル化することによって生成される。
【0028】
メタデータレスポンスは、サードパーティプロバイダ120によってオリジンサーバ110に提供される。オリジンサーバ110のAPI430は、セッションごとの各コンテンツ区切りを有する各アクティブサブストリームコンテンツに対するAPI又はVASTレスポンスをメタデータストレージ160に記憶する。タイミング情報は、オリジンサーバ110によってメタデータサービス170に提供される。タイミング情報は、コンテンツ区切り間隔における再生ヘッド位置、例えば、アクティブサブストリームコンテンツの残り時間、又はコンテンツ区切り間隔におけるアクティブサブストリームコンテンツの数等に関連する。メタデータは、メタデータレスポンス及びタイミング情報を含む。
【0029】
メタデータサービス170は、GETクエリ文字列を受信すると、URIを使用してメタデータストレージ160からメタデータレスポンスを取り出す。メタデータサービス170のID3-ts-lib410は、GETクエリ文字列内の符号化されたパラメータから構築されたビデオマルチプルアドプレイリスト(Video Multiple Ad Playlist:VMAP)データに基づいて、TSセグメントを生成する。VMAPは、クライアントSDKと互換性があり、VASTデータが提供される。TSセグメントは、メタデータ内のメタデータレスポンス及びタイミング情報を含む。メタデータを含むTSセグメントは、クライアントデバイス140のメディアプレーヤ145に提供される。
【0030】
メディアプレーヤ145がメディアプレイリスト440を通して進行するにつれて、後続のメタデータセグメントは、コンテンツ区切り間隔における各アクティブサブストリームコンテンツに対するタイミング情報及びメタデータレスポンスを提供する。
【0031】
メディアプレーヤ145のクライアントSDKは、メタデータサービス170から取得されたID3メタデータキューポイントを解析する。クライアントSDKは、コンテンツ区切り間隔におけるアクティブサブストリームコンテンツの持続時間、それらの位置、並びにページ上のインタラクティブ性を促進するためのサードパーティプロバイダ120からの任意のカスタムVAST拡張等の表面情報にID3キューポイントを復号する役割を担当する。
【0032】
メタデータセグメントは、メタデータトラック内に提供される。メタデータトラックは、字幕又はカラオケトラック又はアルバムデータに関する情報を含む。情報は、クライアントに依存しない方法でメタデータセグメント内のID3キューを解析することによって、メディアプレーヤ145の再生エンジンにより復号される。メタデータトラックは、ビデオストリーム再生に必要なオーディオトラック及びビデオトラックから分離されている。メタデータトラックが分離されていることにより、プレーヤは、互換性のあるクライアントSDKなしで、再生、分析情報、又はカスタム統合のための既存の機能を失うことなく、メタデータトラックを安全に無視することができる。これは、新旧メディアプレーヤの両方を使用して、混乱を回避しながら再生を行うのに役立つ。加えて、メディアプレーヤ145の開発者は、メディアプレーヤ145がコンテンツ区切りとどのようにインタラクトするかをカスタマイズすることができる。これは、コンテンツ区切り間隔におけるクリックスルーインタラクション、再生レベルイベントから離れたカスタムページスタイリング、及びカスタム分析情報を含むことができる。クライアントSDKの開発者は、自身の特定のユースケースに適合するように、オリジンサーバ110又はメディアプレーヤ145によって送信される分析情報を構成することができる。
【0033】
次に図5を参照すると、コンテンツプロバイダ150、サードパーティプロバイダ120、オリジンサーバ110、メタデータサービス170、及びメディアプレーヤ145の間のインタラクションを示すスイムレーン図が示されている。
【0034】
ブロック505では、コンテンツプロバイダ150は、メディアプレーヤ145における再生のために、ビデオストリームをオリジンサーバ110に提供する。ビデオストリームは、広告などのアクティブメディアコンテンツの挿入のための1つ又は複数のコンテンツ区切り又は広告区切りを有するビデオ又はメディアコンテンツであってよい。
【0035】
ブロック510では、サードパーティプロバイダ120は、アクティブサブストリームコンテンツ及びアクティブサブストリームコンテンツに関連付けられたメタデータをオリジンサーバ110に提供する。
【0036】
ブロック515では、サードパーティプロバイダ120は、オリジンサーバ110にAPIレスポンスを提供する。APIレスポンスは、メディアプレーヤ145に対するVASTレスポンス又はインタラクション固有データを含む。
【0037】
ブロック520では、オリジンサーバ110は、再生のためにコンテンツプロバイダ150からビデオストリームを受信する。
ブロック525では、オリジンサーバ110は、APIレスポンスをメタデータストレージ160に記憶する。
【0038】
ブロック530では、オリジンサーバ110は、メディアプレーヤ145でビデオストリームを再生するためのプレイリストにURIを挿入する。プレイリストは、メタデータをリクエストするためにメディアプレーヤ145によって使用される。プレイリストは、ビデオストリームの再生のためにメディアプレーヤ145に提供される。プレイリストは、メタデータのリクエストに関連付けられたID3キューポイントを有するゼロ秒持続時間セグメントを含み、これは、より古いプレーヤとの後方互換性を確保するのに役立つことができる。
【0039】
ブロック535では、オリジンサーバ110は、タイミング情報をメタデータサービス170に提供する。タイミング情報は、コンテンツ区切り間隔におけるアクティブサブストリームコンテンツの開始時間及び終了時間、アクティブサブストリームコンテンツの数、並びに/又はアクティブサブストリームコンテンツの各々のタイミングを含む。
【0040】
ブロック540では、オリジンサーバ110は、アクティブサブストリームコンテンツ及びメタデータの挿入に関する、メディアプレーヤ145から受信したリクエストをメタデータサービス170にルーティングする。
【0041】
ブロック545では、オリジンサーバ110は、アクティブサブストリームコンテンツをメタデータセグメントと共にビデオストリームに挿入して、修正されたビデオストリームを生成する。修正されたビデオストリームは、メディアプレーヤ145及びメタデータサービス170に提供される。
【0042】
ブロック550では、オリジンサーバ110によってルーティングされたメタデータのリクエストを受信すると、メタデータサービス170は、APIレスポンスを取り出す。APIレスポンスは、URIを使用してメタデータストレージ160から取り出される。
【0043】
ブロック555では、メタデータサービス170は、オリジンサーバ110からタイミング情報を受信する。
ブロック560では、メタデータサービス170は、メタデータのメタデータセグメントをメディアプレーヤ145に提供する。メタデータは、APIレスポンス及びタイミング情報を含む。
【0044】
ブロック565では、メディアプレーヤ145は、ビデオストリームの再生のためにオリジンサーバ110からプレイリストを受信する。
ブロック570では、メディアプレーヤ145は、プレイリストを使用してメタデータのリクエストをオリジンサーバ110に送信する。このリクエストは、ビデオストリームの再生におけるアクティブサブストリームコンテンツの挿入に関連付けられている。
【0045】
ブロック575では、メディアプレーヤ145は、オリジンサーバ110から修正されたビデオストリームを受信する。
ブロック580では、メディアプレーヤ145は、メタデータサービス170によって提供されるメタデータセグメントからメタデータを受信する。
【0046】
ブロック585では、メディアプレーヤ145は、クライアントSDK又はプラグインを使用してメタデータから機能を抽出する。この機能は、修正されたビデオストリームを再生している間のメディアプレーヤ145のインタラクションに関連付けられている。
【0047】
ブロック590では、メディアプレーヤ145のインタラクションは、メタデータに関連付けられた機能に基づいてカスタマイズされる。インタラクションのカスタマイズには、コンテンツ区切り間隔におけるスタイリング及びインタラクティブ性の修正が含まれる。
【0048】
次に図6を参照すると、ビデオの再生中に、メタデータに基づいてメディアプレーヤのカスタマイズされたインタラクションを提供する方法600のフローチャートが示されている。方法600のステップは、オリジンサーバ110によって実行される。
【0049】
ブロック520では、オリジンサーバ110は、ビデオストリームに挿入されることになるアクティブサブストリームコンテンツと共に、再生のためのビデオストリームを取得する。アクティブサブストリームコンテンツに関連付けられたメタデータも、オリジンサーバ110によって受信される。
【0050】
ブロック605では、オリジンサーバ110は、ビデオストリームを再生するためのプレイリストにゼロ秒(0秒)持続時間セグメントを挿入する。ゼロ秒持続時間セグメントは、コンテンツ区切り間隔におけるアクティブサブストリームコンテンツに固有のメタデータを含むID3キューポイントを含む。
【0051】
ブロック525では、メタデータに対応するAPIレスポンスがメタデータストレージ160に記憶される。オリジンサーバ110は、サードパーティプロバイダ120から受信したAPIレスポンスをメタデータストレージ160に記憶するためにサーバAPIを使用する。サーバAPIは、プレイリスト内の広告APIレスポンスから、セッションごとのコンテンツ区切りに、アクティブサブストリームコンテンツに対するAPIレスポンス、具体的にはVASTレスポンスを挿入する。コンテンツ区切りに挿入されたAPIレスポンスは、メタデータストレージ160に記憶される。
【0052】
ブロック610では、メタデータのリクエストが、オリジンサーバ110によってメディアプレーヤ145から受信される。
ブロック530では、オリジンサーバ110は、サーバAPIを使用してプレイリストにURIを挿入する。オリジンサーバ110は、メタデータのゼロ秒持続時間セグメントのプレイリストにURIを挿入する。
【0053】
ブロック535では、オリジンサーバ110は、タイミング情報をメタデータサービス170に提供する。タイミング情報は、アクティブサブストリームコンテンツのタイミングを含む。
【0054】
ブロック615では、オリジンサーバ110は、ビデオストリームの再生のためにプレイリストをメディアプレーヤ145に提供する。
ブロック540では、オリジンサーバ110は、メタデータを提供するために、メディアプレーヤ145から受信したリクエストをメタデータサービス170にルーティングする。
【0055】
ブロック545では、メタデータセグメントと共にアクティブサブストリームコンテンツがビデオストリームに挿入されて、修正されたビデオストリームが取得される。
ブロック620では、修正されたビデオストリームがメディアプレーヤ145に提供される。メタデータセグメントは、メタデータサービス170にメタデータをリクエストするためにメディアプレーヤ145によって使用される。
【0056】
ブロック625では、修正されたビデオストリームの視聴に関連する分析情報又は再生に関連する分析情報がサードパーティプロバイダ120に提供される。分析情報は更に、アクティブサブストリームコンテンツをカスタマイズするために開発者によって使用することができる。開発者は、自身の特定のユースケースに適合するように、オリジンサーバ110によって提供される分析情報を構成してもよい。
【0057】
ブロック630では、オリジンサーバ110は、次のビデオストリームが処理のために受信されたかどうかを判定する。再生のための後続のビデオストリームがある場合、制御は、ブロック520に移動し、そうでない場合、方法は終了する。
【0058】
次に図7を参照すると、ビデオの再生中に、メタデータに基づいてメディアプレーヤの挙動をカスタマイズする方法700のフローチャートが示されている。方法700のステップは、メディアプレーヤ145によって実行される。
【0059】
ブロック565では、ビデオストリームを再生するためのプレイリストが、オリジンサーバ110からメディアプレーヤ145によって受信される。プレイリストは、アクティブサブストリームコンテンツをビデオストリームに挿入するリクエストと、コンテンツ区切り間隔におけるアクティブサブストリームコンテンツに関連付けられたメタデータとを含む。プレイリストは、メタデータのリクエストに関連付けられたゼロ秒持続時間セグメントを含み、これにより、異なるタイプのメディアプレーヤとの互換性を確保する。ゼロ秒持続時間セグメントは、アクティブサブストリームコンテンツに関連付けられたメタデータを含むID3キューを含む。
【0060】
ブロック705では、プレイリスト内のリクエストは、アクティブサブストリームコンテンツ及びメタデータの挿入のためにオリジンサーバ110に送信される。リクエストを受信した後に、オリジンサーバ110は、リクエストをメタデータサービス170にルーティングする。
【0061】
ブロック575では、メディアプレーヤ145は、オリジンサーバ110から修正されたビデオストリームを受信する。修正されたビデオストリームは、アクティブサブストリームコンテンツ及びメタデータセグメントを含む。メタデータセグメントは、メタデータサービス170と通信するためにメディアプレーヤ145によって使用される。
【0062】
ブロック710では、メディアプレーヤ145は、メタデータサービス170にリクエストするために、GETクエリ文字列を生成する。GETクエリ文字列は、メタデータサービス170に送信され、メタデータをリクエストする。
【0063】
ブロック580では、メタデータを含むメタデータセグメントが、メタデータサービス170からメディアプレーヤ145によって受信される。メタデータは、アクティブサブストリームコンテンツに関連付けられたAPIレスポンス及びタイミング情報を含む。
【0064】
ブロック715では、メディアプレーヤ145のクライアントSDK又はプラグインは、メタデータを抽出するためにメタデータセグメント内のID3キューを復号する。
ブロック720では、クライアントSDKは、メディアプレーヤ145のインタラクションのカスタマイズに関連付けられた機能を抽出するために、抽出されたメタデータを解析する。抽出される機能には、アクティブサブストリームコンテンツを早送り又はスキップするためのVCRタイプの制御を無効にすること、コンテンツ区切り間隔における音量制御を無効にすること、クリックスルー機能を有効にすることが含まれる。ビデオ領域全体又はその任意のサブセットをアドレス指定可能な空間に変換することができ、その上をクリックすることによって、ユーザをアクティブサブストリームコンテンツに関連付けられたページ又はサービスに転送することができ、ストリーミングコンテンツ外の広告機会を可能にするビデオコンテンツと共に示される「コンパニオン広告」を可能にし、挿入された広告コンテンツに特に適用されるような正確なインプレッションカウント、及び/又はアクティブサブストリームコンテンツのコンテンツに基づく望ましいプレーヤの挙動の他の可能なカスタマイズを達成する。
【0065】
ブロック725では、メディアプレーヤ145のスタイリング及びインタラクションは、修正されたビデオストリームの再生中に、機能に基づいてカスタマイズされる。開発者は、クライアントSDKを使用して、メディアプレーヤ145とコンテンツ区切りとのインタラクションをカスタマイズすることができる。このカスタマイズは、コンテンツ区切り間隔におけるクリックスルーインタラクション、再生レベルイベントから離れたカスタムページスタイリング、及びカスタム分析情報を含むことができる。
【0066】
ブロック730では、メディアプレーヤ145は、メタデータにより命令された通りに、分析情報を、開発者構成設定に基づいて分析情報リポジトリ(図示せず)に提供する。開発者は、自身の特定の要件に適合するように、メディアプレーヤ145によって送信される分析情報を構成する。
【0067】
次に図8を参照すると、カスタマイズ情報に関連付けられたメタデータをメディアプレーヤに提供する方法800のフローチャートが示されている。方法800のステップは、メタデータサービス170によって実行される。
【0068】
ブロック805では、メタデータサービス170は、メディアプレーヤ145からアクティブサブストリームコンテンツに関連付けられたメタデータのリクエストを受信する。アクティブサブストリームコンテンツは、メディアプレーヤ145によって再生されるビデオストリームに挿入されることになる。このリクエストは、メディアプレーヤ145からのGETクエリ文字列により提供される。
【0069】
ブロック550では、メタデータのリクエストを受信した後に、メタデータサービス170は、メタデータストレージ160からAPIレスポンスを取り出す。
ブロック555では、アクティブサブストリームコンテンツに関連付けられたタイミング情報がオリジンサーバ110から受信される。タイミング情報は、アクティブサブストリームコンテンツに残された時間、アクティブサブストリームコンテンツの持続時間、又はコンテンツ区切り間隔におけるアクティブサブストリームコンテンツの数を含む。
【0070】
ブロック810では、メタデータサービス170は、メタデータを含むID3キューを生成する。
ブロック815では、メタデータサービス170は、メタデータセグメントを使用してトランスポートストリーム(TS)セグメント内のID3キューをメディアプレーヤ145に送信する。TSセグメントは、メタデータに対するメディアプレーヤ145のリクエストに対するレスポンスとして送信される。メタデータは、アクティブサブストリームコンテンツを有するビデオストリームの再生中のメディアプレーヤ145の挙動をカスタマイズするために、メディアプレーヤ145によってID3キューから抽出される。
【0071】
実施形態の完全な理解を提供するために、上記の説明において具体的な詳細が与えられている。しかしながら、実施形態は、これらの具体的な詳細なしでも実施され得ることが理解される。例えば、不必要な詳細で実施形態を不明瞭にしないために、回路はブロック図で示すことができる。他の例では、周知の回路、プロセス、アルゴリズム、構造、及び技術は、実施形態を不明瞭にすることを回避するために、不必要な詳細なしに示すことができる。
【0072】
上記で説明した技術、ブロック、ステップ、及び手段の実装は、様々な方法で行うことができる。例えば、これらの技術、ブロック、ステップ、及び手段は、ハードウェア、ソフトウェア、又はそれらの組合せで実装することができる。ハードウェアの実装形態の場合、処理ユニットは、1つ又は複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、上記で説明した機能を実行するように設計された他の電子ユニット、及び/又はそれらの組合せ内に実装することができる。
【0073】
また、実施形態は、フローチャート、フロー図、スイム図、データフロー図、構造図、又はブロック図として示されるプロセスとして説明することができることに留意されたい。描写は、動作を順次プロセスとして説明することができるが、動作の多くは、並列又は同時に実行することができる。加えて、動作の順序は、並べ替えられてもよい。プロセスは、その動作が完了したときに終了するが、図に含まれていない追加のステップを有することができる。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応することができる。プロセスが関数に対応する場合、その終了は、呼び出し関数又はメイン関数への関数のリターンに対応する。
【0074】
更に、実施形態は、ハードウェア、ソフトウェア、スクリプト言語、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、及び/又はそれらの任意の組み合わせによって実装されてもよい。ソフトウェア、ファームウェア、ミドルウェア、スクリプト言語、及び/又はマイクロコードで実装される場合、必要なタスクを実行するためのプログラムコード又はコードセグメントは、記憶媒体などの機械可読媒体に記憶することができる。コードセグメント又は機械実行可能命令は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、スクリプト、クラス、又は命令、データ構造、及び/若しくはプログラムステートメントの任意の組合せを表すことができる。コードセグメントは、情報、データ、引数、パラメータ、及び/又はメモリ内容を渡すこと及び/又は受け取ることによって、別のコードセグメント又はハードウェア回路に結合することができる。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信などを含む任意の適切な手段により渡す、転送する、又は送信することができる。
【0075】
ファームウェア及び/又はソフトウェアの実装形態の場合、方法は、本明細書で説明される機能を実行するモジュール(例えば、プロシージャ、関数など)を用いて実装することができる。命令を有形に具現化する任意の機械可読媒体を、本明細書で説明される方法を実装する際に使用することができる。例えば、ソフトウェアコードは、メモリに記憶されてもよい。メモリは、プロセッサ内又はプロセッサの外部に実装することができる。本明細書で使用されるとき、「メモリ」という用語は、任意のタイプの長期、短期、揮発性、不揮発性、又は他の記憶媒体を指し、任意の特定のタイプのメモリ若しくはメモリの数、又はメモリが格納される媒体のタイプに限定されない。
【0076】
更に、本明細書で開示されるように、「記憶媒体」という用語は、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気RAM、コアメモリ、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、及び/又は情報を記憶するための他の機械可読媒体を含む、データを記憶するための1つ又は複数のメモリを表すことができる。「機械可読媒体」という用語は、ポータブル記憶デバイス又は固定記憶デバイス、光記憶デバイス、及び/又は、1つ又は複数の命令及び/又はデータを含む若しくは搬送する、記憶可能な様々な他の記憶媒体を含むが、これらに限定されない。
【0077】
本開示の原理が、特定の装置及び方法に関連して上記で説明されたが、この説明は、例としてのみ行われ、本開示の範囲に対する限定として行われていないことを明確に理解されたい。
図1
図2
図3
図4
図5
図6
図7
図8
【国際調査報告】