(57)【特許請求の範囲】
【請求項１】
適応ビデオストリーミングのためコンテンツタイトルに関連付けられたビデオストリームをエンコードするためのコンピュータ実施方法であって、
ピクチャーのグループ（ＧＯＰ）のシーケンスを生成するため特定の再生ビットレートで前記ビデオストリームにビデオコーデックを適用するステップであって、各ＧＯＰは、再生時間間隔及び異なる再生オフセットに関連付けられており且つキーフレーム及びビデオデータの１つ以上のフレームを含む、ステップと、
前記ＧＯＰのシーケンスを含む１つ以上のデータパケットを生成するため該ＧＯＰのシーケンスにアドバンスドシステムフォーマットを適用するステップと、
前記ＧＯＰのシーケンスにおける第１のＧＯＰに対応する第１のスイッチポイントを含む前記ＧＯＰのシーケンスのためのシーケンスヘッダインデックスを生成するステップであって、前記第１のスイッチポイントは、前記第１のＧＯＰに関連付けられた再生オフセット及び前記第１のＧＯＰに含まれた第１のキーフレームを含む第１のデータパケットを特定する、ステップと、
エンコードされたビデオストリームを生成するため前記シーケンスヘッダインデックスを前記１つ以上のデータパケットと結合するステップと、
を含む方法。
【請求項２】
前記第１のキーフレームは、シーケンスヘッダスタートコード及び前記第１のＧＯＰに関連付けられた情報を記憶するシーケンスヘッダを含む、請求項１に記載の方法。
【請求項３】
前記シーケンスヘッダインデックスを生成するステップは、前記第１のデータパケットを識別するため前記第１のキーフレームに含まれた前記シーケンスヘッダスタートコードについて前記１つ以上のデータパケットをサーチすることを含む、請求項２に記載の方法。
【請求項４】
前記ＧＯＰのシーケンスに含まれた各キーフレームを異なるデータパケットと整列させるため、前記１つ以上のデータパケットをパディングするステップを更に含む、請求項１に記載の方法。
【請求項５】
１つ以上の暗号化されたデータパケットを生成するため、デジタル著作権管理（ＤＲＭ）暗号化技術に基づいて前記１つ以上のデータパケットを暗号化するステップを更に含む、請求項１に記載の方法。
【請求項６】
前記ＤＲＭ暗号化技術はウインドウズメディアＤＲＭ暗号化技術を含む、請求項５に記載の方法。
【請求項７】
前記第１のスイッチポイントにおいて特定された前記再生オフセットに基づいて、第１の暗号化されたデータパケットが前記第１のキーフレームを記憶していることを決定するステップであって、前記第１のデータパケット及び前記第１の暗号化されたデータパケットが、異なるデータパケットである、ステップと、
前記第１の暗号化されたデータパケットが前記第１のキーフレームを記憶していることを特定するため、前記シーケンスヘッダインデックスに含まれた前記第１のスイッチポイントを変更するステップと、
を更に含む請求項５に記載の方法。
【請求項８】
前記ＧＯＰのシーケンスに含まれた各キーフレームを異なるデータパケットと整列させるため、前記１つ以上の暗号化されたデータパケットをパディングするステップを更に含む、請求項７に記載の方法。
【請求項９】
前記ＧＯＰのシーケンスにおける各ＧＯＰは、前記ＧＯＰのシーケンスにおける他のＧＯＰとは独立している、請求項１に記載の方法。
【請求項１０】
ピクチャーのグループ（ＧＯＰ）の第２のシーケンスを生成するため、第２の再生ビットレートにて第２のビデオストリームに前記ビデオコーデックを適用するステップであって、各ＧＯＰは、前記再生時間間隔及び異なる再生オフセットに関連付けられており、且つキーフレーム及びビデオデータの１つ以上のフレームを含む、ステップと、
前記ＧＯＰの第２のシーケンスを含む１つ以上の他のデータパケットを生成するため、前記ＧＯＰの第２のシーケンスに前記アドバンスドシステムフォーマットを適用するステップと、
前記ＧＯＰの第２のシーケンスにおける第２のＧＯＰに対応する第２のスイッチポイントを含む前記ＧＯＰの第２のシーケンスのための第２のシーケンスヘッダインデックスを生成するステップであって、前記第２のスイッチポイントは、前記第２のＧＯＰに関連付けられた再生オフセット及び前記１つ以上の他のデータパケットに含まれた第２のデータパケットを特定しており、前記第２のデータパケットは、前記第２のＧＯＰに含まれた第２のキーフレームを含む、ステップと、
第２のエンコードされたビデオストリームを生成するため、前記第２のシーケンスヘッダインデックスを前記１つ以上の他のデータパケットと結合するステップであって、前記第２のＧＯＰに関連付けられた再生オフセットは、前記第１のＧＯＰに関連付けられた前記再生オフセットに等しく、前記第２のスイッチポイントは、前記第１のスイッチポイントに対応している、ステップと、
を更に含む請求項１に記載の方法。
【請求項１１】
プロセッサと、
前記プロセッサにより実行されるとき、
ピクチャーのグループ（ＧＯＰ）のシーケンスを生成するため特定の再生ビットレートでビデオストリームにビデオコーデックを適用し、ここで、各ＧＯＰは、再生時間間隔及び異なる再生オフセットに関連付けられており且つキーフレーム及びビデオデータの１つ以上のフレームを含んでおり、
前記ＧＯＰのシーケンスを含む１つ以上のデータパケットを生成するため該ＧＯＰのシーケンスにアドバンスドシステムフォーマットを適用し、
前記ＧＯＰのシーケンスにおける第１のＧＯＰに対応する第１のスイッチポイントを含む前記ＧＯＰのシーケンスのためのシーケンスヘッダインデックスを生成し、ここで、前記第１のスイッチポイントは、前記第１のＧＯＰに関連付けられた再生オフセット及び前記第１のＧＯＰに含まれた第１のキーフレームを含む第１のデータパケットを特定しており、
エンコードされたビデオストリームを生成するため前記シーケンスヘッダインデックスを前記１つ以上のデータパケットと結合する、
ように構成された命令を記憶するメモリと、
を備えるコンピュータシステム。
【請求項１２】
前記第１のキーフレームは、シーケンスヘッダスタートコード及び前記第１のＧＯＰに関連付けられた情報を記憶するシーケンスヘッダを含む、請求項１１に記載のコンピュータシステム。
【請求項１３】
前記ＧＯＰのシーケンスに含まれた各キーフレームを異なるデータパケットと整列させるため、前記１つ以上のデータパケットをパディングするステップを更に含む、請求項１１に記載のコンピュータシステム。
【請求項１４】
１つ以上の暗号化されたデータパケットを生成するために、デジタル著作権管理（ＤＲＭ）暗号化技術に基づいて前記１つ以上のデータパケットを暗号化するステップを更に含む、請求項１１に記載のコンピュータシステム。
【請求項１５】
前記ＧＯＰのシーケンスにおける各ＧＯＰは、前記ＧＯＰのシーケンスにおける他のＧＯＰとは独立している、請求項１１に記載のコンピュータシステム。
【発明の詳細な説明】
【関連出願への相互参照】
【０００１】
[0001]本願は、２００９年８月１８日に出願され、ここに援用される米国特許出願第１２／５４３，３２８号の利益を主張する。
【技術分野】
【０００２】
[0002]本発明は、一般的に、デジタル媒体に関し、より詳細には、適応ビデオストリーミングのためのビデオストリームのエンコーディングに関する。
【背景技術】
【０００３】
[0003]従来のデジタルコンテンツ配信システムは、通常、コンテンツサーバー、コンテンツプレーヤー及びコンテンツサーバーをコンテンツプレーヤーへ接続する通信ネットワークを含んでいる。コンテンツサーバーは、このコンテンツサーバーからコンテンツプレーヤーへダウンロードされる異なるコンテンツタイトルに対応するデジタルコンテンツファイルを記憶するように構成されている。各デジタルコンテンツファイルは、典型的に、特定の再生ビットレートにエンコードされたビデオストリーム並びにオーディオストリームを含んでいる。充分に理解されているように、高い再生ビットレートにエンコードされたビデオストリームは、より低い再生ビットレートにエンコードされたビデオストリームよりサイズがより大きい。
【０００４】
[0004]コンテンツプレーヤーは、ユーザが再生のためコンテンツタイトルを選択するのに応答して、特定のコンテンツタイトルに対応するデジタルコンテンツファイルをダウンロードし再生するように構成されている。デジタルコンテンツファイルをダウンロードするには、典型的に、「ストリーミング」として当業分野において知られている技術が必要とされ、この技術によれば、コンテンツサーバーは、選択されたコンテンツタイトルに対応するデジタルコンテンツファイルをコンテンツプレーヤーへ順次送信する。次いで、コンテンツプレーヤーは、そのビデオストリームを再生し、これらのストリームの部分としてそのデジタルコンテンツファイルに含まれたオーディオストリームが使用可能となる。デジタルコンテンツファイルのダウンロードを開始する前に、コンテンツプレーヤーは、コンテンツサーバーからの使用可能な帯域幅を測定し、その測定された使用可能な帯域幅によってサポートされるビットレートにエンコードされたビデオストリームを有するデジタルコンテンツファイルを選択することができる。通信ネットワークがビットレート必要条件を満足しながらその選択されたデジタルコンテンツファイルをダウンロードするのに充分な帯域幅を与えることができる範囲では、ダウンロードされたデジタルコンテンツファイルの再生は満足し得る形にて進められる。
【０００５】
[0005]しかしながら、実際には、通信ネットワークにおいて使用可能な帯域幅は、通信ネットワークに接続された異なる装置が独立したタスクを行っていくにつれて絶えず変化する。帯域幅の使用可能性が変化するにつれて再生品質を最大とするため、適応ストリーミング技術を実施することができる。適応ストリーミングにおいては、通信ネットワークにおける使用可能な帯域幅が増大する場合には、コンテンツプレーヤーは、より高い再生ビットレートにエンコードされたビデオストリームを含む選択されたコンテンツタイトルに対応する異なるコンテンツファイルをダウンロードする。同様に、通信ネットワークにおける使用可能な帯域幅が減少する場合には、コンテンツプレーヤーは、より低い再生ビットレートにエンコードされたビデオストリームを含む選択されたコンテンツタイトルに対応する異なるコンテンツファイルをダウンロードすることができる。
【０００６】
[0006]現在のビデオストリームのダウンローディングから新しいビデオストリームのダウンローディングへ切り換える時には、コンテンツプレーヤーは、この切り換え時において再生されている現在のビデオストリームにおけるビデオフレームに対応する新しいビデオストリームにおけるビデオフレームに整合させる必要がある。ビデオフレームを整合させるため、コンテンツプレーヤーは、典型的に、現在のビデオストリームにおける適切なビデオフレームに整合するビデオフレームを探し出すため新しいビデオストリームを順次サーチする。このような方法の１つの欠点として、このようなサーチ動作は、非常に時間を消費するものであって、ビデオストリームのダウンローディングが中断させられてしまい、ユーザの視覚面での感覚が損なわれてしまうということがある。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
[0007]前述したように、当業分野において必要とされているものは、従来技術に比較して再生中断の発生を減少させるようにしてビデオストリーム間の切り換えを行えるようにするビデオストリームエンコーディング機構である。
【課題を解決するための手段】
【０００８】
[0008]本発明の１つの実施形態によれば、適応ビデオストリーミングのためコンテンツタイトルに関連付けられたビデオストリームをエンコードするための方法が提供される。この方法は、ピクチャーのグループ（ＧＯＰ）のシーケンスを生成するため特定の再生ビットレートでビデオストリームにビデオコーデックを適用するステップであって、各ＧＯＰは、再生時間間隔及び異なる再生オフセットに関連付けられており且つキーフレーム及びビデオデータの１つ以上のフレームを含む、ステップと、ＧＯＰのシーケンスを含む１つ以上のデータパケットを生成するため該ＧＯＰのシーケンスにアドバンスドシステムフォーマットを適用するステップと、ＧＯＰのシーケンスにおける第１のＧＯＰに対応する第１のスイッチポイントを含むＧＯＰのシーケンスのためのシーケンスヘッダインデックスを生成するステップであって、第１のスイッチポイントは、第１のＧＯＰに関連付けられた再生オフセット及び第１のＧＯＰに含まれた第１のキーフレームを含む第１のデータパケットを特定する、ステップと、エンコードされたビデオストリームを生成するためシーケンスヘッダインデックスを１つ以上のデータパケットと結合するステップと、を含む。
【発明の効果】
【０００９】
[0009]ここに開示する方法の１つの効果は、コンテンツプレーヤーが、新しいエンコードされたビデオストリームに関連付けられたシーケンスヘッダインデックスにおける適当なスイッチポイントを識別することにより、特定のコンテンツタイトルに関連付けられ且つ特定の再生ビットレートを有する１つのエンコードされたビデオストリームから、同じコンテンツタイトルに関連付けられ且つ異なる再生ビットレートを有する別のエンコードされたビデオストリームへの切り換えを効率的に行うことができるということである。
【図面の簡単な説明】
【００１０】
【図１】本発明の１つ以上の態様を実施するように構成されたコンテンツ配信システムを例示する。
【図２】本発明の１つの実施形態による図１のエンコーディングサーバーのより詳細な図である。
【図３】本発明の１つの実施形態による図２のエンコーディングサーバーにより処理されるビデオストリームの異なるエンコードされたステージを例示する概念図である。
【図４】本発明の１つの実施形態による図３のシーケンスヘッダインデックスのより詳細な図である。
【図５】本発明の１つの実施形態による適応ビデオストリーミングのためビデオストリームをエンコードするための方法ステップのフロー図である。
【図６】本発明の別の実施形態による適応ビデオストリーミングのためビデオストリームをエンコードし、暗号化するための方法ステップのフロー図である。
【発明を実施するための形態】
【００１１】
[0016]以下の記載においては、本発明のより完全な理解を与えるため、多くの特定の細部について説明する。しかしながら、これらの特定の細部のうちの１つ以上のものを欠いても、本発明を実施することができるものであることは、当業者には明らかであろう。一方では、本発明を不明瞭なものとしないため、よく知られた特徴については説明していない。
【００１２】
[0017]図１は、本発明の１つ以上の態様を実施するように構成されたコンテンツ配信システム１００を例示している。図示されるように、このコンテンツ配信システム１００は、エンコーディングサーバー１０２、通信ネットワーク１０４、コンテンツ配信ネットワーク（ＣＤＮ）１０６及びコンテンツプレーヤー１０８を含む。
【００１３】
[0018]通信ネットワーク１０４は、エンコーディングサーバー１０２、ＣＤＮ１０６及びコンテンツプレーヤー１０８の間のデータ通信を行えるように構成された、ルーター及びスイッチの如き複数のネットワーク通信システムを含む。当業者であれば、よく知られたインターネット通信ネットワークを展開するのに実施される技法を含めて、通信ネットワーク１０４を構築するための多くの技術的に実行可能な技術が存在していることは認識できよう。
【００１４】
[0019]エンコーディングサーバー１０２は、適応ストリーミングのためデジタルコンテンツファイルに関連付けられたビデオストリームをエンコードするように構成されたコンピュータシステムである。適応性ストリーミングのためビデオストリームをエンコードするためのエンコーディングワークフローについては、図２及び図３に関して以下により詳細に説明する。コンテンツ配信システム１００は、１つ以上のエンコーディングサーバー１０２を含むことができ、そこでは、各エンコーディングサーバー１０２は、ビデオストリームをエンコードするに必要とされる機能の全てを行うように構成されており、又は、各エンコーディングサーバー１０２は、ビデオストリームをエンコードするに必要とされる特定の機能を行うように構成されている。エンコードされたビデオストリームを含むデジタルコンテンツファイルは、コンテンツプレーヤー１０８へ配信するため、通信ネットワーク１０４を介してＣＤＮ１０６により検索される。
【００１５】
[0020]ＣＤＮ１０６は、コンテンツプレーヤー１０８からのデジタルコンテンツファイルのダウンロード要求に応えるように構成された１つ以上のコンピュータシステムを備える。デジタルコンテンツファイルは、そのコンピュータシステムにアクセスできる大容量記憶システムに存在することができる。大容量記憶システムは、これらに限定されないが、直接接続記憶装置、ネットワーク接続ファイル記憶装置、又はネットワーク接続ブロックレベル記憶装置を含むことができる。デジタルコンテンツファイルは、任意の技術的に実行可能な技術を使用してフォーマット化され、大容量記憶システムに記憶される。コンテンツサーバー１０６からコンテンツプレーヤー１０８へデジタルコンテンツファイルをダウンロードするのに、よく知られたハイパーテキスト転送プロトコル（ＨＴＴＰ）の如きデータ転送プロトコルを使用することができる。
【００１６】
[0021]コンテンツプレーヤー１０８は、コンピュータシステム、セットトップボックス、携帯電話の如き移動装置、又はネットワークに接続でき且つそれぞれビデオフレームを与え、音響出力を生成するためのディスプレイ装置及びスピーカー装置に結合され又はそれらを含む任意の他の技術的に実行可能なコンピューティングプラットフォームを備えることができる。コンテンツプレーヤー１０８は、適応ストリーミングを行えるように構成されており、即ち、特定の再生ビットレートにエンコードされたビデオストリームのユニットをダウンロードし、通信ネットワーク１０４内の現在優勢な帯域幅条件に基づいて異なる再生ビットレートにエンコードされたビデオストリームの後に続くユニットをダウンロードするように切り換えるように構成されている。通信ネットワーク１０４内の使用可能な帯域幅が制限されるようになるとき、コンテンツプレーヤー１０８は、より低い再生ビットレートにエンコードされたビデオストリームを選択することができる。使用可能な帯域幅が増大するとき、より高い再生ビットレートにエンコードされたビデオストリームを選択することができる。
【００１７】
[0022]前述の記載では、コンテンツ配信システム１００は、１つのコンテンツプレーヤー１０８及び１つのＣＤＮ１０６を備えるものとして示したのであるが、当業者であれば、図１のアーキテクチャーは、本発明の単なる典型的な実施形態を意図するものであると認識できよう。他の実施形態では、任意数のコンテンツプレーヤー１０８及び／又はＣＤＮ１０６を含むことができる。従って、図１は、本発明の範囲をいかようにも限定しようとしているものではない。
【００１８】
[0023]図２は、本発明の１つの実施形態による図１のエンコーディングサーバー１０２のより詳細な図である。図示されるように、エンコーディングサーバー１０２は、中央処理装置（ＣＰＵ）２０２、システムディスク２０４，入出力（Ｉ／Ｏ）装置インターフェース２０６、ネットワークインターフェース２０８、相互接続２１０及びシステムメモリ２１２を含む。
【００１９】
[0024]ＣＰＵ２０２は、システムメモリ２１２に記憶されているプログラミング命令を検索し実行するように構成されている。同様に、ＣＰＵ２０２は、アプリケーションデータを記憶し、且つシステムメモリ２１２からアプリケーションデータを検索するように構成されている。相互接続２１０は、ＣＰＵ２０２、システムディスク２０４、Ｉ／Ｏ装置インターフェース２０６、ネットワークインターフェース２０８及びシステムメモリ２１２の間のプログラミング命令及びアプリケーションデータの如きデータの送信を行うように構成されている。Ｉ／Ｏ装置インターフェース２０６は、Ｉ／Ｏ装置２２２から入力データを受信し、相互接続２１０を介してＣＰＵ２０２へその入力データを送信するように構成されている。例えば、Ｉ／Ｏ装置２２２は、１つ以上のボタン、キーボード及びマウス又は他のポインティング装置を備えることができる。Ｉ／Ｏ装置インターフェース２０６は、又、相互接続２１０を介してＣＰＵ２０２から出力データを受信し、且つその出力データをＩ／Ｏ装置２２２へ送信するように構成されている。ハードディスクドライブ又はフラッシュメモリ記憶装置ドライブ等の如きシステムディスク２０４は、エンコードされたビデオストリームの如き不揮発性データを記憶するように構成されている。そこで、エンコードされたビデオストリームは、通信ネットワーク１０４を介してＣＤＮ１０６により検索される。ネットワークインターフェース２１８は、相互接続２１０を介してＣＰＵ２０２へ結合され、通信ネットワーク１０４を介してデータのパケットを送受信するように構成されている。１つの実施形態では、ネットワークインターフェース２０８は、よく知られたイーサネット標準に従って動作するように構成されている。
【００２０】
[0025]システムメモリ２１２は、適応ストリーミングのため特定のコンテンツタイトルに関連付けられた１つ以上のビデオストリームをエンコードするための命令を含むソフトウエアコンポーネントを含む。図示されるように、これらのソフトウエアコンポーネントは、ＶＣ１エンコーダ２１４、アドバンスドシステムフォーマット（ＡＳＦ）パッケージングツール２１６、パディングツール２１８及びシーケンスヘッダインデックス（ＳＨＩ）生成器２２０を含む。
【００２１】
[0026]ＶＣ１エンコーダ２１４は、特定の再生ビットレートにビデオストリームをエンコードするためのエンコーディング動作を実行し、そのエンコードされたビデオストリームがＶＣ１ビデオコーデック標準でコンパイルされ、適応ストリーミングのため構成されている。別の実施形態では、ビデオストリームは、ＭＰＥＧ又はＨ.２６４の如き異なるビデオコーデック標準に従うようにエンコードされる。ＶＣ１エンコーダ２１４により生成されたエンコードされたビデオストリームは、各々がビデオデータの複数のフレームを含むピクチャーのグループ（ＧＯＰ）のシーケンスを含む。ビデオストリームをエンコードする時、ＶＣ１エンコーダ２１４は、ＶＣ１ビデオコーデック標準に含まれた３つのセッティングに従ってビデオストリームをエンコードする。第１に、エンコードされたビデオストリームにおける各ＧＯＰがそのエンコードされたビデオストリームにおける他のＧＯＰと独立しているようにするため、クローズドエントリポイントセッティングがイネーブルされる。第２に、シーケンスヘッダを含むキーフレームが各ＧＯＰの初めに挿入されるようにするため、シーケンスヘッダ出力モードセッティングがイネーブルされる。ＧＯＰのキーフレームに含まれるシーケンスヘッダは、なかでも、エンコードされたビデオストリーム内のキーフレームを探し出すのに使用されるシーケンスヘッダスタートコード及びＧＯＰにおけるビデオデータのフレームの解像度及びアスペクト比を特定する。第３に、各ＧＯＰが同じ再生時間間隔及び異なる再生オフセットに関連付けられるようにするため、適応ＧＯＰセッティングがディスエーブルされる。ＧＯＰに関連付けられる再生オフセットは、エンコードされたビデオストリームに含まれたＧＯＰのシーケンスにおけるＧＯＰの位置に基づいて決定される。例えば、各ＧＯＰが３秒の再生時間間隔を有するようなエンコードされたビデオストリームにおいては、そのエンコードされたビデオストリームにおける第１のＧＯＰは、零秒の再生オフセットを有し、エンコードされたビデオストリームにおける第２のＧＯＰは、３秒の再生オフセットを有する等々となる。エンコードされるとき、ＶＣ１エンコーダ２１４は、そのエンコードされたビデオストリームを更なる処理のためＡＳＦパッケージングツール２１６へと送信する。
【００２２】
[0027]ＡＳＦパッケージングツール２１６は、ＶＣ１エンコーダ２１４から受信されるエンコードされたビデオストリームを、コンテンツプレーヤー１０８を含む複数のタイプの標準に準拠したコンテンツプレーヤーにより再生のためダウンロードされ処理されるアドバンスドシステムフォーマット（ＡＳＦ）準拠のエンコード化ビデオストリームへとパッケージする。このＡＳＦ準拠のエンコード化ビデオストリームは、データオブジェクト及びＡＳＦヘッダを含む。データオブジェクトは、同じサイズの１つ以上のデータパケットにＧＯＰを記憶している。これらデータパケットのサイズは、ＧＯＰのサイズに整合していないことがあるので、特定のデータパケットは、２つ以上のＧＯＰに関連付けられたビデオデータのフレームを含むことがある。ＡＳＦヘッダは、再生のためＡＳＦ準拠のエンコード化ビデオストリームを処理するのにコンテンツプレーヤー１０８の如きコンテンツプレーヤーにより必要とされるデータパケットのサイズ及び数の如きＡＳＦ準拠のエンコード化ビデオストリームに関連付けられた情報を含む。
【００２３】
[0028]それから、ＡＳＦ準拠のエンコード化ビデオストリームは、パディングツール２１８により処理される。パディングツール２１８は、各ＧＯＰに関連付けられたキーフレームがデータオブジェクト内の異なるデータパケットのスタートに位置づけられるようにするため、パディングをＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトへ挿入する。以下に説明するように、キーフレームを異なるデータパケットと整列させることにより、ＳＨＩ生成器２２０がＡＳＦ準拠のエンコード化ビデオストリームに対するスイッチポイントを定めることができ、従って、コンテンツプレーヤーが複数のＡＳＦ準拠のエンコード化ビデオストリームの間で効率的に切り換えることができるようになる。それから、パディングツール２１８は、そのＡＳＦ準拠のエンコード化ビデオストリームをＳＨＩ生成器２２０へ送信する。
【００２４】
[0029]ＳＨＩ生成器２２０は、そのＡＳＦ準拠のエンコード化ビデオストリームに関連付けられたシーケンスヘッダインデックスを生成する。シーケンスヘッダインデックスを生成するため、ＳＨＩ生成器２２０は、先ず、そのＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトを、そのデータオブジェクトに含まれる異なるＧＯＰに関連付けられたキーフレームについてサーチする。キーフレームは、そのキーフレームに含まれるシーケンスヘッダにおいて特定されたシーケンススタートコードに基づいてＳＨＩ生成器２２０により探し出すことができる。その識別されたキーフレームの各々に関連付けられたＧＯＰについて、ＳＨＩ生成器２２０は、（i）そのＧＯＰに関連付けられたキーフレームを含むデータパケットを識別するデータパケット番号、及び（ii）そのＧＯＰに関連付けられた再生オフセットを記憶するシーケンスヘッダインデックス内のスイッチポイントを定める。再び、そのＧＯＰに関連付けられた再生オフセットが、そのエンコードされたビデオストリームに含まれたＧＯＰのシーケンスにおけるそのＧＯＰの位置に基づいて決定される。
【００２５】
[0030]エンコーディングサーバー１０２は、同じコンテンツタイトルに関連付けられ且つ前述したような仕方にて異なる再生ビットレートにエンコードされた複数のＡＳＦ準拠のエンコード化ビデオストリームを生成することができる。ここに説明するエンコーディング処理によれば、異なるＡＳＦ準拠のエンコード化ビデオストリームに亘って、それらＧＯＰは、同じ再生時間間隔に関連付けられ且つ異なるＡＳＦ準拠のエンコード化ビデオストリームに亘る対応するＧＯＰは、同じ再生オフセットに関連付けられるようにすることができる。従って、特定のコンテンツタイトルに関連付けられたＡＳＦ準拠のエンコード化ビデオストリームの１つに含まれるシーケンスヘッダにて定められる各スイッチポイントは、同じコンテンツタイトルに関連付けられた他のＡＳＦ準拠のエンコード化ビデオストリームの各々に含まれるシーケンスヘッダにて定められる対応するスイッチポイントを有する。
【００２６】
[0031]同じコンテンツタイトルに関連付けられた２つのＡＳＦ準拠のエンコード化ビデオストリームに含まれるシーケンスヘッダインデックスに基づいて、コンテンツプレーヤーは、それらシーケンスヘッダインデックスにおける適当なスイッチポイントを識別することにより、それらＡＳＦ準拠のエンコード化ビデオストリームの間で効率的に切り換えを行うことができる。現在再生しているＡＳＦ準拠のエンコード化ビデオストリームと新たなＡＳＦ準拠のエンコード化ビデオストリームとの間の切り換え時に、コンテンツプレーヤー１０８の如きコンテンツプレーヤーは、再生すべき次のＧＯＰに関連付けられた再生オフセットを特定する特定のスイッチポイントを探し出すため、その新たなＡＳＦ準拠のエンコード化ビデオストリームに含まれるシーケンスヘッダインデックスをサーチする。それから、コンテンツプレーヤーは、その新たなＡＳＦ準拠のエンコード化ビデオストリームへ切り換え、再生のためその特定のスイッチポイントで特定されたデータパケットに記憶されたＧＯＰをダウンロードすることができる。例えば、各ＧＯＰが３秒の再生時間間隔に関連付けられているようなＡＳＦ準拠のエンコード化ビデオストリームの場合には、もし、零秒の再生オフセットに関連付けられた第１のＧＯＰが現在再生されているならば、この時には、再生すべき次のＧＯＰは、３秒の再生オフセットに関連付けられるであろう。このような場面においては、コンテンツプレーヤーは、３秒の再生オフセットを特定する特定のスイッチポイントについて、その新しいエンコードされたストリームに関連付けられたシーケンスヘッダをサーチする。その特定のスイッチポイントを探し出した時、そのコンテンツプレーヤーは、再生のためそのスイッチポイントにて特定されたデータパケットに記憶されたＧＯＰをダウンロードするであろう。
【００２７】
[0032]１つの別の実施形態では、パディングは、エンコードされたビデオストリームのデータオブジェクトに挿入されず、従って、異なるＧＯＰのキーフレームは、必ずしも、新しいデータパケットと整列されていない。このような実施形態では、シーケンスヘッダインデックスが特定のキーフレームを含むデータパケットを特定し、コンテンツプレーヤーは、そのキーフレームについてそのデータパケットを通してサーチする。パディング無しの場合には、エンコードされたビデオストリームのサイズは、減少され、従って、そのエンコードされたビデオストリームは、コンテンツプレーヤーによりより速くダウンロードされることができる。
【００２８】
[0033]もう１つ別の実施形態では、ＡＳＦパッケージングツール２１６により、同じコンテンツタイトルに関連付けられた複数のエンコードされたビデオストリームに亘ってのデータパケットサイズは、同じサイズとなるようにされる。ＡＳＦ標準によれば、単一のエンコードされたビデオストリームにおけるデータパケットのサイズは、同じであることが必要とされているので、複数のエンコードされたビデオストリームに亘ってデータパケットが同じサイズを有するようにすることにより、コンテンツプレーヤーは、複数のエンコードされたビデオストリームのデータパケットを単一のエンコードされたビデオストリームへと継ぐことができる。
【００２９】
[0034]図３は、本発明の１つの実施形態による図２のエンコーディングサーバー１０２により処理されるビデオストリームの異なるエンコードされるステージを例示する概念図である。ビデオストリーム３０２は、ある特定のコンテンツタイトルへの権利が取得されたときにビデオストリーム配信器により配信されるようなその特定のコンテンツタイトルに関連付けられたメザニンビデオストリームである。このビデオストリーム３０２は、フレーム３０４及びフレーム３０６の如きビデオデータの一連の順次フレームを含む。
【００３０】
[0035]ビデオストリーム３０２は、ＶＣ１エンコーダ２１４によりエンコードされ、エンコードされたビデオストリーム３０８を生成する。前述したように、ＶＣ１エンコーダ２１４は、そのメザニンビデオストリームを特定の再生ビットレートにエンコードする。エンコードされたビデオストリーム３０８は、ＧＯＰ３１８及びＧＯＰ３２０の如き複数のＧＯＰへと分割されている。各ＧＯＰは、ＧＯＰ３１８におけるキーフレーム３１０及びＧＯＰ３２０におけるキーフレーム３１４の如きシーケンスヘッダを含むキーフレームを含む。更に、そのエンコードされたビデオストリーム３０８内の各ＧＯＰは、同じ再生時間間隔及び異なる再生オフセットに関連付けられている。例えば、再生時間間隔が３秒である場合には、ＧＯＰ３１８は、零秒の再生オフセットに関連付けられ、一方、ＧＯＰ３２０は、６秒の再生オフセットに関連付けられる。
【００３１】
[0036]それから、そのエンコードされたビデオストリーム３０８は、ＡＳＦパッケージングツール２１６により処理され、ＡＳＦ準拠のエンコード化ビデオストリーム３２２を生成する。図示されるように、そのＡＳＦ準拠のエンコード化ビデオストリーム３２２は、ＡＳＦヘッダ３２４、データパケット１及びデータパケット７の如き同じサイズのデータパケットを含むデータオブジェクト、及びＡＳＦインデックス３２６を含む。又、ＡＳＦヘッダ３２４は、データパケットのサイズ及び数の如きＡＳＦ準拠のエンコード化ビデオストリーム３２２に関連付けられた情報を含む。ＡＳＦインデックス３２６は、ＡＳＦ準拠のエンコード化ビデオストリーム３２２に関連付けられたインデックス情報を含み、データオブジェクト内のデータパケットは、それらＧＯＰを記憶している。前述したように、それらデータパケットのサイズは、必ずしもそれらＧＯＰのサイズと整合していないので、１つのＧＯＰは、異なるデータパケットに亘って記憶されているかもしれない。例えば、図示されるように、ＧＯＰ３１８は、データパケット１、データパケット２及び部分的にデータパケット３に記憶されている。
【００３２】
[0037]それから、ＡＳＦ準拠のエンコード化ビデオストリーム３２２は、パディングツール２１８により処理される。又、パディングツール２１８は、各ＧＯＰに関連付けられたキーフレームがデータオブジェクト内の異なるデータパケットのスタートに配置されるようにするため、ＡＳＦ準拠のエンコード化ビデオストリーム３２２のデータオブジェクトへパディングを挿入する。例えば、パディングツール２１８は、ＧＯＰ３２３のキーフレーム３１６が新しいデータパケット、即ち、データパケット４と整列されるように、ＧＯＰ３１８の後のデータパケット３へパディング３３４を挿入する。同様に、パディングツール２１８は、ＧＯＰ３２０のキーフレーム３１４が新しいデータパケット、即ち、データパケット６と整列されるように、ＧＯＰ３２３の後のデータパケット５へパディング３３６を挿入する。
【００３３】
[0038]ＡＳＦ準拠のエンコード化ビデオストリーム３２２のデータオブジェクトがパディングされる時、ＳＨＩ生成器２２０は、そのＡＳＦ準拠のエンコード化ビデオストリーム３２２に関連付けられたシーケンスヘッダインデックス３３８を生成する。識別されたキーフレームの各々に関連付けられたＧＯＰの場合には、ＳＨＩ生成器２２０は、（i）そのＧＯＰに関連付けられたキーフレームを含むデータパケットを識別するデータパケット番号、及び（ii）そのＧＯＰに関連付けられた再生オフセットを記憶するシーケンスヘッダインデックス３３８内のスイッチポイントを定める。シーケンスヘッダインデックス３３８については、図４に関して以下により詳細に説明する。生成される時、ＳＨＩ生成器２２０は、そのシーケンスヘッダインデックス３３８をＡＳＦ準拠のエンコード化ビデオストリーム３２２のＡＳＦヘッダ３２４へ挿入する。
【００３４】
[0039]図４は、本発明の１つの実施形態による図３のシーケンスヘッダインデックスのより詳細な図である。図示されるように、シーケンスヘッダインデックスは、スイッチポイント４０８及びスイッチポイント４１０の如き１つ以上のスイッチポイントを含み、各スイッチポイントは、インデックス部分４０２、オフセット部分４０４及びデータパケット部分４０６を含む。各スイッチポイントは、そのスイッチポイントのオフセット部分４０４にて特定された特定の再生オフセットで始まる特定のＧＯＰに関連付けられており、そこでは、そのＧＯＰのキーフレームは、そのスイッチポイントのデータパケット部分４０６において特定された特定のデータパケット内に位置している。例えば、スイッチポイント４０８は、ＧＯＰ３１８に関連付けられており、そのスイッチポイント４０８のオフセット部分４０４は、そのＧＯＰ３１８に対する再生オフセットが零秒であることを指示しており（即ち、そのビデオストリームにおける第１のＧＯＰ）、データパケット部分４０６は、ＧＯＰ３１８のキーフレーム３１０がデータパケット１に位置していることを指示している。
【００３５】
[0040]図５は、本発明の１つの実施形態による適応ビデオストリーミングのためのビデオストリームをエンコードする方法ステップのフロー図である。これら方法ステップは、図１から図４のシステムに関して説明されるのであるが、当業者であれば、これら方法ステップを任意の順序で行うように構成されたどのようなシステムも、本発明の範囲内に入るものであることが理解されよう。
【００３６】
[0041]この方法５００は、ステップ５０２で始まり、ここで、ＶＣ１エンコーダ２１４は、メザニンビデオストリームに対してエンコーディング動作を実行し、特定の再生ビットレートにエンコードされたエンコード化ビデオストリームを生成する。ＶＣ１エンコーダ２１４により生成されたエンコードされたビデオストリームは、各々がビデオデータの複数のフレーム及びシーケンスヘッダを含むキーフレームを含むようなピクチャーのグループ（ＧＯＰ）のシーケンスを含む。各ＧＯＰは、同じ再生時間間隔及び異なる再生オフセットに関連付けられる。又、ＧＯＰに関連付けられた再生オフセットは、そのエンコードされたビデオストリームに含まれるＧＯＰのシーケンスにおけるそのＧＯＰの位置に基づいて決定される。
【００３７】
[0042]ステップ５０４にて、ＡＳＦパッケージングツール２１６は、エンコードされたビデオストリームを処理して、ＡＳＦ準拠のエンコード化ビデオストリームを生成する。前述したように、ＡＳＦ準拠のエンコード化ビデオストリームは、ＡＳＦヘッダ、同じサイズのデータパケットを含むデータオブジェクト、及び任意なものとしてＡＳＦインデックスを含む。ＡＳＦヘッダ及びＡＳＦインデックスは、データパケットのサイズ及びデータパケットのインデックスの如きＡＳＦ準拠のエンコード化ビデオストリームに関連した情報を記憶している。データオブジェクトは、データパケットにおけるエンコードされたビデオストリームのＧＯＰを記憶している。
【００３８】
[0043]ステップ５０６にて、パディングツール２１８は、各ＧＯＰに関連付けられたキーフレームがデータオブジェクト内の異なるデータパケットのスタートに位置付けられるようにするため、ＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトへパディングを挿入する。それから、パディングツール２１８は、そのＡＳＦ準拠のエンコード化ビデオストリームをＳＨＩ生成器２２０へ送信する。
【００３９】
[0044]ステップ５０８にて、ＳＨＩ生成器２２０は、データオブジェクトに含まれる異なるＧＯＰに関連付けられたキーフレームについてＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトをサーチする。キーフレームは、それらキーフレームに含まれたシーケンスヘッダにおいて特定されるシーケンススタートコードに基づいて、ＳＨＩ生成器２２０により探し出される。ステップ５１０にて、ＳＨＩ生成器２２０は、キーフレームの位置に基づいて、ＡＳＦ準拠のエンコード化ビデオストリームに関連付けられたシーケンスヘッダインデックスを生成する。識別されたキーフレームの各々に関連付けられたＧＯＰについては、ＳＨＩ生成器２２０は、（i）そのＧＯＰに関連付けられたキーフレームを含むデータパケットを識別するデータパケット番号、及び（ii）そのＧＯＰに関連付けられた再生オフセットを記憶するシーケンスヘッダインデックス内のスイッチポイントを定める。ステップ５１２にて、ＳＨＩ生成器２２０は、ＡＳＦ準拠のエンコード化ビデオストリームのＡＳＦヘッダへそのシーケンスヘッダインデックスを挿入する。
【００４０】
[0045]別の実施形態では、エンコーディングサーバー１０２により処理されるビデオストリームは、そのエンコーディング処理中にデジタル著作権管理（ＤＲＭ）暗号化技術を使用して暗号化される。ＤＲＭ実施においては、エンコードされたビデオストリームにおけるＧＯＰのキーフレームを識別するシーケンスヘッダスタートコードもまた暗号化されるので、もし、前述した技術が使用されるならば、ＳＨＩ生成器２２０は、シーケンスヘッダスタートコードポスト暗号化に基づいてキーフレームをサーチすることで終わってしまい、従って、エンコードされたビデオストリームに関連付けられたシーケンスヘッダインデックスを生成することができない。ＤＲＭのこのような特徴に対処するため、前述した技術の代わりとして、図６に関して後述するような技術を使用することができる。
【００４１】
[0046]図６は、本発明の別の実施形態による適応ビデオストリーミングのためビデオストリームをエンコードし暗号化するための方法ステップのフロー図である。これら方法ステップは、図１から図４のシステムに関して説明されるのであるが、当業者であれば、任意の順序においてこれら方法ステップを行うように構成されたどのようなシステムも本発明の範囲内に入るものであることは理解されよう。
【００４２】
[0047]方法６００は、ステップ６０２で始まり、そこで、ＶＣ１エンコーダ２１４は、メザニンビデオストリームに対してエンコーディング動作を実行し、特定の再生ビットレートにエンコードされたエンコード化ビデオストリームを生成する。ＶＣ１エンコーダ２１４により生成されるエンコードされたビデオストリームは、各々がビデオデータの複数のフレーム及びシーケンスヘッダを含むキーフレームを含むピクチャーのグループ（ＧＯＰ）のシーケンスを含む。各ＧＯＰは、同じ再生時間間隔及び異なる再生オフセットに関連付けられている。
【００４３】
[0048]ステップ６０４にて、ＡＳＦパッケージングツール２１６は、エンコードされたビデオストリームを処理してＡＳＦ準拠のエンコード化ビデオストリームを生成する。前述したように、このＡＳＦ準拠のエンコード化ビデオストリームは、ＡＳＦヘッダ、同じサイズのデータパケットを含むデータオブジェクト、及び、任意的なものとして、ＡＳＦインデックスを含む。そのデータオブジェクトは、それらデータパケットにおいてそのエンコードされたビデオストリームのＧＯＰを記憶している。
【００４４】
[0049]ステップ６０６にて、ＳＨＩ生成器２２０は、データオブジェクトに含まれる異なるＧＯＰに関連付けられたキーフレームについてそのＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトをサーチする。それらキーフレームは、それらキーフレームに含まれたシーケンスヘッダにおいて特定されるシーケンススタートコードに基づいて、ＳＨＩ生成器２２０により探し出すことができる。ステップ６０８にて、ＳＨＩ生成器２２０は、それらキーフレームの位置に基づいて、ＡＳＦ準拠のエンコード化ビデオストリームに関連付けられたシーケンスヘッダインデックスを生成する。その識別されたキーフレームの各々に関連付けられたＧＯＰについて、ＳＨＩ生成器２２０は、（i）そのＧＯＰに関連付けられたキーフレームを含むデータパケットを識別するデータパケット番号、及び（ii）そのＧＯＰに関連付けられた再生オフセットを記憶するシーケンスヘッダインデックス内のスイッチポイントを定める。ステップ６１０にて、ＳＨＩ生成器２２０は、ＡＳＦ準拠のエンコード化ビデオストリームのＡＳＦヘッダへそのシーケンスヘッダインデックスを挿入する。
【００４５】
[0050]ステップ６１２にて、エンコーディングサーバー１０２は、プレイレディＤＲＭ又はウインドウズメディアＤＲＭ（ＷＭＤＲＭ）の如きＤＲＭ暗号化技術を使用して、そのＡＳＦ準拠のエンコード化ビデオストリームを暗号化する。よく知られているように、ＤＲＭ暗号化技術を使用してビデオストリームを暗号化すると、各ＧＯＰに記憶されているビデオデータのフレームのサイズが変化してしまうことがある。従って、ＡＳＦ準拠のエンコード化ビデオストリーム内のキーフレームの位置により、ポスト暗号化が変化してしまうことがある。
【００４６】
[0051]ステップ６１４にて、ＳＨＩ生成器２２０は、シーケンスヘッダインデックスに記憶された対応する再生オフセットに基づいて、ＡＳＦ準拠のエンコード化ビデオストリームにおける各キーフレームを探し出す。又、暗号化中に、キーフレームの位置が変化することがあるが、そのキーフレームを含むＧＯＰに関連付けられた再生オフセットは、変化せず、それにより、ＳＨＩ生成器２２０は、その再生オフセットに基づいてキーフレームを正確に探し出すことができる。
【００４７】
[0052]ステップ６１６にて、パディングツール２１８は、各ＧＯＰに関連付けられたキーフレームがそのデータオブジェクト内の異なるデータパケットのスタートに位置するようにするため、ＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトへパディングを挿入する。ステップ６１６にて、ＳＨＩ生成器２２０は、暗号化されたＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトへ挿入されたパディングに基づいて、そのＡＳＦ準拠のエンコード化ビデオストリームのＡＳＦヘッダに記憶されたシーケンスヘッダインデックスを変更する。特定すると、ＳＨＩ生成器２２０は、キーフレームを記憶しているデータパケットを特定するように、シーケンスヘッダインデックスに記憶されたデータパケット識別子を変更する。
【００４８】
[0053]このようにして、ＳＨＩ生成器２２０は、ＤＲＭ暗号化の前に、ＡＳＦ準拠のエンコード化ビデオストリームに関連付けられたシーケンスヘッダインデックスを生成することができる。ＧＯＰに関連付けられた再生オフセットは、暗号化中に同じのままであるので、ＳＨＩ生成器２２０は、ＧＯＰポスト暗号化において含まれたキーフレームの新しい位置に基づいて、シーケンスヘッダインデックスを変更することができる。その結果として、コンテンツプレーヤーは、暗号化されたＡＳＦ準拠のエンコード化ビデオストリームに含まれたシーケンスヘッダインデックスにおける適当なスイッチポイントを識別することにより、同じコンテンツタイトルに関連付けられた暗号化されたＡＳＦ準拠のエンコード化ビデオストリームの間の切り換えを効率的に行うことができる。
【００４９】
[0054]別の代替実施形態では、ＷＭＤＲＭ暗号化を使用してビデオストリームを暗号化する時、図５に示したエンコーディング技法が実施される。ＡＳＦ準拠のエンコード化ビデオストリームに関連付けられたシーケンスヘッダインデックスが生成される時、ＡＳＦ準拠のエンコード化ビデオストリームは、ＷＭＤＲＭ暗号化を使用して暗号化される。このＷＭＤＲＭ暗号化技術は、暗号化されたビデオストリームにおけるキーフレームの位置を変えることはないので、そのシーケンスヘッダインデックスを、ＷＭＤＲＭ暗号化の後で再調整する必要はない。当業者であれば認識できるように、図６の技術は、ＷＭＤＲＭ実施においても使用することができる。
【００５０】
[0055]要約するに、エンコーディングサーバーは、エンコードされたビデオストリームに含まれたシーケンスヘッダインデックスにて特定されるスイッチポイントを識別するため、コンテンツタイトルに関連付けられたビデオストリームをエンコードする。同じコンテンツタイトルに対応し且つ異なる再生ビットレートにエンコードされた２つ以上のビデオストリームのスイッチポイントが、それら２つ以上のビデオストリームの各々に亘って同じ再生時間間隔で生ずる。
【００５１】
[0056]特定のビデオストリームをエンコードするとき、エンコーディングサーバー内のＶＣ１エンコーダは、先ず、そのビデオストリームを処理して、ビデオデータのピクチャーの１つ以上のグループ（ＧＯＰ）へ分割されるエンコードされたビデオストリームを生成する。各ＧＯＰは、ビデオデータの複数のフレームが続くシーケンスヘッダを含む。そのシーケンスヘッダは、ビデオデータのフレームの解像度及びアスペクト比を特定し、そのＧＯＰ内のビデオデータのフレームは、特定の再生オフセットで始まる特定の再生時間間隔に関連付けられる。
【００５２】
[0057]エンコードされたビデオストリームが生成されるとき、エンコーディングサーバー内のＡＳＦパッケージングツールは、そのエンコードされたビデオストリームをＡＳＦ準拠のエンコード化ビデオストリームへとパッケージする。そのＡＳＦ準拠のエンコード化ビデオストリームは、ＡＳＦヘッダ及びデータオブジェクトを含む。そのＡＳＦヘッダは、再生のためエンコードされたビデオストリームを処理するのにコンテンツプレーヤーにより必要とされるデータパケットのサイズ及び数の如きそのエンコードされたビデオストリームに関連付けられた情報を含む。そのデータオブジェクトは、１つ以上のデータパケットにおいてそれらＧＯＰを記憶している。
【００５３】
[0058]ＡＳＦパッケージングツールは、そのＡＳＦ準拠のエンコード化ビデオストリームをエンコーディングサーバー内のパディングツールへと送信する。パディングツールは、各ＧＯＰのシーケンスヘッダをデータオブジェクト内の新しいデータパケットと整列させるため、そのＡＳＦ準拠のエンコード化ビデオストリームのデータオブジェクトへパディングを挿入する。パディングがデータオブジェクトへ挿入されるとき、エンコーディングサーバー内のシーケンスヘッダインデックス（ＳＨＩ）生成器は、そのＡＳＦ準拠のエンコード化ビデオストリームに関連付けられたＳＨＩを生成する。ＡＳＦ準拠のエンコード化ビデオストリームにおける各ＧＯＰについて、ＳＨＩは、そのＧＯＰのシーケンスヘッダ及びそのＧＯＰに対応する再生オフセットを含むデータパケットを特定する。それから、ＳＨＩ生成器は、そのＳＨＩをそのＡＳＦ準拠のエンコード化ビデオストリームのＡＳＦヘッダへ挿入する。
【００５４】
[0059]同じコンテンツタイトルに関連付けられた２つ以上のビデオストリームをエンコードする時、エンコーディングサーバー１０２は、前述したような仕方にて異なる再生ビットレートにエンコードされた２つ以上のＡＳＦ準拠のエンコード化ビデオストリームを生成する。ここで重要なことは、それら２つ以上のＡＳＦ準拠のエンコード化ビデオストリームに亘って、それら対応するＧＯＰは、同じ時間間隔及び同じ再生オフセットに関連付けられているということである。従って、特定のコンテンツタイトルに関連付けられた１つのＡＳＦ準拠のエンコード化ビデオストリームに含まれたシーケンスヘッダにて定められた各スイッチポイントは、同じコンテンツタイトルに関連付けられた異なるＡＳＦ準拠のエンコード化ビデオストリームに含まれたシーケンスヘッダにて定められた対応するスイッチポイントを有する。
【００５５】
[0060]ここに開示した技術の１つの効果は、コンテンツプレーヤーが、新しいエンコードされたビデオストリームに関連付けられたシーケンスヘッダインデックスにおける適当なスイッチポイントを識別することにより、特定のコンテンツタイトルに関連付けられ且つ特定の再生ビットレートを有する１つのエンコードされたビデオストリームから、同じコンテンツタイトルに関連付けられ且つ異なる再生ビットレートを有する別のエンコードされたビデオストリームへと効率的に切り換えることができるということである。コンテンツプレーヤーは、再生のためエンコードされたビデオストリームに含まれたビデオデータの適当なフレームをサーチする必要がないので、エンコードされたビデオストリームの間の切り換え時に再生の中断が生ずることが減ぜられる。ここに開示した技術の別の効果は、エンコーディングサーバーにより生成されたエンコードされたビデオストリームがＡＳＦに準拠したものであり、従って、任意の標準に準拠したコンテンツプレーヤーにより再生のためダウンロードされ処理されるということである。
【００５６】
[0061]本発明の実施形態について前述してきたのであるが、本発明の基本的範囲から逸脱せずに、本発明の他の更なる実施形態を考えることができるものである。例えば、本発明の種々な態様は、ハードウエア又はソフトウエア、又はハードウエアとソフトウエアとの組合せ、によって実施することができるものである。本発明の１つの実施形態は、コンピュータシステムで使用するプログラム製品として実施される。このプログラム製品のプログラムは、種々な実施形態（ここに説明した方法を含む）の機能を定めており、種々なコンピュータ読取り可能な記憶媒体に収めることができる。コンピュータ読取り可能な記憶媒体の例示としては、これらに限定されるものではないが、（i）情報が永久的に記憶されるような非書込み型記憶媒体（例えば、ＣＤ-ＲＯＭドライブにより読み取られるＣＤ-ＲＯＭディスクの如きコンピュータ内の読取り専用メモリ装置、フラッシュメモリ、ＲＯＭチップ又は任意のタイプのソリッドステート不揮発性半導体メモリ）、及び（ii）変更できる情報が記憶されているような書込み可能な記憶媒体（例えば、ディスケットドライブ内のフロッピーディスク又はハードディスクドライブ又は任意のタイプのソリッドステートランダムアクセス半導体メモリ）がある。このようなコンピュータ読み取り可能な記憶媒体は、本発明の機能を指示するコンピュータ読取り可能な命令を実施するとき、本発明の実施形態である。
【００５７】
[0062]前述したことからして、本発明の範囲は、特許請求の範囲の記載により決定される。
【図１】
0005499314.tif 000002
【図２】
0005499314.tif 000003
【図３】
0005499314.tif 000004
【図４】
0005499314.tif 000005
【図５】
0005499314.tif 000006
【図６】
0005499314.tif 000007