"メディアプログラムと、これと共に提示するための広告とをストリーミングする方法であって、各々が他と異なる提示スループットのために生成される複数のメディアプログラムバージョンを生成することと、各メディアプログラムバージョンについて複数のメディアプログラムバージョンセグメントを生成するために複数のメディアプログラムバージョンセグメントに前記複数のメディアプログラムバージョンの各々をセグメント化することと、各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記関連のメディアプログラムバージョンの前記提示スループットのために生成される、前記広告の複数の広告バージョンを生成することと、各広告バージョンについて複数の広告バージョンセグメントを生成するために複数の広告バージョンセグメントに前記複数の広告バージョンの各々をセグメント化することと、前記メディアプログラムのメディアプログラム要求を受信することと、各々が前記複数のメディアプログラムバージョンの1つのみに関連する複数のメディアプログラムバージョンアドレスを備えるマスタプレイリストを前記メディアプログラムプレーヤに伝送することと、前記複数のメディアプログラムバージョンの要求された1つに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記複数のメディアプログラムバージョンセグメントの各1つに関連したメディアプログラムバージョンセグメントアドレスと、前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連した広告バージョンセグメントアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送することと、の各ステップを備える方法。前記メディアプログラム要求を受信する前記ステップは、前記メディアプログラムに関連した前記マスタプレイリストのアドレスの要求を受信するステップを備え、前記マスタプレイリストを伝送する前記ステップは、前記メディアプログラムと共に再生するべき1組の広告から前記広告を選択すること、のステップを備え、前記選択された広告は、少なくともある程度ユーザ識別子に従って選択され、前記マスタプレイリストを伝送する前記ステップは、更に前記マスタプレイリストを生成して、前記選択された広告の識別子を含むマスタプレイリストアドレスにて前記マスタプレイリストを供給することと、前記メディアプログラム要求に応答して前記メディアプログラムプレーヤに前記マスタプレイリストアドレスを伝送することと、前記マスタプレイリストアドレスにてマスタプレイリスト要求を受信することと、前記マスタプレイリスト要求に応答して前記マスタプレイリストを伝送することとの各ステップを備える請求項1に記載の方法。前記選択された広告の前記複数の広告バージョンセグメントの各々は、広告バージョンセグメント識別子に関連し、前記マスタプレイリストを生成する前記ステップは、前記選択された広告の前記識別子を有する前記マスタプレイリストアドレスにて前記マスタプレイリスト要求を受信することと、各々は前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンについて前記広告バージョンセグメント識別子を備える前記複数のメディアプログラムバージョンアドレスを生成することとのステップを備える請求項2に記載の方法。前記広告の前記識別子は、複数の広告識別子文字を備え、前記複数の広告バージョンセグメント識別子の各々は、前記複数の広告識別子文字を備える請求項3に記載の方法。前記メディアプログラムプレーヤに前記セグメントプレイリストを伝送する前記ステップは、前記複数のメディアプログラムバージョンの前記要求の1つの前記メディアプログラムバージョンアドレスにてセグメントプレイリスト要求を受信することと、前記受信されたセグメントプレイリスト要求に応答して前記セグメントプレイリストを伝送することとの各ステップを備える請求項3に記載の方法。前記複数のメディアプログラムバージョンの第2の要求された1つの前メディアプログラムバージョンアドレスにて第2のセグメントプレイリスト要求を受信するステップを更に備え、前記第2のセグメントプレイリスト要求は、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムバージョンアドレスの前記1つにアドレス指定され、前記複数のメディアプログラムバージョンアドレスの前記1つは、前記選択された広告の前記識別子を含み、前記方法は、更に前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムセグメントの各1つに関連したアドレスと、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備えるセグメントプレイリストを前記メディアプログラムプレーヤに伝送するステップを備える請求項3に記載の方法。メディアプログラムと、これと共に提示するための広告とをストリーミングする装置であって、各々が他と異なる提示スループットのために生成される複数のメディアプログラムバージョンを生成する手段と、各メディアプログラムバージョンについて複数のメディアプログラムバージョンセグメントを生成するために複数のメディアプログラムバージョンセグメントに前記複数のメディアプログラムバージョンの各々をセグメント化する手段と、各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記関連のメディアプログラムバージョンの前記提示スループットのために生成される、前記広告の複数の広告バージョンを生成する手段と、各広告バージョンについて複数の広告バージョンセグメントを生成するために複数の広告バージョンセグメントに前記複数の広告バージョンの各々をセグメント化する手段と、前記複数のメディアプログラムのメディアプログラム要求を受信する手段と、各々が前記複数のメディアプログラムバージョンの1つのみに関連する複数のメディアプログラムバージョンアドレスを備えるマスタプレイリストを前記メディアプログラムプレーヤに伝送する手段と、前記複数のメディアプログラムバージョンの要求の1つに関連し、かつ前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記複数のメディアプログラムバージョンセグメントの各1つに関連したメディアプログラムバージョンセグメントアドレスと、前記メディアプログラムバージョンの前記要求された1つに関連した前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連した広告バージョンセグメントアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送する手段とを備える装置。前記メディアプログラム要求を受信する前記手段は、前記メディアプログラムに関連した前記マスタプレイリストのアドレスの要求を受信する手段を備え、前記マスタプレイリストを伝送する前記手段は、前記メディアプログラムと共に再生するべき1組の広告から前記広告を選択する手段を備え、前記選択された広告は、少なくともある程度ユーザ識別子に従って選択され、前記マスタプレイリストを伝送する前記手段は、更に前記マスタプレイリストを生成して、前記選択された広告の識別子を含むマスタプレイリストアドレスにて前記マスタプレイリストを供給する手段と、前記メディアプログラム要求に応答して前記メディアプログラムプレーヤに前記マスタプレイリストアドレスを伝送する手段と、前記マスタプレイリストアドレスにてマスタプレイリスト要求を受信する手段と、前記マスタプレイリスト要求に応答して前記マスタプレイリストを伝送する手段とを備える請求項7に記載の装置。前記選択された広告の前記複数の広告バージョンセグメントの各々は、広告バージョンセグメント識別子に関連し、前記マスタプレイリストを生成する前記手段は、前記選択された広告の前記識別子を有する前記マスタプレイリストアドレスにて前記マスタプレイリスト要求を受信する手段と、各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンについて前記広告バージョンセグメント識別子を備える前記複数のメディアプログラムバージョンアドレスを生成する手段とを備える請求項8に記載の装置。前記広告の前記識別子は、複数の広告識別子文字を備え、前記複数の広告バージョンセグメント識別子の各々は、前記複数の広告識別子文字を備える請求項9に記載の装置。前記セグメントプレイリストを前記メディアプログラムプレーヤに伝送する前記手段は、前記複数のメディアプログラムバージョンの前記要求の1つの前記メディアプログラムバージョンアドレスにてセグメントプレイリスト要求を受信する手段と、前記受信されたセグメントプレイリスト要求に応答して前記セグメントプレイリストを伝送する手段とを備える請求項9に記載の装置。前記複数のメディアプログラムバージョンの第2の要求された1つの前メディアプログラムバージョンアドレスにて第2のセグメントプレイリスト要求を受信する手段を更に備え、前記第2のセグメントプレイリスト要求は、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムバージョンアドレスの前記1つにアドレス指定され、前記複数のメディアプログラムバージョンアドレスの前記1つは、前記選択された広告の前記識別子を含み、前記装置は、更に前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムセグメントの各1つに関連したアドレスと、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送する手段を備える請求項9に記載の装置。メディアプログラムと、これと共に提示するための広告とをストリーミングする装置であって、各々が他と異なる提示スループットのために生成される複数のメディアプログラムバージョンを生成し、各メディアプログラムバージョンについて複数のメディアプログラムバージョンセグメントを生成するために複数のメディアプログラムバージョンセグメントに前記複数のメディアプログラムバージョンの各々をセグメント化し、各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記関連のメディアプログラムバージョンの前記提示スループットについて生成される、前記広告の複数の広告バージョンを生成し、かつ、各広告バージョンについて複数の広告バージョンセグメントを生成するために複数の広告バージョンセグメントに前記複数の広告バージョンの各々をセグメント化するコンテンツ生成器と、前記メディアプログラムのメディアプログラム要求を受信し、各々が前記複数のメディアプログラムバージョンの1つのみに関連する複数のメディアプログラムバージョンアドレスを備えるマスタプレイリストを前記メディアプログラムプレーヤに伝送し、かつ前記複数のメディアプログラムバージョンの要求の1つに関連し、かつ前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記複数のメディアプログラムバージョンセグメントの各1つに関連したメディアプログラムバージョンセグメントアドレスと、前記複数のメディアプログラムバージョンの前記要求された1つに関連した前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連した広告バージョンセグメントアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送するコンテンツセレクタとを備える装置。コンテンツセレクタは、前記メディアプログラムに関連した前記マスタプレイリストのアドレスの要求を受信する手段と、前記マスタプレイリストを生成して、前記選択された広告の識別子を含むマスタプレイリストアドレスにて前記マスタプレイリストを供給する手段と、前記メディアプログラム要求に応答して前記メディアプログラムプレーヤに前記マスタプレイリストアドレスを伝送する手段と、前記マスタプレイリストアドレスにてマスタプレイリスト要求を受信する手段と、前記マスタプレイリスト要求に応答して前記マスタプレイリストを伝送する手段とを備え、前記装置は、前記メディアプログラムと共に再生するべき1組の広告から前記広告を選択する広告サービスを更に備え、前記選択された広告は、少なくともある程度ユーザ識別子に従って選択される請求項13に記載の装置。前記選択された広告の前記複数の広告バージョンセグメントの各々は、広告バージョンセグメント識別子に関連し、前記マスタプレイリストを生成する前記手段は、前記選択された広告の前記識別子を有する前記マスタプレイリストアドレスにて前記マスタプレイリスト要求を受信する手段と、各々が前記複数のメディアプログラムバージョンの1つのみに関連し、かつ、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンについて前記広告バージョンセグメント識別子を備える前記複数のメディアプログラムバージョンアドレスを生成する手段とを備える請求項14に記載の装置。前記広告の前記識別子は、複数の広告識別子文字を備え、前記複数の広告バージョンセグメント識別子の各々は、前記複数の広告識別子文字を備える請求項15に記載の装置。コンテンツセレクタは、前記複数のメディアプログラムバージョンの前記要求の1つの前記メディアプログラムバージョンアドレスにてセグメントプレイリスト要求を受信する手段と、前記受信されたセグメントプレイリスト要求に応答して前記セグメントプレイリストを伝送する手段とを更に備える請求項15に記載の装置。前記コンテンツセレクタは、更に、前記複数のメディアプログラムバージョンの第2の要求された1つの前メディアプログラムバージョンアドレスにて第2のセグメントプレイリスト要求を受信し、前記第2のセグメントプレイリスト要求は、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記複数のメディアプログラムバージョンアドレスの前記1つにアドレス指定され、前記複数のメディアプログラムバージョンアドレスの前記1つは、前記選択された広告の前記識別子を含み、前記複数のメディアプログラムバージョンの前記第2の要求の1つに関連した前記メディアプログラムセグメントの各1つに関連したアドレスと、前記複数のメディアプログラムバージョンの前記要求の1つに関連した前記選択された広告の前記広告バージョンに関連した前記複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストを備える、セグメントプレイリストを前記メディアプログラムプレーヤに伝送する手段を備える請求項15に記載の装置。以下の説明においては、本明細書の一部を成し、かつ、例示として示される添付図面、本発明のいくつかの実施形態を参照する。他の実施形態を利用される場合があり、構造上の変更が本発明の範囲から逸脱することなく行われる場合があることが理解される。図1は、例示的なメディアプログラムシステム100を示す図である。図示する実施形態においては、システム100はインターネットなどの通信ネットワーク104に通信上結合され、かつ、各々が1つまたは複数のソースメディアプログラムデータベース124A、124B、に通信上結合された1つまたは複数のソースビデオサーバ122A、122Bを有する1つまたは複数のメディアプログラムソース120A、120Bを備えることができる。メディアプログラムシステム100は、更に、通信ネットワーク104に通信上結合され、かつ、1つまたは複数のプロバイダビデオサーバ112および1つまたは複数のプロバイダデータベース114を有するメディアプログラムプロバイダ110を備える。一実施形態においては、メディアプログラムプロバイダ110は、ビデオオンデマンドおよび/またはストリーミングメディアプログラムプロバイダである。メディアプログラムシステム100は、コンピュータなどの第1のユーザデバイス102Aまたは携帯電話などの第2のユーザデバイス102B以下あるいはユーザデバイス120というにメディアプログラムを伝送する。この伝送は、メディアプログラムプロバイダ110から直接的なものとすることができるか、または、メディアプログラムプロバイダ110は、ポータルとして動作することができ、メディアプログラム自体でなくその代わりにメディアプログラムソース120により供給される、メディアプログラムソース120Aおよび120Bから入手可能であるメディアプログラムに対するインターフェースとなる。第1の場合においては、メディアプログラムプロバイダ110は、メディアプログラムソース120www.fox.comまたはwww.nbc.comなどからのメディアプログラムを使用許諾し、当該のプログラムのメタデータは、通常、同様にメディアプログラムソース120からメディアプログラムプロバイダ110にも供給される。当該のメタデータは、使用に向けてメディアプログラムプロバイダのデータベース114により検索することができる。補助メタデータが必要とされる場合、以下で更に説明するように、メディアプログラムプロバイダ110およびメディアプログラムソース120から独立しているメタデータソース130から取得することができる。第2の場合においては、メディアプログラムは、メディアプログラムソース120のサーバから直にユーザデバイス102にストリーミングされる。メディアプログラムがメディアプログラムソース120から直にストリーミングされるとき、メディアプログラムソース120により供給されたメタデータは不十分であることが当てはまることが多い。このような場合、補助メタデータは、独立したメタデータソース130www.tv.comまたはwww.imdb.comなどまたは他の第三者ソースから取得することができる。この状況においては、メディアプログラムプロバイダ110の役割は、ユーザ132に利用可能なメディアプログラムのリストを供給するポータル、かつ、当該のプログラムを見つけるために、かつ、視聴するために調べるインターフェースの役割である。メディアプログラムおよびメタデータは、インターネットなどの通信ネットワーク104を介して、または、補助および/または専用通信リンク134を介して取得することができる。当該の情報は、インターネットのクローリングにより例えば、秩序立った自動的な方法でワールドワイドウェブを閲覧するプログラムまたは自動スクリプトを使用して取得することができる。ユーザデバイス102を使用して、リモートユーザ132は、メディアプログラムビデオオンデマンドおよび/または映像配信サービスを含むを取得するために、かつ、プロバイダメディアプログラムデータベース114を調べて当該のメディアプログラムを見つけるために通信ネットワーク104を使用してメディアプログラムプロバイダ110と通信することができる。メディアプログラムシステム100は、メディアプログラムプロバイダ110またはメディアプログラムソース120により供給されたメディアプログラムに関連してリプレイされる広告を供給する1つまたは複数の広告プロバイダ140を備えることができる。図示する実施形態においては、広告プロバイダ140は、関連のかつ通信上結合された広告プロバイダデータベース144に通信上結合された広告プロバイダサーバ142を含む。広告は、インターネット104、専用リンク146を介して、または、広告を有するメモリ記憶デバイスの物理的交換により広告プロバイダ140からメディアプログラムプロバイダ110に供給することができる。当該の広告は、妥当な時間にてユーザデバイス102に供給し、かつ、メディアプログラムプロバイダ110により記憶して妥当な時間にユーザデバイス102にメディアプログラムとともにストリーミングまたはダウンロードすることができる。一実施形態においては、広告は、メディアプログラムプロバイダ110からのストリーミングまたはダウンロードされた映像と一体化される。別の実施形態においては、広告は、メディアプログラムと一体化されず、その代わりにメディアプログラムとは別々にユーザデバイス102に伝送され、かつ、いつ各広告が提示されるべきかを示すインデックスを使用して妥当な時間にて再生される。例えば、広告は、インデックスを付して、かつ、ユーザデバイス102にストリーミングまたはダウンロードすることができメディアプログラムプロバイダ110または広告プロバイダ140から、当該の広告は、メディアプログラム内の対応するインデックスにより示された時間にてユーザ132に再生することができる。図2は、ユーザデバイス102、サーバ112、122、および142およびデータベース114、124、および144を含め、本発明の要素を実行するために使用することができる例示的なコンピュータシステム202を示す。システム202は、汎用ハードウェアプロセッサ204Aおよび/または専用ハードウェアプロセッサ204B以下あるいは集合的にプロセッサ204というおよびランダムアクセスメモリRAMなどメモリ206を備える。コンピュータ202は、キーボード214などの入出力I/Oデバイス、マウス、タッチパッドまたはトラックボールなどのポインティングデバイス216およびプリンタ228を含め、他のデバイスに結合することができる。一実施形態においては、システム202は、オペレーティングシステムOS208に制御されたコンピュータプログラム210により定義された命令を実行する汎用プロセッサ204Aにより動作する。コンピュータプログラム210および/またはオペレーティングシステム208は、メモリ206内に記憶することができ、かつ、入力およびコマンドを受理するために、かつ、コンピュータプログラム210およびオペレーティングシステム208により定義された当該の入力およびコマンドおよび命令に基づいて、出力および結果を供給するためにユーザ132および/または他のデバイスとインターフェースすることができる。出力/結果は、ディスプレイ222上で提示するか、または、提示または更なる処理またはアクションに向けて別のデバイスに供給することができる。通常は、ディスプレイ222は、ユーザ132に画像を集合的に提示するために状態を変更する複数の絵素画素を備える。例えば、ディスプレイ222は、入力およびコマンドへのコンピュータプログラム210の命令の適用からプロセッサ204および/またはオペレーティングシステム208により生成されたデータまたは情報に応答してディスプレイ上で画像の一部を形成するために不透明または半透明の状態に変わる液晶を各々が有する複数の別々にアドレス指定可能な画素を有する液晶ディスプレイLCDを備えることができる。同様に、プラズマディスプレイは、異なる色蛍光体を各々が有する3つの別々のサブピクセルセルを有する画素を含む。色は、共に混ざり合って画素に示す色を作成する。セルを流れる電流のパルスは、入力およびコマンドに応答してコンピュータプログラムおよび/またはオペレーティングシステム208の命令の適用からプロセッサにより生成されるデータに従って変えられ、画素により供給される光の強度が変わる。また、同様に、光線管CRTが表示する陰極は、各画素が通常はアパーチャグリルからの点または線により表されるサブピクセルを有する複数の画素を含む。各点または線は、電子銃から電子により当たられるときに光を発する蛍光体被覆を含む。コンピュータプログラムおよび/またはオペレーティングシステム208の命令の適用からプロセッサにより生成されたデータに応答して、および、入力およびコマンドに応答して、電子銃により出射された電子は、点または線にてステアリングされ、この結果、関連の画素の状態が、この点または線の蛍光体被覆に光を発せさせることにより変わる。画像は、グラフィカルユーザインターフェースGUIモジュール218Aを介して供給することができる。GUIモジュール218Aは別個のモジュールとして示されているが、GUI機能を実行する命令は、オペレーティングシステム208、コンピュータプログラム210内に常駐または分散させるか、または、専用メモリおよびプロセッサで実行することができる。コンピュータプログラム110命令に従ってシステム202により行われる作業の一部または全部は、専用プロセッサ204B内で実行することができる。この実施形態においては、コンピュータプログラム210命令の一部または全部は、専用プロセッサ204B内の読取り専用メモリROM、プログラマブル読取り専用メモリPROMまたはフラッシュメモリ内にまたはメモリ206内に記憶されたファームウェア命令を介して実行することができる。専用プロセッサ204Bは、本発明を実行する作業の一部または全部を実行するために回路設計を介して配線で接続することができる。更に、専用プロセッサ204Bは、機能のサブセットを実行する専用回路およびコンピュータプログラム命令に応答するなどのより一般的な機能を実行する他の回路を含むハイブリッドプロセッサとすることができる。一実施形態においては、専用プロセッサは、特定用途向け集積回路ASICである。システム202は、COBOL、C、FORTRANなどのプログラミング言語または他の言語で書かれたアプリケーションプログラム210をプロセッサ204可読コードに変換することを可能にするコンパイラ212を実行することもできる。完了後、アプリケーションまたはコンピュータプログラム210は、入出力デバイスから受理され、かつ、関係およびコンパイラ212を使用して生成された論理回路を使用してシステム202のメモリ206内に記憶されたデータにアクセスおよび操作する。システム202は、随意的にモデム、衛星リンク、イサーネットカード、無線リンク、または他のコンピュータから入力を受理して他のコンピュータに出力を供給する他のデバイスなどの外部通信デバイスも備える。一実施形態においては、オペレーティングシステム208、コンピュータプログラム210およびコンパイラ212を実行する命令は、Zipドライブ、フロッピー登録商標ディスクドライブ224、ハードドライブ、CD-ROMドライブ、テープドライブ、DVDなど1つまたはそれ以上の固定式または着脱式データ記憶デバイスを含むことができるコンピュータ可読媒体、例えば、データ記憶デバイス220において明白に実施される。更に、オペレーティングシステム208およびコンピュータプログラム210は、コンピュータプログラム命令で構成され、コンピュータプログラム命令は、システム202によりアクセスされ、読み込まれて実行されたとき、システム202に、本発明を実行および/または使用するために、または、命令のプログラムをメモリに取り込むために必要なステップを実行させ、その結果、コンピュータに本明細書で説明する方法のステップを実行する特別にプログラムされたコンピュータとして動作させる専用データ構造が作成される。コンピュータプログラム210および/または操作命令は、メモリ206および/またはデータ通信デバイス230においても明白に実施することができ、この結果、本発明に従ってコンピュータプログラム製品または製品が作製される。この点を踏まえて、本明細書で使用する製品、プログラム記憶装置およびコンピュータプログラム製品という用語は、任意のコンピュータ可読デバイスまたは媒体からアクセス可能なコンピュータプログラムを包含することが意図されている。言うまでもなく、当業者は、上記の構成部品または任意の数の異なる構成部品、周辺機器、および他のデバイスの任意の組み合わせをシステム202と共に用いることができることを認識するであろう。ユーザデバイスという用語に本明細書で言及するが、ユーザコンピュータ、iPhone、iPod、iPad、携帯電話、セル方式の携帯無線電話、ポータブルMP3またはビデオプレーヤ、ビデオゲームコンソール、ノートパソコン、ポケットコンピュータ、パームデバイスなどの個人用携帯情報端末PDA、または、適当な処理、通信および入出力能力を有する任意の他のデバイスを含むことができる。図3は、コンテンツ配信サブシステムCDS300およびユーザ132への提示に向けてメディアプログラムおよび広告を配信するために使用することができる最重要の作業の一実施形態を示す図である。図示する実施形態においては、コンテンツ配信サブシステム300は、ユーザデバイス102、メディアプログラムプロバイダ110および広告プロバイダ140を含む。メディアプログラムプロバイダ110は、ユーザデバイス102を介してユーザ132にメディアプログラムおよび広告を供給するためにユーザデバイス102および広告プロバイダと通信する。広告プロバイダ140はメディアプログラムプロバイダ110と別個の構造上のエンティティをと示されているが、広告プロバイダ140は、メディアプログラムプロバイダ110と一体化することができる即ち、メディアプログラムプロバイダ110は、広告を供給することもできる。メディアサーバ114も、メディアプログラムプロバイダ110の一部または別個のエンティティとすることができる。CDS300は、www.hulu.com、www.imdb.com、www.aol.comまたはwww.msn.comを挙げることができる複数の配信網全体にわたってメディアプログラムおよび広告を供給する手段となる。メディアプログラムに関係するメタデータおよび広告コンテンツ並びにストリーミング情報は、メディアプログラムおよび広告がCDS300内でどこにあるかを記述するデータと同様にコンテンツ配信システム300のデータベース316内に記憶されている。図示する実施形態においては、ユーザデバイス102は、インターフェースモジュール302およびメディアプログラムプレーヤ304を含む。インターフェースモジュール302は、ユーザ132に情報およびメディアプログラムを提示し、かつ、コマンドを含めユーザ入力を受理するためにユーザデバイス102のプロセッサにより実行される命令を含む。ユーザインターフェースモジュール302がメディアプログラムプレーヤ304とは別個に実行されると図示されているが、ユーザインターフェースモジュール302は、メディアプログラムプレーヤ304と一体化することができる。ポータブルユーザデバイスによるメディアプログラムの伝送および提示において使用する単純かつ効果的なデータ転送プロトコルが、既に開発されている。これらのプロトコルでは、ユーザデバイスにメディアプログラムの小さいセグメントを伝送し、これらのプロトコルにより、ユーザデバイスは、より大きな伝送帯域幅およびメディアプログラムプレーヤ処理電力以下提示スループットというを必要とするセグメントを受信するのか、または、提示スループットを必要とするより低い解像度のセグメントを受信するのか選択することができる。図4は、メディアプログラム伝送プロトコルの態様を示す図である。メディアプログラムプロバイダ110または別のエンティティは、各々が異なる提示スループットに適当な、メディアプログラムの複数の異なるバージョンを生成する。図示する実施形態においては、3つのバージョン、高提示スループットバージョン402、中提示スループットバージョン404および低提示スループットバージョン406が作成される。更にまた、メディアプログラムの各バージョン402~404は、複数のセグメントに分離される。例えば、図4では、メディアプログラムの第1のバージョン402は、Nセグメント402-1~402-Nに分離され、メディアプログラムの第2のバージョン404も、Nセグメント404-1~404-Nに分離され、メディアプログラムの第3のバージョン406は、Nセグメント406-1~406Nに分離される。図示する実施形態においては、任意の特定のバージョンのセグメントの全ては、等しい時間的長さである例えば、時間的セグメント402-1は、時間的セグメント402-2と同じ時間的長さであるが、これは当てはまらなくてもよい。また、図示する実施形態においては、メディアプログラムの各バージョンは、同数のセグメントを含む例えば、バージョン402、404および406は、全てN個のセグメントを含むが、これが当てはまらなくてもよい。更に、各々の対応する時間的セグメントのバージョンの全ては、通常、同じ時間的長さとなる換言すると、セグメント402-1は、通常は、404-1と同じ時間的長さとなるが、これが当てはまらなくてもよい。その代わりに、異なるバージョンの時間的セグメントは、広告が挿入されることになっている時間にてセグメントが時間的に整合される限り異なる時間的長さとすることができる。例えば、第1のバージョン402がN個の時間的に等しいセグメントを有し、第2のバージョン404が2N個の時間的に等しいセグメントを有する場合、セグメント402-1の長さは、第2のバージョンセグメントの2倍となる。メディアプログラムの3つのバージョンだけが図示されているが、異なるメディアプログラムの数は、わずか2個、または、必要されるだけとすることができる。通常は、バージョンの数は、異なるバージョンの記憶、生成および管理と伝送帯域幅およびメディアプログラムプレーヤ処理要件の保護間の歩み寄りである。図5は、提示スループットおよび/またはメディアプログラムデータ転送速度の変化に対応しながらメディアプログラムプレーヤ304がどのようにしてメディアプログラムセグメントを受信することができるかの簡素化されたバージョンを示す図である。図5に示すように、メディアプログラムのデータまたはビット伝送速度は、破線で示すように時間と共に変わる可能性がある。同時に、実線で示すように、提示スループット例えば、メディアプログラムが受信される通信チャネルのスループットおよび/またはユーザデバイス102の処理スループットを含むことができるは、時間と共に変わる恐れがある。図示する実施例においては、メディアプログラムプレーヤ304は、提示スループットが最小値閾値を上回ったとき、メディアプログラム402-1~402-7の第1の高提示スループットバージョンのセグメントを受信する。しかしながら、提示スループットが時間t1にてメディアプログラムデータ転送速度を下回ったとき、メディアプログラムプレーヤは、時機を逃さずにメディアプログラムの高解像度バージョンを受信および処理することができることができない恐れがあり、したがって、中間解像度404-8~404-10のメディアプログラムセグメントを要求および受信する。提示スループットが時間t2にてメディアプログラムデータ転送速度を上回ったとき、メディアプログラムプレーヤは、時機を逃さずにメディアプログラムの高解像度バージョンを受信および処理することができ、したがって、中間の解像度404-11などのメディアプログラムセグメントを要求および受信する。通常は、ユーザデバイス102は、先入れ先出しFIFOバッファを含み、メディアプログラムデータ転送速度が提示スループットを下回ったとき、ユーザデバイス102は、後の提示に向けてデータをバッファリングすることができる。このバッファは、ユーザデバイス102が異なるセグメントバージョンに切り替わる必要性を改善する、つまり、遅らせることができる。しかしながら、メディアプログラムデータ転送速度が十分に長い期間にわたって提示スループットを上回った場合、ユーザデバイス102は、先述したように、メディアプログラムの低い方のビット伝送速度バージョンに切り替わる必要がある。通常は、メディアプログラムプレーヤ304は、ユーザに提示する前のセグメントを記憶する任意のバッファの豊かさ、処理負荷および通信チャネル帯域幅を含む様々な要因に基づいてストリーミングされたメディアプログラムの異なるバージョンがいつ所望されるか判断する。また、ライブストリーミングプロトコルで一度に要求および伝送を必要とされるメディアプログラムのセグメントは相対的に短いことから、メディアプログラムデータ転送速度はセグメント間で殆ど変わらないと考えられることは注目に値することである。当該の場合、メディアプログラムプレーヤは、提示スループットに主として基づいて異なるセグメントバージョンを要求することになる。上記プロトコルは、メディアプログラムが広告を含まない限り、または、メディアプログラムが全ての視聴者に向けて同じ広告を含む限りよく機能する。当該の場合、広告は、メディアストリーム内に配置しさえすればよく、メディアプレーヤは、広告が同じ情報メディアプログラムの一部のみ、広告の一部のみまたはその両方を有するセグメントを含むことができるを表す限りセグメントバージョン間で切り替わることができることになる。しかしながら、ユーザにユーザの好みまたは他の要素に基づいて選択される広告以下、個人用にカスタマイズされた、または、ターゲット式広告directedadvertisementという提示されたとき、前出のモデルは、良好には機能しない。それは、ユーザがメディアプログラムを要求したときであれば、メディアプログラムは、検索される必要があり、広告は妥当な時間にて組み継がれる必要があり、その後になってユーザデバイスがメディアプログラムを受信することができるからである。更に、このプロセスであれば、全てのメディアプログラムバージョンについて実行される必要がある。図6は、メディアプログラムプレーヤ304が通信提示スループットおよびメディアプログラムビット伝送速度の変化に対応しかつそのうえ異なるユーザを対象とした異なる広告の挿入に許可しながらどのようにしてメディアプログラムセグメントを受信することができるかを示す図である。前と同様に、メディアプログラムの異なるバージョンが生成される。前と同様に、メディアプログラム602~606の異なるバージョンは、通常は時間的にバージョン間で同じ長さであるセグメント602-1~606-Nに分離される。しかし、この場合、メディアプログラム600は、広告を除外する。その代わりに、広告の異なるバージョンが生成され第1の広告650の3つのバージョン652~656など、これらの異なるバージョンも、セグメント652-1~656-Mに分離される。メディアプログラムセグメント602-1~606-Mと同様に、広告セグメント652-1~656-Mは、同じ時間的長さである必要がなく、バージョン間で等しい長さである場合もあれば、等しい長さではない場合もある。図7は、利用可能な提示スループットおよびメディアプログラムビット伝送速度の変化に対応しながらメディアプログラムプレーヤ304がどのようにしてメディアプログラムセグメントおよび目標とされた広告を受信することができるかを示す図である。提示スループットが仮に高品質再生の最小値閾値を上回ったままである場合、メディアプログラムプレーヤ304は、単に、図7の頂部に示すように、共にメディアプログラムの高解像度バージョンを備えるセグメントを要求する。これであれば、メディアプログラムPS1V1-PS6V1の第1の6つのセグメント602-1~602-6、次に、広告AS1V1-AS2V1の2つのセグメント652-1~652-2、その後、メディアプログラムPS7V1-PS10V1の次のセグメント602-7~602-10を含む。しかしながら、提示スループット最小値がメディアプログラム時間t1にて、例えばを再生するために必要な場合、本発明は、その代わりに、再生が続くように広告の異なるバージョンを検索する。例えば、図7に示すように、時間t1の後、メディアプログラムプレーヤ304は、セグメントAS1V1、PS7V2およびPS8V2を要求し、セグメントAS1V1、PS7V2およびPS8V2は、通信チャネル上で適当に伝送してメディアプログラムプレーヤ304により提示することができるより低いサイズおよび解像度の広告およびメディアプログラムセグメントである。提示スループットがメディアプログラムを再生するために必要な最小値を上回ったとき、メディアプログラムプレーヤ304により要求される次のセグメントは、メディアプログラムPS9V1、PS10V1のより高い帯域幅のバージョンである。図示する実施形態では、データセグメイトのバッファリングおよび提示スループットの可能な予測を考慮に入れていない。したがって、大きい方のAS1V1の代わりに広告セグメントAS1V2を検索することが望ましかったであろうが、メディアプログラムプレーヤ302は、単に、次の配信されたセグメントが、現在利用可能な提示スループットおよびメディアプログラムデータ転送速度に適当であることを要求する。一実施形態においては、メディアプログラムプレーヤ304は、提示スループット変化を予測して、これらの予測変化に基づいてメディアプログラムおよび広告の異なるバージョンを要求することができる。別の実施形態においては、メディアプログラムプレーヤ304は、スループットが変更したために、提示および現在バッファ済みであるが提示されていないセグメントが適当に提示することができない場合にメディアプログラムプレーヤがその代わりに処理要件が低減された代替セグメントを要求してそのセグメントを提示する時間を有するように、受信されたセグメントを提示されるときにかなり先んじてバッファリングする。メディアプログラムプレーヤがメディアプログラムデータ転送速度を予測することができる例えば、メディアプログラムデータ転送速度に関する情報を使用して、または、他の要素から予想されるデータ転送速度を推論することにより実施形態も可能である。図8Aは、メディアプログラムおよび広告をストリーミングするために使用することができる例示的方法の諸ステップを示す図を示す。ブロック802においては、各1つが異なる提示スループットに向けて生成される複数のメディアプログラムバージョン602~606をメディアプログラムに向けて生成する。例えば、各々、異なるビット伝送速度または平均的なビット伝送速度にていくつかのメディアプログラムバージョン602~606を生成することができる。ブロック804においては、これらのメディアプログラムバージョン602~606の各々を一部がメディアプログラムプレーヤ304に伝送される複数のメディアプログラムバージョンセグメント例えば、602-1~606Nに分離する。図示する実施形態においては、メディアプログラムバージョンセグメント602-1~602-Nは、メディアプログラムバージョン602に向けて生成され、メディアプログラムバージョンセグメント604-1~604-Nは、メディアプログラムバージョン604に向けて生成され、メディアプログラムバージョンセグメント606~1-606-Nは、メディアプログラムバージョン606に向けて生成される。これらの作業は、CMS310の制御下にあるコンテンツセグメンタ320により実行することができる。ブロック806~808においては、類似の作業を行って、複数の広告バージョン652~656および広告バージョンセグメント652-1~656-Mを生成する。図3に戻って、ここで、更に詳細にメディアプログラムおよび広告の伝送および受信を論じる。先述したように、複数のメディアプログラムバージョンが、メディアプログラムプロバイダまたは、別のエンティティにより生成され、各々バージョンは、複数のバージョンの他のバージョンと異なる提示スループットに向けて生成される。ユーザインターフェースモジュール302を使用して、ユーザは、視聴に向けてメディアプログラムを選択し、ユーザデバイス102は、メディアプログラムの要求をメディアプログラムプロバイダ110に伝送する。図示する実施形態においては、要求はユーザ識別子ユーザIDおよび要求のメディアプログラムの識別子を備えて、供給サービス306に伝送されるメタデータ特に、メディアプログラムのためのマスタプレイリストのアドレスの要求である。一実施形態においては、メタデータ要求で伝送される要求されたメディアプログラムの識別子は、ユーザインターフェースモジュール302を介してユーザに提示されるプログラムガイドから取得される。プログラムガイドは、メディアプログラムのサムネイル図を含むことができ、ユーザは、当該のメディアプログラムに関連したサムネイルをクリックすることによりメディアプログラムを選択することができる。図8Aを再度参照すると、ブロック810に示すように、メディアプログラムのメディアプログラム要求を受信する。供給サービス306は、メそしディアプログラムを受信および視聴するために必要とされるマスタプレイリストを付してID要求に最終的に応答する。図8Bは、マスタプレイリストを生成するために使用することができる例示的な諸ステップを示す図である。図8Bを図3に関連して論じる。ブロック816に示すように、メディアプログラムに関連したマスタプレイリストのアドレスの要求をユーザデバイスから受信する。一実施形態においては、要求は、当該のメディアプログラムを識別するデータ、並びに、ユーザ132を識別するデータ、ユーザコンピュータ102および/またはメディアプログラムプレーヤ304を含む。この情報は、メディアプログラムに関連して再生に向けて選択される広告がユーザ132、ユーザコンピュータ102またはメディアプログラム304データに基づいて選択される実施形態において使用することができる。供給サービス306は、要求を受信し、保証格納域312および他のデータベース316、および、コンテンツ管理サービス310を介して広告サービス316から取得された情報を用いて、供給サービス306は、選択されたメディアプログラムについて、メディアプログラム識別子PID、および、メディアプログラムとともに再生されるべき任意の広告の類似の識別子を含むことができる妥当なメタデータを判断する。メディアプログラムプロバイダ110はユーザIDまたは少なくとも多少ユーザを識別する他の情報を受信したかもしれないことから、メディアプログラムプロバイダ110は、要求されたメディアプログラムと共にのどの広告を含めるべきか判断するために広告サービス318を呼び出すことができる。これらの識別子は、ともに含むことができる。これは、WingChitMakにより2010年5月26日に出願された迅速かつ拡大縮小可能なターゲット式広告directedadvertisingサービスの方法および装置という名称の同時係属特許出願第12/787,679号明細書で説明されるように達成することができ、この出願は、参照により本明細書に組み入れられる。あるいは、このプロセスは、以下で説明するように、メディアプログラムプレーヤがメディアプログラムのどのバージョンから始めるべきか選択した後に始めることができる。ブロック820に示すように、マスタプレイリストを生成する。一実施形態においては、これは、コンテンツセレクタ308により実行される。例示的なマスタプレイリストを図9に示すとともに以下で更に論じる。ブロック822においては、マスタプレイリスト900を供給する。一実施形態においては、先述したように、マスタプレイリスト900は、選択された広告の各々の識別子を含むことができるアドレスにて供給される。例えば、マスタプレイリストアドレスは、以下とすることができる:https://play.hulu.com/play/50000011/mplst/b=[adlist]a=[authenticationtoken]50000011はメディアプログラムIDPIDを表し、adlistは再生中にプログラムに挿入されるように選択された広告について広告セグメント識別子904のリストである。ブロック822および図3に示すように、マスタプレイリスト900アドレスをユーザデバイス102に伝送する。次に、ユーザデバイス102は、マスタプレイリストアドレス900を受信して、ブロック824において受信されたマスタプレイリストアドレスにマスタプレイリスト要求を伝送する。先述したように、アドレスは、メディアプログラムのPID並びにメディアプログラムの再生中に提示されるべき広告を識別する広告IDのリストを含むことができる。ブロック826に示すように、マスタプレイリストをメディアプログラムプロバイダ110においてマスタプレイリストアドレスにて受信する。各々が、メディアプログラムバージョンの要求された1つに関連した広告バージョン652~656に関して広告バージョンセグメント識別子652-1~656-Mを有する複数のメディアプログラムバージョンアドレスは生成される。マスタプレイリストは、複数のメディアプログラムバージョンアドレスから作成される。図9は、例示的なマスタプレイリスト900を示す図である。この実施形態においては、マスタプレイリスト900は、.m3u8で終了しおよび/またはapplication/vnd.apple.mpegurlのコンテンツ形式を有するファイル名を有し、かつ、単一のLF文字またはキャリッジリターンにより終了される個々の線を備えるテキストファイルである。コメント文字で始まる線は、コメントまたはタグであり、タグは、文字EXTで始まる。で始まる全ての他の線は、コメントであり無視される。第1の線は、拡張されたm3uファイルとしてファイルを識別するM3Uタグを備える。次に、マスタプレイリストは、URIまたはURLが以下の線で提示されるメディアプログラムバージョンを記述するタグを有する。例えば、802Aは、以下のものを識別するタグを提示する。PROGRAM-ID:マスタプレイリストが複数のメディアプログラムを指す場合、PROGRAM-IDパラメータは、複数のメディアプログラムのうちのどれが関与するか識別する。図示する実施形態においては、マスタプレイリストは、同じメディアプログラムのいくつかのバージョンを指すのでPROGRAM-IDは、1である。複数のメディアプログラムがマスタプレイリストに含まれている場合、第2のメディアプログラムは、例えば、2というPROGRAM-IDを有する。このPROGRAM-IDは、マスタプレイリスト内だけでなく大域的にメディアプログラムの識別子を指すPIDと混同すべきではない。BANDWIDTH:は、以下の線で記載されるURIにて利用可能であるストリームの平均的なビット伝送速度を識別するものである。メディアプログラムプレーヤは、セグメントのダウンロード速度を観察することにより実際の帯域幅を判断することができる。URIは、タグの後にあり、PID図示する実施例では50000011、ファイル名図示する実施例では.m3u8拡張子を有するビット伝送速度、広告セグメント識別子904652-1~656-M、654-1~654-Mまたは656-1~656Mに類似および認証目的に使用されているトークンを含む。尚、図9に示すマスタプレイリストは、メディアプログラムの8つの異なるバージョンについてタグおよびURIを含み、ストリームは、それぞれ、1500kbps、3200kbps、2500kbps、1000kbps、400200kbps、128kbpsおよび64kbpsを表す902A、902B、902C、902D、902E、902F、902Gおよび902Hにより識別する。各メディアプログラムバージョンアドレスに関連した広告IDの各々は、他のメディアプログラムバージョンアドレスに関連した広告IDと異なる場合がある。図8Aに示すブロック812に示すように、マスタプレイリスト900アドレスをユーザデバイス102に伝送する。先述した実施形態においては、ユーザIDは、マスタプレイリストのアドレスの要求と共に供給され、かつ、ユーザ132にとって最も興味深い広告を選択するために使用されたものである。これらの広告の識別子は、ユーザデバイス102に伝送されるマスタプレイリストアドレスで、かつ、その後、マスタプレイリスト自体のメディアプログラムバージョンのアドレスでも返される。この特徴部により、選択された広告のアイデンティティは、マスタプレイリストの生成と、要求されたメディアプログラムバージョン間で、かつ、メディアプログラムプロバイダ110により広告状態を維持することなく異なるプログラムバージョン間でも持続することができる。対応される多数のユーザデバイス102を考慮すると、この特徴部により大幅に大いに管理が簡素化する。他の実施形態においては、メディアプログラム内に含めるべき広告のリストは、マスタプレイリストアドレスが伝送された後、および、マスタプレイリストが受信される前に生成することができる。この実施形態においては、マスタプレイリストアドレスは、広告IDのリストを含まないが、マスタプレイリスト自体はこのリストを含む場合がある。他の実施形態においては、ユーザIDは、伝送されず、メディアプログラムと共に再生するべき広告を識別するのに用いられる。あるいは、ユーザのアイデンティティは、クッキー、ユーザのIPアドレスを使用してなど他の情報を使用して十分に確認されるその結果、ユーザの地理的場所を判断するために使用することができる情報が得られ、かつ、結果的に、広告を選択するために使用することができるユーザに関する情報が得られる。図3を参照すると、予想される提示スループットおよびメディアプログラムデータ転送速度利用可能な場合を考慮して、メディアプログラムプレーヤ102は、メディアプログラムバージョンのうちどれが受信および提示に最も適当か判断し、メディアプログラムバージョンの1つを識別するメディアプログラムバージョン要求を伝送することにより、そのメディアプログラムバージョンを要求する。一実施形態においては、これは、マスタプレイリストに示す妥当なアドレスにて特定のメディアプログラムバージョンを要求することにより達成される。初めに選ばれるメディアプログラムバージョンは、視聴者好みにより判断することもできる例えば、ユーザは、通常であれば供給されるより高い解像度バージョンを要求することができる。一実施形態においては、メディアプログラムバージョン要求は、メディアプログラムプレーヤ102が選択したメディアプログラムバージョンに関連したURLまたはURIを備えるかまたはこのURLまたはURIにアドレス指定される。例えば、メディアプログラムプレーヤ102が図9に示す例示的なマスタプレイリストにおいてメディアプログラムの1500kbpsのバージョンを選択した場合、メディアプログラムプレーヤは、802AのURI、即ち、https://play.hulu.com/play/50000011/1500.m3u8b=IUEfAAK7...580をメディアプログラムプロバイダ110に伝送する。メディアプログラムプロバイダ110はメッセージを受信して、選択されたメディアプログラムバージョンに関連したセグメントプレイリストを生成するまたは、予め生成されたセグメントプレイリストを検索する。これは、メディアプログラムバージョン要求内のメディアプログラムバージョンの複数のメディアプログラムセグメントの各々に関連したアドレスを生成し、かつ、メディアプログラム中に提示されるように選ばれる広告の複数の広告セグメントの各々に関連したアドレスを生成することにより達成される。セグメントプレイリストは、これらのアドレスおよび妥当なタグを付して生成される。一実施形態においては、セグメントプレイリストは、時間的に順序づけられるセグメントは、リスト上に提示される順番で要求および再生される、しかしながら、他の実施形態が可能であり、セグメントプレイリストは任意の順番であり、再生順序は、黙示的であるか送信器および受信器にはわかっている、または、ユーザデバイス102に伝送されたデータ内に明記されている。図10は、セグメントプレイリスト1000の一実施形態を示す図である。図示する実施形態においては、セグメントプレイリストは、要求されたメディアプログラムバージョン1006A~1006Cのメディアプログラムセグメント、および、選択されたメディアプログラムバージョンどの広告がユーザへの提示に向けてメディアプログラムプロバイダ110により選択されたかに関連した広告バージョンの広告セグメント1004A~1004Cの各々に関連したアドレスまたはユニフォームリソースアイデンティファイアURIのリストを備える。一実施形態においては、アドレスまたはURIは、時間的に順序づけられる。この時間的順序づけは、リスト時間的順番での各エントリ固有である場合があるか、または、セグメントの時間的関係が判断することができるようにインデックスが供給される場合がある。セグメントプレイリスト1000は、上記アドレスおよびプレロールメディアプログラムの再生が始まる前に広告1002のタグおよび2つの不連続性タグ1008、1010を含むこともできる。不連続性タグ1008、1010は、メディアファイルの後に来るメディアファイルとその前にあるメディアファイル間で符号化上の不連続性を示す。変更する恐れがある1組の特性としては、ファイル形式、トラックの数および形式、符号化パラメータ、符号化シーケンスおよび/またはタイムスタンプシーケンスがある。図10に示す実施例においては、不連続性は、メディアプログラムセグメントから広告セグメントへの例えば、不連続性1008、または、広告セグメントからメディアプログラムセグメントへの不連続性1010、例えばの変化を表す。図3に戻ると、メディアプログラムプロバイダ110は、ユーザデバイス102にセグメントプレイリストを伝送する。ユーザデバイス102は、セグメントプレイリストを受信して、メディアサーバ114にセグメント要求を伝送し、メディアサーバ114は、ストレージ312からメディアプログラムを検索して、ユーザデバイスに要求されたメディアセグメントおよび広告を伝送する。ユーザデバイス102は、各メディアプログラムおよび広告セグメントを受信して、妥当な順序でユーザに再生する。前述の実施形態においては、セグメントプレイリスト1000は<マスタプレイリスト900とは別個に、かつ、マスタプレイリスト900に従って伝送されたものであるが、これが当てはまらなくてもよい。その代わりに、メディアプログラムプレーヤは、単一のメッセージでマスタプレイリスト900およびセグメントプレイリスト1000を共に送る場合がある。この場合、一旦メディアプログラムプレーヤ304が当該のメディアプログラムバージョンを選択した場合、メディアプログラムプレーヤは、その後、既に受信されたセグメントプレイリスト900を使用してメディアプログラムまたは妥当なメディアプログラム用広告セグメントおよび広告バージョンを単に要求することができる。提示スループットがメディアプログラムおよび関連の広告の再生を通して十分なままである場合、メディアプログラムプレーヤ304は、単に、現在選択されているバージョンについてメディアプログラムセグメントおよび広告のセクションを受信し続ける。しかしながら、提示スループットが現在選択されているメディアプログラムバージョンに不十分である例えば、図7に示す時間t1にて場合、メディアプログラムプレーヤ304は、その代わりに、必要とする提示スループットが小さい方のメディアプログラムセグメントおよび告セグメントのURIを提示するセグメントプレイリストかららメディアプログラムおよび広告セグメントを選択する。妥当なセグメントプレイリスト1000がメディアプログラムプレーヤ304に既に供給されている場合、メディアプログラムプレーヤ304は、妥当なメディアプログラムおよび広告バージョンについてセグメントプレイリスト1000内に記載された妥当なURIを使用して妥当なセグメントを要求しさえすればよい。しかしながら、妥当なセグメントプレイリスト1000が第2のメディアプログラムバージョンに供給されていなかった場合、現在のまたは予測された提示スループットに妥当であるメディアプログラムおよび広告のバージョンに向けてセグメントプレイリスト900を要求する要求が、メディアプログラムプロバイダ110に伝送される。例えば、図10に示す例示的なマスタプレイリストにおいては、メディアプログラムプレーヤ304は、メディアプログラムの1000kbpsのバージョンおよび今後のセグメントに向けた広告を選択することができる。これは、1000kbpsのストリームに関連したURIに第2のメディアプログラムバージョン要求を伝送することにより達成することができる。図9に示す実施例においては、これは902Dに関連したURI、つまり、以下である。https://play.hulu.com/play/50000011/1000.m3u8....メディアプログラムプロバイダ110は、その後、メディアプログラムプレーヤに第2のセグメントプレイリストを伝送する。第1のセグメントプレイリストと同様に、第2のセグメントプレイリストは、第2の選択されたメディアバージョンに関連したメディアプログラムセグメントの各1つに関連したアドレス、および、メディアプログラムバージョンの第2のメディアプログラムバージョンに関連した広告バージョンに関連した複数の広告セグメントの各1つに関連したアドレスとを有する時間的に順序づけられたリストである。換言すれば、ビット伝送速度が遅い方のメディアプログラムセグメントおよび広告セグメントに関するセグメントリスト1000は、メディアプログラムプロバイダ110からメディアプログラムプレーヤ304に伝送されてそこで再生される。当業者は、本発明の範囲から逸脱することなく多くの改変をこの構成に行うことができることを認識するであろう。例えば、当業者は、上記の構成部品または任意の数の異なる構成部品、周辺機器、および他のデバイスの任意の組み合わせを本発明とともに使用することができることを認識するであろう。結びこれにより、好適な本発明の実施形態の説明を終了する。本発明の好適な実施形態の上記説明は、例示および説明を目的として提示したものである。網羅的であること、または、開示した正確な形態に本発明を制限することを目的とするものではない。上記の教示に照らして多くの改変および変形が可能である。本発明の範囲はこの詳細な説明により限定されず本明細書に添付の特許請求項の範囲により限定されることを意図している。上記明細書、実施例、および、データは、本発明の構成の製造および使用に説明を完全に行うものである。本発明の精神および範囲から逸脱することなく多くの本発明の種々の実施形態を成すことができることから、本発明は、以下に添付する特許請求項の範囲に属する。"