(57)【特許請求の範囲】
【請求項１】
第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、前記方法は、
（ａ）メディアプログラムの要求をメディアプログラムプロバイダにおいて前記第１のデバイスから受信することと、
（ｂ）前記要求されたメディアプログラムについてセグメントプレイリストを生成することと、ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間で時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
メディアサーバから複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
メディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの前記第２のサブセットを検索する命令とを含む、
（ｃ）前記第１のデバイスに前記セグメントプレイリストを伝送することと、
（ｄ）複数のメディアプログラムセグメントの前記第２のサブセットを検索する前記命令から導出された、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する第１の要求を前記メディアプログラムプロバイダにおいて前記第１のデバイスから受信することと、
（ｅ）前記メディアプログラムプロバイダによって、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する前記第１の要求を前記メディアサーバにリダイレクトすることと、ここで、
前記メディアサーバは、前記複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを前記第１のデバイスに送ることにより、前記第１の要求に応答する、
前記メディアサーバは、前記複数のメディアプログラムセグメントの前記第１のサブセットの少なくとも１つを前記第１のデバイスに送ることにより、複数のメディアプログラムセグメントの前記第１のサブセットの少なくとも１つを検索する第２の要求に応答する、
（ｆ）前記メディアプログラムの再生を再開する要求を、前記メディアプログラムプロバイダにおいて前記第２のデバイスから受信することと、
（ｇ）複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する前記第１の要求に基づいて、前記メディアプログラムの再生を再開する前記メディアプログラム内の時間的場所を、前記メディアプログラムプロバイダによって、決定することと、
（ｈ）前記時間的場所に基づいて、前記第２のデバイスに前記メディアプログラムの再生を再開する情報を伝送することとを備える方法。
【請求項２】
前記第２のデバイスに前記メディアプログラムの再生を再開する情報を伝送することは、
（ｉ）前記再開される要求されたメディアプログラムについて、前記決定された時間的場所後に時間的に発生する複数のメディアプログラムセグメントを含む再開されるセグメントプレイリストを生成することと、
（ｊ）前記再開されたセグメントプレイリストを前記第２のデバイスに伝送することとを備える請求項１に記載の方法。
【請求項３】
前記第２のデバイスに前記メディアプログラムの再生を再開する情報を伝送することは、前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所とメディアプログラム識別子とを前記第２のデバイスに伝送することとを備える請求項１に記載の方法。
【請求項４】
前記第１のデバイスから複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを検索する前記第１の要求は、前記メディアプログラム内の時間的場所を含む請求項１に記載の方法。
【請求項５】
前記方法は、複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを検索する前記第１の要求を記録することを更に備え、
前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所を決定することは、前記記録された第１の要求を使用して前記時間的場所を決定することを備える請求項１に記載の方法。
【請求項６】
前記記録された第１の要求を使用して前記時間的場所を決定することは、複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを検索する前記記録された第１の要求の前に前記時間的場所を前記メディアプログラムセグメントから決定することを備える請求項５に記載の方法。
【請求項７】
第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、前記方法は、
（ａ）前記メディアプログラムの要求をメディアプログラムプロバイダに、前記第１のデバイスによって伝送することと、
（ｂ）前記第１のデバイスにおいて前記要求されたメディアプログラムのセグメントプレイリストを受信することと、ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
メディアサーバから複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
前記メディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの前記第２のサブセットを検索する命令とを備える、
（ｃ）前記メディアサーバからの前記第１のサブセットの前記メディアプログラムセグメントを検索する前記命令から導出された、前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第１のサブセットの少なくとも１つを検索する第１の要求を前記メディアサーバに伝送することと、
（ｄ）複数のメディアプログラムセグメントの前記第１のサブセットの前記要求された少なくとも１つを前記メディアサーバから受信することと、
（ｅ）複数のメディアプログラムセグメントの前記第２のサブセットを検索する前記命令から導出された、前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する第２の要求を前記メディアプログラムプロバイダに伝送することと、
（ｆ）前記メディアプログラムプロバイダから前記メディアサーバにリダイレクトされた、前記第２の要求に従って、前記第１のデバイスによって、複数のメディアプログラムセグメントの前記第２のサブセットの前記要求された少なくとも１つを前記メディアサーバから受信することと、
（ｇ）前記第１のデバイス上の前記メディアプログラムの再生を終了することとを備え、
ここで、前記第２のデバイスは、
前記メディアプログラムの再生を再開する要求を前記メディアプログラムプロバイダに伝送し、
前記第２の要求によって要求された、複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つの場所から決定された前記メディアプログラム内の時間的場所にて始まる再生を再開するために情報を受信する方法。
【請求項８】
複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する前記第２の要求は、前記メディアプログラム内の現在の時間的場所を含む請求項７に記載の方法。
【請求項９】
前記メディアサーバは、ライブストリーミングメディアサーバである請求項７に記載の方法。
【請求項１０】
第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、前記方法は、
メディアサーバによって、第１のデバイスに前記メディアプログラムを伝送する第１の要求を受信することと、
前記メディアサーバによって、前記メディアプログラムを検索することと、
前記メディアサーバによって、前記第１のデバイスに前記メディアプログラムをストリーミングすることと、
前記メディアサーバによって、メディアプログラムストリーミング情報を生成するために前記第１のデバイスへの前記メディアプログラムの前記ストリーミングをモニタすることと、
前記メディアサーバによって、メディアプログラムプロバイダに前記メディアプログラムストリーミング情報を伝送することと、
前記メディアサーバによって、前記メディアプログラムの伝送を再開する第２の要求を第２のデバイスから受信することと、
前記メディアサーバによって、前記メディアプログラム内の時間的場所を前記メディアプログラムプロバイダから受信することと、ここで、前記メディアプログラムプロバイダは、前記メディアサーバから前記メディアプログラムプロバイダに伝送された前記メディアプログラムストリーミング情報から前記時間的場所を決定した、
前記メディアサーバによって、前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記メディアプログラムストリーミング情報から決定された前記時間的場所から再開することとを備える方法。
【請求項１１】
前記第２のデバイスからの、前記メディアプログラムの伝送を再開する前記第２の要求は、前記メディアプログラム内の前記時間的場所を備え、
前記メディアプログラム内の前記時間的場所は、前記第２のデバイスへの前記メディアプログラムの伝送を前記メディアプログラムストリーミング情報から決定された前記時間的場所から再開するために前記第２のデバイスに伝送される請求項１０に記載の方法。
【請求項１２】
前記決定された時間的場所後に時間的に発生する複数のメディアプログラムセグメントを含む再開されるセグメントプレイリストは、前記再開される要求されたメディアプログラムについて、生成され、
前記再開されたセグメントプレイリストは、前記第２のデバイスに伝送される請求項１０に記載の方法。
【請求項１３】
第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、前記方法は、
メディアサーバから前記第１のデバイスへの前記メディアプログラムの伝送を開始する第１の要求を前記第１のデバイスから受信することと、
前記第１のデバイスに前記メディアサーバによりストリーミングされる前記メディアプログラムを識別するメディアプログラム識別子を前記第１のデバイスに伝送することと、
前記メディアサーバから前記第１のデバイスへの前記メディアプログラムのモニタされたストリーミングから生成されたメディアプログラムストリーミング情報を前記メディアサーバから受信することと、
前記メディアサーバから第２のデバイスへの前記メディアプログラムの伝送を再開する第２の要求を前記第２のデバイスから受信することと、
前記メディアプログラムの伝送を再開する前記メディアプログラム内の時間的場所を少なくともある程度前記メディアプログラムストリーミング情報から決定することと、
メディアプログラム識別子および前記時間的場所を記述する情報を前記第２のデバイスに伝送することとを備える方法。
【請求項１４】
前記メディアサーバは、フラッシュサーバである請求項１３に記載の方法。
【請求項１５】
第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、前記装置は、
１つまたは複数のコンピュータプロセッサと、
命令を備える非一時的コンピュータ可読な記憶媒体とを備え、前記命令は、実行された場合、前記１つまたは複数のコンピュータプロセッサを、
（ａ）前記メディアプログラムの要求を前記第１のデバイスからメディアプログラムプロバイダにおいて受信することと、
（ｂ）前記要求されたメディアプログラムについてセグメントプレイリストを生成することと、ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
メディアサーバから前記複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
メディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの前記第２のサブセットを検索する命令とを備える、
（ｃ）前記第１のデバイスに前記セグメントプレイリストを伝送することと、
（ｄ）複数のメディアプログラムセグメントの前記第２のサブセットを検索する前記命令から導出された、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する第１の要求を前記メディアプログラムプロバイダにおいて前記第１のデバイスから受信することと、
（ｅ）前記メディアプログラムプロバイダによって、複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを検索する前記第１の要求を前記メディアサーバにリダイレクトすることと、ここで、
前記メディアサーバは、前記第１のデバイスに複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを送ることにより前記第１の要求に応答し、
前記メディアサーバは、前記第１のデバイスに複数のメディアプログラムセグメントの前記第１のサブセットの前記少なくとも１つを送ることにより、前記複数のメディアプログラムセグメントの前記第１のサブセットの少なくとも１つの第２の要求に応答する、
（ｆ）前記メディアプログラムの再生を再開する要求を前記メディアプログラムプロバイダにおいて前記第２のデバイスから受信することと、
（ｇ）複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを検索する前記第１の要求から、前記メディアプログラムの再生を再開する前記メディアプログラム内の時間的場所を前記メディアプログラムプロバイダによって、決定することと、
（ｈ）前記時間的場所に基づいて前記第２のデバイスに前記メディアプログラムの再生を再開する情報を伝送することと
のために構成されるように制御する装置。
【請求項１６】
前記第２のデバイスに前記メディアプログラムの再生を再開する情報を伝送することは、
（ｉ）前記再開される要求されたメディアプログラムについて、前記決定された時間的場所後に時間的に発生する複数のメディアプログラムセグメントを含む再開されるセグメントプレイリストを生成することと
（ｊ）前記再開されたセグメントプレイリストを前記第２のデバイスに伝送することとを備える請求項１５に記載の装置。
【請求項１７】
前記第２のデバイスに前記メディアプログラムの再生を再開する情報を伝送することは、前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所とメディアプログラム識別子とを前記第２のデバイスに伝送することを備える請求項１５に記載の装置。
【請求項１８】
前記メディアプログラムプロバイダにおいて受信された前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する前記要求は、前記メディアプログラム内の時間的場所を含む請求項１５に記載の装置。
【請求項１９】
前記装置は、複数のメディアプログラムセグメントの前記第２のサブセットの前記少なくとも１つを検索する前記第１の要求を記録するために更に構成され、
前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所を決定することは、前記記録された第１の要求を使用して前記時間的場所を決定することを備える請求項１５に記載の装置。
【請求項２０】
前記記録された第１の要求を使用して前記時間的場所を決定することは、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する前記最も最近記録された第１の要求の前に前記時間的場所を前記メディアプログラムセグメントから決定することを備える請求項１９に記載の装置。
【請求項２１】
第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する第１のデバイスであって、前記第１のデバイスは、
１つまたは複数のコンピュータプロセッサと、
命令を備える非一時的コンピュータ可読な記憶媒体とを備え、前記命令は、実行された場合、前記１つまたは複数のコンピュータプロセッサを、
（ａ）前記第１のデバイスによって、前記メディアプログラムの要求をメディアプログラムプロバイダに伝送することと、
（ｂ）前記第１のデバイスにおいて前記要求されたメディアプログラムのセグメントプレイリストを受信することと、ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
メディアサーバから前記複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
前記メディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの前記第２のサブセットを検索する命令とを備える、
（ｃ）前記第１のデバイスによって、前記メディアサーバからの複数の前記メディアプログラムセグメントの前記第１のサブセットを検索する前記命令から導出された、前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第１のサブセットの少なくとも１つを検索する第１の要求を前記メディアサーバに伝送することと、
（ｄ）複数のメディアプログラムセグメントの前記第１のサブセットの前記要求された少なくとも１つを前記メディアサーバから受信することと、
（ｅ）前記複数のメディアプログラムセグメントの前記第２のサブセットを検索する前記命令から導出された、前記第１のデバイスからの、前記複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する第２の要求を前記メディアプログラムプロバイダに伝送することと、
（ｆ）前記メディアプログラムプロバイダから前記メディアサーバにリダイレクトされた、前記第２の要求に従って、前記第１のデバイスによって、複数のメディアプログラムセグメントの前記第２のサブセットの前記要求された少なくとも１つを前記メディアサーバから受信することと、
（ｇ）前記第１デバイス上の前記メディアプログラムの再生を終了することと
のために構成されるよう制御し、
ここで、前記第２のデバイスは、
前記メディアプログラムの再生を再開する要求を前記メディアプログラムプロバイダに伝送し、
（ｈ）前記第２の要求によって要求された、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つの場所から決定された前記メディアプログラム内の時間的場所にて始まる再生を再開するために情報を受信する第１のデバイス。
【請求項２２】
前記第１のデバイスから前記メディアプログラムプロバイダに伝送された、複数のメディアプログラムセグメントの前記第２のサブセットの少なくとも１つを検索する前記要求は、前記メディアプログラム内の現在の時間的場所を含む請求項２１に記載の第１のデバイス。
【請求項２３】
前記メディアサーバは、ライブストリーミングメディアサーバである請求項２１に記載の第１のデバイス。
【請求項２４】
第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、前記装置は、
１つまたは複数のコンピュータプロセッサと、
命令を備える非一時的コンピュータ可読な記憶媒体とを備え、前記命令は、実行された場合、前記１つまたは複数のコンピュータプロセッサを、
メディアサーバから第１のデバイスに前記メディアプログラムを伝送する第１の要求を受信することと、
前記メディアプログラムを検索することと、
前記第１のデバイスに前記メディアプログラムをストリーミングすることと、
メディアプログラムストリーミング情報を生成するために前記第１のデバイスへの前記メディアプログラムの前記ストリーミングをモニタすることと、
メディアプログラムプロバイダに前記メディアプログラムストリーミング情報を伝送することと、
前記メディアプログラムの伝送を再開する第２の要求を第２のデバイスから受信することと、
前記メディアプログラムプロバイダから前記メディアプログラム内の時間的場所を受信することと、ここで、前記メディアプログラムプロバイダは、前記メディアサーバから前記メディアプログラムプロバイダに伝送された前記メディアプログラムストリーミング情報から前記時間的場所を決定した、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記メディアプログラムストリーミング情報から決定された前記時間的場所から再開すること
のために構成されるよう制御する装置。
【請求項２５】
前記メディアプログラム内の前記時間的場所は、前記第２のデバイスへの前記メディアプログラムの伝送を前記メディアプログラムストリーミング情報から決定された前記時間的場所から再開するために前記第２のデバイスに伝送される、請求項２４に記載の装置。
【請求項２６】
前記決定された時間的場所後に時間的に発生するメディアプログラムセグメントを含む再開されるセグメントプレイリストは、前記再開される要求されたメディアプログラムについて、生成され、
前記再開されたセグメントプレイリストは、前記第２のデバイスに伝送される請求項２４に記載の装置。
【請求項２７】
第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、前記装置は、
１つまたは複数のコンピュータプロセッサと、
命令を備える非一時的コンピュータ可読な記憶媒体とを備え、前記命令は、実行された場合、前記１つまたは複数のコンピュータプロセッサを、
メディアサーバから前記第１のデバイスへの前記メディアプログラムの伝送を開始する第１の要求を前記第１のデバイスから受信することと、
前記第１のデバイスに前記メディアサーバによりストリーミングされる前記メディアプログラムを識別するメディアプログラム識別子を前記第１のデバイスに伝送することと、
前記メディアサーバから前記第１のデバイスへの前記メディアプログラムのモニタされたストリーミングから生成されたメディアプログラムストリーミング情報を前記メディアサーバから受信することと、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を再開する第２の要求を前記第２のデバイスから受信することと、
前記メディアプログラムの伝送を再開する前記メディアプログラム内の時間的場所を少なくとも一部前記メディアプログラムストリーミング情報から決定することと、
メディアプログラム識別子および前記時間的場所を記述する情報を前記第２のデバイスに伝送することと
のために構成されるよう制御する装置。
【請求項２８】
前記メディアサーバは、フラッシュサーバである請求項２７に記載の装置。
【発明の詳細な説明】
【関連出願に対する相互参照】
【０００１】
本出願は、Ｒｏｂｅｒｔ  Ｍ．ＷｏｎｇおよびＥｄｅｎ  Ｓ．Ｌｉにより２０１０年６月２８日に出願された「休止された再生をプラットフォーム全体にわたって同期化する方法および装置」(METHOD AND APPARATUS FOR SYNCHRONIZING PAUSED PLAYBACK ACROSS PLATFORMS)という名称の米国特許仮出願第６１／３５９，２５８号の利益を主張する、Ｒｏｂｅｒｔ  Ｍ．ＷｏｎｇおよびＥｄｅｎ  Ｓ．Ｌｉにより、２０１０年１０月２６日に出願された、「休止された再生をプラットフォーム全体にわたって同期化する方法および装置」(METHOD AND APPARATUS FOR SYNCHRONIZING PAUSED PLAYBACK ACROSS PLATFORMS)という名称の米国特許出願第１２／９１２，０２０号の利益を主張するものであり、これらの出願のいずれも、参照により本明細書に組み入れられる。
【０００２】
本出願は、以下の同時係属特許出願、即ち、Ｗｉｌｌｉａｍ  Ｚ．Ｈｏｌｔ、Ｘｉｎａｎ（ＮＭＩ）Ｗｕ、Ｅｄｅｎ  Ｓ．Ｌｉ、Ａｌｅｘａｎｄｅｒ  Ｖ．ＧｕｔａｒｉｎおよびＢａｐｔｉｓｔｅ  Ｃｏｕｄｕｒｉｅｒにより、２０１０年６月２８日に出願された、「ＨＴＴＰライブストリーミングで両立できるようにストリーミングメディアプログラムおよび目標とされた広告を供給する方法および装置」(METHOD AND APPARATUS FOR PROVIDING STREAMING MEDIA PROGRAMS AND TARGETED ADVERTISEMENTS COMPATIBLY WITH HTTP LIVE STREAMING)という名称の米国特許仮出願第６１／３５９，３１９号、および、Ｒｏｂｅｒｔ  Ｍ．Ｗｏｎｇ、Ｃｈａｒｌｅｓ  Ｂ．ＲｅｅｖｅｓおよびＥｕｇｅｎｅ  Ｃｈａｎ−Ｈｕａｉ  Ｗｅｉにより２０１０年６月２８日に出願された、「メディアプログラムの直観的ナビゲーションのための方法および装置」(METHOD AND APPARATUS FOR INTUITIVE NAVIGATION OF A MEDIA PROGRAM)という名称の米国特許仮出願第６１／３５９，３０９号の利益を主張する、２０１０年１０月１日出願の、Ｒｏｂｅｒｔ  Ｍ．Ｗｏｎｇ、Ｃｈａｒｌｅｓ  Ｂ．ＲｅｅｖｅｓおよびＥｕｇｅｎｅ  Ｃｈａｎ−Ｈｕａｉ  Ｗｅｉによる「メディアプログラムの直観的なナビゲーションのための方法および装置」(METHOD AND APPARATUS FOR INTUITIVE NAVIGATION OF A MEDIA PROGRAM)という名称の米国特許出願第１２／８９６，８０３号に関するものであり、これらの出願のいずれも、参照により本明細書に組み入れられる。
【技術分野】
【０００３】
本発明は、ストリーミングされたメディアプログラム（Streamed media programs）を供給するシステムおよび方法に関し、特に、第１のデバイス上で再生を休止させて第２のデバイス上で再生（playback）を再開（resume）する方法および装置に関する。
【背景技術】
【０００４】
メディアプログラムの提供（dissemination）および再生は、過去１０年でかなり変わった。以前は、メディアプログラム（音声、映像または両方とも含む場合がある）は、アナログ放送（従来の衛星またはケーブル）により、または、映画館へのフィルムの配給により提供されていた。
【０００５】
これらの従来の提供および再生手段は、デジタル技術の到来後も相変わらず使用されている。しかしながら、デジタル技術は、メディアプログラムの提供および再生に大きな影響を与えてきた。
【０００６】
第１に、デジタル技術により、デジタルビデオテープレコーダ（ＤＶＲ）の使用が可能となった。ＤＶＲは、標準的なアナログビデオカセットレコーダ（ＶＣＲ）と機能が似ているが、ライブ休止、別のプログラムを再生中に１つのプログラムを録画することができること、およびＤＶＲ機能性と電子プログラムガイドとの一体化（メディアプログラム録画をかなり前もって予定することができるように）を含め、いくつかの更なる便利な機能がある。
【０００７】
第２に、デジタル技術により、インターネットを介したメディアプログラムの提供および再生が許可となり、信号処理が向上し、高速インターネットアクセス（例えばＤＳＬ、ファイバおよび／または衛星）を使用する世帯がますます増えている。これらの提供および再生の方法は、従来の手段と競合するようになった。インターネットを介したメディアプログラムの提供は、簡単なダウンロード、プログレッシブダウンロードまたはストリーミングにより行われる場合がある。
【０００８】
プログレッシブダウンロード（progressive downloading）
プログレッシブダウンロードについては、メディアプログラムを有するメディアファイルは、ダイヤルアップ、ＤＳＬ、ＡＤＳＬ、ケーブル、Ｔｌまたは他の高速接続でインターネットを介してダウンロードされる。当該のダウンロードは、一般的にインターネットを介してウェブサーバにより実行される。
【０００９】
簡単なダウンロードでは、任意の便利な順番で複数バイトのメディアファイルがダウンロードされ、一方、プログレッシブダウンロードでは、ファイルの始めの複数バイトをダウンロードし、最終バイトまで連続しておよび逐次的にファイルをダウンロードし続ける。プログレッシブダウンロード中の任意の特定の時期では、ファイルの部分が、すぐには再生に利用可能ではない場合がある。一部の状況においては、最初に、ファイル全体をダウンロードしなければならず、その後に、メディアプレーヤが再生を開始することができる。他のプログレッシブダウンロード状況においては、メディアプレーヤは、ファイルの開始の十分な量がダウンロードされると再生を開始することができる。メディアプレーヤは、何らかの形の再生をサポートするのに十分な情報をダウンロードしなければならず、その後、再生を行うことができる。プログレッシブダウンロードされたメディアファイルの再生は、遅いインターネット接続により遅延されることが多く、途切れ途切れであることも多く、および／または、ほんの数秒後に停止する可能性が高い。プログレッシブダウンロードされるメディアプログラムが完全にダウンロードされると、その後の使用のためにエンドユーザコンピュータ上に記憶される場合がある。
【００１０】
プログレッシブダウンロードの短所の１つは、データを伝送するエンティティ（ウェブサーバ）は、単にできるだけ速くクライアントにデータをプッシュ配信するだけであるという点である。映像を「ストリーミングしている」ように見えるかもしれないが、この理由としては、多くのメディアプレーヤのプログレッシブダウンロード能力により、適当な量のデータがダウンロードされるとすぐには再生が可能であるからである。しかしながら、ユーザは、ファイル全体がウェブサーバにより配信されるまでファイルの終わりまで早送りすることができない。プログレッシブダウンロードに関する別の短所は、ウェブサーバは、ビデオファイルのデータ転送速度を考慮に入れないという点である。それゆえに、ネットワーク帯域幅がビデオファイルにより必要とされるデータ転送速度を下回る場合、ユーザは、しばらく待たなければならず、その後に、再生が始まることができる。再生速度がデータ伝達速度を上回る場合、再生が、更なるデータがダウンロード中にしばらく休止される場合があり、視聴経験が中断される。しかしながら、映像再生品質は、潜在的により高いデータ転送速度のために再生が行われたときに良くなる場合がある。例えば、１００ｋｂｐｓの動画ファイルを５６ｋｂｐｓのモデム上に配信することができる場合、映像は１００ｋｂｐｓの速度にて提示されることになる、しかし、更なる映像データがダウンロード中に再生が休止される期間がある場合がある。映像データは、一般的に、全体が一時ファイルとしダウンロードおよび記憶される。
【００１１】
Ｗｅｂサーバは、ＴＣＰ（伝送制御プロトコル）に加えてＨＴＴＰ（ハイパーテキスト転送プロトコル）を一般的に使用して、ネットワークでファイルを転送する。ネットワーク上でのデータパケットの転送を制御するＴＣＰは、速度でなくデータ配信の保証のために最適化される。したがって、ブラウザがデータがなくなっていると感知した場合、再送要求が発行されてデータが再送される。配信エラーが多いネットワークにおいては、再送要求は、大量の帯域幅を消費する恐れがある。ＴＣＰが適当なデータの効率的な配信または帯域幅制御（むしろ全てのデータの配信の保証）に向けて設計されていないことから、全ての用途において映像データの配信に好ましいというわけではない。
【００１２】
ストリーミング
ストリーミングでは、メディアプレーヤに連続的にメディアコンテンツを配信し、メディア再生が、同時に行われる。エンドユーザは、コンテンツプロバイダにより配信されると直ちにメディアを再生することができる。従来のストリーミング技法は、１組のエンドユーザにデータのストリームを配信する単一のプロバイダから発するものである。多くの視聴者に単一のストリームを配信するために高帯域および中央演算装置（ＣＰＵ）電力が必要であり、プロバイダの所要の帯域幅は、エンドユーザの数が増加するにつれて増加する。
【００１３】
プログレッシブダウンロードとは異なり、ストリーミングメディアは、オンデマンドでまたはライブで配信することができる。プログレッシブダウンロードでファイル全体をダウンロードするか、または、開始時に再生を開始するのに十分なファイル全体の量をダウンロードすることが必要である場合、ストリーミングにより、ファイル内の任意の地点にて即時の再生が可能である。エンドユーザは、再生を開始するためにメディアファイルにざっと目を通すか、または、メディアファイルにおいて任意の点に再生を変更するかもしれない。したがって、エンドユーザは、ファイルが漸進的にダウンロードされるのを待つ必要はない。一般的に、ストリーミングメディアは、高帯域容量を有する２、３の専用サーバから配信される。
【００１４】
ストリーミングメディアサーバは、動画ファイルの要求を受理し、かつ、それらのファイルのフォーマット、帯域幅および構造に関する情報とともに、動画ファイルを再生するために必要な速度にて、映像を再生するために必要なデータ量のみを配達する専用デバイスである。ストリーミングメディアサーバは、伝送帯域幅およびメディアプレーヤ容量に対応する場合がある。ウェブサーバとは異なり、ストリーミングメディアサーバは、映像が再生されるとき、変化するネットワーク状態に適応するために制御メッセージおよびデータメッセージを使用してユーザコンピュータと通信する。これらの制御メッセージは、早送り、早戻し、休止、ファイルの特定部分への移動などのトリックプレイ機能のコマンドを含む可能性がある。ストリーミングメディアサーバは必要に応じてのみおよび必要される速度にて映像データを伝送することから、供されるストリームの数の正確な制御を維持することができる。プログレッシブダウンロードの場合とは異なり、視覚者は、データ転送速度が劣るメディア伝送媒体でデータ転送速度が速い映像を見ることができない。しかしながら、ストリーミングメディアサーバは、（１）ユーザが動画ファイルにランダムアクセスすることができ、（２）誰がどんな動画プログラムを見ているか、および、どれくらい見ているかのモニタリングを可能にし、（３）視聴経験をサポートするために必要とされるデータ量のみが伝送されることからより効率的に伝送帯域幅を使用し、（４）動画ファイルは、視覚者のコンピュータ内に記憶されずメディアプレーヤにより廃棄され、この結果、コンテンツのより多くの制御が可能である。
【００１５】
ストリーミングメディアサーバは、ＨＴＴＰおよびＴＣＰを使用してビデオストリームを配信する場合があるが、通常、ＲＳＴＰ（リアルタイムストリーミングプロトコル）およびＵＤＰ（ユーザデータグラムプロトコル）を使用する。これらのプロトコルでは、制御メッセージを許可してオーバーヘッドを低減することにより帯域幅を節約する。ＴＣＰとは異なり、データが伝送中になくなったとき、ＵＤＰは、再送された要求を伝送しない。その代わりに、サーバは、データを送り続ける。ストリーミングメディアサーバは、ライブウェブキャストを配信することもでき、かつ、マルチキャストすることもでき、これにより、２つ以上のクライアントが、単一のストリームに同調することができ、この結果、帯域幅が節約される。
【００１６】
一般的に、プログレッシブダウンロードされたメディアは、再生よりも速い速度にてユーザコンピュータに伝送される。メディアプログラムプレーヤは、このデータをバッファリングし、かつ、通常「プログレスバー（progress bar）」の一部としてインディケータを提示することによりメディアプログラムのどれだけがバッファリングされたか示す場合がある。ユーザが、制御を選択してプログレスバーに沿って異なる場所に移動させることによりすでにバッファリングされたプログラム内の任意の地点に行くことを可能にする制御が行われることが多い。これにより、ユーザは、ランダムにメディアプログラムの任意のバッファリングされた部分にアクセスすることができる。
【００１７】
ストリーミングメディアプレーヤは、メディアプログラム内の任意の地点にランダムアクセスをすることができるようにするためにバッファリングに依存するものではない。その代わりに、これは、メディアプレーヤからストリーミングメディアサーバに伝送された制御メッセージを使用して達成される。
【００１８】
モバイルデバイス
携帯電話、ｉＰｈｏｎｅ、ＰＤＡ、ラップトップコンピュータなどのモバイルメディアプログラム再生デバイスにメディアプログラムを伝送したいという願望がある。モバイルデバイスへのメディアプログラムの伝送には更なる問題点があり、この理由は、通信チャネルの帯域幅が一般的に低減され、かつ、デバイス自体の処理電力が一般的に普通のコンピュータまたは専用デバイスの処理電力を下回るからである。
【００１９】
ライブメディアプログラムを含め、当該のデバイスにメディアプログラムを伝送する各種伝送プロトコルがすでに開発されており、ライブメディアプログラムの伝送は、当該のストリームの長さは限りがないので更に一層困難だがやりがいのあるものとなる可能性がある。１つの当該の伝送プロトコルは、ｈｔｔｐ：／／ｔｏｏｌｓ．ｉｅｔｆ．ｏｒｇ／ｈｔｍｌ／ｄｒａｆｔ−ｐａｎｔｏｓ−ｈｔｔｐ−ｌｉｖｅ−ｓｔｒｅａｍｉｎｇ−０４にて利用可能でありかつ本明細書に添付の付属書内に提示したＩＥＴＦ（インターネット技術タスクフォース）トラストのＨＴＴＰライブストリーミングプロトコルである。
【００２０】
再生の同期化
モバイルメディアプログラム再生デバイスにより、ユーザは、ほとんどどこでもメディアプログラムを受信および視聴することができる。しかしながら、多くの状況においては、ユーザは、モバイルデバイス上でメディアプログラム全体を視聴したいとは望まない。例えば、ユーザは、テレビまたはコンピュータなどの第１のデバイス上でメディアプログラムを見始める場合があるが、自宅の別のコンピュータまたはモバイルデバイスなどの第２のデバイス上でメディアプログラムの残りを見たいと望む場合がある。同様に、ユーザは、モバイルデバイスを使用してメディアプログラムを見始め、自宅に着くと、ホームコンピュータまたはテレビ上でメディアプログラムの残りを視聴したいと思う場合がある。ユーザが単に第２のデバイス上で始めからメディアプログラムを視聴し始めて、トリックプレイ操作を使用してメディアプログラム内の同じ時間的位置に早送りすることが可能であるが、このソリューションは、不便であるだけでなく、視覚者に第１のデバイスを使用時にすでに見た広告を強制的に見せる場合がある。
【００２１】
したがって、出願人らは、当技術分野において、１つのデバイス上でのメディアプログラムのストリーミングの中断および第２のデバイス上での同じ（中断された）時間的場所（temporal location）から同じメディアプログラムの再開を可能にする方法および装置に対する必要性があることを認識した。本発明は、この必要性を満たすものである。
【発明の概要】
【００２２】
先述した要件に対応するために、第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法、装置、製品およびメモリ構造。一実施形態においては、この方法は、（ａ）メディアプログラム識別子とユーザ識別子とを備えるメディアプログラムの要求をメディアプログラムプロバイダにおいて第１のデバイスから受信するステップと、（ｂ）要求されたメディアプログラムについてセグメントプレイリストを生成するステップとを備え、メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、これらの複数のメディアプログラムセグメントの第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、セグメントプレイリストは、各々が複数のメディアプログラムセグメントの第１のサブセットのセグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩ）の第１のセットにてメディアサーバから複数のメディアプログラムセグメントの第１のサブセットを検索する命令と、各々が複数のメディアプログラムセグメントの第２のサブセットのセグメントの１つに関連した複数のＵＲＩの第２のセットにてメディアプログラムプロバイダを介してメディアサーバから複数のメディアプログラムセグメントの第２のサブセットを検索する命令と備え、この方法は、更に、（ｃ）第１のデバイスにセグメントプレイリストを伝送するステップと、（ｄ）ユーザ識別子を含み、かつ複数のメディアプログラムセグメントの第２のセットを検索する命令から導出された、複数のメディアプログラムセグメントの第２のセットの少なくとも１つを検索する要求をメディアプログラムプロバイダにおいて第１のデバイスから受信するステップと、（ｅ）複数のメディアプログラムセグメントの第２のセットの少なくとも１つを検索する受信された要求をメディアサーバにリダイレクト（redirect）するステップと、（ｆ）メディアプログラムの再生を再開する要求がメディアプログラムプロバイダにおいて第２のデバイスから受信されるまでステップ（ｄ）〜（ｅ）を繰り返すステップと、（ｇ）複数のメディアプログラムセグメントの第２のセットの少なくとも１つを検索する最も最近の受信された要求から、メディアプログラムの再生を再開するメディアプログラム内の時間的場所を判断するステップと、（ｈ）第２のデバイスにメディアの再生を再開する情報を伝送するステップとを備える。別の実施形態においては、この方法は、メディアプログラム識別子とユーザ識別子とを備える、メディアサーバから第１のデバイスにメディアプログラムを伝送する第１の要求を受信するステップと、メディアプログラム識別子に関連したメディアプログラムを検索するステップと、メディアサーバから第１のメディアプログラムデバイスにメディアプログラムをストリーミングするステップと、メディアプログラムストリーミング情報を生成するために第１のメディアプログラムデバイスへのメディアプログラムのストリーミングをメディアサーバにおいてモニタするステップと、メディアプログラムプロバイダにメディアプログラムストリーミング情報を伝送するステップと、メディアプログラムプ���バイダに伝送されたストリーミング情報から判断されたメディアプログラム内の時間的場所から再開する、メディアプログラムの伝送を再開する要求をメディアサーバにおいて第２のデバイスから受信するステップと、メディアサーバから第２のデバイスへのメディアプログラムの伝送をストリーミング情報から判断された時間的場所から再開するステップとを備える。
【００２３】
同様の参照番号が全体にわたって対応する部分を表す図面をここで参照すると、
【図面の簡単な説明】
【００２４】
【図１】図１は、例示的なメディアプログラムシステムを示す図である。
【図２】図２は、本発明を実行するために使用することができる例示的なコンピュータシステムを示す。
【図３】図３は、ユーザへの提示に向けてメディアプログラムおよび広告に配信するために使用することができるコンテンツ配信サブシステムおよび最重要の作業を示す図である。
【図４Ａ】図４Ａは、第１のユーザデバイスおよび第２のユーザデバイスを同期化する例示的なプロセスを示す図である。
【図４Ｂ】図４Ｂは、第１のユーザデバイスおよび第２のユーザデバイスを同期化する例示的なプロセスを示す図である。
【図５】図５は、ライブストリーミングプロトコルに従ったメディアプログラムの伝送を示す図である。
【図６】図６は、例示的なセグメントプレイリストの図である。
【図７Ａ】図７Ａは、第１のユーザデバイスおよび第２のユーザデバイスを同期化する例示的なプロセスを示す図である。
【図７Ｂ】図７Ｂは、第１のユーザデバイスおよび第２のユーザデバイスを同期化する例示的なプロセスを示す図である。
【図８】図８は、例示的なプレイリストを示す図である。
【図９Ａ】図９Ａは、図５に示すセグメント化されたプロトコルに従って動作するユーザデバイスにより再生されるメディアプログラムを図３に示すストリーミングプロトコルに従って動作するユーザデバイスによってであれば再開することを可能にする例示的なプロセス段階を示す図である。
【図９Ｂ】図９Ｂは、図３に示すセグメント化されたストリーミングプロトコルに従って動作するユーザデバイスにより再生されるメディアプログラムを図５に示すセグメント化されたプロトコルに従って動作するユーザデバイスによってであれば再開することを可能にする例示的なプロセス段階を示す図である。
【発明を実施するための形態】
【００２５】
以下の説明においては、本明細書の一部を成し、かつ、例示として示される添付図面、本発明のいくつかの実施形態を参照する。他の実施形態を利用される場合があり、構造上の変更が本発明の範囲から逸脱することなく行われる場合があることが理解される。
【００２６】
図１は、例示的なメディアプログラムシステム１００を示す図である。図示する実施形態においては、システム１００はインターネットなどの通信ネットワーク１０４に通信上結合され、かつ、各々が１つまたは複数のソースメディアプログラムデータベース１２４Ａ、１２４Ｂ、に通信上結合された１つまたは複数のソースビデオサーバ１２２Ａ、１２２Ｂを有する１つまたは複数のメディアプログラムソース１２０Ａ、１２０Ｂを備えることができる。メディアプログラムシステム１００は、更に、通信ネットワーク１０４に通信上結合され、かつ、１つまたは複数のプロバイダビデオサーバ１１２および１つまたは複数のプロバイダデータベース１１４を有するメディアプログラムプロバイダ１１０を備える。一実施形態においては、メディアプログラムプロバイダ１１０は、ビデオオンデマンドおよび／またはストリーミングメディアプログラムプロバイダである。
【００２７】
メディアプログラムシステム１００は、コンピュータなどの第１のユーザデバイス１０２Ａまたは携帯電話などの第２のユーザデバイス１０２Ｂ（以下あるいはユーザデバイス１２０という）にメディアプログラムを伝送する。この伝送は、メディアプログラムプロバイダ１１０から直接的なものとすることができるか、または、メディアプログラムプロバイダ１１０は、ポータルとして動作することができ、メディアプログラム自体でなく（その代わりにメディアプログラムソース１２０により供給される）、メディアプログラムソース１２０Ａおよび１２０Ｂから入手可能であるメディアプログラムに対するインターフェースとなる。
【００２８】
第１の場合においては、メディアプログラムプロバイダ１１０は、メディアプログラムソース１２０（ｗｗｗ．ｆｏｘ．ｃｏｍまたはｗｗｗ．ｎｂｃ．ｃｏｍなど）からのメディアプログラムを使用許諾し、当該のプログラムのメタデータは、通常、同様にメディアプログラムソース１２０からメディアプログラムプロバイダ１１０にも供給される。当該のメタデータは、使用に向けてメディアプログラムプロバイダのデータベース１１４により検索することができる。補助メタデータが必要とされる場合、以下で更に説明するように、メディアプログラムプロバイダ１１０およびメディアプログラムソース１２０から独立しているメタデータソース１３０から取得することができる。
【００２９】
第２の場合においては、メディアプログラムは、メディアプログラムソース１２０のサーバから直にユーザデバイス１０２にストリーミングされる。メディアプログラムがメディアプログラムソース１２０から直にストリーミングされるとき、メディアプログラムソース１２０により供給されたメタデータは不十分であることが当てはまることが多い。このような場合、補助メタデータは、独立したメタデータソース１３０（ｗｗｗ．ｔｖ．ｃｏｍまたはｗｗｗ．ｉｍｄｂ．ｃｏｍなど）または他の第三者ソースから取得することができる。この状況においては、メディアプログラムプロバイダ１１０の役割は、ユーザ１３２に利用可能なメディアプログラムのリストを供給するポータル、かつ、当該のプログラムを見つけるために、かつ、視聴するために調べるインターフェースの役割である。
【００３０】
メディアプログラムおよびメタデータは、インターネットなどの通信ネットワーク１０４を介して、または、補助（および／または専用）通信リンク１３４を介して取得することができる。当該の情報は、インターネットのクローリングにより（例えば、秩序立った自動的な方法でワールドワイドウェブを閲覧するプログラムまたは自動スクリプトを使用して）取得することができる。
【００３１】
ユーザデバイス１０２を使用して、リモートユーザ１３２は、メディアプログラム（ビデオオンデマンドおよび／または映像配信サービスを含む）を取得するたに、かつ、プロバイダメディアプログラムデータベース１１４を調べて当該のメディアプログラムを見つけるために通信ネットワーク１０４を使用するメディアプログラムプロバイダ１１０と通信することができる。
【００３２】
メディアプログラムシステム１００は、メディアプログラムプロバイダ１１０またはメディアプログラムソース１２０により供給されたメディアプログラムに関連してリプレイされる広告を供給する１つまたは複数の広告プロバイダ１４０を備えることができる。図示する実施形態においては、広告プロバイダ１４０は、関連のかつ通信上結合された広告プロバイダデータベース１４４に通信上結合された広告プロバイダサーバ１４２を含む。
【００３３】
広告は、インターネット１０４、専用リンク１４６を介して、または、広告を有するメモリ記憶デバイスの物理的交換により広告プロバイダ１４０からメディアプログラムプロバイダ１１０に供給することができる。当該の広告は、妥当な時間にてユーザデバイス１０２に供給し、かつ、メディアプログラムプロバイダ１１０により記憶して妥当な時間にユーザデバイス１０２にストリーミングまたはユーザデバイスにメディアプログラムとともにダウンロードすることができる。
【００３４】
一実施形態においては、広告は、メディアプログラムプロバイダ１１０からのストリーミングまたはダウンロードされた映像と一体化される。別の実施形態においては、広告は、メディアプログラムと一体化されず、その代わりにメディアプログラムとは別々にユーザデバイス１０２に伝送され、かつ、いつ各広告が提示されるべきかを示すインデックスを使用して妥当な時間にて再生される。例えば、広告は、インデックスを付してかつ、ユーザデバイス１０２にストリーミングまたはダウンロードすることができ（メディアプログラムプロバイダ１１０または広告プロバイダ１４０から）、当該の広告は、メディアプログラム内の対応するインデックスにより示された時間にてユーザ１３２に再生することができる。
【００３５】
図２は、ユーザデバイス１０２、サーバ１１２、１２２、および１４２およびデータベース１１４、１２４、および１４４を含め、本発明の要素を実行するために使用することができる例示的なコンピュータシステム２０２を示す。コンピュータ２０２は、汎用ハードウェアプロセッサ２０４Ａおよび／または専用ハードウェアプロセッサ２０４Ｂ（以下あるいは集合的にプロセッサ２０４という）およびランダムアクセスメモリ（ＲＡＭ）などメモリ２０６を備える。コンピュータ２０２は、キーボード２１４、マウスデバイス２１６およびプリンタ２２８など入力／出力（Ｉ／Ｏ）デバイスを含め、他のデバイスに結合することができる。
【００３６】
一実施形態においては、コンピュータ２０２は、オペレーティングシステム２０８に制御されたコンピュータプログラム２１０により定義された命令を実行する汎用プロセッサ２０４Ａにより動作する。コンピュータプログラム２１０および／またはオペレーティングシステム２０８は、メモリ２０６内に記憶することができ、かつ、入力およびコマンドを受理するために、かつ、当該の入力およびコマンド、および、コンピュータプログラム２１０およびオペレーティングシステム２０８により定義された命令に基づいて、出力および結果を供給するためにユーザ１３２および／または他のデバイスとインターフェースすることができる。
【００３７】
出力／結果は、ディスプレイ２２２上で提示するか、または、提示または更なる処理またはアクションに向けて別のデバイスに供給することができる。通常は、ディスプレイ２２２は、ユーザ１３２に画像を集合的に提示するために状態を変更する複数の絵素（画素）を備える。例えば、ディスプレイ２２２は、入力およびコマンドへのコンピュータプログラム２１０の命令の適用からプロセッサ２０４および／またはオペレーティングシステム２０８により生成されたデータまたは情報に応答してディスプレイ上で画像の一部を形成するために不透明または半透明の状態に変わる液晶を各々が有する複数の別々にアドレス指定可能な画素を有する液晶ディスプレイ（ＬＣＤ）を備えることができる。同様に、プラズマディスプレイは、異なる色蛍光体を各々が有する３つの別々のサブピクセルセルを有する画素を含む。色は、共に混ざり合って画素に示す色を作成する。セルを流れる電流のパルスは、入力およびコマンドに応答してコンピュータプログラムおよび／またはオペレーティングシステム２０８の命令の適用からプロセッサにより生成されるデータに従って変えられ、画素により供給される光の強度が変わる。また、同様に、光線管（ＣＲＴ）が表示する陰極は、各画素が通常はアパーチャグリルからの点または線により表されるサブピクセルを有する複数の画素を含む。各点または線は、電子銃から電子により当たられるときに光を発する蛍光体被覆を含む。コンピュータプログラムおよび／またはオペレーティングシステム２０８の命令の適用からプロセッサにより生成されたデータに応答して、および、入力およびコマンドに応答して、電子銃により出射された電子は、点または線にてステアリングされ、この結果、関連の画素の状態が、この点または線の蛍光体被覆に光を発せさせることにより変わる。
【００３８】
画像は、グラフィカルユーザインターフェース（ＧＵＩ）モジュール２１８Ａを介して供給することができる。ＧＵＩモジュール２１８Ａは別個のモジュールとして示されているが、ＧＵＩ機能を実行する命令は、オペレーティングシステム２０８、コンピュータプログラム２１０内に常駐または分散させるか、または、専用メモリおよびプロセッサで実行することができる。
【００３９】
コンピュータプログラム１１０命令に従ってコンピュータ２０２により行われる作業の一部または全部は、専用プロセッサ２０４Ｂ内で実行することができる。この実施形態においては、コンピュータプログラム２１０命令の一部または全部は、専用プロセッサ２０４Ｂ内の読取り専用メモリ（ＲＯＭ）、プログラマブル読取り専用メモリ（ＰＲＯＭ）またはフラッシュメモリ内にまたはメモリ２０６内に記憶されたファームウェア命令を介して実行することができる。専用プロセッサ２０４Ｂは、本発明を実行する作業の一部または全部を実行するために回路設計を介して配線で接続することができる。更に、専用プロセッサ２０４Ｂは、機能のサブセットを実行する専用回路およびコンピュータプログラム命令に応答するなどのより一般的な機能を実行する他の回路を含むハイブリッドプロセッサとすることができる。一実施形態においては、専用プロセッサは、特定用途向け集積回路（ＡＳＩＣ）である。
【００４０】
コンピュータ２０２は、ＣＯＢＯＬ、Ｃ＋＋．ＦＯＲＴＲＡＮなどのプログラミング言語または他の言語で書かれたアプリケーションプログラム２１０をプロセッサ可読コード２０４に変換することを可能にするコンパイラ２１２を実行することができる。完了後、アプリケーションまたはコンピュータプログラム２１０は、入出力装置から受理され、かつ、関係およびコンパイラ２１２を使用して生成された論理回路を使用してコンピュータ２０２のメモリ２０６内に記憶されたデータにアクセスおよび操作する。
【００４１】
コンピュータ２０２は、随意的にモデム、衛星リンク、イサーネットカードまたは他のコンピュータから入力を受理して他のコンピュータに出力を供給する他のデバイスなどの外部通信装置も備える。
【００４２】
一実施形態においては、オペレーティングシステム２０８、コンピュータプログラム２１０およびコンパイラ２１２を実行する命令は、Ｚｉｐドライブ、フロッピー（登録商標）ディスクドライブ２２４、ハードドライブ、ＣＤ−ＲＯＭドライブ、テープドライブ、ＤＶＤなど１つまたは複数の固定式または着脱式データ記憶デバイスを含むことができるコンピュータ可読媒体、例えば、データ記憶デバイス２２０において明白に実施される。更に、オペレーティングシステム２０８およびコンピュータプログラム２１０は、コンピュータプログラム命令で構成され、コンピュータプログラム命令は、コンピュータ２０２によりアクセスされ、読まれて実行されたとき、コンピュータ２０２に、本発明を使用および／または実行するために、または、命令のプログラムをメモリに取り込むために必要なステップを実行させ、この結果、コンピュータに本明細書で説明する方法のステップを実行する特別にプログラムされたコンピュータとして動作させる専用データ構造が作成される。コンピュータプログラム２１０および／または操作命令は、メモリ２０６および／またはデータ通信デバイス２３０においても明白に実施することができ、この結果、本発明に従ってコンピュータプログラム製品または製品が作製される。この点を踏まえて、本明細書で使用する「製品」、「プログラム記憶装置」および「コンピュータプログラム製品」という用語は、任意のコンピュータ可読デバイスまたは媒体からアクセス可能なコンピュータプログラムを包含することが意図されている。
【００４３】
言うまでもなく、当業者は、上記の構成部品または任意の数の異なる構成部品、周辺機器、および他のデバイスの任意の組み合わせをコンピュータ２０２とともに用いることができることを認識するであろう。
【００４４】
「ユーザコンピュータ」という用語に本明細書で言及するが、ユーザコンピュータ１０２は、携帯電話、ポータブルＭＰ３プレーヤ、映像ゲームコンソール、ノートパソコン、ポケットコンピュータ、個人用携帯情報端末（ＰＤＡ）または適当な処理、通信および入力／出力容能力を有する任意の他のデバイスなどのポータブルデバイスを含むことができることが理解される。
【００４５】
図３は、コンテンツ配信サブシステム（ＣＤＳ）３００およびユーザ１３２への提示に向けてメディアプログラムおよび広告に配信するために使用することができる最重要の作業の第１の実施形態を示す図である。図示する実施形態においては、コンテンツ配信サブシステム３００は、ユーザデバイス１０２、メディアプログラムプロバイダ１１０および広告プロバイダ１４０を含む。
【００４６】
図示する実施形態においては、メディアプログラムプロバイダ１１０は、供給サービス３０６、コンテンツセレクタ３０８およびコンテンツ管理サービス３１０を備える。ユーザ１３２がユーザデバイス１０２を使用してメディアプログラムを選択したとき、選択されたメディアプログラムのメディアプログラム識別子（ＰＩＤ）を要求するメッセージが、ユーザデバイス１０２からメディアプログラムプロバイダ１１０に伝送される。供給サービス３０６では要求を記載し、供給サービス３０６では、コンテンツ管理サービス３１０を介して保証格納域３１２から取得された情報を使用して、選択されたメディアプログラムのＰＩＤを判断して、ユーザデバイス１０２にＰＩＤを伝送する。ユーザデバイスは、メディアプログラムプロバイダ１１０のコンテンツセレクタ３０８にこのＰＩＤおよびユーザＩＤを伝送する。コンテンツセレクタ３０８は、コンテンツ管理サービス３１０に情報を転送し、コンテンツ管理サービス３１０では、保証格納域３１２内に記憶された情報を使用して、ユーザおよび選択されたメディアプログラムに妥当な広告を選択するために広告サービス３１８を使用する。これは、Ｗｉｎｇ  Ｃｈｉｔ  Ｍａｋにより２０１０年５月２６日に出願された「迅速かつ拡大縮小可能なターゲット式広告（directed advertising）サービスの方法および装置」という名称の同時係属特許出願第１２／７８７、６７９号で説明するように達成することができ、この出願は、参照により本明細書に組み入れられる。コンテンツ管理サービス３１０は、コンテンツセレクタ３１８にこの情報を転送し、コンテンツセレクタ３１８は、ユーザデバイス１０２が選択されたメディアプログラムをメディアサーバ１１４から並びに広告プロバイダ１４０から広告を取得することができる情報を伝送する。図示する実施形態においては、この情報は、所望のメディアプログラムをメディアサーバ１１４から取得することができるアドレス（例えばＵＲＬ）を含む。ユーザデバイス１０２は、指定のアドレスにてメディアサーバ１１１４にメディアプログラム要求を伝送する。メディアサーバ１１４は保証格納域からメディアプログラムを検索して、ユーザデバイス１０２にメディアプログラムを伝送する。ユーザデバイス１０２は、広告を広告プロバイダ１２０に要求して同様に受信することができる。
【００４７】
広告プロバイダ１４０およびメディアサーバ１１４がメディアプログラムプロバイダ１１０と別個の構造上のエンティティと示されているが、広告プロバイダ１４０は、メディアプログラムプロバイダ１１０と一体化することができる（即ち、メディアプログラムプロバイダは広告も供給することができる）。ＣＤＳ３００は、ｗｗｗ．ｈｕｌｕ．ｃｏｍ、ｗｗｗ．ｉｍｄｂ．ｃｏｍ、ｗｗｗ．ａｏｌ．ｃｏｍまたはｗｗｗ．ｍｓｎ．ｃｏｍを挙げることができる複数の配信網全体にわたってメディアプログラムおよび広告を供給する手段となる。
【００４８】
メディアプログラムに関係するメタデータおよび広告コンテンツ並びにストリーミング情報は、メディアプログラムおよび広告がＣＤＳ３００内でどこにあるかを記述するデータと同様にコンテンツ送達システム３００のデータベース３１２内に記憶されている。
【００４９】
ユーザデバイス１０２は、インターフェースモジュール３０２およびメディアプログラムプレーヤ３０４を含むことができる。インターフェースモジュール３０２は、ユーザ１３２に情報およびメディアプログラムを提示し、かつ、コマンドを含めユーザ入力を受理するために使用される、ユーザデバイス１０２により実行される命令を含む。例示的なユーザデバイス１０２は、デスクトップコンピュータ、ラップトップコンピュータ、または、ｉＰＯＤ（登録商標）、ｉＰｈｏｎｅ、ｉＰＡＤ、携帯電話またはパームデバイスなどの携帯型装置である。
【００５０】
図４Ａおよび図４Ｂは、第１のユーザデバイス１０２Ａおよび第２のユーザデバイス１０２Ｂを同期化する例示的なプロセスを示す図である。この実施形態においては、メディアサーバ１１４は、フラッシュサーバを備えることができる。ブロック４０２においては、メディアプログラムプロバイダ１１０は、メディアサーバ１１４にモニタリングアプリケーション３１８を伝送する。モニタリングアプリケーションは、後でメディアサーバ１１４により実行されて、ユーザデバイス１０２への伝送をモニタすることができる。メディアサーバ１１４はモニタリングアプリケーション３１８を受信して、以下で説明するように、その後の検索および実行に向けてモニタリングアプリケーション３１８を記憶する。第１のユーザデバイス１０２Ａは、ブロック４０６において示すように、第１のユーザデバイス１０２Ａへのメディアプログラムの伝送を開始する要求をメディアプログラムプロバイダ１１０に伝送する。一実施形態においては、要求は、メディアプログラムの表示（例えばメディアプログラムまたはメディアプログラムの名前に関係するコード）およびユーザ１３２を識別するユーザＩＤまたはユーザＩＤの代用の役目をするユーザデバイスＩＤを含む。
【００５１】
メディアプログラムプロバイダ１１０は、要求を受信して、ブロック４０８〜４１２において示すように、要求されたメディアプログラムのＰＩＤを見つけて、第１のユーザデバイスにＰＩＤ（および随意的に先述したものなどの他の情報）を伝送する。第１のユーザデバイス１０２Ａは、ブロック４１４〜４１６において示すように、ＰＩＤを受信して、ＰＩＤおよびユーザＩＤを有するメディアプログラム要求をメディアサーバ１１４に伝送する。あるいは、メディアプログラム要求は、単に、メディアプログラムをメディアプログラムから取得することができるＵＲＬ（例えば、第１のユーザデバイス１０２Ａからの要求に応答してコンテンツセレクタ３０８から取得）宛ての要求である場合がある。メディアサーバ１１４は、ブロック４１８および４２０において示すように、メディアプログラム要求を受信して、ブロック４０４において受信したストリームモニタリングアプリケーション３１８を検索および実行する。メディアサーバ１１４は、その後、ブロック４２２および４２４において示すように、ＰＩＤに関連したメディアプログラムを検索して、メディアプログラムが受信されてユーザに提示される第１のユーザデバイス１０２Ａにメディアプログラムを伝送する。１つの実施形態においては、メディアプログラムは、第１のユーザデバイス１０２Ａにストリーミングされる。
【００５２】
ストリームモニタリングアプリケーション３１８を使用して、メディアサーバは、ブロック４２６において示すように、第１のユーザデバイス１０２Ａから受信されたストリームおよび／またはコマンドの伝送をモニタして、メディアプログラムプロバイダ１１０にこのモニタされた情報を伝送する。ブロック４２８において示すように、モニタされた情報を受信および記録するかまたは記憶する。
【００５３】
モニタされた情報は、コンパイルしかつ周期的に伝送するか、コンパイルし、かつ、当該のイベント（例えば、トリックプレイ作業）が行われるときに伝送するか、または、メディアサーバ１１４からメディアプログラムプロバイダ１１０に連続的に伝送することができる。一実施形態においては、モニタされた情報は、第１のユーザデバイスにストリーミングされたメディアプログラムの現在の時間的位置、ストリーム（メディアプログラムデバイスが異なる解像度のストリームを受信中である場合があることから）の解像度，および、他のデータを含め、第１のユーザデバイスの再生状態に関する情報を提供する。メディアサーバ１１４が任意の特定の時間にて時間的再生場所に関して不確かである場合があるが、再生場所は、モニタされたストリームから妥当に推論することができる。例えば、メディアサーバ１１４がメディアプログラムの始めから２４分の地点にてメディアプログラムを再生する（例えば、プログレスバー上でカーソルを移動することにより）要求を第１のユーザデバイス１０２Ａから受信した場合、このイベントをモニタリングアプリケーションにより検出することができる。更なる要求なしの要求が次の１０分において第１のユーザデバイスから受信された場合、第１のユーザデバイスの再生位置は、この時点でメディアプログラムの始めから２４＋１０＝３４分後であると仮定することが妥当である。休止または中断コマンドが受信されその後更なる入力なしであった場合、再生場所は休止された場所から変わっていないと仮定することが妥当である。
【００５４】
図４Ｂを参照すると、第２のユーザデバイス１０２Ｂは、ブロック４３０において示すように、第２のユーザデバイス１０２Ｂへのメディアプログラムの伝送を再開する要求を伝送する。要求は、第２のデバイス１０２Ｂから伝送されて、メディアプログラムプロバイダ１１０において受信される。この要求の伝送の前に、第１のユーザデバイス１０２Ａへのメディアプログラムの伝送またはメディアプログラムの受信は休止または停止された場合があるか、または、第１のユーザデバイス内のメディアプログラムプレーヤアプリケーションが終了した場合がある。これは、意図的に（例えば休止または停止コマンドにより）または、意図せずに（第１のユーザデバイス１０２Ａまたはソフトウェアの誤動作、または、第１のユーザデバイスとメディアサーバ１１４間の通信接続性の低下−例えば、ドロップインワイヤレス有効範囲の低下を介して−のために）発生することがあり得る。
【００５５】
第２のユーザデバイス１０２Ｂにメディアプログラムの伝送を再開する要求は、再生が中断された地点から伝送を再開する明示的要求である場合があるか、または、単にブロック４０６において説明した要求と全く同じメディアプログラムの要求である場合があり、要求の受信側は、メディアプログラム要求が第１のユーザデバイスによるメディアプログラムの受信が終了または休止されたことを示す状況下で受信されている／受信されたと認識する。例えば、一実施形態においては、ユーザが第１のユーザデバイス１０２Ａから第２のユーザデバイス１０２Ｂにメディアプログラムの受信を転送したいと思ったとき、ユーザは、ブロック４２９において示すように、この目的のために特殊コマンドを供給することができ、この結果、メディアプログラムプロバイダ１１０またはメディアサーバ１１４（ストリームモニタリングアプリケーション３１８を介してメディアプログラムプロバイダ１１０に情報を転送することができる）に、第１のユーザデバイス１０２Ａへの伝送は中止するべきであり、かつ第２のユーザデバイス１０２Ｂへの伝送は受信が中止したメディアプログラム内の時間的場所から開始するべきであることが通知される。または、別の実施形態においては、ユーザが特殊コマンドを供給していない場合（またはコマンドが供給されなかった場合）、メディアプログラムプロバイダは、第１のユーザデバイス１０２Ａによるメディアプログラムの受信は終了した、つまり、第２のユーザデバイス１０２Ｂからの、同じユーザからの同じメディアプログラムを視聴する要求によりもはや所望されていないと推測することができる。
【００５６】
ブロック４３２において示すように、メディアプログラムの再生を再開する要求をメディアプログラムプロバイダ１１０により受信する。メディアサーバ１１４上で実行されるモニタリングアプリケーション３１８からの受信、記録、または記憶されたモニタされた情報を使用して、メディアプログラムプロバイダ１１０は、伝送が終了または中断されたときにメディアプログラムの再生の状態を判断する。これは、例えば、ブロック４３４において示すように、メディアプログラム内の時間的場所を含むことができる。
【００５７】
第１のユーザデバイスによるメディアプログラムの現在再生中の時間的位置はプログラムにおいてメディアプログラムの現在ストリーミング中の時間的位置より以前にある（第１のユーザデバイス１２０Ａによる伝送されたメディアプログラムのバッファリングにより）と考えられることから、メディアプログラムプロバイダ１１０は、伝送を再開するメディアプログラム内の時間的場所を生成するときに他の要素を考慮に入れることができる。例えば、メディアプログラムプロバイダ１１０は、メディアプログラムが再開される時間的場所を判断する際には第１のユーザデバイス１２０Ａのバッファサイズ、メディアサーバ１１４と第１のユーザデバイス１２０Ａの間の伝送チャネル帯域幅または他の要素などの情報を使用することができる。メディアプログラムプロバイダ１１０は、第１のユーザデバイス１０２により実行されたメディアプログラムプレーヤの状態を含む監視情報を使用することもできるか、または、メディアプログラムの再生が中断または終了されたところよりも遅れることなく確実に再開するようにする量により、算出された時間的場所の前に時間的場所を単に選択することができる。他の実施形態においては、メディアプログラムメタデータを使用して（例えば再生が場面の始めにて再開されるように）算出された時間的場所を判断することができる。更に、算出された時間的場所がユーザにすでに再生された広告に先行する場合、プログラムが第２のデバイス上で再生されたとき広告をスキップすることができる。
【００５８】
メディアプログラムプロバイダ１１０は、その後、ブロック４３６および４３８において示すように、時間的場所およびＰＩＤ（必要であれば）を第２のユーザデバイスに伝送して、時間的場所が受信される。第２のユーザデバイス１２０Ｂは、ブロック４４０および４４２において示すように受信される、メディアサーバ１１４に、ＰＩＤ、ユーザＩＤおよび時間的場所を伝送する。メディアサーバ１１４は、その後、ブロック４４４および４４８において示すように、生成された時間的場所にて始まる選択されたメディアプログラムを第２のユーザデバイス１０２Ｂに伝送する。以前と同様に、メディアサーバ１１４は、伝送をモニタして、モニタされた情報をメディアプログラムプロバイダ１１０に送り、それで、伝送が第１のユーザデバイス１０２Ａにまたは第３のユーザデバイスに方向転換された場合、再生が中断、休止、または、終了された場所から再生を再開することができる。
【００５９】
他の実施形態においては、ブロック４３６〜４４２において示した作業は、省略される。この実施形態においては、メディアプログラムの伝送を再開する要求が受信されたとき、時間的再生位置が推定または判断され、メディアプログラムは、第２のユーザデバイスに時間的場所を伝送してブロック４４０において伝送される要求を受信することなくこの地点からストリーミングされる。この実施形態は、特にメディアサーバ１１４が制御されるかまたはメディアプログラムプロバイダ１１０とともに配置される実施形態において有用である。
【００６０】
図４Ａおよび図４Ｂでは、メディアプログラムは、ＰＩＤが特定され、第１のユーザデバイスに送られて、メディアプログラムストリームを検索するためにユーザデバイス１０２Ａからメディアサーバ１１４に伝送されるプロセスによりユーザデバイス１０２Ａにストリーミングされた。他の実施形態、例えば、図３の実施形態が可能であり、ＰＩＤは、メディアサーバ１１４のＵＲＬを検索するために使用され、ユーザデバイス１０２Ａは、このアドレスにてメディアサーバ１１４にメディアプログラム要求を伝送する。他の実施形態も可能であり、例えば、ユーザデバイス１０２Ａは、単に要求されたメディアプログラムの識別子をコンテンツセレクタ３０８に供給し、その後、メディアプログラムプロバイダからメディアプログラムを受信することができる。または、コンテンツセレクタであれば、中間ＰＩＤを使用せず、単に、要求されたメディアプログラムのＵＲＬを伝送することができる。類似の変形が、以下で論じるライブストリーミングプロトコルの実施形態についても可能である。
【００６１】
また、第１のユーザデバイス１０２Ａから第２のユーザデバイス１０２Ｂへのメディアプログラム再生の転送に関して上記を説明したが、同じ諸原理を用いて、伝送が、例えば、ユーザデバイス１０２にワイヤレスでメディアプログラムを伝送する問題のために伝送が中断されたときに同じユーザデバイスにおいて再生を再開することができる。
【００６２】
図５は、ライブストリーミングプロトコルに従ってメディアプログラムの伝送に備えるシステム５００を示す図である。ライブストリーミングプロトコルは、特にモバイルデバイスおよびワイヤレスデバイスに有用である。基本的に、ライブストリーミングプロトコルは、ユーザデバイス１０２がメディアプログラムを要求したとき、ユーザデバイス１０２にメディアプログラムの小さいセグメントまたは「片」の「プレイリスト」が供給されるという点を除き、図３に示すプロトコルと類似のものである。ユーザデバイス１０２は、プレイリストを使用して順々にメディアプログラムの各片の伝送を要求し、各片が受信されたとき、処理されてユーザ１３２に提示されたメディアプログラムに組み入れられる。
【００６３】
図５に示すように、ユーザデバイス１０２は、メディアプログラムのＰＩＤの要求を供給サービス３０６に伝送する。要求は、通常は、ユーザＩＤまたはこの代用、並びに、メディアプログラムの何らかの識別表示を備える。供給サービス３０６は、要求を受信して、保証格納域３１２およびコンテンツメタデータ／ストリーミング情報データベースから取得された情報を使用して要求されたメディアプログラムのＰＩＤをＣＭＳ３１０から取得する。ＰＩＤは、その後、ユーザデバイス１０２に伝送される。ユーザデバイスは、その後、ＰＩＤとともにメディアプログラム要求をコンテンツセレクタ３０８に伝送する。
【００６４】
この実施形態においては、メディアプログラムは、ユーザデバイス１０２からの要求があり次第ユーザデバイス１０２に伝送することができる複数のセグメントまたは片に分割される。どのセグメントを要求するのかおよびセグメントを要求する順番は、メディアプログラムプロバイダ１１０からユーザデバイス１０２に伝送されるセグメントプレイリストにより決まる。
【００６５】
図６は、例示的なセグメントプレイリスト６００の図である。項目６０２Ａ〜６０２Ｄ、特定の映像セグメントを検索する特定のＵＲＩへの呼び出しである。「＃ＥＸＴＩＮＦ」は、記録マーカの後に来るＵＲＩにより特定されるメディアファイルを記述する記録マーカであるタグである。各メディアファイルＵＲＩは、ＥＸＴＩＮＦタグの後になければならない。＃ＥＸＴＩＮＦタグのフォーマットは、＃ＥＸＴＩＮＦ：＜ｄｕｒａｔｉｏｎ＞、＜ｔｉｔｌｅ＞である。呼び出し６０４Ａは、メディアプログラムが始まる前に示される４秒の「はねかけ音」である。呼び出し６０２Ｂおよび６０２Ｃは、長さ１０秒の５０００００１１のＰＩＤを有するメディアプログラムのセグメント用であり、一方、呼び出し６０２Ｃは、長さ１１秒の同じメディアプログラムのセグメントに対するものである。呼び出し６０２Ａ〜６０２Ｄも、目的承認を目的としたトークンを含むことができる。ＥＸＴ−Ｘ−ＤＩＳＣＯＮＴＩＮＵＩＴＹ  ６０４タグは、この後に来るメディアファイルとこの前に来るメディアファイルとの間の符号化不連続性を示す。変わると考えられる１組の特性には、（１）ファイル形式、（２）トラック数および形式、（３）符号化パラメータ、（４）符号化シーケンス、および／または、（５）タイムスタンプシーケンスが含まれる。
【００６６】
図７Ａおよび図７Ｂは、第１のユーザデバイス１０２Ａおよび第２のユーザデバイス１０２Ｂを同期化する例示的なプロセスを示す図である。この実施形態は、特に、第１のユーザデバイス１２０Ａおよび第２のユーザデバイス１２０ＢがＲｏｂｅｒｔ  Ｍ．ＷｏｎｇおよびＥｄｅｎ  Ｌｉにより２０１０年６月２８日に出願された、「プラットフォーム全体にわたって休止された再生を同期化する方法および装置」という名称の米国特許仮出願第６１／３５９，２５８号明細書の付属書において説明されているライブストリーミングプロトコルを使用するデバイスであるときに有用であり、この出願は、参照により本明細書に組み入れられる。
【００６７】
ブロック７０２においては、メディアプログラム要求を第１のユーザデバイス１０２Ａから伝送する。一実施形態においては、メディアプログラム要求は、第１のユーザデバイスを使用するユーザ１３２およびＰＩＤまたは他の値などのメディアプログラム識別子のユーザＩＤを含む。メディアプログラムプロバイダ１１０は、ブロック７０４において示すように、要求を受信する。メディアプログラムプロバイダは、その後、ブロック７０６において示すように、セグメントプレイリストを生成する。このセグメントプレイリストは、以下で説明するように、図７に示すプレイリストと異なる。
【００６８】
図８は、ブロック７０６において生成された例示的なプレイリストを示す図である。図６に示すセグメントプレイリストとは異なり、このプレイリストは、メディアプログラムのセグメントを２つのサブセットに分離する。メディアプログラムセグメントの第１のサブセット（呼び出し８０２Ａ〜８０２Ｊにより取得されたもの）は、メディアサーバ１１４を介して直に検索されることになっており、メディアプログラムセグメントの第２のサブセット（呼び出し８０６Ａ〜８０６Ｂにより取得されたもの）は、メディアプログラムプロバイダ１１０へ呼び戻され、メディアプログラムプロバイダ１１０は、呼び出しを記録して、メディアサーバ１１４に呼び出しをリダイレクトする。両方の場合においては、第１のユーザデバイス１０２Ａは、最終的に当該のメディアプログラムセグメントを受信することになるが、第２の組の呼び出しを使用したとき、メディアプログラムプロバイダは、要求されたセグメントを通知され、この結果、メディアプログラムプロバイダは、要求を行ったデバイス上で実行中であるメディアプログラムプレーヤの現状を予知することができる。セグメント要求より長さ１０秒台のメディアプログラムセグメントが返され、第２の組の呼び出しを所望の頻度でプレイリストに挿入することができることから、したがってメディアプログラムプレーヤにメディアプログラムの再生の状態（メディアプログラム内の時間的場所および現在要求されるセグメントの解像度を含め）が通知されることが可能である。したがって、プレイリスト８００は、各々が複数のメディアプログラムセグメントの第１のサブセットのセグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩ）の第１のセットにてメディアサーバからメディアプログラムセグメントの第１のサブセットを受信する命令を備える。プレイリスト８００は、各々が複数のメディアプログラムセグメントの第２のセットの１つのセグメントに関連した複数のＵＲＩの第２のセットにてメディアプログラムプロバイダを介してメディアサーバから複数のメディアプログラムセグメントの第２のサブセットを受信する命令も備える。
【００６９】
プレイリスト８００内の情報を使用して、メディアプログラムプレーヤ１１０は、第２のユーザデバイス１２０Ｂがメディアプログラム内の同じまたはほぼ同じ時間的位置からかつ同じストリーミング品質で再生を再開することを可能にすることができる。これは、以下で説明するように達成することができる。
【００７０】
ブロック７０８においては、メディアプログラムプロバイダ１１０からブロック７０８に示すように、セグメントプレイリストを第１のユーザデバイス１０２Ａに伝送する。第１のユーザデバイス１０２Ａは、プレイリスト７１０を受信して、ブロック７１２に示すように、第１の組のメディアプログラムセグメントの１つを検索する要求を伝送する。一実施形態においては、要求は、図８に示す形であり、要求は、タグおよびＵＲＩを含み、要求においては、ＵＲＩはメディアプログラムＩＤおよびトークンを含む。ユーザＩＤを含むこともできるが、ユーザＩＤは必要ではない。
【００７１】
メディアサーバ１１４は、ブロック７１４および７１６において示すように、要求を受信して、第１のユーザデバイス１０２Ａにメディアプログラムセグメントを伝送またはストリーミングする。第１のユーザデバイス１０２Ａは、ブロック７１８において示すように、要求されたメディアプログラムセグメントを受信してセグメントを再生する。第１のユーザデバイス１０２Ａは、必要であれば受信されたメディアプログラムセグメントをバッファリングすることもできる。第１のユーザデバイスは、その後、プレイリスト内の次のメディアプログラムセグメントを要求する。次の呼び出しが第１の組の構成物である（即ち、プレイリストはメディアプログラムセグメントがメディアサーバ１１４から直に検索されることになっていることを示す）場合、処理することは、ブロック７１２に戻り、メディアプログラムの別のセグメントを受信する別の要求が、第１のユーザデバイス１０２Ａからメディアサーバ１１４に伝送される。例えば、プレイリスト８００を使用して、呼び出し８０２Ｂ〜８０２Ｄにより、第１のユーザデバイス１０２Ａは、５０００００１１のＰＩＤを有するメディアプログラムのセグメント０、１および２をメディアサーバ１１４に要求する。
【００７２】
ブロック７２０においては、第１のユーザデバイスは、メディアプログラムセグメントをセグメントの第２のサブセットに要求する。これは、第１のユーザデバイスがメディアプログラムプロバイダ１１０への呼び出し（呼び出し８０６Ａなど）に遭遇したときであれば発生する。呼び出しは、メディアプログラムプロバイダ（ユーザＩＤ）を呼び出すＵＲＩを含む（図示する実施形態においては「Ａ２３０１ＡＦ」、かつ、随意的に、メディアプログラムの現在の再生の時間的場所を含むこともできる。メディアプログラムプロバイダ１１０は、ブロック７２２において示すように、呼び出しを受信して後の使用のために呼び出しを記憶または記録する。その後、ブロック７２４において示すように、呼び出しにおけるＵＲＩを使用して要求をメディアサーバにリダイレクトする。メディアサーバ１１４は、ブロック７２６および７２８において示すように、リダイレクトされた呼び出しを受信して、呼び出しの対象であったメディアプログラムセグメントを第２のユーザデバイス１０２Ｂに伝送する。第２のユーザデバイス１０２Ｂは、ブロック７３０において示すように、メディアセグメントを受信および再生して、この結果、セグメントがユーザ１３２に提示される。前出のプロセスは、ブロック７３２において示すように、メディアプログラムが終了するまで、または、同じメディアプログラムを受信する要求がメディアプログラムプロバイダ１１０において第２のユーザデバイス１０２Ｂから受信されるまで続く。
【００７３】
図４Ａおよび図４Ｂに示す実施形態に関して先述したように、第２のユーザデバイス１０２Ｂからのメディアプログラムの要求は、要求がメディアプログラム内の同じ時間的位置から異なるデバイス上でメディアプログラムの再生を再開する要求であるか、または、情報は、要求自体から推論することができる（別のデバイスに由来する同じユーザＩＤを有する同じメディアプログラムの要求により当該の推論が可能であるが他の情報を用いることもできる）という表示を含むことができる。図示する実施形態においては、要求は、ユーザＩＤおよびＰＩＤなどのメディアプログラム識別子を含む。
【００７４】
ブロック７３４において示すように、メディアプログラム要求をメディアプログラムプロバイダ１１０において受信する。ブロック７３６においては、再開要求の前のメディアプログラムの再生の状態を判断する。これは、例えば、第１のユーザデバイス１０２Ａによる再生が中止されたときのメディアプログラムの時間的場所の判断を含むことができる。図７Ａおよび図７Ｂに示す実施形態はメディアプログラムの小さい片がセグメント単位でユーザデバイス１０２に伝送されるプロトコルを示すことから、メディアプログラムの時間的再生位置はメディアプログラムプロバイダ１１０により既知の最終セグメントの時間的場所とすることができるという妥当な判断は伝送されている。そうであれば、例えば、第２の組内のメディアプログラムセグメントの１つの最終呼び出しとなる。メディアプログラムセグメントが伝送されたが受信されなかったかもしれないことから、時間的再生位置はその代わりに第２の組内のメディアプログラムセグメントの１つの最終呼び出しの前の呼び出しと判断することができる。実際には、停止された再生の時間的位置を判断するか、または少なくとも再生が停止された実際の時間的場所の前で当該の再生を再開することが望ましいと考えられ、この理由は、これにより、視覚者は、場面に関する何らかのコンテキストでメディアプログラムを視聴することを再開することができるからである。メディアプログラムプロバイダ１１０はメディアプログラムの場面に関する知識も有することから、メディアプログラムプロバイダは、再生が停止された場面またはおそらくそれの前の場面の始めにあるように再生を再開するために時間的位置を判断することができる。これであれば、場面の変化毎により結果的に第２の組の構成品であるメディアプログラムセグメントへの呼び出しが発生するようにプレイリストを生成することにより実行することができ、この理由は、これにより、確実に、メディアプログラムプロバイダに各場面について再生進捗が通知されるようになるからである。あるいは、メディアプログラムプロバイダ１１０は、第２の組のセグメントの１つへの呼び出しが周期的に（例えば毎分）行われるようにプレイリストを生成することができる。
【００７５】
ブロック７３８においては、メディアプログラムプロバイダ１１０は、所望のセグメントで始まる（先述した時間的場所から判断）メディアプログラムセグメントへの呼び出しを含む再開プレイリストを生成する。このプレイリストは、第１のユーザデバイス１０２Ａまたは第３のデバイスへのメディアプログラムの再生の転送を可能にする、第１または第２のリストの構成品であるセグメントも含む。したがって、この再生再開リストであれば、すでにユーザデバイス１０２により受信されて表示されたとわかっているメディアプログラムセグメントへの呼び出しを含まないことを除き、再生再開リスト８００と類似のものと見えよう。
【００７６】
第１のユーザデバイス１０２Ａは、再開プレイリストを受信して、先述しているものと類似した方法で再開プレイリスト内に記述されている呼び出しを行う。これをブロック７４４〜７６２において示す。したがって、メディアサーバ１４４から直にメディアプログラムセグメントの第１のサブセットの構成品を検索する呼び出しが行われ、記録および／または記憶される、メディアプログラムセグメントの第２のサブセットの構成品を検索する呼び出しがメディアプログラムプロバイダ１１０に行われて、メディアサーバ１１４にリダイレクトされる。先述したように、これにより、メディアプログラムプロバイダは、第２のユーザデバイス上でのメディアプログラムの再生状態を判断することができ、一方、それでも、メディアサーバ１１４は、第２のユーザデバイス１０２Ｂにメディアプログラムセグメントを伝送することができる。
【００７７】
上記では、１つのユーザデバイス１０２Ａ上でのメディアプログラムの再生を第２のユーザデバイス１０２Ｂ上で再開することができる方法を説明した。第１のユーザデバイス１０２Ａおよび第２のユーザデバイス１０２Ｂが異なるプロトコルに従って動作することがあり得、かつ、望ましいものでさえある。例えば、第１のユーザデバイス１０２Ａは、図３において説明したブロトコルに従って動作するデスクトップアプリケーションを実行するコンピュータとすることができ、一方、第２のデバイスは、図５で説明したブロトコルに従って動作するモバイルデバイスである。または、第１のユーザデバイス１０２Ａは、図５で説明したプロトコルに従って動作するモバイルデバイスとすることができ、第２のユーザデバイス１０２Ｂであれば、デスクトップアプリケーションを実行しかつ図３で説明したプロトコルに従って動作するコンピュータとすることができる。
【００７８】
どちらの場合でも、先述した諸原理を用いて、異なるプロトコルで動作するデバイスの間でさえ再生を同期化することができる。
【００７９】
図９Ａは、図５に示すセグメント化されたプロトコルに従って動作するユーザデバイス１０２Ａにより再生されるメディアプログラムを図３に示すストリーミングプロトコルに従って動作するユーザデバイス１０２Ｂによってであれば再開することを可能にする例示的なプロセス段階を示す図である。この実施形態においては、メディアプログラム再開要求がメディアプログラムプロバイダに第２のユーザデバイス１０２Ｂにより伝送されるときに、メディアプログラムプロバイダが第２のユーザデバイスがどのブロトコルに従って動作するか判断することを可能にする情報を含むこともできるか、または、要求自体は、この情報を本質的に備えることができる。メディアプログラムプロバイダ１１０は、この情報を使用して、再生を再開するために使用される時間的場所を判断することができ、処理は、図４Ｂのブロック４３６に移る。換言すれば、第２のユーザデバイス１０２Ｂがライブストリーミングプロトコル準拠であった場合に伝送されたと思われる再開プレイリストの代わりにＰＩＤ、時間的場所および他の情報が、第２のユーザデバイス１０２Ｂに伝送されることになる。
【００８０】
図９Ｂは、図５に示すストリーミングプロトコルに従って動作するユーザデバイス１０２Ａにより再生されるメディアプログラムを図３に示すセグメント化されたプロトコルに従って動作するユーザデバイスによって再開することを可能にする例示的なプロセス段階を示す図である。この実施形態においても、メディアプログラム再開要求がメディアプログラムプロバイダに第２のユーザデバイス１０２Ｂにより伝送されるときに、メディアプログラムプロバイダが第２のユーザデバイスがどのブロトコルに従って動作するか判断することを可能にする情報を含むこともできるか、または、要求自体は、この情報を本質的に備えることができる。メディアプログラムプロバイダ１１０は、この情報を使用して、再生を再開するために使用される時間的場所を判断することができ、処理は、図７Ｂのブロック７３８に移る。しかしながら、図７Ｂに示すように、この場合、第２のユーザデバイス１０２Ｂに供給された情報は、プレイリストにおいて特定されてしたがって再生された第１のメディアプログラムセグメントが再生が中断されたメディアプログラム内の判断された時間的場所にあるかまたはこの時間的場所の前にあるように生成されたプレイリストである。
【００８１】
他の実施形態も想定されている。例えば、第１のユーザデバイスは、関連した再生イベント（例えば、休止または停止またはトリックプレイコマンド）の後にメディアプログラムプロバイダ１１０またはメディアサーバ１１４にメディアプログラム再生状態情報を伝送することができる。再生状態情報は、再生中のメディアプログラムのアイデンティティ、変更が行われたメディアプログラム内の場所（時間またはフレーム）、再生イベントおよび任意の他の追加情報を含むことができる。したがって、メディアプログラムプロバイダ１１０が同じユーザ識別子に関連した１つの要求を異なるデバイス（例えば、異なるデバイス識別子により判断）から受信したときに、メディアプログラムプロバイダ１１０はメディアプログラム再生状態情報を使用して、どこで再生が新しい装置または当初のデバイスで新たに始まるべきであるか判断し、メディアプログラムの適切な部分が、伝送される。メディアプログラム再生状態は、望まれないシャットダウンおよび終了を含め、第１のユーザデバイス１０２Ａまたはデバイス１０２Ａ上で実行しているメディアプログラムプレーヤのシャットダウン前に伝送することもできる。更に、再生イベント時のメディアプログラム再生状態の伝送の代わりにまたはこれに加えて、第１のユーザデバイス１０２Ａは、メディアプログラムプロバイダ１１０またはメディアサーバ１１４に周期的又非周期的なメッセージを送って、任意の再生イベントから独立して、メディアプログラムプロバイダ１１０またはメディアサーバにメディアプログラム再生状態を通知することができる。
【００８２】
当業者は、本発明の範囲から逸脱することなく多くの改変をこの構成に行うことができることを認識するであろう。例えば、当業者は、上記の構成部品または任意の数の異なる構成部品、周辺機器、および他のデバイスの任意の組み合わせを本発明とともに使用することができることを認識するであろう。
【００８３】
結び
これにより、好適な本発明の実施形態の説明を終了する。本発明の好適な実施形態の上記説明は、例示および説明を目的として提示したものである。網羅的であること、または、開示した正確な形態に本発明を制限することを目的とするものではない。上記の教示に照らして多くの改変および変形が可能である。本発明の範囲はこの詳細な説明により限定されず本明細書に添付の特許請求項の範囲により限定されることを意図している。上記明細書、実施例、および、データは、本発明の構成の製造および使用に説明を完全に行うものである。本発明の精神および範囲から逸脱することなく多くの本発明の種々の実施形態を成すことができることから、本発明は、以下に添付する特許請求項の範囲に属する。
以下に、本願出願時の特許請求の範囲に記載された発明を付記する。
[１]第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、
（ａ）メディアプログラム識別子とユーザ識別子とを備えるメディアプログラムの要求をメディアプログラムプロバイダにおいて前記第１のデバイスから受信するステップと、
（ｂ）前記要求されたメディアプログラムについてセグメントプレイリストを生成するステップと、
ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間で時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
各々が複数のメディアプログラムセグメントの前記第１のサブセットのセグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第１のセットにてメディアサーバから複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
各々が複数のメディアプログラムセグメントの前記第２のセットのセグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第２のセットにてメディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの第２のサブセットを検索する命令とを含む、
（ｃ）前記第１のデバイスに前記セグメントプレイリストを伝送するステップと、
（ｄ）前記ユーザ識別子を含みかつ複数のメディアプログラムセグメントの前記第２のセットを検索する前記命令から導出された、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する要求を前記メディアプログラムプロバイダにおいて前記第１のデバイスから受信するステップと、
（ｅ）複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記受信された要求を前記メディアサーバにリダイレクトするステップと、
（ｆ）前記メディアプログラムの再生を再開する要求が前記メディアプログラムプロバイダにおいて前記第２のデバイスから受信されるまでステップ（ｄ）〜（ｅ）を繰り返すステップと、
（ｇ）複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記最も最近に受信された要求から、前記メディアプログラムの再生を再開する前記メディアプログラム内の時間的場所を判断するステップと、
（ｈ）前記第２のデバイスに前記メディアの再生を再開する情報を伝送するステップと
を備える方法。
[２]前記第１のデバイスは、ライブストリーミングデバイスであり、
前記第２のデバイスは、ライブストリーミングデバイスであり、
前記第２のデバイスに前記メディアの再生を再開する情報を伝送する前記ステップは、
（ｉ）前記再開される要求されたメディアプログラムについて、前記判断された時間的場所後に時間的に発生する複数のメディアセグメントを含む再開されるセグメントプレイリストを生成するステップと、
（ｊ）前記再開されたセグメントプレイリストを前記第２のデバイスに伝送するステップとを備える前記[１]に記載の方法。
[３]前記第１のデバイスは、ライブストリーミングデバイスであり、
前記第２のデバイスは、フラッシュストリーミングデバイスであり、
前記第２のデバイスに前記メディアの再生を再開する情報を伝送する前記ステップは、前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所と前記メディアプログラム識別子とを前記第２のデバイスに伝送するステップを備える前記[１]に記載の方法。
[４]前記メディアプログラムプロバイダにおいて前記第１のデバイスから複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記要求は、ユーザ識別子と前記メディアプログラム内の時間的場所とを含む前記[１]に記載の方法。
[５]前記方法は、複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記受信された要求を記録するステップを更に備え、
前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所を判断する前記ステップは、前記記録された受信された要求を使用して前記時間的場所を判断するステップを備える前記[１]に記載の方法。
[６]前記記録された受信された要求を使用して前記時間的場所を判断する前記ステップは、複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記最も最近に記録された受信された要求の前に前記時間的場所を前記メディアプログラムセグメントから判断するステップを備える前記[５]に記載の方法。
[７]第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、
（ａ）メディアプログラム識別子とユーザ識別子とを備える前記メディアプログラムの要求をメディアプログラムプロバイダにおいて前記第１のデバイスから伝送するステップと、
（ｂ）前記第１のデバイスにおいて前記要求されたメディアプログラムのセグメントプレイリストを受信するステップと、
ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
各々が複数のメディアプログラムセグメントの前記第１のサブセットの前記セグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第１のセットにてメディアサーバから複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
各々が複数のメディアプログラムセグメントの前記第２のセグメントに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第２のセットにて前記メディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの第２のサブセットを検索する命令とを備える、
（ｃ）前記メディアサーバからの前記第１のセットの前記メディアプログラムを検索する前記命令から導出された、前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第１のセットの少なくとも１つを検索する要求を前記メディアサーバに伝送するステップと、
（ｄ）複数のメディアプログラムセグメントの前記第１のセットの前記要求された少なくとも１つを前記メディアサーバから受信するステップと、
（ｅ）前記ユーザ識別子を含みかつ複数のメディアプログラムセグメントの前記第２のセットを検索する前記命令から導出された、前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する要求を前記メディアプログラムプロバイダから伝送するステップと、
（ｆ）前記メディアプログラムプロバイダから前記メディアサーバにリダイレクトされた、複数のメディアプログラムの前記第２のセットの少なくとも１つを検索する前記伝送された要求に従って、前記第１のデバイスにおいて複数のメディアプログラムセグメントの前記第２のセットの前記要求された少なくとも１つを前記メディアサーバから受信するステップと、
（ｇ）前記第１のデバイス上の前記メディアプログラムの再生が終了されるまでステップ（ｃ）〜（ｆ）を繰り返すステップと、
（ｈ）前記メディアプログラムの再生を再開する要求を前記第２のデバイスから前記メディアプログラムプロバイダに伝送するステップと、
（ｉ）複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記最も最近の要求から判断された前記メディアプログラム内の時間的場所にて始まる再生を再開するために前記第２のデバイスにおいて前記メディアプログラムを受信するステップと
を備える方法。
[８]前記第１のデバイスから前記メディアプログラムプロバイダに伝送された、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記要求は、前記メディアプログラム識別子と前記メディアプログラム内の現在の時間的場所とを含む前記[７]に記載の方法。
[９]前記メディアサーバは、ライブストリーミングメディアサーバである前記[７]に記載の方法。
[１０]第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、
メディアプログラム識別子とユーザ識別子とを備える、メディアサーバから第１のデバイスに前記メディアプログラムを伝送する第１の要求を受信するステップと、
前記メディアプログラム識別子に関連した前記メディアプログラムを検索するステップと、
前記メディアサーバから前記第１のメディアプログラムデバイスに前記メディアプログラムをストリーミングするステップと、
メディアプログラムストリーミング情報を生成するために前記第１のメディアプログラムデバイスへの前記メディアプログラムの前記ストリーミングを前記メディアサーバにおいてモニタするステップと、
メディアプログラムプロバイダに前記メディアプログラムストリーミング情報を伝送するステップと、
前記メディアプログラムプロバイダに伝送された前記ストリーミング情報から判断された前記メディアプログラム内の時間的場所から再開する、前記メディアプログラムの伝送を再開する要求を前記メディアサーバにおいて第２のデバイスから受信するステップと、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記ストリーミング情報から判断された前記時間的場所から再開するステップと
を備える方法。
[１１]前記第１のデバイスは、フラッシュバイスであり、
前記第２のデバイスは、フラッシュデバイスであり、
前記第２のデバイスからの、前記メディアプログラムの伝送を再開する前記要求は、前記メディアプログラム識別子と、前記ユーザ識別子と、前記メディアプログラム内の前記時間的場所とを備え、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記ストリーミング情報から判断された前記時間的場所から再開するステップは、
前記メディアプログラム識別子および前記メディアプログラム内の前記時間的場所を前記第２のデバイスに伝送するステップ備える前記[１０]に記載の方法。
[１２]前記第１のデバイスは、フラッシュバイスであり、
前記第２のデバイスは、ライブストリーミングデバイスであり、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記ストリーミング情報から判断された前記時間的場所から再開するステップは、
前記再開される要求されたメディアプログラムについて、前記判断された時間的場所後に時間的に発生する複数のメディアセグメントを含む再開されるセグメントプレイリストを生成するステップと、
前記再開されたセグメントプレイリストを前記第２のデバイスに伝送するステップとを備える前記[１０]に記載の方法。
[１３]第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する方法であって、
ユーザ識別子を備える、メディアサーバから第１のデバイスへのメディアプログラムの伝送を開始する第１の要求を前記第１のデバイスから受信するステップと、
前記第１のデバイスにメディアサーバによりストリーミングされる前記メディアプログラムを識別するメディアプログラム識別子を前記第１のデバイスに伝送するステップと、
前記メディアサーバから前記第１のデバイスへの前記メディアプログラムのモニタされたストリーミングから生成されたメディアプログラムストリーミング情報を前記メディアサーバから受信するステップと、
前記メディアサーバから第２のデバイスへの前記メディアプログラムの伝送を再開する要求を受信するステップと、
前記メディアプログラムの伝送を再開する前記メディアプログラム内の時間的場所を少なくともある程度前記ストリーミング情報から判断するステップと、
メディアプログラム識別子および前記時間的場所を記述する情報を前記メディアプログラムプレーヤに伝送するステップと
を備える方法。
[１４]前記メディアサーバは、フラッシュサーバである前記[１３]に記載の方法。
[１５]第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、
（ａ）メディアプログラム識別子とユーザ識別子とを備える前記メディアプログラムの要求をメディアプログラムプロバイダにおいて前記第１のデバイスから受信する手段と、
（ｂ）前記要求されたメディアプログラムについてセグメントプレイリストを生成する手段と、
ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
各々が複数のメディアプログラムセグメントの前記第１のサブセットの前記複数のセグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第１のセットにてメディアサーバから前記複数のメディアプログラムセグメントの第１のサブセットを検索する命令と、
各々が複数のメディアプログラムセグメントの前記第２のセットのセグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第２のセットにてメディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの前記第２のサブセットを検索する命令とを備える、
（ｃ）前記第１のデバイスに前記セグメントプレイリストを伝送する手段と、
（ｄ）前記ユーザ識別子を含みかつ複数のメディアプログラムセグメントの前記第２のセットを検索する前記命令から導出された、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する要求を前記メディアプログラムプロバイダにおいて前記第１のデバイスから受信する手段と、
（ｅ）複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記受信された要求を前記メディアサーバにリダイレクトする手段と、
（ｆ）前記メディアプログラムの再生を再開する要求を前記メディアプログラムプロバイダにおいて前記第２のデバイスから受信する手段と、
（ｇ）複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記最も最近の受信された要求から、前記メディアプログラムの再生を再開する前記メディアプログラム内の時間的場所を判断する手段と、
（ｈ）前記第２のデバイスに前記メディアの再生を再開する情報を伝送する手段と
を備える装置。
[１６]前記第１のデバイスは、ライブストリーミングデバイスであり、
前記第２のデバイスは、ライブストリーミングデバイスであり、
前記第２のデバイスに前記メディアの再生を再開する情報を伝送する手段は、
（ｉ）前記再開される要求されたメディアプログラムについて、前記判断された時間的場所後に時間的に発生する複数のメディアセグメントを含む再開されるセグメントプレイリストを生成する手段と
（ｊ）前記再開されたセグメントプレイリストを前記第２のデバイスに伝送する手段と
を備える前記[１５]に記載の装置。
[１７]前記第１のデバイスは、ライブストリーミングデバイスであり、
前記第２のデバイスは、フラッシュストリーミングデバイスであり、
前記第２のデバイスに前記メディアの再生を再開する情報を伝送する前記手段は、前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所と前記メディアプログラム識別子とを前記第２のデバイスに伝送する前記手段を備える前記[１５]に記載の装置。
[１８]前記メディアプログラムプロバイダにおける前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記要求は、ユーザ識別子と前記メディアプログラム内の時間的場所とを含む前記[１５]に記載の装置。
[１９]前記装置は、複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記受信された要求を記録するステップを更に備え、
前記メディアプログラムの再生を再開する前記メディアプログラム内の前記時間的場所を判断する前記手段は、前記記録された受信された要求を使用して前記時間的場所を判断する手段を備える前記[１５]に記載の装置。
[２０]前記記録された受信された要求を使用して前記時間的場所を判断する前記手段は、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記最も最近記録された受信された要求の前に前記時間的場所を前記メディアプログラムセグメントから判断する手段を備える前記[１９]に記載の装置。
[２１]第１のデバイス上で開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、
（ａ）メディアプログラム識別子とユーザ識別子とを備える前記第１のデバイスからの前記メディアプログラムの要求をメディアプログラムプロバイダにおいて伝送する手段と、
（ｂ）前記第１のデバイスにおいて前記要求されたメディアプログラムのセグメントプレイリストを受信する手段と、
ここで、
前記メディアプログラムは、複数のメディアプログラムセグメントの第１のサブセットと、複数のメディアプログラムセグメントの前記第１のサブセット間に時間的に分散された複数のメディアプログラムセグメントの第２のサブセットとを備え、前記セグメントプレイリストは、
各々が複数の前記メディアプログラムセグメントの前記第１のサブセットの前記セグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第１のセットにてメディアサーバから複数のメディアプログラムセグメントの前記第１のサブセットを検索する命令と、
各々が複数の前記メディアプログラムセグメントの前記第２のサブセットの前記セグメントの１つに関連した複数のユニフォームリソースインディケータ（ＵＲＩs）の第２のセットにて前記メディアプログラムプロバイダを介して前記メディアサーバから複数のメディアプログラムセグメントの前記第２のサブセットを検索する命令とを備える、
（ｃ）前記メディアサーバからの複数の前記メディアプログラムの前記第１のセットを検索する前記命令から導出された、前記第１のデバイスからの、複数のメディアプログラムセグメントの前記第１のセットの少なくとも１つを検索する要求を前記メディアサーバに伝送する手段と、
（ｄ）複数のメディアプログラムセグメントの前記第１のセットの前記要求された少なくとも１つを前記メディアサーバから受信する手段と、
（ｅ）前記ユーザ識別子を含みかつ前記複数のメディアプログラムセグメントの前記第２のセットを検索する前記命令から導出された、前記第１のデバイスからの、前記複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する要求を前記メディアプログラムプロバイダから伝送する手段と、
（ｆ）前記メディアプログラムプロバイダから前記メディアサーバにリダイレクトされた、複数のメディアプログラムの前記第２のセットの少なくとも１つを検索する前記伝送された要求に従って、前記第１のデバイスにおいて複数のメディアプログラムセグメントの前記第２のセットの前記要求された少なくとも１つを前記メディアサーバから受信する手段と、
（ｇ）前記メディアプログラムの再生を再開する要求を前記第２のデバイスから前記メディアプログラムプロバイダに伝送する手段と、
（ｈ）複数のメディアプログラムセグメントの前記第２のセットの前記少なくとも１つを検索する前記最も最近の要求から判断された前記メディアプログラム内の時間的場所にて始まる再生を再開するために前記第２のデバイスにおいて前記メディアプログラムを受信する手段と
を備える装置。
[２２]前記第１のデバイスから前記メディアプログラムプロバイダに伝送された、複数のメディアプログラムセグメントの前記第２のセットの少なくとも１つを検索する前記要求は、前記メディアプログラム識別子と前記メディアプログラム内の現在の時間的場所とを含む前記[２１]に記載の装置。
[２３]前記メディアサーバは、ライブストリーミングメディアサーバである前記[２１]に記載の装置。
[２４]第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、
メディアプログラム識別子とユーザ識別子とを備える、メディアサーバから第１のデバイスに前記メディアプログラムを伝送する第１の要求を受信する手段と、
前記メディアプログラム識別子に関連した前記メディアプログラムを検索する手段と、
前記メディアサーバから前記第１のメディアプログラムデバイスに前記メディアプログラムをストリーミングする手段と、
メディアプログラムストリーミング情報を生成するために前記第１のメディアプログラムデバイスへの前記メディアプログラムの前記ストリーミングを前記メディアサーバにおいてモニタする手段と、
メディアプログラムプロバイダに前記メディアプログラムストリーミング情報を伝送する手段と、
前記メディアプログラムプロバイダに伝送された前記ストリーミング情報から判断された前記メディアプログラム内の時間的場所から再開する、前記メディアプログラムの伝送を再開する要求を前記メディアサーバにおいて第２のデバイスから受信する手段と、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記ストリーミング情報から判断された前記時間的場所から再開する手段と
を備える装置。
[２５]前記第１のデバイスは、フラッシュバイスであり、
前記第２のデバイスは、フラッシュデバイスであり、
前記第２のデバイスからの、前記メディアプログラムの伝送を再開する前記要求は、前記メディアプログラム識別子と、前記ユーザ識別子と、前記メディアプログラム内の前記時間的場所とを備え、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記ストリーミング情報から判断された前記時間的場所から再開する前記手段は、前記メディアプログラム識別子および前記メディアプログラム内の前記時間的場所を前記第２のデバイスに伝送する手段を備える前記[２４]に記載の装置。
[２６]前記第１のデバイスは、フラッシュバイスであり、
前記第２のデバイスは、ライブストリーミングデバイスであり、
前記メディアサーバから前記第２のデバイスへの前記メディアプログラムの伝送を前記ストリーミング情報から判断された前記時間的場所から再開する前記手段は、
前記再開される要求されたメディアプログラムについて、前記判断された時間的場所後に時間的に発生するメディアセグメントを含む再開されるセグメントプレイリストを生成する手段と、
前記再開されたセグメントプレイリストを前記第２のデバイスに伝送する手段とを備える前記[２４]に記載の装置。
[２７]第１のデバイスにより開始され第２のデバイス上で再開されるメディアプログラムの再生を再開する装置であって、
ユーザ識別子を備える、メディアサーバから第１のデバイスへのメディアプログラムの伝送を開始する第１の要求を前記第１のデバイスから受信する手段と、
前記第１のデバイスにメディアサーバによりストリーミングされる前記メディアプログラムを識別するメディアプログラム識別子を前記第１のデバイスに伝送する手段と、
前記メディアサーバから前記第１のデバイスへの前記メディアプログラムのモニタされたストリーミングから生成されたメディアプログラムストリーミング情報を前記メディアサーバから受信する手段と、
前記メディアサーバから第２のデバイスへの前記メディアプログラムの伝送を再開する要求を受信する手段と、
前記メディアプログラムの伝送を再開する前記メディアプログラム内の時間的場所を少なくとも一部前記ストリーミング情報から判断する手段と、
メディアプログラム識別子および前記時間的場所を記述する情報を前記メディアプログラムプレーヤに伝送する手段と
を備える装置。
[２８]前記メディアサーバは、フラッシュサーバである前記[２７]に記載の装置。
【図１】
0005917508.tif 000002
【図２】
0005917508.tif 000003
【図３】
0005917508.tif 000004
【図４Ａ】
0005917508.tif 000005
【図４Ｂ】
0005917508.tif 000006
【図５】
0005917508.tif 000007
【図６】
0005917508.tif 000008
【図７Ａ】
0005917508.tif 000009
【図７Ｂ】
0005917508.tif 000010
【図８】
0005917508.tif 000011
【図９Ａ】
0005917508.tif 000012
【図９Ｂ】
0005917508.tif 000013