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

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

▶ ディビックス, エルエルシーの特許一覧

特開2022-132649コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法
<>
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図1
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図2
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図3
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図4
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図5
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図6
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図7
  • 特開-コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022132649
(43)【公開日】2022-09-08
(54)【発明の名称】コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法
(51)【国際特許分類】
   H04N 21/2343 20110101AFI20220901BHJP
   H04N 21/235 20110101ALI20220901BHJP
   H04N 21/2668 20110101ALI20220901BHJP
   H04N 21/462 20110101ALI20220901BHJP
【FI】
H04N21/2343
H04N21/235
H04N21/2668
H04N21/462
【審査請求】有
【請求項の数】1
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022117869
(22)【出願日】2022-07-25
(62)【分割の表示】P 2020084289の分割
【原出願日】2016-01-06
(31)【優先権主張番号】62/100,299
(32)【優先日】2015-01-06
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】518348942
【氏名又は名称】ディビックス, エルエルシー
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ソン ツェン
(72)【発明者】
【氏名】レザ エムダッド
(57)【要約】
【課題】コンテンツを符号化し、デバイス間でコンテンツを共有するためのシステムおよび方法の提供。
【解決手段】メディアコンテンツの共有部分を要求するために、再生デバイスは、要求を生成し、コンテンツサーバに送信する。再生デバイスは、デバイスの再生能力を示す情報を要求に含む。コンテンツサーバは、要求を受信し、要求の中の情報から再生デバイスの再生能力を判定する。次いで、コンテンツサーバは、メディアコンテンツを取得するために再生デバイスによって使用され得るアセットを判定し、判定されたアセットについての情報を含む、再生デバイス用のトップレベルインデックスファイルを生成する。次いで、トップレベルインデックスファイルは、次いで、示されたアセットを使用してメディアコンテンツを取得するために、トップレベルインデックスファイルを使用し得る、再生デバイスに送信される。
【選択図】図8
【特許請求の範囲】
【請求項1】
装置またはシステムまたは方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、異なる能力を伴うデバイスとコンテンツを共有することに関し、より具体的には、コンテンツファイルを1つまたはそれを上回る異なる符号化にトランスコードし、再生デバイスの能力に基づいて、再生デバイス上の符号化されたコンテンツの再生で使用するための代替的符号化のインデックスファイルを生成することに関する。
【背景技術】
【0002】
技術の進歩は、そのような活動に従事する種々のプラットフォームを提供する多くの異なる技術会社を用いて、ユーザの異なるデバイスおよび/または異なるユーザ(例えば、友人ならびに家族)の間でメディアコンテンツ(すなわち、いくつかあるファイルタイプの中でも、写真、ビデオ、文書)を瞬時かつシームレスに共有する能力をコンピュータデバイスのユーザに提供してきた。例えば、ソーシャルメディアは、モバイルデバイス、デスクトップコンピュータ、タブレット、および異なるビデオ再生能力を伴う多くの他のタイプのデバイスにわたる写真ならびにビデオの瞬時共有を許可してきた。他のクラウドベースの記憶プラットフォームは、例えば、コンテンツの場所へのURLを、コンテンツを共有したい他のユーザに提供することによって、ユーザがコンテンツを共有することを可能にしてきた。異なるサービスが、コンテンツをユーザに配信するために異なる技術実装を使用し得る。技術プロバイダは、多くの場合、特定のコンテンツ配信機構を実装するときに、プラットフォーム上にコンテンツを記憶するために必要とされる記憶装置、コンテンツを異なるデバイスにストリーム配信するために必要な処理、帯域幅要件を含むネットワーク考慮事項、およびコンテンツを視聴する際にモバイルデバイスによって体験される待ち時間の量を含むが、それらに限定されない、多くの異なる要因を考慮する。さらに、利用可能なビデオの品質の急速な進歩により、これらの考慮事項は、特定の技術規格を実装するときに、さらに不可欠になる。
【0003】
一般に、ビデオコンテンツは、ストリーミングおよび/またはダウンロードによってユーザデバイスに配信されてもよい。メディアのストリーミングという用語は、再生デバイス上のメディアの再生を説明し、メディアは、サーバ上に記憶され、再生中にネットワークを経由して再生デバイスに継続的に送信される。典型的には、再生デバイスが、メディアの次の部分の受信に先立って、全てのバッファリングされたメディアの再生を完了することに起因して、再生デバイスは、再生の途絶を防止するように、再生中の任意の所与の時間に、十分な量のメディアをバッファ内に記憶する。適応型ビットレートストリーミングまたは適応型ストリーミングは、本ストリーミング条件(例えば、再生デバイスのネットワーク帯域幅およびビデオデコーディング容量)をリアルタイムで検出し、適宜、ストリーミングされるメディアの質を調節することを伴う。典型的には、ソースメディアは、異なる最大ビットレートを有する別個のストリームとして符号化され、再生デバイスまたはクライアントは、利用可能なリソースに応じて、異なる符号化のストリーミングを切り替える。再生デバイスが適応型ビットレートストリーミングを開始するとき、再生デバイスは、典型的には、ストリームの初期セットからメディアの部分を要求することによって始動する。再生デバイスが、要求されたメディアをダウンロードするにつれて、再生デバイスは、利用可能な帯域幅を測定することができる。利用可能な帯域幅が増加または減少する場合、再生デバイスは、より高いまたはより低いビットレートストリームに切り替えることができる。
【0004】
適応型ストリーミングソリューションは、典型的には、サーバと再生デバイスとの間でメディアをストリーム配信するために、RFC 2616としてInternet Engineering Task ForceおよびWorld Wide Web Consortiumによって公開されたハイパーテキスト転送プロトコル(HTTP)を利用する。HTTPは、再生デバイスがファイル内のバイト範囲を要求することを可能にする、ステートレスプロトコルである。サーバが、情報を要求する再生デバイスの状態に関する情報、または再生デバイスから受信される要求に応答するために再生デバイスによって要求されるバイト範囲を記録するように要求されないため、HTTPは、ステートレスと表される。
【0005】
適応型ストリーミングシステムでは、ソースメディアは、典型的には、実際のビデオおよびオーディオデータを含有する、いくつかの代替的ストリームを指し示すトップレベルインデックスファイルとして、メディアサーバ上に記憶される。各ストリームは、典型的には、1つまたはそれを上回るコンテナファイルに記憶される。異なる適応型ストリーミングソリューションは、典型的には、異なるインデックスおよびメディアコンテナを利用する。World Wide Web Consortiumによって開発された同期化マルチメディア統合言語(SMIL)は、Microsoft Corporation(Redmond, Washington)によって開発されたIIS Smooth
Streaming、およびAdobe Systems Incorporated(San Jose, California)によって開発されたFlash Dynamic Streamingを含む、いくつかの適応型ストリーミングソリューションにおいて、インデックスを作成するために利用される。Apple Computer Incorporated(Cupertino, California)によって開発されたHTTP適応型ビットレートストリーミングは、典型的には、メディアコンテナファイルを識別するURIのリストを含有する、テキストファイルである、拡張M3Uプレイリストファイル(.M3U8)を使用して、インデックスファイルを実装する。最も一般的に使用されているメディアコンテナ形式は、MPEG-4 Part 14(すなわち、ISO/IEC 14496-14)で規定されるMP4コンテナ形式、およびMPEG-2 Part 1(すなわち、ISO/IEC規格13818-1)で規定されるMPEGトランスポートストリーム(TS)コンテナである。MP4コンテナ形式は、IIS Smooth StreamingおよびFlash Dynamic Streamingで利用される。TSコンテナは、HTTP適応型ビットレートストリーミングで使用される。
【発明の概要】
【課題を解決するための手段】
【0006】
本発明のいくつかの実施形態による、コンテンツを符号化し、デバイスの間で共有するためのシステムおよび方法が開示される。本発明のいくつかの実施形態によると、メディアコンテンツは、以下の様式で共有される。コンテンツサーバは、第1の再生デバイスから共有メディアコンテンツを受信する。コンテンツサーバは、複数の代替的ストリームの中に共有メディアコンテンツを提供するアセットを含む、共有メディアコンテンツのトランスコーディングを取得する。次いで、コンテンツサーバは、第2の再生デバイスからメディアコンテンツの要求を受信する。要求は、第2の再生デバイスのデバイス能力情報を含む。コンテンツサーバは、第2の再生デバイスのデバイス能力情報に基づいて、共有メディアコンテンツを第2の再生デバイスに提供するために使用されることができるアセットの情報を含む、トップレベルインデックスファイルを生成し、コンテンツサーバから第2の再生デバイスにトップレベルインデックスファイルを伝送する。
【0007】
いくつかの実施形態によると、トップレベルインデックスファイルは、以下の様式で生成される。コンテンツサーバは、アセットを記憶するメモリから、共有メディアコンテンツを提供するアセットについての情報を読み出す。第2の再生デバイスの能力は、デバイス能力情報から、コンテンツサーバによって判定され、アセットについての情報は、第2の再生デバイスの判定された能力に基づいてコンテンツサーバによってフィルタ処理され、第2の再生デバイスの能力の基準を満たすアセットの情報は、コンテンツサーバを使用して、トップレベルインデックスファイルに含まれる。
【0008】
多くの実施形態によると、第2の再生デバイスによって提供されるデバイス能力情報は、第2の再生デバイスの製品識別子を含み、第2の再生デバイスの能力の判定するステップは、デバイス能力情報に含まれる第2の再生デバイスの製品識別子を有する、再生デバイスの能力を記憶するメモリから、第2の再生デバイスの能力を読み出す、コンテンツサーバによって判定される。いくつかの実施形態では、第2の再生デバイスの能力は、要求の中のデバイス能力情報に含まれ、コンテンツサーバは、コンテンツサーバを使用して、要求の中のデバイス能力情報から能力を取得することによって、第2の再生デバイスの能力を判定する。
【0009】
本発明のいくつかの実施形態によると、トップレベルインデックスファイルに含まれるアセットはまた、メモリに記憶される共有メディアコンテンツを提供するための異なるアセットの使用を調整する規則に基づく。これらの実施形態のうちの多くによると、異なるアセットの使用を調整する規則は、再生デバイスのタイプ、デバイスの再生能力、およびデバイスの場所、ならびに要求された言語から成る規則から選択される、少なくとも1つの規則を含む。
【0010】
いくつかの実施形態によると、トップレベルインデックスファイルに含まれるアセットはまた、ユーザ選好およびコンテンツ所有者の要件から成る群から選択される、基準群から選択される少なくとも1つの基準に基づく。
【0011】
いくつかの実施形態によると、再生デバイスは、以下の様式で共有コンテンツを受信する。再生デバイス
は、別の再生デバイスによって再生デバイスと共有される共有メディアコンテンツの要求を生成する。要求は、再生デバイスのデバイス能力情報と、他の再生デバイスから受信された共有メディアコンテンツと関連付けられるトークンとを含む。再生デバイスは、要求をコンテンツサーバに伝送する。要求に応答して、再生デバイスは、コンテンツサーバからトップレベルインデックスファイルを受信する。トップレベルインデックスファイルは、再生デバイスのデバイス能力情報に基づいて、デバイスへの特定のメディアコンテンツを取得するために使用されることができるアセットの情報を含む。次いで、再生デバイスは、トップインデックスファイル内の情報を使用して、再生デバイス内でメディアコンテンツを取得する。
例えば、本願は以下の項目を提供する。
(項目1)
符号化されたメディアを再生デバイスに提供する、コンテンツサーバであって、
プロセッサと、
前記プロセッサによって可読であるメモリと、
前記メモリ内の命令であって、前記命令は、前記プロセッサによって読み取られると、前記プロセッサに、
第1の再生デバイスから共有メディアコンテンツを受信することと、
複数の代替的ストリームの中に前記共有メディアコンテンツを提供するアセットを含む、前記共有メディアコンテンツのトランスコーディングを取得することと、
第2の再生デバイスから前記メディアコンテンツの要求を受信することであって、前記要求は、前記第2の再生デバイスのデバイス能力情報を含む、ことと、
前記第2の再生デバイスの前記デバイス能力情報に基づいて、前記共有メディアコンテンツを前記第2の再生デバイスに提供するために使用されることができるアセットの情報を含む、トップレベルインデックスファイルを生成することと、
前記トップレベルインデックスファイルを前記第2の再生デバイスに伝送することと
を行わせるように指図する、命令と
を備える、コンテンツサーバ。
(項目2)
前記命令はさらに、前記プロセッサに、
アセットを記憶するメモリから、前記共有メディアコンテンツを提供する前記アセットについての情報を読み出すことと、
前記要求の中の前記デバイス能力情報から、前記第2の再生デバイスの能力を判定することと、
前記第2の再生デバイスの前記判定された能力を使用して、前記アセットについての前記情報をフィルタ処理することと、
前記第2の再生デバイスの前記能力の基準を満たすアセットの情報を前記トップレベルインデックスファイルに含むことと
を行うように指図する、項目1に記載のコンテンツサーバ。
(項目3)
前記第2の再生デバイスによって提供される前記デバイス能力情報は、前記第2の再生デバイスの製品識別子を含み、前記第2の再生デバイスの能力を判定する前記命令は、前記プロセッサに、
前記デバイス能力情報に含まれる前記第2の再生デバイスの前記製品識別子を有する、再生デバイスの能力を記憶するメモリから、前記第2の再生デバイスの前記能力を読み出すように指図する、項目2に記載のコンテンツサーバ。
(項目4)
前記第2の再生デバイスの前記能力は、前記要求の中の前記デバイス能力情報に含まれ、前記第2の再生デバイスの能力を判定する前記命令は、前記プロセッサに、前記要求の中の前記デバイス能力情報から前記第2の再生デバイスの前記能力を取得するように指図する、項目2に記載のコンテンツサーバ。
(項目5)
前記トップレベルインデックスファイルに含まれる前記アセットはまた、メモリに記憶される前記メディアコンテンツを提供するための異なるアセットの使用を調整する規則に基づく、項目1に記載のコンテンツサーバ。
(項目6)
異なるアセットの使用を調整する前記規則は、再生デバイスのタイプ、前記デバイスの再生能力、および前記デバイスの場所、ならびに要求された言語から成る規則から選択される、少なくとも1つの規則を含む、項目1に記載のコンテンツサーバ。
(項目7)
前記トップレベルインデックスファイルに含まれる前記アセットはまた、ユーザ選好およびコンテンツ所有者の要件から成る群から選択される、基準群から選択される少なくとも1つの基準に基づく、項目1に記載のコンテンツサーバ。
(項目8)
前記要求は、前記第2の再生デバイスが前記第1の再生デバイスから受信したトークンを含み、前記命令はさらに、前記プロセッサに、前記トークンを認証し、前記トークンの認証に応答して、前記共有ビデオコンテンツへのアクセスを提供するように指図する、項目1に記載のコンテンツサーバ。
(項目9)
前記共有ビデオコンテンツへのアクセスを提供する前記命令は、前記プロセッサに、前記共有メディアコンテンツの暗号解読情報を第2の再生デバイスに提供するように指図する命令を含む、項目8に記載のコンテンツサーバ。
(項目10)
メディアコンテンツを取得するために使用され得るアセットの情報を含む、トップレベルインデックスファイルを再生デバイスに提供するための方法であって、
コンテンツサーバ内で、第1の再生デバイスから共有メディアコンテンツを受信するステップと、
前記コンテンツサーバ内で、複数の代替的ストリームの中に前記共有メディアコンテンツを提供するアセットを含む、前記共有メディアコンテンツのトランスコーディングを取得するステップと、
前記コンテンツサーバ内で、第2の再生デバイスから前記メディアコンテンツの要求を受信するステップであって、前記要求は、前記第2の再生デバイスのデバイス能力情報を含む、ステップと、
前記コンテンツサーバを使用して、前記第2の再生デバイスの前記デバイス能力情報に基づいて、特定のメディアコンテンツを前記第2の再生デバイスに提供するために使用されることができるアセットの情報を含む、トップレベルインデックスファイルを生成するステップと、
前記コンテンツサーバから前記第2の再生デバイスに前記トップレベルインデックスファイルを伝送するステップと、
を含む、方法。
(項目11)
前記トップレベルインデックスファイルを生成するステップは、
前記コンテンツサーバを使用して、アセットを記憶するメモリから、前記共有メディアコンテンツを提供する前記アセットについての情報を読み出すステップと、
前記コンテンツサーバを使用して、前記デバイス能力情報から前記第2の再生デバイスの能力を判定するステップと、
前記コンテンツサーバを使用して、前記第2の再生デバイスの前記判定された能力に基づいて、前記アセットについての前記情報をフィルタ処理するステップと、
前記コンテンツサーバを使用して、前記第2の再生デバイスの前記能力の基準を満たすアセットの情報を前記トップレベルインデックスファイルに含むステップと、
を含む、項目10に記載の方法。
(項目12)
前記第2の再生デバイスによって提供される前記デバイス能力情報は、前記第2の再生デバイスの製品識別子を含み、前記第2の再生デバイスの前記能力を判定するステップは、
前記コンテンツサーバを使用して、前記デバイス能力情報に含まれる前記第2の再生デバイスの前記製品識別子を有する、再生デバイスの能力を記憶するメモリから、前記第2の再生デバイスの前記能力を読み出すステップを含む、項目11に記載の方法。
(項目13)
前記第2の再生デバイスの前記能力は、前記要求の中の前記デバイス能力情報に含まれ、前記第2の再生デバイスの前記能力を判定するステップは、前記コンテンツサーバを使用して、前記要求の中の前記デバイス能力情報から前記能力を取得するステップを含む、項目11に記載の方法。
(項目14)
前記トップレベルインデックスファイルに含まれる前記アセットはまた、メモリに記憶される前記メディアコンテンツを提供するための異なるアセットの使用を調整する規則に基づく、項目10に記載の方法。
(項目15)
異なるアセットの使用を調整する前記規則は、再生デバイスのタイプ、前記デバイスの再生能力、および前記デバイスの場所、ならびに要求された言語から成る規則から選択される、少なくとも1つの規則を含む、項目10に記載の方法。
(項目16)
前記トップレベルインデックスファイルに含まれる前記アセットはまた、ユーザ選好およびコンテンツ所有者の要件から成る群から選択される、基準群から選択される少なくとも1つの基準に基づく、項目8に記載の方法。
(項目17)
プロセッサ命令を含有する、非一過性の機械可読媒体であって、プロセッサによる前記命令の実行は、前記プロセッサに、特定のメディアコンテンツを取得するために使用するアセットについての情報を含む、トップレベルインデックスファイルを取得するプロセスを行わせ、
前記プロセスは、
第1の再生デバイスから共有メディアコンテンツを受信するステップと、
複数の代替的ストリームの中に前記共有メディアコンテンツを提供するアセットを含む、前記共有メディアコンテンツのトランスコーディングを取得するステップと、
第2の再生デバイスから前記共有メディアコンテンツの要求を受信するステップであって、前記要求は、前記第2の再生デバイスのデバイス能力情報を含む、ステップと、
前記第2の再生デバイスの前記デバイス能力情報に基づいて、特定のメディアコンテンツを前記第2の再生デバイスに提供するために使用されることができるアセットの情報を含む、トップレベルインデックスファイルを生成するステップと、
前記トップレベルインデックスファイルを前記第2の再生デバイスに伝送するステップと、
を含む、非一過性の機械可読媒体。
(項目18)
再生デバイスであって、
プロセッサと、
前記プロセッサによって可読であるメモリと、
前記メモリ内の命令であって、前記プロセッサによって読み取られると、前記プロセッサに、
別の再生デバイスによって前記再生デバイスと共有される共有メディアコンテンツの要求を生成することであって、前記要求は、前記再生デバイスのデバイス能力情報と、他の再生デバイスから受信された共有メディアコンテンツと関連付けられるトークンとを含む、ことと、
前記要求をコンテンツサーバに伝送することと、
前記再生デバイスの前記デバイス能力情報に基づいて、前記デバイスへの前記共有メディアコンテンツを取得するために使用されることができるアセットの情報を含む、トップレベルインデックスファイルを受信することと、
前記トップインデックスファイル内の前記情報を使用して、前記メディアコンテンツを取得することと
を行うように指図する、命令と、
を備える、再生デバイス。
(項目19)
前記要求を生成する前記命令は、前記再生デバイスの能力を判定するために使用され得る製品識別子を前記要求に含む命令を備える、項目16に記載の再生デバイス。
(項目20)
特定のメディアコンテンツのアセットについての情報を含む、トップインデックスファイルを取得するための方法であって、
別の再生デバイスによって前記再生デバイスと共有される共有メディアコンテンツの要求を生成するステップであって、前記要求は、前記再生デバイスのデバイス能力情報と、他の再生デバイスから受信された前記共有メディアコンテンツと関連付けられるトークンとを含む、ステップと、
前記再生デバイスからコンテンツサーバに前記要求を伝送するステップと、
前記再生デバイス内の前記コンテンツサーバからトップレベルインデックスファイルを受信するステップであって、前記トップレベルインデックスファイルは、前記再生デバイスの前記デバイス能力情報に基づいて、前記デバイスへの前記特定のメディアコンテンツを取得するために使用されることができるアセットの情報を含む、ステップと、
前記トップインデックスファイル内の前記情報を使用して、再生デバイス内で前記メディアコンテンツを取得するステップと、
を含む、方法。
(項目21)
前記要求を生成するステップは、前記再生デバイスの前記能力を判定するために使用され得る製品識別子を前記要求に含むステップを含む、項目18に記載の方法。
(項目22)
プロセッサ命令を含有する、非一過性の機械可読媒体であって、プロセッサによる前記命令の実行は、再生デバイス内の前記プロセッサに、特定のメディアコンテンツを取得するために使用するアセットについての情報を含む、トップレベルインデックスファイルを取得するプロセスを行わせ、前記プロセスは、
別の再生デバイスによって前記再生デバイスと共有される共有メディアコンテンツの要求を生成するステップであって、前記要求は、前記再生デバイスのデバイス能力情報と、他の再生デバイスから受信された前記共有メディアコンテンツと関連付けられるトークンとを含む、ステップと、
前記要求をコンテンツサーバに伝送するステップと、
前記コンテンツサーバからトップレベルインデックスファイルを受信するステップであって、前記トップレベルインデックスファイルは、前記再生デバイスの前記デバイス能力情報に基づいて、前記デバイスへの特定のメディアコンテンツを取得するために使用されることができるアセットの情報を含む、ステップと、
前記トップインデックスファイル内の前記情報を使用して、前記メディアコンテンツを取得するステップと、
を含む、非一過性の機械可読媒体。
【図面の簡単な説明】
【0012】
図1図1は、本発明のある実施形態による、再生サーバと、トランスコーディングサーバとを含む、コンテンツ配信システムのネットワーク図である。
【0013】
図2図2は、本発明のある実施形態による、再生デバイスのシステム図である。
【0014】
図3図3は、本発明のある実施形態による、コンテンツを複数の異なるデバイスに配信するように構成される再生サーバである。
【0015】
図4図4は、本発明のある実施形態による、コンテンツトランスコーディングおよび配信システムのアーキテクチャ図である。
【0016】
図5図5は、1つまたはそれを上回る異なるユーザデバイスと共有するためのコンテンツをアップロードしてトランスコードするためのプロセスを概念的に図示する。
【0017】
図6図6は、本発明のある実施形態による、再生デバイスからの要求に応答して生成されるトップレベルインデックスファイルを使用して、コンテンツを再生するためのプロセスを概念的に図示する。
【0018】
図7図7は、本発明のある実施形態による、再生サーバによって維持されるコンテンツの具体的断片と関連付けられるアセットに関する情報を使用して、トップレベルインデックスファイルを生成するためのプロセスを概念的に図示する。
【0019】
図8図8は、本発明のある実施形態による、コンテンツをユーザデバイスにアップロードして共有するために異なるデバイスと種々のサーバシステムとの間に一連の通信を提供する、通信図を概念的に図示する。
【発明を実施するための形態】
【0020】
ここで図面を参照すると、本発明の実施形態による、符号化されたコンテンツファイルを1つまたはそれを上回る異なる符号化にトランスコードし、デバイスの能力に基づいて、符号化されたコンテンツの再生で使用するための異なる符号化のトップレベルインデックスファイルを生成するためのシステムおよび方法が図示されている。いくつかの実施形態では、(限定されないが)携帯電話および/またはタブレットコンピュータ等のコンピュータデバイス上のアプリケーションが、コンピュータデバイスによって捕捉ならびに符号化されるビデオコンテンツを共有するために使用される。いくつかの実施形態では、共有プロセスは、他のデバイスへの適応型ビットレートストリーミングのために、符号化されたコンテンツを異なる符号化にトランスコードするコンテンツ配信システムに、符号化されたビデオファイルをアップロードするステップを伴う。多くの実施形態では、コンテンツ配信システムは、コンテンツの安全な共有を提供するように、異なる符号化の分布を制御する。異なる符号化は、コンテンツファイルが共有されるであろう、異なるデバイスの能力に基づき得る。例えば、「4K」または「超HD」解像度で捕捉され、異なるビデオデコーダおよび再生能力を伴ういくつかの異なるデバイスと共有される、ビデオコンテンツは、4Kストリーム用のHEVCコーデックおよびHD(すなわち、1080p)ストリーム用のH.264コーデックを使用して、トランスコードされてもよい。同様に、コンテンツ配信システムは、デバイスのそれぞれの特定の能力に基づいて、コンテンツファイルが共有されるであろう、異なるデバイスのための異なるトップレベルインデックスファイルを生成することができる。具体的には、4K符号化ストリームを再生することが可能なデバイスに関して、デバイスに提供されるトップレベルインデックスファイルは、コンテンツファイルの利用可能なHEVCおよびH.264符号化の両方についての情報を含んでもよい。対照的に、4K HEVCストリームを再生することが可能ではないデバイスに関して、デバイスに提供されるトップレベルインデックスファイルは、HDH.264ストリームを取得するための情報のみを含んでもよい。いくつかの実施形態では、コンテンツファイルは、コンテンツが異なる再生能力(例えば、符号化/復号能力、解像度、ネットワーク帯域幅)および/または種々の他の要件を伴うデバイスと共有されることを可能にするために、いくつかの異なる符号化規格(例えば、H.265/MPEG-H HEVC、H.264/MPEG-4 AVC、H.263/MPEG-4 Part 2、H.262/MPEG-2、GoogleTM(On2)コーデック、MicrosoftTMコーデック)にトランスコードされてもよい。利用される具体的コーデックは、典型的には、具体的用途の要件に依存している。
【0021】
トップレベルインデックスは、コンテンツをストリーム配信および再生するために再生デバイスによって利用されることができる、メディア(例えば、オーディオ、ビデオ、メタデータ、および字幕)の異なる符号化(例えば、H.265/MPEG-H HEVC、H.264/MPEG-4)を含有する、コンテナファイルの場所ならびにコンテンツを説明するファイルである。適応型ビットレートストリーミングシステムでは、トップレベルインデックスファイルは、典型的には、再生デバイスが切り替えることができる、コンテンツファイルの代替的符号化を参照する。多くの実施形態では、トップレベルインデックスファイルは、再生デバイスからのコンテンツファイルの要求に応答して生成される。例えば、再生デバイスAは、ビデオファイルを再生デバイスBと共有してもよく、トップレベルインデックスファイルは、コンテンツの再生を要求する再生デバイスB上で生成されてもよい。
【0022】
いくつかの実施形態では、トップレベルインデックスファイルを生成するプロセスは、コンテンツの具体的断片と関連付けられるストリームを含有する、異なる符号化またはコンテナファイルの全てを判定し、次いで、1つまたはそれを上回る所定の基準および/もしくはデバイスの能力に基づいて、アセットをフィルタ処理するステップを伴う。いくつかの実施形態では、アセットは、(限定されないが)コンテンツ所有者によって定義されたビジネス規則、コンテンツが共有されるであろうユーザのデバイス能力、および/またはユーザアカウントと関連付けられる情報を含む、所定の基準に基づいてフィルタ処理される。多くの実施形態では、生成されるトップレベルビデオファイルは、SMILファイルである。ある実施形態では、トップレベルインデックスファイルは、MPEG-DASH規格内で使用されるMPDファイルである。他の実施形態では、種々のファイル形式のうちのいずれかが、本発明の実施形態によるトップレベルインデックスファイルを生成するために、利用されることができる。
【0023】
いくつかの実施形態では、再生サーバは、コンテンツファイルを複数の異なるユーザデバイスと共有する再生デバイスからの要求に応じて、1つまたはそれを上回るトップレベルインデックスファイルであって、コンテンツファイルが共有される特定のデバイスのための各インデックスファイルを自動的に生成し、再生サーバはまた、異なるデバイスに暗号情報を提供し、コンテンツの保護されたストリームの再生を可能にすることができる。本発明の実施形態による、コンテンツを異なるユーザおよび/またはデバイスと共有するための異なる符号化アセットにトランスコードし、再生デバイスからの要求に応答して、トップレベルインデックスファイルを生成するための再生デバイス、再生サーバ、ならびにプロセスが、以下でさらに議論される。
【0024】
コンテンツ配信システムアーキテクチャ
本発明の多くの実施形態によるコンテンツ配信システムは、異なるデバイスに共有されるコンテンツファイルを複数の異なる符号化ストリームにトランスコードする、再生サーバを含む。デバイスがコンテンツの再生を要求するとき、コンテンツ配信システムは、要求に応答し、再生デバイスの異なる能力に基づいて、トップレベルインデックスファイルを自動的に生成することができる。本発明のある実施形態によるコンテンツ配信システムが、図1に図示されている。コンテンツ配信システム100は、他のユーザデバイスと共有するためのコンテンツをアップロードし、および/またはインターネット等のネットワーク160を介してコンテンツ配信ネットワーク(CDN)140内の遠隔サーバからコンテンツの再生(例えば、ストリーミングならびに/もしくはダウンロード)を要求するように構成される、ユーザAデバイス120およびユーザBデバイス130を含む、いくつかの再生デバイス120-130を含む。共有するためのストリームコンテンツをストリームするために、再生デバイスは、利用可能なアセット(すなわち、具体的タイトルと関連付けられるコンテンツのストリームを含有するコンテナファイル)のデータベース150、および特定の再生デバイスの能力に基づく所定のフィルタまたは基準のセットを使用して、特定のデバイスのために再生サーバ180によって自動的に生成される、トップレベルインデックスファイルを取得する。
【0025】
多くの実施形態では、再生デバイスは、再生デバイスによって提供される識別情報に基づいて、トップレベルインデックスファイル内に記述される異なる代替的ストリームからコンテンツを選択することによって、適応型ビットレートストリーミングを行ってもよい。自動的に生成されたトップレベルインデックスファイルを使用する、適応型ビットレートストリーミングのためのシステムおよび方法は、2011年12月30日に出願され、米国特許第8,787,570号として発行された、「Systems and Methods for Automatically Generating Top Level Index Files」と題されたShaifer et al.の米国特許出願第13/341,789号に説明されている。米国特許第8,787,570号の開示は、参照することによってその全体として本明細書に組み込まれる。
【0026】
再生サーバ110は、ユーザデバイス120-130からコンテンツファイルを取得し、符号化されたコンテンツファイルを、異なる符号化規格を使用する1つまたはそれを上回る代替的ストリームにトランスコードするために、トランスコーディングサーバクラスタ115を使用してもよい。トランスコードされたコンテンツファイルは、利用可能なアセット(すなわち、具体的タイトルと関連付けられる符号化されたコンテンツの異なるストリームを含有する、コンテナファイル)のアセット記憶150データベースに記憶されてもよい。上記で説明されるように、代替的ストリーム(または代替的な符号化されたアセット)は、同一のメディアコンテンツを異なる方法で符号化するストリームである。多くの事例では、代替的ストリームは、異なる符号化規格(例えば、HEVCまたはH.264)を使用して、メディアコンテンツ(限定されないがビデオ等)を符号化し、および/または異なる最大ビットレートでコンテンツを符号化する。いくつかの実施形態では、代替的ストリームは、異なる解像度および/または異なるフレームレートで符号化される。多くの実施形態では、特定の再生デバイスのために再生サーバ180によって生成されるトップレベルインデックスファイルは、少なくとも、代替的ストリームのそれぞれの最大ビットレートを記述する。再生デバイスは、従来のストリーミングのための1つまたはそれを上回るストリームを選択することができる、もしくは適応型ビットレートストリーミングを行うように代替的ストリームを切り替えることができる。
【0027】
いくつかの実施形態では、1つの再生デバイス120-130がコンテンツの断片を別の再生デバイスと共有するとき、再生デバイス120-130は、コンテンツをストリーム配信および/またはダウンロードするように再生サーバ110に提供されることができるトークンを介して、共有コンテンツを受信する。再生デバイスがトークンをサーバ110に伝送するとき、再生デバイス120-130は、再生サーバ110が、データベース150内に記憶された情報を使用して、再生デバイス120-130のためのトップレベルインデックスファイルを自動的に生成するために利用し得る、再生デバイス120-130の再生能力を説明する情報を付加することができる。再生サーバ110は、典型的には、再生管理アプリケーションを使用して、再生サーバがデータベース150にアクセスすることができるように構成される、従来のサーバシステムである。いくつかの実施形態では、再生デバイス120-130は、それらの再生能力に関する情報を再生サーバ110に提供し、サーバ110は、デバイス能力に基づいて、共有されたコンテンツの断片と関連付けられるアセットをフィルタ処理することによって、トップレベルインデックスファイルを自動的に生成する。そのような能力は、再生能力、符号化/復号コーデック、表示縦横比、および/または予測最大ネットワーク接続データレートを含むが、それらに限定されない。いくつかの実施形態では、具体的再生デバイス120-130の能力は、製品識別子または製品IDの形態で再生サーバ110に通信される。再生サーバ110は、製品IDおよび関連デバイス能力のデータベースを維持することができ、関連デバイス能力を読み出し、トップレベルインデックスファイルを生成するときにフィルタを利用可能なアセットのリストに適用するために、再生デバイスによって提供される製品IDを利用することができる。製品IDを割り当て、それらを製品IDが割り当てられるデバイスの能力に関する情報と関連付けるためのシステムおよび方法は、2012年3月31日に出願され、「Method to Identify Consumer Electronics Products」と題された、Grab et al.の米国仮公開第2013/0006869号に説明されている。具体的デバイスの再生能力を識別するために製品識別子を使用することに関係付けられる、米国仮公開第2013/0006869号からの関連開示は、参照することによってその全体として本明細書に組み込まれる。本発明の実施形態による、再生サーバによって適用されることができる、他のフィルタは、(限定されないが)再生デバイスの場所(すなわち、国/地域)、および具体的ユーザと関連付けられる言語に基づくフィルタを含む。本発明の実施形態による、トップレベルインデックスファイルを生成するように適用されることができる、種々のフィルタが、以下でさらに議論される。
【0028】
いくつかの実施形態では、共有コンテンツはさらに、暗号化およびデジタル著作権管理(DRM)技術の使用を通して保護される。再生サーバ110が、暗号化されたコンテンツを再生する要求を再生デバイス120-130から受信するとき、再生サーバは、コンテンツの保護されたストリームを再生するために要求される暗号化情報を読み出す。再生デバイスは、次いで、コンテンツ配信ネットワーク140内の1つまたはそれを上回るサーバから、コンテンツのストリームを含有するコンテナファイルの一部を要求することができ、保護されたコンテンツにアクセスするために、暗号情報を使用することができる。適応型ビットレートストリーミングで使用される保護されたストリームのデジタル著作権管理のためのシステムおよび方法は、「Systems and Methods for Playing Back Alternative Streams of Protected Content Protected Using Common Cryptographic Information」と題された、Kiefer et
al.の米国特許第8,909,922号に説明されている。米国特許第8,909,922号の開示は、参照することによってその全体として本明細書に組み込まれる。
【0029】
具体的コンテンツ配信システムが、図1に図示されているが、符号化されたコンテンツファイルを代替的ストリームにトランスコードし、デバイス能力に基づいてトップレベルインデックスファイルを自動的に生成する、再生サーバは、本発明のいくつかの実施形態による、種々のコンテンツ配信システムアーキテクチャのうちのいずれかに組み込まれることができる。本発明のいくつかの実施形態による、コンテンツを再生するために利用されることができる再生デバイスが、以下でさらに議論される。
【0030】
再生デバイス
本発明の実施形態による、コンテンツを安全に共有するために利用されることができる再生デバイスは、パーソナルコンピュータ、CEプレーヤ、および携帯電話を含むことができる。多くの実施形態では、再生デバイスは、DVDプレーヤ、Blu-ray(登録商標)プレーヤ、テレビ、セットトップボックス、ビデオゲームコンソール、タブレット、およびサーバに接続し、符号化されたメディアを再生することが可能である、他のデバイス等の消費者電子機器デバイスを含むことができる。本発明のある実施形態による、再生デバイスの基本アーキテクチャが、図2に図示されている。再生デバイス200は、メモリ230と通信するプロセッサ210と、ネットワークインターフェース240とを含む。図示される実施形態では、メモリは、再生サーバからコンテンツを要求するようにプロセッサおよび再生デバイスを構成する、プレーヤアプリケーション238を含む。いくつかの実施形態では、プレーヤアプリケーション238は、コンテンツが再生デバイス200にストリーム配信および/またはダウンロードされることを要求してもよい。メモリ230はまた、再生のために符号化されたビデオを復号することができる、ビデオデコーダ232も含む。異なるデバイスは、コンテンツを復号するための異なるエンコーダ/デコーダ(すなわち、「コーデック」)とともに、ソフトウェアおよび/またはハードウェアを含んでもよい。例えば、4Kビデオを再生することが可能な再生デバイスに関して、デコーダは、HEVCデコーダであってもよい。HD(すなわち、1080p)ビデオを再生することが可能な再生デバイスに関して、デコーダは、H.264デコーダであってもよい。多くの実施形態では、再生デバイスは、異なるメディア形式をサポートするように複数のデコーダを含んでもよい。
【0031】
動作中に、プレーヤアプリケーション238は、1つまたはそれを上回る他の再生デバイスと共有するためにコンテンツを再生サーバにアップロードするように再生デバイス200を構成することができる。コンテンツが再生デバイス200と共有されるとき、プレーヤアプリケーション238は、再生サーバからトップレベルインデックスファイルを要求するように再生デバイス200を構成することができる。上記のように、トップレベルインデックスファイルの要求は、トップレベルインデックスファイル内に記述されるアセットをフィルタ処理するために使用され得る、再生デバイスの製品IDを含むことができる。トップレベルインデックスファイルが再生サーバから受信されるとき、プレーヤアプリケーション238は、トップレベルインデックスファイルをメモリ230内に記憶するように再生デバイスを構成することができる。コンテンツが暗号化される、いくつかの実施形態では、プレーヤアプリケーション238は、コンテンツを再生するユーザ命令に応答して、再生サーバ(または、別個のDRMサーバ)から要求されたストリームを再生するように、暗号化情報を要求してもよく、再生サーバから受信される暗号化情報はまた、メモリ230に記憶されることもできる。プレーヤアプリケーション238は、コンテンツ配信ネットワーク内のサーバから、コンテンツを含有するコンテナファイルの一部を要求することによって、コンテンツを再生するように再生デバイス200を構成する。プレーヤアプリケーション238によって選択される具体的コンテナファイルは、トップレベルインデックスファイル内のプレーヤアプリケーションに利用可能な情報および再生デバイスによって体験されるストリーミング条件に基づいて、判定されることができる。再生デバイスがコンテナファイルの要求された部分を受信し、コンテンツが暗号化されるとき、プレーヤアプリケーション238は、コンテンツ暗号情報を使用して、コンテナファイルの要求された部分内の保護されたコンテンツにアクセスすることができる。プレーヤアプリケーション238は、再生を一時停止するユーザ命令が受信されるまで、または再生が完了するまで、優勢ストリーミング条件に応じて、異なるコンテナファイルからコンテンツを要求して再生し続けることができる。
【0032】
種々の再生デバイスが図2を参照して上記で説明されるが、プレーヤアプリケーションが、ディスクまたはある他の形態の記憶装置上に位置し、ランタイムにおいてメモリにロードされる、アーキテクチャを含む、種々のアーキテクチャのうちのいずれかが、本発明のいくつかの実施形態による、コンテンツ配信システムで使用するための再生デバイスを実装するために利用されることができる。さらに、(限定されないが)図1に図示されるシステムアーキテクチャを含む、種々のシステムアーキテクチャのうちのいずれかが、本発明のいくつかの実施形態による再生デバイスからの要求に応答して自動的に生成される、トップレベルインデックスファイルを使用して、コンテンツをトランスコードし、コンテンツを配信するために利用されることができる。
【0033】
再生サーバ
多くの実施形態では、ユーザ再生デバイスは、複数の他のデバイスと共有するためのコンテンツをアップロードするように、および/またはコンテンツへのアクセスを取得するように、再生サーバと通信してもよい。本発明のある実施形態による、コンテンツを複数の異なるデバイスに配信するように構成される再生サーバが、図3に示されている。再生サーバ300は、プロセッサ310と、ネットワークインターフェース340と、メモリ330とを含む。図示される実施形態では、メモリ330は、エンコーダアプリケーション332と、コンテンツ配信アプリケーション334とを含む。上記で議論されるように、再生サーバは、コンテンツファイルを、それぞれコンテンツファイルの異なる符号化(例えば、とりわけ、HEVC、H.264)を提供する、1つまたはそれを上回る代替的ストリームに符号化および/もしくはトランスコードするように、エンコーダアプリケーションソフトウェア332によって構成されることができる。いくつかの実施形態によると、エンコーダアプリケーション332は、コンテンツファイルを異なる代替的符号化ストリームにトランスコードするために、1つまたはそれを上回るトランスコーダサーバクラスタ(図示せず)と通信する。
【0034】
再生サーバは、再生デバイスのためのトップレベルインデックスファイルを生成し、および/またはコンテンツを再生デバイスに配信するように、コンテンツ配信アプリケーション334によって構成されることができる。いくつかの実施形態では、トップレベルインデックスファイルは、デバイスのビデオ符号化/復号能力を含む、コンテンツの再生を要求する特定の再生デバイスの能力に基づいて、生成および/または選択される。
【0035】
具体的再生サーバアーキテクチャが図3に図示されているが、上記で概説される様式でコンテンツを配信するようにユーザデバイスとの相互作用を管理することが可能である、種々のアーキテクチャのうちのいずれかが、本発明のいくつかの実施形態に従って利用されることができる。
【0036】
コンテンツトランスコーディングおよび配信アーキテクチャ
ユーザデバイスが、異なるデバイスと共有するための符号化されたコンテンツをアップロードするとき、本システムは、異なる再生能力を伴うデバイス上でコンテンツの再生を可能にするために、符号化されたコンテンツを異なる符号化形式にトランスコードしてもよい。本発明のある実施形態による、コンテンツトランスコーディングおよび配信システムの例示的システムアーキテクチャが、図4に図示されている。図示されるように、クライアントデバイス400は、ユーザAPIサーバ405、ソーシャルAPIサーバ410、記憶APIサーバ415、メディアAPIサーバ、再生APIサーバ、およびトランスコードAPIサーバを含む、種々のサーバAPI405-430(アプリケーションプログラミングインターフェース)を介して、ルータ401を通してサーバシステムと通信する。ユーザAPIサーバ405は、クライアント400からユーザおよび/またはデバイス情報を受信してもよく、ユーザデータベース406内に情報を記憶してもよい。ソーシャルAPIサーバは、クライアント400からソーシャルメディア情報を受信し、ソーシャルデータベース411内に本情報を記憶してもよい。記憶APIサーバ415は、コンテンツデータベース450内に記憶されたコンテンツの記憶を管理する。記憶APIサーバは、コンテンツデータベース450内に記憶するために、クライアント400、再生APIサーバ、および/またはトランスコードAPIサーバからコンテンツを受信してもよい。メディアAPIサーバ420は、コンテンツデータベース450内に記憶されたコンテンツを要求する、プレーヤアプリケーションと通信してもよい。再生APIサーバは、コンテンツデータベース450内に記憶されたコンテンツの再生を管理してもよい。トランスコードAPIサーバは、符号化されたコンテンツファイルを受信すること、およびコンテンツデータベース450内に記憶するために、それを1つまたはそれを上回る異なる符号化ストリームにトランスコードすることを含む、コンテンツのトランスコーディングを管理してもよい。
【0037】
コンテンツをトランスコードするために、トランスコードAPIサーバ430は、行われているトランスコーディング動作を管理するTCE管理アプリケーション435と通信してもよい。TCE管理アプリケーション435は、ジョブの進捗を追跡すること、および機械負荷を報告することを含む、トランスコーディングジョブの分散調整に使用されてもよい。機械負荷情報は、負荷バランシングスケジューラを実装するために使用されてもよい。
【0038】
TCEトランスコードノード440として図示される各トランスコーディング動作は、コンテンツを1つまたはそれを上回る異なる符号化規格に復号および再符号化するプロセスであってもよい。TCEトランスコードノード440は、コンテンツデータベース450内に代替的ストリームを記憶するための記憶APIサーバと通信するために、承認ウェブサーバ445を利用してもよい。
【0039】
具体的コンテンツ配信アーキテクチャが図4に図示されているが、上記で概説される様式でコンテンツを配信するようにクライアントデバイスとの相互作用を管理することが可能である、種々のアーキテクチャのうちのいずれかが、本発明のいくつかの実施形態に従って利用されることができる。
【0040】
コンテンツを共有およびトランスコードすること
上記で説明されるように、クライアントデバイスは、ユーザの1つまたはそれを上回る他のデバイスおよび/もしくは異なるユーザと共有するために、符号化されたコンテンツを再生サーバにアップロードしてもよい。本発明のある実施形態による、異なるデバイスと共有するためのコンテンツをアップロードするためのプロセスが、図5に図示されている。プロセス500は、1つまたはそれを上回るデバイスと共有するためのコンテンツを受信する(505)。いくつかの実施形態では、コンテンツは、ユーザの再生デバイスから受信される。コンテンツは、特定の符号化規格(例えば、とりわけ、HEVC、H.264)を使用して符号化される、符号化されたビデオファイルであってもよい。
【0041】
本プロセスは、1つまたはそれを上回る異なる代替的符号化ストリームへのコンテンツのトランスコーディングを行う(510)。いくつかの実施形態では、本プロセスは、コンテンツが共有される、または共有されるであろう、デバイスの再生能力に基づいて、コンテンツを異なるストリームに符号化する。例えば、ユーザが、4K再生を有するデバイスおよび4K再生容量を有していない(例えば、H.264デコーダのみを有する)いくつかのデバイスと共有される4Kビデオをアップロードする場合、本プロセスは、コンテンツをHEVCおよびH.264の両方にトランスコードしてもよい。
【0042】
いくつかの他の実施形態によると、本プロセスは、コンテンツを、代替的符号化および/または形式の設定リストにトランスコードする。例えば、ビデオコンテンツは、デバイスによって使用されている最も一般的な符号化規格(例えば、とりわけ、HEVC、H.264、MicrosoftTMコーデック、GoogleTMコーデック)のうちのいくつかにトランスコードされてもよい。例えば、コンテンツは、デバイスの大多数との互換性を提供するように、H.264/AVSを使用して符号化されてもよい。したがって、再生デバイスがコンテンツファイルの再生を要求するとき、本プロセスは、再生デバイスが再生することが可能であろうアセットのリストとともに、トップレベルインデックスファイルを提供してもよい。以下で説明されるように、トップレベルインデックスファイルは、再生デバイスに特有であり、再生デバイスが再生することが可能である、符号化されたストリームに対応する、これらのアセットのみを含んでもよい。
【0043】
いくつかの実施形態によると、本プロセスは、コンテンツファイルが再生デバイスからアップロードされることに応じて(および異なる再生デバイスがコンテンツファイルを要求することに先立って)、コンテンツファイルを異なる符号化形式にトランスコード(すなわち「事前トランスコード」)し始める。いくつかのある実施形態によると、本プロセスは、再生デバイスからの再生の要求の受信に応じて、コンテンツファイルを特定の符号化形式にトランスコードしてもよい。例えば、本プロセスは、コンテンツファイルを最も頻用されている符号化形式(例えば、HEVCおよびH.264)に自動的にトランスコードしてもよいが、特定の符号化形式を必要とする再生デバイスからの要求を受信することに応じて、コンテンツファイルをあまり頻用されていない符号化形式にトランスコードすることを待機してもよい。本プロセスは、デバイスの再生要求を果たしながら、並行していくつかのトランスコーディングプロセスを実行することができる、種々の「ライブトランスコーディング」サーバを使用して、同時にコンテンツをトランスコードし、再生デバイスにストリーム配信してもよい。
【0044】
本プロセスは、アセットを記憶する(515)。次いで、本プロセスは、完了する。具体的プロセスが図5に図示されているが、種々のプロセスのうちのいずれかが、本発明の実施形態に従ってコンテンツファイルをトランスコードするために利用されることができる。本発明の実施形態による、インデックスファイルを自動的に生成するための再生サーバおよびプロセスが、以下で説明される。
【0045】
コンテンツ再生
本発明のある実施形態による、再生デバイスからの要求に応答して生成されるトップレベルインデックスファイルを使用して、コンテンツを再生するためのプロセスが、図6に図示されている。プロセス600は、コンテンツを要求するステップ(605)を含む。要求は、再生デバイスを使用して行われることができる、または別のデバイスを使用して行われることができる。コンテンツにアクセスするために、再生デバイスは、再生サーバから、具体的再生デバイスのためにカスタマイズされたトップレベルインデックスファイルの生成を促す要求を提供する。いくつかの実施形態によると、要求は、再生デバイスがコンテンツを要求する権限を与えられており、再生デバイスがAPIを介して製品識別子を遠隔サーバに提供することを示す、トークンの形態を成す。いくつかの他の実施形態によると、コンテンツを要求するための種々の技法のうちのいずれかが、適宜、具体的用途の要件に利用されることができる。多くの実施形態によると、トップレベルインデックスファイルは、再生サーバが、再生デバイスによる再生に利用可能である、および/または最も好適であるアセットを記述する、トップレベルインデックスファイルを生成するように、全ての利用可能なアセットをフィルタ処理するという点において、カスタマイズされる。いったんカスタムトップレベルインデックスファイルが読み出される(610)と、再生デバイスは、トップレベルインデックスファイル内で識別される保護されたストリームの再生を可能にする、暗号情報を取得する(615)。多くの実施形態によると、再生デバイスは、再生要求がユーザから受信されるまで待機し、次いで、暗号情報を再生サーバから要求する。
【0046】
再生デバイスが、トップレベルインデックスファイルおよび任意の必要暗号情報を保有するとき、再生デバイスは、符号化されたメディアを含有する、1つまたはそれを上回るコンテナファイルの一部を要求することによって、コンテンツをストリーム配信および/またはダウンロードする(620)ことを開始することができる。(限定されないが)最低ビットレートストリームを選択するステップ、2011年9月30日に出願され、「Systems andMethods for Determining Available Bandwidth and Performing Initial Stream Slection When Commencing Streaming Using Hypertext Transfer Protocol」と題された、van der Schaar et al.の米国特許公開第2013/0007200号に開示される様式に類似する様式で帯域幅プローブを行うステップ、または別の技法を使用して利用可能な帯域幅を推定するステップを含む、種々のプロセスのいずれかが、初期ストリームを選択するために利用されることができる。米国特許公開第2013/0007200号の開示は、参照することによってその全体として本明細書に組み込まれる。
【0047】
いったん再生が開始する(620)と、適応型ビットレートストリーミングが、行われることができる。再生中に、再生イベント報告が、周期的に、または(限定されないが)再生デバイスによって受信されるユーザ命令を含む、種々のイベントに応答して、再生デバイスの再生ステータスに関する情報を提供するように、再生サーバに提供されることができる。再生イベント報告が再生サーバに提供されるとき、再生サーバは、再生イベント命令を再生デバイスに提供することができる。図示される実施形態では、再生を継続する「再生」命令および再生を中止する「停止」命令を含む、再生イベント命令が、再生デバイスによって受信されることができる(630)。再生デバイス上の再生を停止する再生サーバの能力は、再生デバイスが、ユーザと関連付けられる複数の再生デバイスにわたって、並行処理要件を実施することを可能にする。再生イベント報告およびイベント再生命令の組み合わせはまた、第2の再生デバイスが、第1の再生デバイスによって報告された最後の再生場所でコンテンツの再生を再開することを可能にするために、再生サーバによって利用されることができる。このように、ユーザは、再生を継続する場所を模索する必要なく、再生デバイス間をシームレスに移行することができる。
【0048】
具体的プロセスが図6に図示されているが、種々のプロセスのうちのいずれかが、本発明の実施形態に従って、カスタマイズされたトップレベルインデックスファイルを要求し、コンテンツを再生するために利用されることができる。本発明のいくつかの実施形態による、インデックスファイルを自動的に生成するための再生サーバおよびプロセスが、以下で説明される。
【0049】
トップレベルインデックスの自動生成
本発明の多くの実施形態による再生サーバは、コンテンツの具体的断片と関連付けられるアセットのデータベースを維持し、再生管理アプリケーションによって、アセットに関する情報を読み出してフィルタ処理し、具体的再生デバイスのためのトップレベルインデックスファイルを自動的に生成するように構成されることができる。再生サーバによって維持されるデータベースは、アセットを含有するファイル名と、アセットが位置するコンテンツ配信サーバおよび/またはネットワークとを列挙することができる。アセットがビデオストリームであるとき、データベースは、ストリームのコーデック、ビデオストリームが符号化される最大ビットレート、ビデオストリームのフレームレート、解像度、および/またはビデオストリームのサンプル縦横比を含むが、それらに限定されない、ビデオストリームの特性を記述することができる。アセットがオーディオストリームであるとき、データベースは、(限定されないが)オーディオストリームの言語、オーディオストリームの符号化、およびオーディオストリームの帯域幅要件を含む、オーディオストリームの特性を記述することができる。アセットが字幕ストリームであるとき、データベースは、(限定されないが)字幕ストリームの言語、字幕ストリームの符号化、および字幕ストリームの帯域幅要件を含む、字幕ストリームの特性を記述することができる。アセットに関する情報の維持に加えて、再生デバイスは、再生デバイスの再生能力に関する情報を維持することができる。いくつかの実施形態によると、異なる再生デバイスの再生能力に関する情報は、製品IDを使用してインデックス化される。多くの実施形態によると、再生サーバはまた、(限定されないが)再生デバイスのタイプ、再生デバイスの再生能力、再生デバイスの場所(例えば、国/地域)、および/または要求される言語を含む、基準に基づいて、異なるアセットの使用を調整する規則に関する情報を維持する。情報の具体的断片は、再生サーバによって維持されるデータベース内に関連付けられるものとして上記で説明されるが、情報の種々の断片のいずれかが、本発明のいくつかの実施形態に従って、再生サーバによるトップレベルインデックスファイルの生成を可能にするように、種々のデータ構造のいずれかの中で維持されることができる。さらに、再生デバイスは、その能力のリストを再生サーバに直接提供することができる。以下でさらに議論されるように、再生サーバによって維持される情報は、再生デバイスが再生することを許可されるアセットへのリンクのみ含む、トップレベルインデックスファイルを生成するように、再生デバイスからのトップレベルインデックスファイルの要求に応答して、リアルタイムでフィルタ処理されることができる。
【0050】
本発明のある実施形態による、再生サーバによって維持されるコンテンツの具体的断片と関連付けられたアセットに関する情報を使用して、トップレベルインデックスファイルを生成するためのプロセスが、図7に図示されている。図示される実施形態では、プロセス700は、再生サーバが、具体的再生デバイスから、コンテンツの具体的断片に関するトップレベルインデックスファイルの要求を受信する(705)ときに、開始する。上記で議論されるように、要求は、(限定されないが)再生デバイスの再生能力、再生デバイスが登録されるユーザアカウント、および再生デバイスの地理的場所を示す情報(例えば、再生デバイスのI.P.アドレス)を含む、再生デバイスを記述する情報を含むことができる。多くの実施形態によると、再生デバイスの能力は、再生サーバにアクセス可能なデータベース内の具体的再生能力と関連付けられる、製品IDを使用して識別される。
【0051】
再生サーバは、要求されたコンテンツの断片と関連付けられるアセットを読み出す(710)。再生サーバは、再生デバイスの能力と関連付けられる1つまたはそれを上回るフィルタ、ユーザの選好、およびコンテンツ所有者の要件に基づいて、アセットをフィルタ処理する(715)。故に、異なるトップレベルインデックスファイルが、(限定されないが)デバイス間の再生能力(例えば、コーデック、解像度、メモリ)の差異、地理的場所の差異、および/または再生デバイスと関連付けられる言語選好の差異を含む、要因に基づいて、同一のコンテンツに関して生成されることができる。例えば、ユーザが共有するために4Kビデオをアップロードする場合、4Kビデオを再生することが可能なデバイスのためのトップレベルインデックスファイルが、4Kストリームを含んでもよい一方で、4Kビデオを再生することが可能ではないデバイスのためのトップレベルインデックスファイルは、4Kストリームを含まなくてもよく、むしろ、本デバイスが再生することが可能であるストリーム(例えば、H.264)を含んでもよい。
【0052】
フィルタ処理後、残りのアセットは、トップレベルインデックスファイルを生成する(720)ために利用されることができ、これは、再生デバイスに提供されることができる(725)。いくつかの実施形態によると、トップレベルインデックスファイルは、セキュア・ソケット・レイヤー(SSL)通信または同等のセキュア通信プロトコルを含むが、それらに限定されない、セキュア通信技法を使用して、安全に転送される。
【0053】
本発明のある実施形態による、トップレベルインデックスファイルを生成するための具体的プロセスが、図7に図示されているが、コンテンツの具体的断片と関連付けられるアセットに関する情報を収集するステップと、コンテンツ配信ストリーミングシステムによって再生デバイスに利用可能にされるアセットをインデックス化する、インデックスファイルを生成するステップとを伴う、種々のプロセスのいずれかが、本発明のいくつかの実施形態に従って、利用されることができる。本発明の実施形態による、コンテンツを共有するために再生デバイスとサーバとの間の一連の通信を図示する、通信図が、以下で議論される。
【0054】
デバイスとサーバとの間の通信
本発明の多くの実施形態は、他のデバイスと共有するためにユーザデバイスからコンテンツをアップロードするステップと、コンテンツを1つまたはそれを上回る異なる符号化形式にトランスコードするステップと、異なるデバイスの能力に基づいて、異なる符号化形式のトップレベルインデックスファイルを生成するステップとを提供する。コンテンツの共有を促進するために、クライアントデバイスは、コンテンツをアップロードし、コンテンツをトランスコードし、および/またはトップレベルインデックスファイルを受信するように、種々の異なるサーバシステムと通信する。本発明のある実施形態による、クライアントデバイスおよび/または種々の異なるサーバシステムの間の通信の実施例が、図8に図示されている。
【0055】
図8は、再生デバイスA805およびB810、再生サーバ815、トランスコーディングサーバクラスタ820、ならびにコンテンツ配信サーバ825の間の通信を図示する。再生デバイス805-810および異なるサーバ815-825は、インターネット等のネットワークを経由して相互と通信してもよい。上記で説明されるように、再生サーバ815は、それらのクライアントデバイス805-810上のアプリケーションを介して、コンテンツ(例えば、とりわけ、ビデオファイル、写真、および/または、オーディオファイル)をアップロードするために、クライアントデバイス805-810にアクセス可能なインターフェースを提供してもよい。再生サーバ815は、1つまたはそれを上回るデバイス805-810と共有するためのコンテンツを受信するため、コンテンツを1つまたはそれを上回る異なる符号化形式にトランスコードするため、再生デバイスのためのトップレベルインデックスファイルを生成するため、およびコンテンツを再生デバイスに配信するために、使用されることができる。再生サーバ815はまた、(例えば、DRMサーバを使用して)暗号化されたデジタルコンテンツにアクセスするために使用される、暗号化情報を提供してもよい。
【0056】
再生サーバ815は、コンテンツファイルを1つまたはそれを上回る異なる符号化形式にトランスコードし、および/もしくはコンテンツサーバ825内にコンテンツを記憶するために、1つまたはそれを上回るトランスコーディングサーバクラスタ820を使用してもよい。
【0057】
コンテンツサーバ825は、コンテンツの断片の再生を要求するクライアントデバイス805-810にコンテンツを提供してもよい。コンテンツは、クライアントデバイス805-810によってダウンロードおよび/またはストリーム配信されることができる。
【0058】
1つまたはそれを上回る他のデバイスと共有するためにクライアントデバイスからコンテンツをアップロードするための図8に図示される通信は、以下の一連の通信に従って進んでもよい。クライアントデバイス805は、共有するためのコンテンツを再生サーバ815にアップロードする。コンテンツは、特定の規格(例えば、4Kビデオ用のH.264またはHEVC)に従って符号化されるビデオファイルであってもよい。再生デバイスがトランスコーディング能力を有する場合、再生デバイスはまた、アップロードすることに先立って、ビデオファイルのトランスコーディングを行ってもよい。
【0059】
再生サーバ815は、トランスコーディングサーバクラスタ820にコンテンツのトランスコーディングを要求する。
【0060】
トランスコーディングサーバクラスタ820は、コンテンツを1つまたはそれを上回る異なる代替的符号化ストリームにトランスコードする。トランスコーディングサーバクラスタ820は、コンテンツサーバ825を用いて代替的符号化ストリームを記憶し、代替的ストリームのリストを再生サーバ815に提供する。
【0061】
異なる再生デバイスB810が、コンテンツファイルの再生を要求し、上記で説明される技法のうちのいずれかを使用して、トップレベルインデックスファイルの要求を再生サーバ815に提出してもよい。再生サーバ815は、トップレベルインデックスファイルを生成してもよい。いくつかの実施形態では、トップレベルインデックスファイルは、再生デバイスの再生能力に基づいて生成される。他の実施形態では、再生サーバは、再生デバイスの製品IDに基づいて、複数のインデックスファイルからトップレベルインデックスファイルを選択してもよい。
【0062】
再生サーバ815は、再生デバイスB810にトップレベルインデックスファイルを提供する。
【0063】
再生デバイスB810は、再生要求を再生サーバ815に提供してもよい。再生サーバ815は、符号化されたコンテンツを解読するために暗号化情報を再生デバイスB810に提供する。
【0064】
再生デバイスB810は、コンテンツサーバ825からコンテンツを要求するために、トップレベルインデックスファイルを使用する。コンテンツサーバ825は、コンテンツを再生デバイス810に提供する。再生デバイスは、デバイス上でコンテンツを再生するために、暗号化情報を使用してコンテンツを解読する。
【0065】
上記の説明は、多くの特異性を含有するが、これらは、本発明の範囲を限定するものとしてではなく、本発明の現在好ましい実施形態のうちのいくつかの例証を提供するにすぎないものとして解釈されるべきである。種々の他の実施形態が、その範囲内で可能である。したがって、本発明の範囲は、図示される実施形態ではなく、添付の請求項およびそれらの均等物によって判定されるべきである。
図1
図2
図3
図4
図5
図6
図7
図8
【外国語明細書】