(58)【調査した分野】(Int.Cl.,DB名)
前記ポピュレートされたプレゼンテーションテンプレートの実行によって、前記クライアントデバイスに結合された前記ディスプレイ上にメタデータアイテムの前記セット内の1つまたは複数の個別のメタデータアイテムのアニメーションが得られ、
前記ディスプレイ上で再生される前記ベースビデオの前記フレームの前記表示エリアが、メタデータアイテムの前記セット内の前記1つまたは複数の個々のメタデータアイテムの前記アニメーションでオーバーレイされる、請求項1に記載の方法。
タイムコードの前記セットが、前記ディスプレイ上でそれぞれのメタデータアイテムの第1のタイプのアニメーションを実行する第1の時点と、前記ディスプレイ上で前記それぞれのメタデータアイテムの第2のタイプのアニメーションを実行する第2の時点とを含む、請求項3に記載の方法。
前記クライアントデバイスに結合された前記ディスプレイ上に前記ポピュレートされたプレゼンテーションテンプレート内の前記メタデータアイテムを表示するための構成パラメータを受信するステップであって、前記構成パラメータが、フォントスタイル、フォントサイズ、フォントカラー、テキスト位置、またはアニメーションのタイプのうちの少なくとも1つを含む、ステップと、
前記構成パラメータに基づいて、前記ディスプレイ上に前記ポピュレートされたプレゼンテーションテンプレート内の前記メタデータアイテムを表示するステップと
をさらに含む請求項1に記載の方法。
タイムコードの前記セットが、前記ディスプレイ上でそれぞれのメタデータアイテムの第1のタイプのアニメーションを実行する第1の時点と、前記ディスプレイ上で前記それぞれのメタデータアイテムの第2のタイプのアニメーションを実行する第2の時点とを含む、請求項11に記載のシステム。
ユーザデバイスの処理デバイスによって実行されると、前記処理デバイスに、請求項1から8のいずれか一項に記載の前記方法を実行させる命令を記憶した非一時的コンピュータ可読記憶媒体。
【発明を実施するための形態】
【0024】
本開示の態様および実装形態は、ビデオストリーミングサービスのための動的なカスタムインタスティシャル遷移ビデオを対象とする。インタスティシャル遷移ビデオとは、2つのビデオ間で再生されるビデオを指す。一実装形態では、インタスティシャル遷移ビデオは、次に再生されるビデオに関する情報を含む。一実装形態では、ビデオに関するこの情報はアニメーション化される。インタスティシャル遷移ビデオは、プレイリスト内のビデオ間、または再生されるようスケジュールされているビデオ間で再生することができる。ビデオストリーミングサービスは、ビデオ、TV番組、映画、および他のストリーミングメディアのオンデマンドオンラインソースとすることができる。従来のビデオストリーミングサービスでは、ビデオが終了するとき、ビデオは突然停止する。たとえば、ビデオが終了すると、静止画像がすぐに表示され、次のビデオが再生を開始するまでに数秒(たとえば、8秒)までの時間遅延がある。時間遅延の間、次のビデオのタイトルと時間遅延のカウントダウン(たとえば、8秒)が静止画像とともに表示され得る。従来のビデオストリーミングサービスは、ビデオ間に静止画像または広告を提供し、ユーザに今後のビデオを通知する遷移ビデオを提供しない。
【0025】
従来のテレビ(TV)放送システムでは、TV番組が終了すると、視聴者に次の番組を知らせるための遷移として、コマーシャルタイプのセグメントが放送される。セグメントは、TVネットワークのロゴと、次のTV番組のタイトルとを含むことができる。セグメントは、一般に、ブロードキャストヘッドエンドシステムによって作成され、次いでデバイス(たとえば、テレビ)によって表示される。セグメントのコンテンツは、すべての視聴者にとって同じである。一般に、ブロードキャストヘッドエンドシステムは、個々の視聴者向けのカスタムセグメントを作成しない。
【0026】
本開示の態様は、デバイス(たとえば、ユーザデバイス)上にリアルタイムでユーザ向けのカスタムインタスティシャル遷移ビデオを動的に作成することによって、メディア遷移技術を改善する。本明細書で使用するリアルタイムという用語は、たとえば不必要な遅延なしに、原因に時間的に近接して発生するイベントを示すために使用される。たとえば、インタスティシャル遷移ビデオのリアルタイムの作成は、現在のビデオの再生中に次のビデオのデータを収集し、ユーザデバイスによって、現在のビデオの再生が終了した直後に(たとえば、0.1秒または0.1秒未満など、あらかじめ定義された制限時間内に)、次のビデオのデータを表示することを伴う。
【0027】
したがって、本明細書で様々な実装形態で説明されるのは、ユーザデバイス上にリアルタイムでインタスティシャル遷移ビデオを提供することによって、遷移セグメントを作成する際の柔軟性の向上を提供する技術である。本開示の実装形態は、リアルタイムでインタスティシャル遷移ビデオにおいて提示されている情報を変更することができる。次に再生されるビデオは、特定のユーザ向けに選択されてもよく、本開示の実装形態は、特定のユーザ向けにインタスティシャル遷移ビデオにおいて提示されている情報をカスタマイズすることができる。ビデオ間でインタスティシャル遷移ビデオを再生することによって、本開示の実装形態は、ビデオの再生間のよりスムーズな遷移により不快感を軽減する効果を提供することによって、ユーザエクスペリエンスを向上させる。インタスティシャル遷移ビデオのカスタム特性によって、インタスティシャル遷移ビデオの再生に関連付けられたデバイスコンピューティングリソース(たとえば、メモリおよび/または処理)が、デバイスの特定のユーザに関連する情報の提示時に必ず生じる。したがって、実施形態は、ネットワーク環境でのユーザへのビデオの配信に関連する問題に対処し得る。
【0028】
図1は、本開示の一実装形態による、ストリーミングされるビデオの例示的なタイムラインを示す。ストリーミングメディアは、ハードドライブに保存されるのではなく、インターネットを介して送信され、すぐに再生されるビデオまたはオーディオコンテンツである。ストリーミングメディアにより、ユーザは、ビデオを再生するためにビデオファイルのダウンロードを待つ必要がない。デバイスは、ビデオのデータがデバイスに到着すると、ストリーミングビデオをリアルタイムで再生することができる。ビデオのリアルタイムストリーミングは、ビデオストリームの対応する部分が受信されるとすぐにビデオの部分を表示することを伴う。
【0029】
軸101は時間を表する。ビデオストリーミングサービスは、ビデオコンテンツのメインの部分(ここではメインビデオと呼ばれる)およびコンテンツのインタスティシャル部分(ここではインタスティシャル遷移ビデオまたは遷移ビデオと呼ばれる)など、様々なタイプのビデオをストリーミングすることができる。メインビデオの例には、コンテンツ共有プラットフォームのコンテンツプロバイダからのビデオ、ネットワークテレビプロバイダからのビデオ、ビデオストリーミングサービスプロバイダからのビデオがあり得る。メインビデオ1 102、メインビデオ2 110、メインビデオ3 118、およびメインビデオ4 126は、メインビデオの例である。メインビデオは、ビデオの個々のストリームとすることができる。
【0030】
どのメインビデオをストリーミングし、再生するかの選択は、あらかじめ定義されたスケジュールに基づくことができ、かつ/または動的に決定することができる。一実装形態では、特定のユーザ向けにメインビデオをリアルタイムで動的に選択することができる。本明細書で使用される場合、次に再生される1つまたは複数のビデオのリアルタイム選択またはリアルタイム決定とは、メインビデオの再生が終了したことを決定し、ユーザに関連付けられた(たとえば、ユーザによって再生された、ユーザが「いいね」を付けた(liked by a user)、ユーザが共有したなど)ビデオのセットの分析に基づいて、次に再生されるビデオのリアルタイムでの(たとえば、メインビデオの終了の、0.1秒または0.5秒など、あらかじめ定義された時間制限内など)選択または決定を行うことを指す。一実装形態では、どのメインビデオをストリーミングし、再生するかの選択は、ユーザが視聴した、「いいね」を付けた、共有した、プレイリストに追加した、コメントした、登録した(チャネル登録の一部として、または個別に)などのビデオに基づく。
【0031】
たとえば、ユーザは,メインビデオ1 102を視聴している可能性があり、これはユタ州のスノーボードに関するビデオである。推奨システムは、ストリーミングされ、再生される次のメインビデオとして、コロラド州のスノーボードに関するビデオであり得るメインビデオ2 110をリアルタイムで選択してもよい。選択の一部として、推奨システムは、次のビデオの後に再生されるメインビデオとして、カナダのスノーボードに関するビデオであり得るメインビデオ3 118をリアルタイムで選択してもよい。
【0032】
次にストリーミングされ、再生されるメインビデオに関する情報を提供するために、メインビデオの間に遷移ビデオを再生することができる。遷移ビデオ1 106、遷移ビデオ2 114、および遷移ビデオ3 122は、遷移ビデオの例である。遷移ビデオは、ビデオの個々のストリームとすることができる。一実装形態では、遷移ビデオは、次にストリーミングされ、再生される次のメインビデオの情報を提供する。別の実装形態では、遷移ビデオは、次にストリーミングされ、再生される次の2つのメインビデオの情報を提供する。たとえば、再生されるとき、遷移ビデオ1 106は8秒の持続時間を有し、次のメインビデオ2 110に関する情報(たとえば、タイトル「ユタ州でのスノーボード」)、および次のメインビデオ3 118についての情報(たとえば、タイトル「コロラド州でのスノーボード」)のアニメーションを表示することができる。
【0033】
図2は、本開示の一実装形態による、インタスティシャル遷移ビデオのプレゼンテーションのフレームの例示的な時系列を示す。遷移ビデオは、たとえば、
図1の遷移ビデオ1 106とすることができる。遷移ビデオ1 106は8秒の持続時間とすることができ、メインビデオ1 102の後、メインビデオ2 110の前に再生することができる。時系列は、タイムスタンプ00:00:00で始まり、タイムスタンプ00:00:07までである。
【0034】
タイムスタンプ00:00:00で、メインビデオ(たとえば、
図1のメインビデオ1 102)の再生が終了すると、遷移ビデオの再生が開始する。遷移ビデオは、テキスト、グラフィックス、および1つまたは複数のチャネル識別子などの要素を含むことができる。チャネルは、共通のソースから利用可能なデータコンテンツ、または共通のトピックもしくはテーマを有するデータコンテンツとすることができる。データコンテンツは、ユーザによって選択されたデジタルコンテンツ、ユーザが利用できるデジタルコンテンツ、ユーザによってアップロードされたデジタルコンテンツ、コンテンツプロバイダによって選択されたデジタルコンテンツ、放送局によって選択されたデジタルコンテンツなどとすることができる。チャネル識別子は、テキストおよび/または画像を含み得る。たとえば、チャネル識別子は、「ACME CHANNEL」というテキスト201および画像203とすることができる。画像203は、ACMEチャネルのロゴとすることができる。一実装形態では、遷移ビデオは、チャネルに関連付けられず、いかなるチャネル識別子をも含まない。たとえば、遷移ビデオは、「COMING UP ON ACME CHANNEL」というテキストではなく、「COMING UP」というテキストを含み得る。
【0035】
遷移ビデオ内の要素はアニメーション化することができる。要素は、フェードインおよびフェードアウト、バウンスイン、スピンイン、フロートインおよびフロートアウトなどのアニメーション機能を有することができる。たとえば、タイムスタンプ00:00:00で、テキスト「UP」、「ACME」、および「CHANNEL」が個々に左側からビューにフロートインし得る。別の例では、画像203がビューにスピンインし、ヘッダテキスト205「Next」が下からビューにフロートインし始めてもよい。
【0036】
タイムスタンプ00:00:01で、より多くのテキスト204が個々にフロートインし、画像202がビューにスピンインし続け、ヘッダテキスト「Next」が位置206に到達するまでフロートインし続け、ヘッダテキスト207「After」が指定された位置に到達するまで下からフロートインする。
【0037】
タイムスタンプ00:00:02で、追加のテキスト212がビューにフロートインし、タイトルテキスト「Show 1」209がヘッダテキスト208「Next」の下に位置するビューにフェードインし、タイトルテキスト「Show 2」211もヘッダテキスト210「After」の下に位置するビューにフェードインする。ヘッダテキスト208、210は、それぞれのヘッダテキストの近く(たとえば、下、上)に表示される情報のタイプを示す。たとえば、ヘッダテキスト208「Next」は、ヘッダテキスト208の下に表示される情報(たとえば、タイトル「Show 1」)が次に再生されるビデオのためのものであることを示す。ヘッダテキスト210「After」は、ヘッダテキスト210の下に表示される情報(たとえば、タイトル「Show 2」)が次のビデオの後に再生されるビデオのためのものであることを示す。タイムスタンプ00:00:02で、タイトルテキスト「Show 1」209およびタイトルテキスト「Show 2」211は、フェードインアニメーションについて特定の透明度値(たとえば、75%)を有するように構成され得る。
【0038】
タイムスタンプ00:00:03で、タイトルテキスト「Show 1」213およびタイトルテキスト「Show 2」215が完全にフェードインされ、いかなる透明度も有してない場合がある。タイムスタンプ00:00:05で、テキスト「COMING UP ON ACME CHANNEL」217、画像223、ヘッダテキスト「AFTER」219、およびタイトルテキスト「Show 2」221がビューからフェードアウトし、各々が特定の透明度値(たとえば、80%)を有するように構成され得る。タイムスタンプ00:00:07で、テキスト「COMING UP ON ACME CHANNEL」217、画像223、ヘッダテキスト「AFTER」219、およびタイトルテキスト「Show 2」221がビューから完全にフェードアウトしている。たとえば、タイムスタンプ00:00:08に遷移ビデオが終了すると、「Show 1」というタイトルの次のビデオの再生が開始する。
【0039】
遷移ビデオは、あらかじめ定義されたベースビデオコンポーネントとダイナミックメタデータオーバーレイコンポーネントとの合成である。
図3は、本開示の一実装形態による、インタスティシャル遷移ビデオのベースビデオコンポーネントを再生するフレームの例示的な時系列を示す。ベースビデオコンポーネント(以下、「ベースビデオ」と呼ばれる)は、次に再生される実際のメインビデオの情報を含まない。ベースビデオは、ベースビデオのフレームにエリア302を含むあらかじめ定義されたビデオであり、次に再生されるように動的に選択されたメインビデオを記述するメタデータのオーバーレイ用に予約されている。ベースビデオは、ベースビデオのフレーム内に、次のメインビデオの後に再生するために動的に選択された別のメインビデオを記述するメタデータのオーバーレイ用に予約された1つまたは複数の他のエリア(たとえばエリア304)を含むことができる。一実装形態では、ベースビデオは、特定のチャネルのためのものであり、チャネル所有者によって提供することができる。ベースビデオの作成者は、メタデータのオーバーレイ用に予約されるベースビデオのフレーム内の1つまたは複数のエリアを指定することができる。
【0040】
図4は、本開示の一実装形態による、遷移ビデオの動的メタデータオーバーレイコンポーネントのフレームの例示的な時系列を示す。たとえば、特定のユーザ向けにメインビデオが動的に選択されると、遷移ビデオに提示される情報(たとえば、ビデオのタイトル、ビデオのチャネル、ビデオの作成者、ビデオの統計など)もリアルタイムで動的に決定され、クライアントデバイスによって、動的メタデータオーバーレイコンポーネントの一部として提示される。
【0041】
動的メタデータオーバーレイコンポーネント(以下、「メタデータオーバーレイ」と呼ばれる)は、メタデータのプレゼンテーションを指す。プレゼンテーションはアニメーション化することができる。メタデータは、再生されるために動的に選択された1つまたは複数のメインビデオのためのものとすることができる。メタデータは、たとえば、ビデオのタイトル、ビデオの作成者、ビデオのチャネル、ビデオに関連付けられた1つまたは複数のキーワード、およびビデオの統計を含み得る。統計の例には、視聴回数、いいねの数、ディスライク(dislike)の数、共有の数、ビデオを含むプレイリストの数、コメントの数があり得る。メタデータオーバーレイは、ディスプレイ上の透明または半透明のレイヤである部分を有するレイヤ上のメタデータのプレゼンテーションとすることができる。メタデータオーバーレイは、ディスプレイに提示される前景レイヤとすることができ、ベースビデオの再生は、ディスプレイ上の背景レイヤとすることができる。
【0042】
メタデータオーバーレイは、実行可能プレゼンテーションテンプレートから作成することができる。実行可能プレゼンテーションテンプレートは、特定のメタデータに割り当てられたフィールドおよび/またはプレースホルダーを含む実行可能コードまたは実行可能スクリプトを含むことができる。たとえば、プレゼンテーションテンプレートは、ビデオのタイトルのテキストフィールド、およびビデオに関連付けられたチャネルの別のテキストフィールドを含むことができる。プレゼンテーションテンプレート内のフィールドおよび/またはプレースホルダーは、
図5に関連して以下により詳細に説明するように、リアルタイムで対応するメタデータをポピュレートすることができる。プレゼンテーションテンプレートは、ポピュレートされ、実行されると、フレームの時系列に示されているように、メタデータの1つまたは複数のアニメーションをディスプレイ上に提示する。たとえば、再生される次のビデオのタイトルのテキストフィールドにメタデータ「Show 1」がポピュレートされ、次のビデオの後に再生されるビデオのタイトルのテキストフィールドにメタデータ「Show 2」がポピュレートされ得る。タイムスタンプ00:00:02で、メタデータ401のアニメーション「Show 1」およびメタデータ403のアニメーション「Show 2」がビューにフェードインする。
【0043】
図5は、本開示の実装形態の例示的なシステムアーキテクチャ500を示す。システムアーキテクチャ500は、1つまたは複数のネットワーク510を介して互いに結合された1つまたは複数のクライアントデバイス501、1つまたは複数のサーバ515、517、519、および1つまたは複数のデータストア513を含むことができる。ネットワーク510は、パブリックネットワーク(たとえば、インターネット)、プライベートネットワーク(たとえば、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN))、またはそれらの組合せであり得る。サーバ515、517、519は、限定はしないが、ラックマウントサーバ、パーソナルコンピュータ、デスクトップコンピュータ、メディアセンター、または上記の任意の組合せなどのマシン上にホストできる。
【0044】
データストア513は、ストリーミングおよび再生のためのメインビデオなどのメディアアイテムを記憶することができる。メディアアイテムには、限定はしないが、デジタルビデオ、デジタル映画、デジタル写真、デジタル音楽、ウェブサイトコンテンツ、ソーシャルメディアアップデート、電子書籍(電子ブック)、電子雑誌、デジタル新聞、デジタルオーディオブック、電子ジャーナル、ウェブブログ、RSS(real simple syndication)フィード、電子コミックブック、ソフトウェアアプリケーションなどがあり得る。データストア513は、データを記憶することができる永続ストレージとすることができる。当業者によって諒解されるように、いくつかの実装形態では、データストア513は、ネットワーク接続ファイルサーバでもよく、他の実装形態では、データストア513は、オブジェクト指向データベース、リレーショナルデータベースなど何らかの他のタイプの永続ストレージでもよい。
【0045】
ビデオストリーミングサーバ515は、ビデオストリーミングサービスを1つまたは複数のクライアントデバイス501に提供することができる。ビデオストリーミングサーバ515は、ビデオ(たとえば、メインビデオ、ベースビデオ)をクライアントデバイス501にストリーミングすることができる。一実装形態では、ビデオストリーミングサーバ515は、
図11に関連して以下でより詳細に説明するコンテンツ共有プラットフォーム1120などのコンテンツ共有プラットフォームの一部である。一実装形態では、ビデオストリーミングサーバ515は、
図11に関連して以下でより詳細に説明するコンテンツプロバイダプラットフォーム1195などのコンテンツプロバイダプラットフォームの一部である。
【0046】
クライアントデバイス501は、メディアアイテム(たとえば、ビデオ)を再生するためのアプリケーション503を含むことができる。アプリケーション503は、たとえば、ビデオストリーミングサーバ515によってサービスされるコンテンツにアクセスすることができるウェブブラウザであってもよい。別の例では、アプリケーション503は、ビデオストリーミングサーバ515によってサービスされるコンテンツにアクセスすることができるアプリケーション(たとえば、モバイルアプリケーション、スマートTVアプリケーション)であってもよい。クライアントデバイス501は、パーソナルコンピュータ(PC)、ラップトップ、携帯電話、スマートフォン、タブレットコンピュータ、ネットブックコンピュータ、ネットワーク接続テレビなどのコンピューティングデバイスとすることができる。
【0047】
一実装形態では、ビデオストリーミングサーバ515は、あらかじめ定義されたスケジュールに従ってビデオをストリーミングする。一実装形態では、スケジューリングサーバ519は、ストリーミングされるビデオのスケジュールを作成し、ビデオストリーミングサーバ515によってアクセスすることができるデータストア513にスケジュールを記憶する。
【0048】
一実装形態では、ビデオストリーミングサーバ515は、推奨サーバ517によって行われたビデオの動的な選択に従ってビデオをストリーミングする。推奨サーバ517は、ビデオストリーミングサーバ515によって提供されるビデオストリーミングサービスで次に再生する1つまたは複数のビデオをリアルタイムで選択することができる。一実装形態では、推奨サーバ517は、
図11に関連して以下でより詳細に説明する推奨プラットフォーム1157などの推奨プラットフォームの一部である。
【0049】
クライアントデバイス501は、ビデオストリーミングサーバ515からメインビデオ550のビデオストリームを受信することができ、クライアントデバイス501上のアプリケーション503は、クライアントデバイス501に結合されたディスプレイ上でメインビデオ550を再生することができる。一実装形態では、クライアントデバイス501は、ビデオストリーミングサーバ515からメインビデオ550のユニバースリソース識別子(URI)(たとえば、ユニバースリソースロケータ(URL))を受信することができ、クライアントデバイス501は、URIを使用して、インターネット510上でインターネット接続を介してメインビデオ550を取得することができる。クライアントデバイス501は、メインビデオ550ストリームの部分を受信し、それらが受信されるとその部分を再生する。
【0050】
メインビデオの再生が終了すると、クライアントデバイス501は、再生される1つまたは複数の今後のビデオの通知として遷移ビデオをすぐに再生することができる。遷移ビデオは、あらかじめ定義されたベースビデオコンポーネント(たとえば、ベースビデオ557)と動的メタデータオーバーレイコンポーネント(たとえば、実行可能プレゼンテーションテンプレート)との合成である。遷移ビデオの再生は、ディスプレイ上の背景レイヤでのベースビデオの再生、およびディスプレイ上の前景レイヤでメタデータアイテムを提示するためのプレゼンテーションテンプレートの実行を含み得る。メインビデオは、たとえば、ビデオが終わりに到達した場合、ユーザがビデオの終わりまで進めた場合、またはユーザがビデオの再生をスキップした場合に終了し得る。
【0051】
クライアントデバイス501は、カスタム遷移ビデオを動的に作成し、再生するためのインタスティシャルコンポーネント505を含むことができる。インタスティシャルコンポーネント505は、アプリケーション503と通信するか、またはアプリケーション503の一部とすることができる。
【0052】
インタスティシャルコンポーネント505は、ビデオストリーミングサーバ515から、ベースビデオ557、およびベースビデオ557の構成パラメータ553を受信することができる。ベースビデオ557および構成パラメータ553は、インタスティシャルコンポーネント505がアクセスすることができるデータストア513に記憶することができる。一実装形態では、インタスティシャルコンポーネント505は、ビデオストリーミングサーバ515からベースビデオ識別子(たとえば、URI)を受信し、URIを使用して、ネットワーク510上でインターネット接続を介してベースビデオ557を取得する。構成パラメータ553は、ベースビデオ557に対応する特定のプレゼンテーションテンプレート507を実行するときにメタデータアイテムをどのように、いつ表示するかを指定する。構成パラメータ553は、プレゼンテーションテンプレート507内のフィールドおよび/もしくはプレースホルダー、ならびに/またはフィールドおよび/もしくはプレースホルダーをポピュレートしているメタデータアイテムのタイムコードのセット、フォントスタイル、フォントサイズ、フォントカラー、位置、およびアニメーションのタイプを含むことができる。一実装形態では、各タイムコードは、それぞれのタイムコードで指定されたメタデータアイテムを表示するために使用されるように、それぞれのタイムコードで表示されるメタデータアイテム、対応するフォントスタイル、対応するフォントカラー、対応する位置、および対応するアニメーションタイプを示す1つまたは複数の対応するメタデータ識別子を有する。
【0053】
動的メタデータオーバーレイコンポーネントは、ベースビデオ557に対応する実行可能プレゼンテーションテンプレート507に、次に再生されるように選択されたビデオのメタデータ551をポピュレートし、ポピュレートされたプレゼンテーションテンプレートを実行することによって作成することができる。インタスティシャルコンポーネント505は、遷移ビデオを作成するために使用する実行可能プレゼンテーションテンプレート507を選択することができる。実行可能プレゼンテーションテンプレート507の選択は、
図7に関連して以下により詳細に説明される。クライアントデバイス501は、1つまたは複数の実行可能プレゼンテーションテンプレート507をローカルに記憶することができ、またはデータストア513に記憶された1つもしくは複数の実行可能プレゼンテーションテンプレート507にアクセスすることができる。実行可能プレゼンテーションテンプレート507は、ビデオストリーミングサーバ515および/またはコンテンツプロバイダ(たとえば、チャネル所有者)によって提供することができる。
【0054】
推奨サーバ517は、次に再生されるように選択されたビデオのメタデータ551を提供することができる。データストア513は、メディアアイテム(たとえば、ビデオ)のメタデータ551を記憶することができる。メタデータ551は、たとえば、メディアアイテムのタイトル、メディアアイテムの作成者、メディアアイテムのチャネル、メディアアイテムに関連付けられた1つまたは複数のキーワード、およびメディアアイテムの統計を含むことができる。統計の例には、視聴回数、いいねの数、ディスライクの数、共有の数、メディアアイテムを含むプレイリストの数、およびメディアアイテムについてのコメントの数があり得る。
【0055】
メタデータオーバーレイは、1つまたは複数の特定のベースビデオに対応し、メタデータオーバーレイのプレゼンテーションは、
図6A〜
図6Eに関連して以下でより詳細に説明するように、対応するベースビデオの再生と同期する。
【0056】
クライアントデバイス501は、次のビデオが再生されるまでの時間期間(たとえば、7分)を満たすように特定のユーザ向けのビデオのカスタムフィラープレイリストを動的に作成するためのプレイリストコンポーネント506を含むことができる。プレイリストコンポーネント506について、
図8〜
図10に関連して以下でより詳細に説明する。
【0057】
遷移ビデオは、ベースビデオ557の再生と、メタデータ551からのメタデータアイテムがポピュレートされた実行可能プレゼンテーションテンプレート507の実行との合成である。プレゼンテーションテンプレートを実行すると、アニメーションがディスプレイ上の前景レイヤにメタデータアイテムを提示し、ベースビデオの再生がディスプレイ上の背景レイヤで行われ得る。
図6A〜
図6Eは、本開示の一実装形態による、ユーザのためのカスタム遷移ビデオを動的に作成するために、ディスプレイの背景レイヤでベースビデオ557を再生し、ディスプレイの前景レイヤでアニメーション化されたメタデータプレゼンテーションを配置するフレームの時系列の例示的な時系列を示す。
【0058】
図6Aは、00:00:00の時点を示す。フレーム602は、00:00:00の時点でのベースビデオの再生の開始を示す。フレーム604は、ベースビデオに対応し、メタデータアイテムがポピュレートされた実行可能プレゼンテーションテンプレートを実行した結果を示す。ポピュレートされたプレゼンテーションテンプレートを実行しても、00:00:00の時点では、メタデータアイテムはまだ表示されない。フレーム606は、特定のユーザ向けにある時点00:00:00にカスタム遷移ビデオを作成するために、フレーム604をフレーム602上にオーバーレイすることによる合成を示す。フレーム604は、ディスプレイ608上の前景レイヤにあり得、フレーム602はディスプレイ608上の背景レイヤにあり得る。00:00:00の時点では、メタデータアニメーションのフレーム604はいかなるメタデータをも提示しない。クライアントデバイス(たとえば、クライアントデバイス501)は、ディスプレイ608上にメタデータをどのように、いつ提示するかを指定する構成パラメータ(たとえば、タイムコード)を受信することができる。クライアントデバイスは、タイムコードに基づいて特定の時点にメタデータのアニメーションを実行して、ディスプレイ608上の前景レイヤのメタデータの出現および消失を、ディスプレイ608上の背景レイヤにおけるベースビデオの再生と同期させることができる。たとえば、ベースビデオにおけるヘッダテキスト603「Next」は、後の時点ではディスプレイ608における特定の位置(たとえば、位置605)に最終的に到達するためにディスプレイ608の底部からフローティングしている場合がある。
図6Bに示すように、ベースビデオについてのタイムコードは、ヘッダテキスト603「Next」に対応するメタデータが、ヘッダテキスト603「Next」が位置605に到達する時点までディスプレイ608上に提示されないことを指定する場合がある。
【0059】
図6Bは、00:00:02の時点に再生しているベースビデオのフレーム624と、同じ時点でのメタデータアニメーションのフレーム630とを示す。フレーム632は、同じ時点にカスタム遷移ビデオを作成するために、フレーム630をフレーム624上にオーバーレイすることによる合成を示す。フレーム624において、ヘッダテキスト620「Next」およびヘッダテキスト622「After」の各々がそれぞれの特定の位置に到達する。同じ時点に、フレーム630において、タイトルテキスト626「Show 1」およびタイトルテキスト628「Show 2」がビューにフェードインする。ベースビデオは、ベースビデオの実行可能プレゼンテーションテンプレートが実行されたときに、メタデータアイテムをディスプレイ上にどのように提示すべきかを指定する構成パラメータを有することができる。構成パラメータは、フレーム630に示すように、たとえば、ベースビデオの再生の開始から2秒を示す00:00:02などの特定のタイムコードが、タイトルテキスト626「Show 1」およびタイトルテキスト628「Show 2」の特定のタイプのアニメーション(たとえば、フェードイン)の実行をトリガすることを指定し得る。構成パラメータは、この特定のテキストおよびこの特定のタイムコードの透明度値(たとえば、75%)も指定し得る。合成のフレーム632では、タイトルテキスト634「Show 1」のアニメーション(たとえば、フェードイン)およびタイトルテキスト637「Show 2」のアニメーション(たとえば、フェードイン)は、前景レイヤにあり、これは、背景レイヤでのベースビデオの再生の前またはそのオーバーレイである。
【0060】
図6Cは、0:00:03の時点に再生しているベースビデオのフレーム640と、同じ時点でのメタデータアニメーションのフレーム645とを示す。フレーム650は、同じ時点にカスタム遷移ビデオを作成するために、フレーム645をフレーム640上にオーバーレイすることによる合成を示す。フレーム645において、タイトルテキスト641「Show 1」およびタイトルテキスト643「Show 2」が各々完全にビューにフェードインしている。構成パラメータは、この特定のテキストおよびこの特定のタイムコードの透明度値(たとえば、0%)を指定し得る。たとえば、合成のフレーム650では、タイトルテキスト636「Show 1」およびタイトルテキスト638「Show 2」の各々が完全なビュー(すなわち、透明度なし)で表示される。
【0061】
図6Dは、0:00:05の時点に再生しているベースビデオのフレーム660と、同じ時点でのメタデータアニメーションのフレーム665とを示す。フレーム670は、同じ時点にカスタム遷移ビデオを作成するために、フレーム665をフレーム660上にオーバーレイすることによる合成を示す。フレーム660において、テキスト661「COMING UP ON ACME CHANNEL」、ACMEチャネルのロゴの画像662、およびヘッダテキスト663「After」がベースビデオの再生中にビューからフェードアウトし始める。テキスト661、画像662、およびヘッダテキスト663は、
図6Eの時点00:00:07でのフレーム680において、以下に示されるように、ベースビデオが再生されるにつれて消え続ける。
【0062】
図6Dを参照すると、フレーム665において、メタデータアニメーション内のタイトルテキスト663「Show 2」がビューからフェードアウトし始める。構成パラメータは、たとえば、ベースビデオの再生の開始から5秒を示す00:00:05など、この特定のタイムコードが、タイトルテキスト663の特定のタイプのアニメーションの実行(たとえば、フェードアウト)をトリガすることを指定し得る。構成パラメータは、この特定のテキストおよびこの特定のタイムコードの透明度値(たとえば、80%)を指定し得る。
図6Eの時点00:00:07でのフレーム685において、以下に示されるように、クライアントデバイスがメタデータアニメーションを実行し続けると、タイトルテキスト663は消え続ける。
図6Dを参照すると、合成のフレーム670は、ヘッダテキスト667「Next」およびタイトルテキスト669「Show 1」が依然として完全なビュー(すなわち、フェードアウトなし、透明度なし)で表示されることを示す。
【0063】
図6Eは、0:00:07の時点に再生しているベースビデオのフレーム680と、同じ時点でのメタデータアニメーションのフレーム685とを示す。フレーム690は、同じ時点にカスタム遷移ビデオを作成するために、フレーム685をフレーム680上にオーバーレイすることによる合成を示す。合成のフレーム690は、ヘッダテキスト687「Next」およびタイトルテキスト689「Show 1」が、表示される遷移ビデオの唯一の要素であることを示している。遷移ビデオは00:00:08の時点に終了し、クライアントデバイスは次のビデオ「Show 1」の再生を開始することができる。
【0064】
図7は、本開示の一実装形態による、カスタムインタスティシャル遷移ビデオを動的に提供するための方法700の態様のフロー図を示す。方法700は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(汎用コンピュータシステムまたは専用マシン上で実行されるものなど)、または両方の組合せを含み得る処理ロジックによって実行される。一実装形態では、この方法は、
図5のクライアントデバイス501内のインタスティシャルコンポーネント505によって実行される。一実装形態では、クライアントデバイスの処理デバイスが方法700を実行する。
【0065】
ブロック710で、処理デバイスは、クライアントデバイスによって再生されるベースビデオを受信する。一実装形態では、処理デバイスは、ベースビデオ識別子(たとえば、URI)を受信する。URIは、ベースビデオのファイルの場所を識別し、処理デバイスは、URIを使用して、ベースビデオのファイルを取得する。ディスプレイ上で再生されるとき、ベースビデオは、メタデータアイテムのセットでオーバーレイされるために予約されているベースビデオのフレームに1つまたは複数のエリア(たとえば、
図3のエリア302、304)を含む。ベースビデオおよび/またはベースビデオ識別子は、ビデオストリーミングサーバ(たとえば、
図5のビデオストリーミングサーバ515)から受信することができる。
【0066】
ブロック720で、処理デバイスは、特定のユーザ向けに次に再生されるビデオのセットを決定する。ビデオのセットは、1つまたは複数のビデオを含むことができる。ビデオのセットの選択は、たとえば、ユーザによって以前再生された、ユーザが「いいね」を付けた、ユーザに推奨された、ユーザによって共有された、ユーザによってコメントされた、ユーザによってプレイリストに追加された、および/またはユーザによってチャネル登録されたビデオのセットに基づくことができる。一実装形態では、ビデオのセットの選択は、特定のユーザに関連付けられたビデオの別のセットに基づいて行うことができる。一実装形態では、選択は、推奨サーバによって行うことができ、推奨サーバは、ビデオのセットの選択をクライアントデバイスに通知する。別の実装形態では、ビデオのセットの選択は、スケジューリングサーバによって行われ、スケジューリングサーバは、ビデオのセットの選択をクライアントデバイスに通知する。あるユーザのビデオの選択は、別のユーザのビデオの選択と異なる場合がある。また別の実装形態では、クライアントデバイスは、次に再生されるビデオのセットを動的に選択する。処理デバイスは、
図8および
図9に関連して以下により詳細に説明するように、ビデオの選択されたセットを含むカスタムフィラープレイリストを作成することができる。
【0067】
ブロック730で、処理デバイスは、ビデオのセットのメタデータコンテンツを受信する。メタデータコンテンツは、推奨サーバまたはスケジューリングサーバから受信することができる。メタデータコンテンツは、ベースビデオの受信と同時に受信することができる。一実装形態では、ビデオストリーミングサーバは、メタデータコンテンツをクライアントデバイスに送信するように、推奨サーバまたはスケジューリングサーバに命令を送信する。
【0068】
ブロック740で、処理デバイスは、ビデオの選択されたセットのメタデータコンテンツから抽出されたメタデータアイテムのセットをベースビデオのプレゼンテーションテンプレートにポピュレートする。プレゼンテーションテンプレートは、実行されると、処理デバイスに結合されたディスプレイ上でメタデータアイテムのセット内の1つまたは複数の個々のメタデータアイテムがアニメーション化される、実行可能なコードとすることができる。メタデータアイテムのセットは、タイトル、作成者、チャネル、1つもしくは複数のキーワード、またはビデオの選択されたセット内のそれぞれビデオの統計のうちの少なくとも1つを含むことができる。
【0069】
処理デバイスは、ベースビデオ識別子を使用して、ベースビデオ識別子に対応するプレゼンテーションテンプレートを選択することができる。一実装形態では、処理デバイスは、ベースビデオ識別子をプレゼンテーションテンプレートにマッピングするデータストアに記憶されたマッピングデータにアクセスする。たとえば、ビデオストリーミングサービスは、エクストリームスポーツのテーマを有するデータコンテンツを有するエクストリームスポーツチャネルを含むことができ、ガーデニングテーマを有するデータコンテンツを有するガーデニングチャネルを含むことができる。エクストリームスポーツチャネルのベースビデオ識別子は、エクストリームスポーツチャネルのプレゼンテーションテンプレートにマッピングすることができ、ガーデニングチャネルのベースビデオ識別子は、ガーデニングチャネルのプレゼンテーションテンプレートにマッピングすることができる。
【0070】
ブロック750で、処理デバイスは、クライアントデバイスに結合されたディスプレイ上でベースビデオを再生する。一実装形態では、ディスプレイは、ミラーリングおよび/またはキャスティング技術をサポートするストリーミングデバイスに結合される。ベースビデオは、オーディオ(たとえば、音楽)を含むことができる。一実装形態では、ディスプレイは、クライアントデバイスのディスプレイである。たとえば、ディスプレイは、スマートフォンまたはタブレットコンピュータのディスプレイであり得る。別の実装形態では、ディスプレイは、ミラーリングおよび/またはキャスティング技術をサポートするストリーミングデバイスに結合される。ストリーミングデバイスおよびクライアントデバイスは、同じネットワーク(たとえば、ワイヤレスネットワーク)に接続することができ、クライアントデバイスは、ストリーミングデバイスに結合されたディスプレイ上でベースビデオを再生することができる。一実装形態では、処理デバイスは、ベースビデオを再生するためにメディアプレーヤを実行する。
【0071】
ブロック760で、処理デバイスは、ベースビデオのフレームの予約エリアにメタデータアイテムのセットをオーバーレイするために、ポピュレートされたプレゼンテーションテンプレートの実行を、ディスプレイ上のベースビデオの再生と同期させる。ポピュレートされたプレゼンテーションテンプレートが実行されると、ディスプレイ上で再生されるベースビデオのフレームの予約エリアに、メタデータアイテムのセット内の1つまたは複数の個別のメタデータアイテムのアニメーションがオーバーレイされる。同期によって、次に再生されるビデオのセットについて特定のユーザに通知するカスタム遷移ビデオが作成される。ベースビデオの再生とのポピュレートされたプレゼンテーションテンプレートの同期の実行の終了直後、処理デバイスは、次に再生されるように選択されたビデオのセット内のビデオを再生することができる。
【0072】
同期のために、処理デバイスは、ビデオストリーミングサーバから、ポピュレートされたプレゼンテーションテンプレートにあるメタデータアイテムを、処理デバイスに結合されたディスプレイ上に表示するための構成パラメータを受信することができる。構成パラメータは、タイムコードのセット、およびフォントスタイル、フォントサイズ、フォントカラー、位置、またはアニメーションのタイプのうちの1つまたは複数を含むことができる。処理デバイスは、構成パラメータを使用して、ポピュレートされたプレゼンテーションテンプレート内のメタデータアイテムを表示し、メタデータアイテムの表示をベースビデオの再生と同期させることができる。たとえば、フォント関連のパラメータは、特定のメタデータアイテムを表示するために使用すべきフォントスタイル、フォントサイズ、およびフォントカラーを指定することができる。位置パラメータは、ディスプレイ上に特定のメタデータアイテムを配置するためのX-Y座標を指定することができる。アニメーションパラメータは、特定のメタデータアイテムを表示するために実行すべきアニメーションのタイプを指定することができる。構成パラメータは、特定のベースビデオに対応している。たとえば、エクストリームスポーツチャネルのベースビデオの構成パラメータは、ガーデニングチャネルのベースビデオの構成パラメータとは異なる場合がある。
【0073】
処理デバイスがポピュレートされたプレゼンテーションテンプレートを実行すると、1つまたは複数の特定のメタデータアイテムが、タイムコードのセットに基づいて特定の時点にディスプレイ上に提示され得る。タイムコードは、ディスプレイ上でポピュレートされたプレゼンテーションテンプレート内のメタデータアイテムのセット内の1つまたは複数の特定のメタデータアイテムのアニメーションを実行するための1つまたは複数の時点を指定することができる。ポピュレートされたプレゼンテーションテンプレートの実行とベースビデオの再生との同期は、ベースビデオの再生の開始時間に基づき得る。一実装形態では、処理デバイスは、ベースビデオが再生を開始したときのタイムスタンプを決定することができ、タイムコードの参照時間としてタイムスタンプを使用することができる。タイムコードは秒として表すことができる。
【0074】
ポピュレートされたプレゼンテーションテンプレートの実行は、タイムコードのセットに従ってディスプレイ上で特定のメタデータアイテムのアニメーションを実行する。タイムコードのセットは、ディスプレイ上でそれぞれのメタデータアイテムの第1のタイプのアニメーションを実行する第1の時点と、ディスプレイ上でそれぞれのメタデータアイテムの第2のタイプのアニメーションを実行する第2の時点とを含むことができる。たとえば、処理デバイスは、タイムコード00:00:02を受信し、ポピュレートされたプレゼンテーションテンプレートが実行されると、ベースビデオが再生を開始したときから2秒後に2つのビデオタイトルのフェードインアニメーションが実行されて、
図6Bのフレーム630に示されるように、2つのビデオタイトルのフェードインアニメーションを表示し得、時点00:00:05は、
図6Dのフレーム665に示されるように、ビデオタイトルのうちの1つのフェードアウトアニメーションをトリガし得る。アニメーションのタイプには、限定はしないが、たとえば、フェードイン、フェードアウト、バウンスイン、バウンスアウト、スピンイン、スピンアウト、フロートイン、フロートアウトなどがあり得る。
【0075】
図8は、本開示の一実装形態による、ストリーミングされ、再生されるビデオの対話型のスケジュールを表示するビデオストリーミングユーザインターフェース800の一例を示す。スケジュールは、たとえば、スケジューリングサーバ(たとえば、
図5のスケジューリングサーバ515)によってあらかじめ定義することができる。ユーザインターフェース800は、グラフィカルユーザインターフェースとすることができる。
【0076】
ユーザインターフェースは、ビデオを再生するためのスケジュールの時間マーカー(たとえば、「9.00」、「9.30」、「10.00」、「10.30」)を含むタイムライン808を含むことができる。一実装形態では、タイムライン808におけるマーカー間の時間期間は同じである。一実装形態では、時間期間は30分のタイムブロックである。ユーザインターフェース800は、スケジュールされたビデオの各々の視覚表現を含むことができる。一実装形態では、スケジュールされたビデオの視覚表現は、対応するスケジュールされたビデオのビデオ識別子(たとえば、ビデオタイトル)を表示するセル(たとえば、セル804)である。たとえば、セル804は、タイトル「ホラーショー」を含む。スケジュールされたビデオのうちの1つまたは複数をコンテンツプロバイダに関連付けることができる。たとえば、ビデオ「ホラーショー」およびビデオ「ゾンビショー」をコンテンツプロバイダ「ACME」に関連付けることができる。
【0077】
ビデオは、たとえば、30分ごとなど、30分のタイムブロックの間隔またはその倍数で再生するようにスケジュールすることができる。ビデオストリーミングサービスプロバイダは、コンテンツプロバイダにチャネルを割り当てることができ、コンテンツプロバイダのビデオは、それぞれのチャネルを介してスケジュールに従って再生することができる。たとえば、ビデオ「ホラーショー」は、ACMEチャネルにおいて午後9時に再生するようにスケジュールされ、ビデオ「ゾンビショー」は、ACMEチャネルにおいて午後9時30分に再生するようにスケジュールされている。
【0078】
ユーザは、スケジュールに従ってACMEチャネルにおいて再生されている特定のビデオを視聴するために、ビデオストリーミングユーザインターフェースからACMEチャネルまたは特定のビデオ(たとえば、ホラーショー)を選択してもよい。ユーザは、ビデオ「ホラーショー」が終了する前に7分間の再生の時間期間812がビデオに残っている時点(たとえば、806の時点)にビデオ「ホラーショー」を選択することができる。806の時点で、次のビデオ「ゾンビショー」がACMEチャネルにおいて再生される前に、「ホラーショー」ビデオに7分が残っている。
【0079】
クライアントデバイス(たとえば、
図5のクライアントデバイス501)は、次のビデオ(たとえば、「ゾンビショー」)が再生されるまでの時間期間806(たとえば、7分)を満たすように特定のユーザ向けのビデオのカスタムフィラープレイリストを動的に作成するためのプレイリストコンポーネント(たとえば、
図5のプレイリストコンポーネント506)を含むことができる。フィラープレイリストは、1つまたは複数のビデオを含むことができる。一実装形態では、再生する次のビデオをユーザに通知するために、フィラープレイリスト内のビデオ間でカスタム遷移ビデオを再生することができる。一実装形態では、フィラープレイリストのために選択されたビデオは、ユーザが選択した現在のチャネルに関連付けられる。別の実装形態では、フィラープレイリストのために選択されたビデオは、ユーザが選択した現在のチャネルに関連付けられていない。一実装形態では、カスタムフィラープレイリストのビデオの選択は、ユーザが視聴した、「いいね」を付けた、共有した、プレイリストに追加した、コメントした、チャネル登録したなどのビデオに基づく。
【0080】
図9は、本開示の一実装形態による、カスタムフィラービデオプレイリストを動的に提供するための方法900の態様のフロー図を示す。方法900は、ハードウェア(回路、専用ロジックなど)、ソフトウェア(汎用コンピュータシステムまたは専用マシン上で実行されるものなど)、または両方の組合せを含み得る処理ロジックによって実行される。一実装形態では、この方法は、クライアントデバイス内のプレイリストコンポーネント(たとえば、
図5のプレイリストコンポーネント506)によって実行される。一実装形態では、クライアントデバイスの処理デバイスが方法900を実行する。
【0081】
ブロック910で、処理デバイスは、現在の時点から次にスケジュールされたビデオの開始までの時間量を決定する。現在の時点は、ユーザがビデオストリーミングユーザインターフェースのインスタンスを実行したとき、またはユーザがビデオストリーミングユーザインターフェースを介してチャネルまたはビデオを選択したときとすることができる。処理デバイスは、スケジュールデータにアクセスして、次にスケジュールされたビデオの開始時間を決定することができる。スケジュールデータは、データストア(たとえば、
図5のデータストア513)に記憶することができる。
【0082】
ブロック920で、処理デバイスは、推奨サーバ(たとえば、
図5の推奨サーバ517)から推奨ビデオのセットの時間データを受信する。ビデオのセットは、推奨サーバによって選択することができる。一実装形態では、たとえば、ユーザが視聴した、「いいね」を付けた、共有した、プレイリストに追加した、コメントした、チャネル登録したビデオに基づいて、ユーザが選択したチャネルに基づいて、および/または現在再生中のビデオに基づいて、ビデオのセットが選択される。
【0083】
ブロック930で、処理デバイスは、推奨ビデオのセット内のそれぞれのビデオの時間長を決定する。時間データは、それぞれのビデオの時間長を含むことができる。ブロック940で、処理デバイスは、フィラービデオプレイリストを作成するために、推奨ビデオのセットから1つまたは複数のビデオを選択する。処理デバイスは、ビデオの時間長と、現在の時点から次にスケジュールされたビデオの開始までの時間量とに基づいて、ビデオを選択することができる。たとえば、現在の時点から次にスケジュールされたビデオの開始までの時間量は7分であり得、処理デバイスは、フィラープレイリストのための推奨されるビデオのセットから7分間の時間長を有する単一のビデオを選択することができる。別の例では、処理デバイスは、フィラープレイリストについて、長さが3分の第1のビデオ、長さが1.3分の第2のビデオ、および長さが2.7分の第3のビデオを選択してもよい。
【0084】
一実装形態では、処理デバイスは、フィラービデオプレイリスト内の最初のビデオを自動的に再生する。別の実装形態では、処理デバイスは、ビデオストリーミングユーザインターフェースにフィラービデオプレイリスト内の最初のビデオの視覚表現(たとえば、サムネイル)を表示する。ユーザは、最初のビデオの再生を開始するために、ユーザインターフェースで最初のビデオの視覚表現を選択してもよい。
【0085】
図10は、本開示の一実装形態による、フィラープレイリスト内のビデオの視覚表現1010を表示するビデオストリーミングユーザインターフェース1000の一例を示す。ビデオ表現1010は、フィラープレイリスト内の最初のビデオのものであり得る。ビデオ表現1010は、ビデオのサムネイル、ビデオのタイトル、ビデオの時間の長さ、ビデオの作成者または所有者、およびビデオの統計のうちの1つまたは複数を含むことができる。ビデオ表現1010は、対話型とすることができる。たとえば、ユーザは、ビデオの再生をトリガするために、ビデオ表現1010を選択することができる。
【0086】
図11は、本開示の一実装形態による、カスタム遷移ビデオを動的に提供するためのシステムアーキテクチャ1100の一例を示す。システムアーキテクチャ1100は、ユーザデバイス1110A〜1110Z、1つまたは複数のネットワーク1105、1つまたは複数のデータストア1106、1つまたは複数のサーバ1130、および1つまたは複数のプラットフォーム(たとえば、コンテンツ共有プラットフォーム1120、推奨プラットフォーム1157、広告プラットフォーム1165、モバイルプラットフォーム1150、ソーシャルネットワークプラットフォーム1160、検索プラットフォーム1145、コンテンツプロバイダプラットフォーム1195、およびコラボレーションプラットフォーム1155)を含む。プラットフォームは、1つまたは複数のコンピューティングデバイス(ラックマウントサーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータなど)、データストア(たとえば、ハードディスク、メモリ、およびデータベース)、ネットワーク、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとすることができる。
【0087】
1つまたは複数のネットワーク1105は、1つもしくは複数のパブリックネットワーク(たとえば、インターネット)、1つもしくは複数のプライベートネットワーク(たとえば、ローカルエリアネットワーク(LAN)、もしくは1つもしくは複数のワイドエリアネットワーク(WAN))、1つもしくは複数の有線ネットワーク(たとえば、イーサネット(登録商標)ネットワーク)、1つもしくは複数のワイヤレスネットワーク(たとえば、802.11ネットワークまたはWi-Fiネットワーク)、1つもしくは複数のセルラーネットワーク(たとえば、Long Term Evolution(LTE)ネットワーク)、ルータ、ハブ、スイッチ、サーバコンピュータ、および/またはそれらの組合せを含むことができる。一実装形態では、アーキテクチャ1100のいくつかのコンポーネントは、互いに直接接続されていない。一実装形態では、アーキテクチャ1100は、別個のネットワーク1105を含む。
【0088】
1つまたは複数のデータストア1106は、メモリ(たとえば、ランダムアクセスメモリ)、キャッシュ、ドライブ(たとえば、ハードドライブ)、フラッシュドライブ、データベースシステム、またはデータを記憶することができる別のタイプのコンポーネントもしくはデバイスであり得る。1つまたは複数のデータストア1106は、複数のコンピューティングデバイス(たとえば、複数のサーバコンピュータ)にまたがり得る複数のストレージコンポーネント(たとえば、複数のドライブまたは複数のデータベース)を含むことができる。データストア1106は、データを記憶することができる永続ストレージとすることができる。永続ストレージは、ローカルストレージユニットまたはリモートストレージユニットとすることができる。永続ストレージは、磁気ストレージユニット、光学ストレージユニット、ソリッドステートストレージユニット、電子ストレージユニット(メインメモリ)、または同様のストレージユニットとすることができる。永続ストレージは、モノリシックデバイスまたはデバイスの分散セットとすることができる。本明細書で使用される「セット」は、アイテムの任意の正の整数を指す。
【0089】
コンテンツアイテム1121は、1つまたは複数のデータストア1106に記憶することができる。データストア1106は、1つまたは複数のプラットフォームの一部とすることができる。コンテンツアイテム1121の例には、限定はしないが、デジタルビデオ、デジタル映画、アニメーション画像、デジタル写真、デジタル音楽、デジタル音楽、ウェブサイトコンテンツ、ソーシャルメディアアップデート、電子書籍(電子ブック)、電子雑誌、デジタル新聞、デジタルオーディオブック、電子ジャーナル、ウェブブログ、RSS(real simple syndication)フィード、電子コミックブック、ソフトウェアアプリケーションなどがあり得る。コンテンツアイテム1121は、メディアアイテムとも呼ばれる。簡潔かつ簡単にするために、本明細書全体にわたって、コンテンツアイテム1121の一例としてオンラインビデオ(以下、ビデオとも呼ばれる)を使用する。コンテンツアイテム1121は、メインビデオ(たとえば、
図1のメインビデオ102、110、118、126)およびインタスティシャル遷移ビデオ(たとえば、
図1のインタスティシャル遷移ビデオ106、114、122)を含むことができる。
【0090】
コンテンツアイテム1121は、コンテンツプロバイダによって提供され得る。コンテンツプロバイダは、ユーザ、会社、組織などとすることができる。コンテンツプロバイダは、ビデオ広告であるコンテンツアイテム1121を提供することができる。以下、ビデオ広告を提供するコンテンツプロバイダを広告主と呼ぶ。たとえば、コンテンツアイテム1121は、車の広告主によって提供される車のビデオ広告であり得る。たとえば、サービスプロバイダが、ユーザによって視聴されるように、ユーザデバイス1110A〜1110Z上に広告を提供するとき、サービスプロバイダは、広告主に料金を請求することができる。
【0091】
ユーザデバイス1110A〜1110Zには、スマートフォン、携帯電話、携帯情報端末(PDA)、ポータブルメディアプレーヤ、ネットブック、ラップトップコンピュータ、電子ブックリーダー、タブレットコンピュータ、デスクトップコンピュータ、セットトップボックス、ゲーム機、テレビなどのデバイスがあり得る。ユーザデバイス1110A〜1110Zは、クライアントデバイス(たとえば、
図5のクライアントデバイス501)とすることができる。
【0092】
個々のユーザデバイス1110A〜1110Zは、通信アプリケーション1115を含むことができる。コンテンツアイテム1121は、通信アプリケーション1115、インターネットなどを介して消費することができる。本明細書で使用する「メディア」、「メディアアイテム」、「オンラインメディアアイテム」、「デジタルメディア」、「デジタルメディアアイテム」、「コンテンツ」、および「コンテンツアイテム」には、コンテンツアイテムを提示するように構成されたソフトウェア、ファームウェア、またはハードウェアを使用して実行またはロードできる電子ファイルがあり得る。一実装形態では、通信アプリケーション1115は、プラットフォーム(たとえば、コンテンツ共有プラットフォーム1120、推奨プラットフォーム1157、広告プラットフォーム1165、モバイルプラットフォーム1150、ソーシャルネットワークプラットフォーム1160、検索プラットフォーム1145、コラボレーションプラットフォーム1155、およびコンテンツプロバイダプラットフォーム1195)、ならびに/またはプラットフォームおよび/もしくはネットワークの組合せを介してコンテンツアイテム1121(たとえば、ビデオ)をユーザが作成、送信、および受信できるようにするアプリケーションであり得る。
【0093】
たとえば、通信アプリケーション1115は、ソーシャルネットワーキングアプリケーション、ビデオ共有アプリケーション、ビデオストリーミングアプリケーション、ビデオオンデマンドアプリケーション、写真共有アプリケーション、チャットアプリケーション、コンテンツプロバイダのモバイルアプリケーション、またはそのようなアプリケーションの任意の組合せであり得る。ユーザデバイス内の通信アプリケーション1115は、1人または複数人のユーザに1つまたは複数のコンテンツアイテム1121(たとえば、ビデオ)をレンダリング、表示、および/または提示することができる。たとえば、通信アプリケーション1115は、ビデオを送信、受信、および/または再生するために、ユーザデバイスのディスプレイにレンダリングされる1つまたは複数のユーザインターフェース(たとえば、グラフィカルユーザインターフェース)を提供することができる。
【0094】
一実装形態では、個々のユーザデバイス1110A〜1110Zは、1人または複数人のユーザに対してコンテンツアイテム221(たとえば、ビデオ)をレンダリング、表示、および/または提示するためのコンテンツビューア1113(たとえば、
図5のアプリケーション503)を含む。一実装形態では、コンテンツビューア1113は、アプリケーション(たとえば、通信アプリケーション1115)に埋め込まれている。別の実装形態では、コンテンツビューア1113は、ユーザがビデオ、画像、ドキュメント(たとえば、Webページ)などのコンテンツアイテム1121を消費(たとえば、再生、表示)できるようにする、通信アプリケーション1115などのスタンドアロンアプリケーション(たとえば、モバイルアプリケーション、デスクトップアプリケーション、ゲームコンソールアプリケーション、テレビアプリケーションなど)であり得る。たとえば、コンテンツビューア1113は、プラットフォームのWebサーバによってサービスされるコンテンツ(たとえば、ハイパーテキストマークアップ言語(HTML)ページなどのウェブページ、デジタルメディアアイテムなど)のアクセス、検索、提示、および/またはナビゲートを行うことができるウェブブラウザであってもよい。別の例では、コンテンツビューア1113は、ドキュメント(たとえば、ウェブページ)に埋め込まれた埋め込みメディアプレーヤ(たとえば、フラッシュ(登録商標)プレーヤまたはHTML5プレーヤ)を表示してもよい。
【0095】
コンテンツビューア1113は、サーバ1130および/またはプラットフォームによってユーザデバイス1110A〜1110Zに提供することができる。たとえば、コンテンツビューア1113は、コンテンツ共有プラットフォーム1120によって提供されるドキュメント(たとえば、ウェブページ)に埋め込まれた埋め込みメディアプレーヤであってもよい。別の例では、コンテンツビューア1113は、プラットフォーム(たとえば、コンテンツ共有プラットフォーム1120、推奨プラットフォーム1157、広告プラットフォーム1165、モバイルプラットフォーム1150、ソーシャルネットワークプラットフォーム1160、検索プラットフォーム1145、コラボレーションプラットフォーム1155、およびコンテンツプロバイダプラットフォーム1195)からダウンロードされるアプリケーションであり得る。別の例では、コンテンツビューア1113は、ユーザデバイス1110A〜1110Zにプレインストールされているスタンドアロンアプリケーションであってもよい。
【0096】
一実装形態では、個々のユーザデバイス1110A〜1110Zは、カスタム遷移ビデオを動的に作成し、再生するためのインタスティシャルコンポーネント1114(たとえば、
図5のインタスティシャルコンポーネント505)を含む。一実装形態では、個々のユーザデバイス1110A〜1110Zは、次のビデオが再生されるまでの時間期間(たとえば、7分)を満たすように特定のユーザ向けのビデオのカスタムフィラープレイリストを動的に作成するためのプレイリストコンポーネント1112(たとえば、
図5のプレイリストコンポーネント503)を含む。
【0097】
コンテンツプロバイダプラットフォーム1195は、サービスを提供することができ、コンテンツプロバイダは、サービスプロバイダとすることができる。たとえば、コンテンツプロバイダは、ユーザが、コンテンツプロバイダプラットフォーム1195を介して、ビデオ、テレビ番組、ビデオクリップ、オーディオ、オーディオクリップ、および映画をユーザデバイス1110A〜1110Z上で再生するために通信アプリケーション1115を介してメディアストリーミングサービスを提供するビデオストリーミングサービスプロバイダであってもよい。
【0098】
ソーシャルネットワークプラットフォーム1160は、オンラインソーシャルネットワーキングサービスを提供することができる。ソーシャルネットワークプラットフォーム1160は、ユーザがプロファイルを作成し、そのプロファイルでアクティビティを実行するための通信アプリケーション1115を提供することができる。アクティビティには、プロファイリングの更新、他のユーザとのメッセージの交換、他のユーザと共有するためのステータスアップデート、写真、ビデオなどの投稿、ステータスアップデート、写真、ビデオなどの評価(たとえば、いいね、コメント、共有、推奨)、および他のユーザのアクティビティの通知の受信などがあり得る。
【0099】
モバイルプラットフォーム1150は、ユーザが1つまたは複数のモバイルデバイス(たとえば、電話、タブレットコンピュータ、ラップトップコンピュータ、ウェアラブルコンピューティングデバイスなど)および/またはその他の適切なデバイスを使用して互いに接続、情報共有、および/または対話できるようにするために使用することができる、1つまたは複数のコンピューティングデバイス(たとえば、サーバ)、データストア、ネットワーク(たとえば、電話ネットワーク、セルラーネットワーク、ローカルエリアネットワーク、インターネット、および/またはネットワークの組合せ)、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとすることができ、および/またはそれらを含むことができる。たとえば、モバイルプラットフォーム1150は、電話通信、ショートメッセージサービス(SMS)メッセージング、マルチメディアメッセージサービス(MMS)メッセージング、テキストチャット、および/またはユーザ間の任意の他の通信を可能にし得る。モバイルプラットフォーム1150は、ビデオメッセージング、ビデオチャット、および/またはビデオ会議を介したユーザ通信をサポートすることができる。
【0100】
コラボレーションプラットフォーム1155は、たとえば、ストリーミングビデオまたはボイスオーバーIP(VoIP)技術、セルラー技術、LANおよび/またはWAN技術を使用して、ビデオチャット、ビデオメッセージング、ならびに音声および/またはビデオ会議(たとえば、デバイス1110A〜1110Zのユーザ間)などのコラボレーションサービスを可能にすることができ、個人、娯楽、ビジネス、教育、または学術指向の対話に使用され得る。
【0101】
推奨プラットフォーム1157は、コンテンツの推奨(たとえば、記事、ビデオ、投稿、ニュース、ゲームなど)を生成し、提供するために使用することができる、1つまたは複数のコンピューティングデバイス(ラックマウントサーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータなど)、データストア(たとえば、ハードディスク、メモリ、データベース)、ネットワーク、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとすることができる。推奨プラットフォーム1157は、1つまたは複数の推奨サーバ(たとえば、
図5の推奨サーバ517)を含むことができる。
【0102】
検索プラットフォーム1145は、ユーザが1つもしくは複数のデータストア206および/または1つもしくは複数のプラットフォームにクエリを実行し、クエリ結果を受信できるようにするために使用することができる、1つまたは複数のコンピューティングデバイス(ラックマウントサーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータなど)、データストア(たとえば、ハードディスク、メモリ、データベース)、ネットワーク、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとすることができる。
【0103】
広告プラットフォーム1165は、ビデオ広告を提供するために使用することができる、1つまたは複数のコンピューティングデバイス(ラックマウントサーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータなど)、データストア(たとえば、ハードディスク、メモリ、データベース)、ネットワーク、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとすることができる。
【0104】
コンテンツ共有プラットフォーム1120は、コンテンツアイテム1121へのアクセスを1人もしくは複数人のユーザに提供する、かつ/またはコンテンツアイテム1121を1人もしくは複数人のユーザに提供するために使用することができる、1つまたは複数のコンピューティングデバイス(ラックマウントサーバ、ルータコンピュータ、サーバコンピュータ、パーソナルコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータなど)、データストア(たとえば、ハードディスク、メモリ、データベース)、ネットワーク、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとすることができる。たとえば、コンテンツ共有プラットフォーム1120は、ユーザがコンテンツアイテム1121を消費、アップロード、ダウンロード、および/または検索できるようにし得る。別の例では、コンテンツ共有プラットフォーム1120によって、ユーザは、コンテンツアイテム1121の承認(「いいね」)、ディスライク、推奨、共有、評価、および/またはコメントなど、コンテンツアイテム1121を評価することができる。別の例では、コンテンツ共有プラットフォーム1120は、ユーザがコンテンツアイテム1121を編集できるようにし得る。コンテンツ共有プラットフォーム1120は、たとえば、ユーザデバイス1110A〜1110Zを介して、1人または複数人のユーザにコンテンツアイテム1121へのアクセスを提供するために使用され得るウェブサイト(たとえば、1つまたは複数のウェブページ)および/または1つもしくは複数のアプリケーション(たとえば、通信アプリケーション1115)を含むこともできる。コンテンツ共有プラットフォーム1120は、コンテンツアイテム1121へのアクセスを提供する任意のタイプのコンテンツ配信ネットワークを含むことができる。
【0105】
コンテンツ共有プラットフォーム1120は、複数のチャネル(たとえば、チャネルA 1125〜チャネルZ 1129)を含むことができる。チャネルは、共通のソースから利用可能なデータコンテンツ、または共通のトピックもしくはテーマを有するデータコンテンツとすることができる。データコンテンツは、ユーザによって選択されたデジタルコンテンツ、ユーザが利用できるデジタルコンテンツ、ユーザによってアップロードされたデジタルコンテンツ、コンテンツプロバイダによって選択されたデジタルコンテンツ、放送局によって選択されたデジタルコンテンツなどとすることができる。たとえば、チャネルA 1125は、ビデオYおよびZを含み得る。チャネルを、チャネルにおいてアクションを実行できるユーザである所有者に関連付けることができる。データコンテンツは、1つまたは複数のコンテンツアイテム1121とすることができる。チャネルは、コンテンツ共有プラットフォームの一実装形態として説明されているが、本開示の実装形態は、チャネルモデルを介してコンテンツアイテム1121を提供するコンテンツ共有プラットフォームに限定されない。
【0106】
説明を簡単にするために、本開示の方法は、一連の行為として図示され、説明されている。しかしながら、本開示による行為は、様々な順序でおよび/または同時に、ならびに本明細書で提示および説明されていない他の行為とともに行われる可能性がある。さらに、開示された主題に従って方法を実施するために、例示されたすべての行為が必要とされるわけではない。加えて、方法が状態図またはイベントを介して一連の相互に関係する状態として代替的に表され得ることを、当業者は理解および諒解されよう。さらに、本明細書で開示される方法は、そのような方法のコンピューティングデバイスへの移送および転送を容易にするために製造品に記憶できることを諒解されたい。本明細書で使用される「製造品」という用語は、任意のコンピュータ可読デバイスまたは記憶媒体からアクセス可能なコンピュータプログラムを包含することを意図している。
【0107】
図12は、本開示の一実装形態に従って、本明細書で説明する方法のうちの任意の1つまたは複数をマシンに実行させるための命令のセットを実行できるコンピュータシステム1200の例示的な形態のマシンの図を示す。コンピュータシステム1200は、
図5のクライアントデバイス501とすることができる。マシンは、クライアント/サーバネットワーク環境内のクライアントマシンの容量で、またはピアツーピア(または分散型)ネットワーク環境のピアマシンとして動作することができる。マシンは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、携帯電話、Webアプライアンス、サーバ、ネットワークルータ、スイッチもしくはブリッジ、またはそのマシンによって実行されるアクションを指定する命令のセット(逐次など)を実行することができる任意のマシンとすることができる。さらに、単一のマシンのみが示されているが、「マシン」という用語はまた、本明細書で説明する方法のうちの任意の1つまたは複数を実行するための命令のセット(または複数のセット)を個別または共同で実行するマシンの任意の集合を含むものとみなされるものとする。
【0108】
例示的なコンピュータシステム1200は、バス1230を介して互いに通信する、処理デバイス(プロセッサ)1202、メインメモリ1204(たとえば、読取り専用メモリ(ROM)、フラッシュメモリ、同期DRAM(SDRAM)などのダイナミックランダムアクセスメモリ(DRAM)、ダブルデータレート(DDR SDRAM)、またはDRAM(RDRAM)など)、静的メモリ1206(たとえば、フラッシュメモリ、静的ランダムアクセスメモリ(SRAM)など)、およびデータ記憶デバイス1218を含む。
【0109】
プロセッサ(処理デバイス)1202は、マイクロプロセッサ、中央処理装置などの1つまたは複数の汎用処理デバイスを表す。より詳細には、プロセッサ1202は、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、または他の命令セットを実装するプロセッサもしくは命令セットの組合せを実装するプロセッサとすることができる。プロセッサ1202は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサなどの1つまたは複数の専用処理デバイスとすることもできる。プロセッサ1202は、本明細書で説明した動作およびステップを実行するための命令1222を実行するように構成される。
【0110】
コンピュータシステム1200は、ネットワークインターフェースデバイス1208をさらに含むことができる。コンピュータシステム1200はまた、ビデオディスプレイユニット1210(たとえば、液晶ディスプレイ(LCD)または陰極線管(CRT))、入力デバイス1212(たとえば、キーボード、および英数字キーボード、動き感知入力デバイス、タッチスクリーン)、カーソル制御デバイス1214(たとえば、マウス)、および信号生成デバイス1216(たとえば、スピーカー)を含むこともできる。
【0111】
データ記憶デバイス1218は、本明細書に記載の方法または機能のうちの任意の1つまたは複数を具体化する命令1222(たとえばソフトウェア)の1つまたは複数のセットが記憶される非一時的コンピュータ可読記憶媒体1228を含むことができる。命令1222は、コンピュータシステム1200による実行中に、完全に、または少なくとも部分的に、メインメモリ1204および/またはプロセッサ1202内に常駐することもでき、メインメモリ1204およびプロセッサ1202もコンピュータ可読記憶媒体を構成する。命令1222はさらに、ネットワークインターフェースデバイス1208を介してネットワーク1220上で送信または受信することができる。
【0112】
一実装形態では、命令1222は、インタスティシャルコンポーネント(たとえば、
図5のインタスティシャルコンポーネント505)および/またはインタスティシャルコンポーネントを呼び出すメソッドを含むソフトウェアライブラリのための命令を含む。一実装形態では、命令1222は、プレイリストコンポーネント(たとえば、
図5のプレイリストコンポーネント506)および/またはプレイリストコンポーネントを呼び出すメソッドを含むソフトウェアライブラリのための命令を含む。コンピュータ可読記憶媒体1228(機械可読記憶媒体)は、単一の媒体である例示的な実装形態で示されているが、「コンピュータ可読記憶媒体」という用語は、1つまたは複数の命令のセットを記憶する単一の媒体または複数の媒体(たとえば、集中型もしくは分散型データベース、ならびに/または関連するキャッシュおよびサーバ)を含むと解釈されるものとする。「コンピュータ可読記憶媒体」という用語はまた、マシンによる実行のために命令のセットを記憶、符号化、または実行することができ、マシンに本開示の方法のうちの任意の1つまたは複数を実行させる任意の媒体を含むと解釈されるものとする。したがって、「コンピュータ可読記憶媒体」という用語は、限定はしないが、固体メモリ、光学媒体、および磁気媒体を含むと解釈されるものとする。
【0113】
上記の説明では、多くの詳細が記載されている。しかしながら、本開示の利益を有する当業者には、これらの特定の詳細なしで本開示を実施できることは明らかであろう。いくつかの例では、本開示を不明瞭にすることを避けるために、よく知られている構造およびデバイスが、詳細ではなくブロック図の形式で示されている。
【0114】
発明を実施するための形態の一部は、コンピュータメモリ内のデータビットに対する操作のアルゴリズムおよび記号表現の観点から提示されている。これらのアルゴリズムの説明および表現は、データ処理分野の当業者が、他の当業者にその仕事の要旨を最も効果的に伝えるために使用する手段である。アルゴリズムは、ここでは、また一般的に、所望の結果につながる自己矛盾のないステップのシーケンスであると考えられている。ステップは、物理量の物理的操作を必要とするものである。通常、必ずしもではないが、これらの量は、記憶、転送、結合、比較、および他の操作が可能な電気信号または磁気信号の形式を取る。時として、一般的な用法という理由で、これらの信号をビット、値、要素、記号、文字、項、数字などと呼ぶと便利であることがわかっている。
【0115】
しかしながら、これらおよび類似の用語はすべて、適切な物理量に関連付けられ、これらの量に適用される便利なラベルにすぎないことに留意されたい。以下の説明から明らかなように別段に明記されていない限り、説明全体を通して、「受信」、「決定」、「ポピュレート」、「同期」、「再生」、「選択」、「作成」などの用語を使用する議論は、コンピュータシステムのレジスタおよびメモリ内の物理(電子など)量として表されるデータを操作し、コンピュータシステムのメモリもしくはレジスタ、または他のそのような情報の記憶、送信、もしくは表示デバイス内の物理量として同様に表される他のデータに変換するコンピュータシステムまたは類似の電子コンピューティングデバイスのアクションおよびプロセスを指す。
【0116】
説明を簡単にするために、方法は、本明細書では一連の行為として図示され、説明されている。しかしながら、本開示による行為は、様々な順序でおよび/または同時に、ならびに本明細書で提示および説明されていない他の行為とともに行われる可能性がある。さらに、開示された主題に従って方法を実施するために、例示されたすべての行為が必要とされるわけではない。加えて、方法が状態図またはイベントを介して一連の相互に関係する状態として代替的に表され得ることを、当業者は理解および諒解されよう。さらに、本明細書で開示される方法は、そのような方法のコンピューティングデバイスへの移送および転送を容易にするために製造品に記憶できることを諒解されたい。本明細書で使用される「製造品」という用語は、任意のコンピュータ可読デバイスまたは記憶媒体からアクセス可能なコンピュータプログラムを包含することを意図している。
【0117】
本開示のいくつかの実装形態は、本明細書の動作を実行するための装置にも関する。この装置は、意図された目的のために構築することができ、またはコンピュータに記憶されたコンピュータプログラムによって選択的に起動または再構成される汎用コンピュータを含むことができる。そのようなコンピュータプログラムは、限定はしないが、フロッピーディスク、光ディスク、CD-ROM、および光磁気ディスク、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気カードもしくは光カード、または電子命令の記憶に適した任意のタイプのメディアなどのコンピュータ可読記憶媒体に記憶することができる。
【0118】
本明細書全体にわたって、「一実装形態(one implementation)」または「一実装形態(an implementation)」の言及は、実装形態に関連して説明される特定の特徴、構造、または特性が少なくとも1つの実装形態に含まれることを意味する。したがって、本明細書全体にわたって様々な場所で「一実装形態(one implementation)では」または「一実装形態(an implementation)では」という句が出現しても、必ずしもすべてが同じ実装形態を指すわけではない。さらに、「または」という用語は、排他的な「または」ではなく、包括的な「または」を意味するものとする。さらに、「例」または「例示的」という単語は、本明細書では、例、事例、または例示としての役割を果たすことを意味するために使用される。本明細書で「例示的」として説明される任意の態様または設計は、必ずしも他の態様または設計よりも好ましいまたは有利であると解釈されないものとする。むしろ、「例」または「例示的」という用語の使用は、概念を具体的な方法で提示するためのものである。
【0119】
上記の説明は例示的なものであり、限定的なものではないことを理解されたい。上記の説明を読み、理解すれば、他の多くの実装形態が当業者には明らかであろう。したがって、本開示の範囲は、添付の特許請求の範囲を参照して、そのような特許請求の範囲が権利を与えられる均等物の全範囲とともに決定されるものとする。
【0120】
本明細書に記載のシステムがユーザに関する個人情報を収集する、または個人情報を利用する可能性がある状況では、ユーザは、プログラムまたは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、社会的行動もしくは活動、職業、ユーザの嗜好、またはユーザの現在位置に関する情報)を収集するかどうかを制御する機会、または、ユーザにとってより関連があり得る、コンテンツサーバからのコンテンツを受信するかどうか、および/もしくはどのようにコンテンツを受信するかを制御する機会を与えられ得る。さらに、あるデータは、それが記憶または使用される前に1つまたは複数の方法で扱われる可能性があり、したがって、個人的に識別可能な情報は削除される。たとえば、個人的に識別可能な情報をそのユーザについて決定することができないように、ユーザの識別情報を扱うことができ、または、ユーザの特定の場所を特定できないように、(市、郵便番号、または州レベルなど)位置情報が取得されるユーザの地理的位置が一般化され得る。したがって、ユーザは、ユーザについての情報がどのように収集されるか、およびコンテンツサーバによってどのように使用されるかを制御し得る。
【0121】
本明細書に記載のシステムがユーザに関する個人情報を収集する、または個人情報を利用する可能性がある状況では、ユーザは、プログラムまたは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、社会的行動もしくは活動、職業、ユーザの嗜好、またはユーザの現在位置に関する情報)を収集するかどうかを制御する機会、または、ユーザにとってより関連があり得る、コンテンツサーバからのコンテンツを受信するかどうか、および/もしくはどのようにコンテンツを受信するかを制御する機会を与えられ得る。さらに、あるデータは、それが記憶または使用される前に1つまたは複数の方法で扱われる可能性があり、したがって、個人的に識別可能な情報は削除される。たとえば、個人的に識別可能な情報をそのユーザについて決定することができないように、ユーザの識別情報を扱うことができ、または、ユーザの特定の場所を特定できないように、(市、郵便番号、または州レベルなど)位置情報が取得されるユーザの地理的位置が一般化され得る。したがって、ユーザは、ユーザについての情報がどのように収集されるか、およびコンテンツサーバによってどのように使用されるかを制御し得る。
【0122】
一実装形態では、フィラープレイリスト内のビデオが部分的にしか再生されない場合、クライアントデバイスはフィラープレイリスト内のビデオのセットを更新する。たとえば、ユーザがビデオを停止したために3分間のビデオのうち0.5分間しか再生されなかった場合、処理デバイスは、現在の時点から次にスケジュールされたビデオの開始までの時間量を再計算し、再計算に基づいてフィラープレイリスト内のビデオのセットを変更する。
【0123】
カスタムインタスティシャル遷移ビデオを動的に提供するための装置も説明されている。一実装形態では、装置は、クライアントデバイスによって再生されるベースビデオを受信するための手段を含む。ベースビデオは、メタデータアイテムのセットでオーバーレイされるように予約されたベースビデオのフレーム内のエリアを含む。装置は、クライアントデバイスによって、特定のユーザ向けに次に再生されるビデオの第1のセットを決定するための手段を含む。ビデオの第1のセットの選択は、特定のユーザに関連付けられたビデオの第2のセットに基づく。
【0124】
この装置は、サーバから、クライアントデバイスによって、ビデオの第1のセットのメタデータコンテンツを受信するための手段と、クライアントデバイスによって、ビデオの第1のセットのメタデータコンテンツから抽出されたメタデータアイテムのセットをベースビデオの実行可能プレゼンテーションテンプレートにポピュレートするための手段とを含む。
【0125】
この装置は、クライアントデバイスによって、クライアントデバイスに結合されたディスプレイ上でベースビデオを再生するための手段と、ベースビデオのフレームの予約エリアをメタデータアイテムのセットでオーバーレイするために、クライアントデバイスによって、ポピュレートされたプレゼンテーションテンプレートの実行を、ディスプレイ上のベースビデオの再生と同期させるための手段とを含む。同期によって、次に再生されるビデオの第1のセットについて特定のユーザに通知するカスタムインタスティシャル遷移ビデオが作成される。
【0126】
ポピュレートされたプレゼンテーションテンプレートの実行によって、クライアントデバイスに結合されたディスプレイ上にメタデータアイテムのセット内の1つまたは複数の個別のメタデータアイテムのアニメーションが得られ、ディスプレイ上で再生されるベースビデオのフレームの予約エリアが、メタデータアイテムのセット内の1つまたは複数の個々のメタデータアイテムのアニメーションでオーバーレイされる。この装置は、ベースビデオについてのタイムコードのセットを受信するための手段であり、タイムコードが、ディスプレイ上でポピュレートされたプレゼンテーションテンプレート内のメタデータアイテムのセット内のそれぞれのメタデータアイテムのアニメーションを実行するための1つまたは複数の時点を指定する、手段と、タイムコードのセットに従って、クライアントデバイスに結合されたディスプレイ上でメタデータアイテムのセット内のそれぞれのメタデータアイテムのアニメーションを実行するための手段とを含む。タイムコードのセットは、ディスプレイ上でそれぞれのメタデータアイテムの第1のタイプのアニメーションを実行する第1の時点と、ディスプレイ上でそれぞれのメタデータアイテムの第2のタイプのアニメーションを実行する第2の時点とを含む。
【0127】
この装置は、クライアントデバイスに結合されたディスプレイ上にポピュレートされたプレゼンテーションテンプレート内のメタデータアイテムを表示するための構成パラメータを受信するための手段を含む。構成パラメータは、フォントスタイル、フォントサイズ、フォントカラー、テキストの位置、またはアニメーションのタイプのうちの少なくとも1つを含む。この装置は、構成パラメータに基づいて、ディスプレイ上にポピュレートされたプレゼンテーションテンプレート内のメタデータアイテムを表示するための手段を含む。
【0128】
一実装形態では、メタデータアイテムのセットは、ビデオの第1のセット内のそれぞれのビデオのタイトル、作成者、チャネル、1つもしくは複数のキーワード、またはビデオの第1のセット内のそれぞれのビデオの統計のうちの少なくとも1つを含む。
【0129】
一実装形態では、装置は、現在の時点から、あらかじめ定義されたビデオのスケジュール内の次にスケジュールされたビデオの開始までの時間量を決定するための手段と、推奨サーバから、複数の推奨ビデオの時間データを受信するための手段と、複数の推奨ビデオ内のそれぞれのビデオの時間長を決定するための手段と、複数の推奨ビデオ内のそれぞれのビデオの時間長と、現在の時点から次にスケジュールされたビデオの開始までの時間量とに基づいて、複数の推奨ビデオ内の1つまたは複数のビデオを選択するための手段とを含む。
【0130】
一実装形態では、装置は、ビデオの第1のセットを含むフィラープレイリストを作成するための手段を含む。フィラープレイリストは、現在の時点から、あらかじめ定義されたビデオのスケジュール内の次にスケジュールされたビデオの開始まで再生される。装置は、フィラープレイリスト内のビデオの再生の間にカスタムインタスティシャル遷移ビデオを再生するための手段を含む。