(57)【要約】ネットワークコネクティビティの喪失の前に、メディアアセットを効率的かつ迅速にダウンロードするための方法およびシステムが説明される。本方法は、ネットワークコネクティビティの喪失の前にメディアアセットの最大部分をダウンロードするように、ユーザが異なるバージョンでメディアアセットの部分をダウンロードすることを可能にし得る。メディアアセットのあるバージョンは、メディアアセットの他のバージョンよりも迅速にダウンロードされ得る。本方法はまた、ネットワークコネクティビティがなくてもユーザが部分的にダウンロードされたメディアアセットを視聴することも可能にし得る。本方法はまた、いったんネットワークコネクティビティが回復されると、第１のバージョンでダウンロードされたメディアアセットの部分を第２のバージョンのメディアアセットの部分と置換し得る。
2019511848.tif 000002
【特許請求の範囲】
【請求項１】
メディアアセットを効率的にダウンロードするための方法であって、
メディアアセットのユーザ選択を受信するステップと、
ネットワークの将来の非可用性を判定するステップと、
前記ユーザ選択を受信するステップに基づいて、サーバから、前記メディアアセットと関連付けられる第１のバージョン識別子および前記メディアアセットと関連付けられる第２のバージョン識別子を受信するステップであって、前記第１のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第１のバージョンと関連付けられ、前記第２のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第２のバージョンと関連付けられる、ステップと、
前記第１のバージョン識別子および前記第２のバージョン識別子を受信するステップに応答して、前記メディアアセットを第１のセグメントおよび第２のセグメントに分割するステップと、
前記サーバに、
前記メディアアセットの前記第１のセグメントを備える、前記第１のバージョン識別子と関連付けられる前記メディアアセットの前記第１のバージョンの第１の部分と、
前記メディアアセットの前記第２のセグメントを備える、前記第２のバージョン識別子と関連付けられる前記メディアアセットの前記第２のバージョンの第２の部分と、
の要求を伝送するステップと、
前記ネットワークの前記判定された将来の非可用性に先立って、前記サーバから、前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分を受信するステップと、
を含む、方法。
【請求項２】
前記第１のバージョンは、標準解像度品質、高解像度品質、４Ｋビデオ品質、２４０ｐビデオ品質、３２０ｐビデオ品質、４８０ｐビデオ品質、７２０ｐビデオ品質、および１０８０ｐビデオ品質のうちのいずれかを備える、請求項１に記載の方法。
【請求項３】
前記将来の非可用性を判定するステップはさらに、カレンダ、場所、および挙動パターンのうちの少なくとも１つを備える、ユーザプロファイルを読み出すステップを含む、請求項１に記載の方法。
【請求項４】
前記メディアアセットの前記第１のバージョンの前記第１の部分を前記メディアアセットの前記第２のバージョンの第３の部分と置換するステップをさらに含む、請求項１に記載の方法。
【請求項５】
前記第１のセグメントの第１のサイズおよび前記第２のセグメントの第２のサイズは、前記ネットワークの前記将来の非可用性に基づく、請求項１に記載の方法。
【請求項６】
前記分割するステップは、前記ネットワークの前記将来の非可用性および前記ネットワークの前記将来の非可用性まで残っている時間に基づく、請求項１に記載の方法。
【請求項７】
前記メディアアセットの前記第１のセグメントは、オープニングクレジットまたはクロージングクレジットを備える、請求項１に記載の方法。
【請求項８】
前記ユーザ選択は、第１のユーザ選択であり、前記メディアアセットは、第１のメディアアセットであり、
ユーザデバイスにおいて、第２のメディアアセットの第２のユーザ選択を受信するステップと、
前記ユーザデバイスの識別子に基づいて、前記第１のメディアアセットおよび前記第２のメディアアセットのダウンロード順序を判定するステップと、
さらに含む、請求項１に記載の方法。
【請求項９】
前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分と関連付けられるアイコンを表示するために生成するステップをさらに含む、請求項１に記載の方法。
【請求項１０】
前記ユーザ選択は、第１のユーザ選択であり、ダウンロード時間、前記メディアアセットの前記第１のバージョンと関連付けられる割合、および前記メディアアセットの所望のバージョンのうちの少なくとも１つの第２のユーザ選択を受信するステップをさらに含む、請求項１に記載の方法。
【請求項１１】
メディアアセットを効率的にダウンロードするためのシステムであって、前記システムは、制御回路を備え、前記制御回路は、
メディアアセットのユーザ選択を受信することと、
ネットワークの将来の非可用性を判定することと、
前記ユーザ選択を受信するステップに基づいて、サーバから、前記メディアアセットと関連付けられる第１のバージョン識別子および前記メディアアセットと関連付けられる第２のバージョン識別子を受信することであって、前記第１のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第１のバージョンと関連付けられ、前記第２のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第２のバージョンと関連付けられる、ことと、
前記第１のバージョン識別子および前記第２のバージョン識別子を受信するステップに応答して、前記メディアアセットを第１のセグメントおよび第２のセグメントに分割することと、
前記サーバに、
前記メディアアセットの前記第１のセグメントを備える、前記第１のバージョン識別子と関連付けられる前記メディアアセットの前記第１のバージョンの第１の部分と、
前記メディアアセットの前記第２のセグメントを備える、前記第２のバージョン識別子と関連付けられる前記メディアアセットの前記第２のバージョンの第２の部分と、
の要求を伝送することと、
前記ネットワークの前記判定された将来の非可用性に先立って、前記サーバから、前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分を受信することと
を行うように構成される、システム。
【請求項１２】
前記第１のバージョンは、標準解像度品質、高解像度品質、４Ｋビデオ品質、２４０ｐビデオ品質、３２０ｐビデオ品質、４８０ｐビデオ品質、７２０ｐビデオ品質、および１０８０ｐビデオ品質のうちのいずれかを備える、請求項１１に記載のシステム。
【請求項１３】
前記将来の非可用性を判定するように構成される前記制御回路はさらに、カレンダ、場所、および挙動パターンのうちの少なくとも１つを備える、ユーザプロファイルを読み出すように構成される、請求項１１に記載のシステム。
【請求項１４】
前記制御回路はさらに、前記メディアアセットの前記第１のバージョンの前記第１の部分を前記メディアアセットの前記第２のバージョンの第３の部分と置換するように構成される、請求項１１に記載のシステム。
【請求項１５】
前記第１のセグメントの第１のサイズおよび前記第２のセグメントの第２のサイズは、前記ネットワークの前記将来の非可用性に基づく、請求項１１に記載のシステム。
【請求項１６】
前記分割するステップは、前記ネットワークの前記将来の非可用性および前記ネットワークの前記将来の非可用性まで残っている時間に基づく、請求項１１に記載のシステム。
【請求項１７】
前記メディアアセットの前記第１のセグメントは、オープニングクレジットまたはクロージングクレジットを備える、請求項１１に記載のシステム。
【請求項１８】
前記ユーザ選択は、第１のユーザ選択であり、前記メディアアセットは、第１のメディアアセットであり、前記制御回路はさらに、
ユーザデバイスにおいて、第２のメディアアセットの第２のユーザ選択を受信することと、
前記ユーザデバイスの識別子に基づいて、前記第１のメディアアセットおよび前記第２のメディアアセットのダウンロード順序を判定することと
を行うように構成される、請求項１１に記載のシステム。
【請求項１９】
前記制御回路はさらに、前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分と関連付けられるアイコンを表示するために生成するように構成される、請求項１１に記載のシステム。
【請求項２０】
前記ユーザ選択は、第１のユーザ選択であり、前記制御回路はさらに、ダウンロード時間、前記メディアアセットの前記第１のバージョンと関連付けられる割合、および前記メディアアセットの所望のバージョンのうちの少なくとも１つの第２のユーザ選択を受信するように構成される、請求項１１に記載のシステム。
【請求項２１】
メディアアセットを効率的にダウンロードするためのシステムであって、
メディアアセットのユーザ選択を受信するための手段と、
ネットワークの将来の非可用性を判定するための手段と、
前記ユーザ選択を受信するステップに基づいて、サーバから、前記メディアアセットと関連付けられる第１のバージョン識別子および前記メディアアセットと関連付けられる第２のバージョン識別子を受信するための手段あって、前記第１のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第１のバージョンと関連付けられ、前記第２のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第２のバージョンと関連付けられる、手段と、
前記第１のバージョン識別子および前記第２のバージョン識別子を受信するステップに応答して、前記メディアアセットを第１のセグメントおよび第２のセグメントに分割するための手段と、
前記サーバに、
前記メディアアセットの前記第１のセグメントを備える、前記第１のバージョン識別子と関連付けられる前記メディアアセットの前記第１のバージョンの第１の部分と、
前記メディアアセットの前記第２のセグメントを備える、前記第２のバージョン識別子と関連付けられる前記メディアアセットの前記第２のバージョンの第２の部分と、
の要求を伝送するための手段と、
前記ネットワークの前記判定された将来の非可用性に先立って、前記サーバから、前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分を受信するための手段と、
を備える、システム。
【請求項２２】
前記第１のバージョンは、標準解像度品質、高解像度品質、４Ｋビデオ品質、２４０ｐビデオ品質、３２０ｐビデオ品質、４８０ｐビデオ品質、７２０ｐビデオ品質、および１０８０ｐビデオ品質のうちのいずれかを備える、請求項２１に記載のシステム。
【請求項２３】
前記将来の非可用性を判定するための前記手段はさらに、カレンダ、場所、および挙動パターンのうちの少なくとも１つを備える、ユーザプロファイルを読み出すための手段を備える、請求項２１に記載のシステム。
【請求項２４】
前記メディアアセットの前記第１のバージョンの前記第１の部分を前記メディアアセットの前記第２のバージョンの第３の部分と置換するための手段をさらに備える、請求項２１に記載のシステム。
【請求項２５】
前記第１のセグメントの第１のサイズおよび前記第２のセグメントの第２のサイズは、前記ネットワークの前記将来の非可用性に基づく、請求項２１に記載のシステム。
【請求項２６】
前記分割するステップは、前記ネットワークの前記将来の非可用性および前記ネットワークの前記将来の非可用性まで残っている時間に基づく、請求項２１に記載のシステム。
【請求項２７】
前記メディアアセットの前記第１のセグメントは、オープニングクレジットまたはクロージングクレジットを備える、請求項２１に記載のシステム。
【請求項２８】
前記ユーザ選択は、第１のユーザ選択であり、前記メディアアセットは、第１のメディアアセットであり、
ユーザデバイスにおいて、第２のメディアアセットの第２のユーザ選択を受信するための手段と、
前記ユーザデバイスの識別子に基づいて、前記第１のメディアアセットおよび前記第２のメディアアセットのダウンロード順序を判定するための手段と、
をさらに備える、請求項２１に記載のシステム。
【請求項２９】
前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分と関連付けられるアイコンを表示するために生成するための手段をさらに備える、請求項２１に記載のシステム。
【請求項３０】
前記ユーザ選択は、第１のユーザ選択であり、ダウンロード時間、前記メディアアセットの前記第１のバージョンと関連付けられる割合、および前記メディアアセットの所望のバージョンのうちの少なくとも１つの第２のユーザ選択を受信するための手段をさらに備える、請求項２１に記載のシステム。
【請求項３１】
メディアアセットを効率的にダウンロードするための方法であって、
メディアアセットのユーザ選択を受信するステップと、
ネットワークの将来の非可用性を判定するステップと、
前記サーバに、
前記メディアアセットの第１のバージョンの第１の部分と、
前記メディアアセットの第２のバージョンの第２の部分と、
の要求を伝送するステップと、
前記ネットワークの前記判定された将来の非可用性に先立って、前記サーバから、前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分を受信するステップと、
を含む、方法。
【請求項３２】
前記第１のバージョンは、標準解像度品質、高解像度品質、４Ｋビデオ品質、２４０ｐビデオ品質、３２０ｐビデオ品質、４８０ｐビデオ品質、７２０ｐビデオ品質、および１０８０ｐビデオ品質のうちのいずれかを備える、請求項３１に記載の方法。
【請求項３３】
前記将来の非可用性を判定するステップはさらに、カレンダ、場所、および挙動パターンのうちの少なくとも１つを備える、ユーザプロファイルを読み出すステップを含む、請求項３１−３２のいずれかに記載の方法。
【請求項３４】
前記メディアアセットの前記第１のバージョンの前記第１の部分を前記メディアアセットの前記第２のバージョンの第３の部分と置換するステップをさらに含む、請求項３１−３３のいずれかに記載の方法。
【請求項３５】
前記第１の部分の第１のサイズおよび前記第２の部分の第２のサイズは、前記ネットワークの前記将来の非可用性に基づく、請求項３１−３４のいずれかに記載の方法。
【請求項３６】
前記ネットワークの前記将来の非可用性および前記ネットワークの前記将来の非可用性まで残っている時間に基づいて、前記メディアアセットを前記第１の部分および前記第２の部分に分割するステップをさらに含む、請求項３１−３５のいずれかに記載の方法。
【請求項３７】
前記メディアアセットの前記第１の部分は、オープニングクレジットまたはクロージングクレジットを備える、請求項３１−３６のいずれかに記載の方法。
【請求項３８】
前記ユーザ選択は、第１のユーザ選択であり、前記メディアアセットは、第１のメディアアセットであり、
ユーザデバイスにおいて、第２のメディアアセットの第２のユーザ選択を受信するステップと、
前記ユーザデバイスの識別子に基づいて、前記第１のメディアアセットおよび前記第２のメディアアセットのダウンロード順序を判定するステップと、
をさらに含む、請求項３１−３７のいずれかに記載の方法。
【請求項３９】
前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分と関連付けられるアイコンを表示するために生成するステップをさらに含む、請求項３１−３８のいずれかに記載の方法。
【請求項４０】
前記ユーザ選択は、第１のユーザ選択であり、ダウンロード時間、前記メディアアセットの前記第１のバージョンと関連付けられる割合、および前記メディアアセットの所望のバージョンのうちの少なくとも１つの第２のユーザ選択を受信するステップをさらに含む、請求項３１−３９のいずれかに記載の方法。
【請求項４１】
メディアアセットを効率的にダウンロードするための複数の命令を記憶する、非一過性のコンピュータ可読媒体であって、前記複数の命令は、
メディアアセットのユーザ選択を受信するための命令と、
ネットワークの将来の非可用性を判定するための命令と、
前記ユーザ選択を受信するステップに基づいて、サーバから、前記メディアアセットと関連付けられる第１のバージョン識別子および前記メディアアセットと関連付けられる第２のバージョン識別子を受信するための命令であって、前記第１のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第１のバージョンと関連付けられ、前記第２のバージョン識別子は、前記サーバ上に記憶された前記メディアアセットの第２のバージョンと関連付けられる、命令と、
前記第１のバージョン識別子および前記第２のバージョン識別子を受信するステップに応答して、前記メディアアセットを第１のセグメントおよび第２のセグメントに分割するための命令と、
前記サーバに、
前記メディアアセットの前記第１のセグメントを備える、前記第１のバージョン識別子と関連付けられる前記メディアアセットの前記第１のバージョンの第１の部分と、
前記メディアアセットの前記第２のセグメントを備える、前記第２のバージョン識別子と関連付けられる前記メディアアセットの前記第２のバージョンの第２の部分と、
の要求を伝送するための命令と、
前記ネットワークの前記判定された将来の非可用性に先立って、前記サーバから、前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分を受信するための命令と、
を備える、非一過性のコンピュータ可読媒体。
【請求項４２】
前記第１のバージョンは、標準解像度品質、高解像度品質、４Ｋビデオ品質、２４０ｐビデオ品質、３２０ｐビデオ品質、４８０ｐビデオ品質、７２０ｐビデオ品質、および１０８０ｐビデオ品質のうちのいずれかを備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４３】
前記将来の非可用性を判定するための前記命令はさらに、カレンダ、場所、および挙動パターンのうちの少なくとも１つを備える、ユーザプロファイルを読み出すための命令を備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４４】
前記メディアアセットの前記第１のバージョンの前記第１の部分を前記メディアアセットの前記第２のバージョンの第３の部分と置換するための命令をさらに備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４５】
前記第１のセグメントの第１のサイズおよび前記第２のセグメントの第２のサイズは、前記ネットワークの前記将来の非可用性に基づく、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４６】
前記分割するステップは、前記ネットワークの前記将来の非可用性および前記ネットワークの前記将来の非可用性まで残っている時間に基づく、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４７】
前記メディアアセットの前記第１のセグメントは、オープニングクレジットまたはクロージングクレジットを備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４８】
前記ユーザ選択は、第１のユーザ選択であり、前記メディアアセットは、第１のメディアアセットであり、
ユーザデバイスにおいて、第２のメディアアセットの第２のユーザ選択を受信するための命令と、
前記ユーザデバイスの識別子に基づいて、前記第１のメディアアセットおよび前記第２のメディアアセットのダウンロード順序を判定するための命令と、
をさらに備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項４９】
前記メディアアセットの前記第１のバージョンの前記第１の部分および前記メディアアセットの前記第２のバージョンの前記第２の部分と関連付けられるアイコンを表示するために生成するための命令をさらに備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【請求項５０】
前記ユーザ選択は、第１のユーザ選択であり、ダウンロード時間、前記メディアアセットの前記第１のバージョンと関連付けられる割合、および前記メディアアセットの所望のバージョンのうちの少なくとも１つの第２のユーザ選択を受信するための命令をさらに備える、請求項４１に記載の複数の命令を記憶する非一過性のコンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
メディアガイドアプリケーションのユーザは、記憶するためにメディアアセットをそれらのユーザデバイスにダウンロードすることを所望し得る。ユーザは、通信ネットワークへのアクセスを有していないときにも、記憶されたメディアアセットを鑑賞し得る。メディアガイドアプリケーションは、メディアアセットが迅速かつ完全にユーザデバイス上にダウンロードされることを可能にするように、ダウンロード特性を較正しない。これは、ユーザデバイスがダウンロード中に通信ネットワークへのアクセスを失う場合に、不完全なダウンロードを行わせる。メディアガイドアプリケーションは、メディアアセットがユーザデバイス上に部分的にのみダウンロードされた場合に、ユーザがメディアアセットを鑑賞することを可能にしない。故に、不完全なダウンロードは、ユーザにとって無用かつ不満であり得る。
【発明の概要】
【課題を解決するための手段】
【０００２】
メディアアセットを効率的にダウンロードするための方法およびシステムが、本開示に説明される。いくつかの側面では、本方法は、メディアアセットのユーザ選択を受信するステップを含む。例えば、メディアガイドアプリケーションは、ユーザが映画Ａをダウンロードし、将来のアクセスのためにそれをユーザのデバイス上でローカルに記憶させることを所望することを示す、「映画Ａ」のユーザ選択を受信してもよい。いくつかの実施形態では、メディアガイドアプリケーションは、２つを上回るメディアアセットのユーザ選択を受信し、ユーザによって使用されている現在のユーザデバイスに基づいて、それらを順序付けてもよい。例えば、メディアガイドアプリケーションがテレビ上で映画および歌のユーザ選択を受信した場合、メディアガイドアプリケーションが、映画がテレビ上で歌よりも頻繁にアクセスされていることを述べる所定の情報を有し得るため、メディアガイドアプリケーションは、メディアアセットのダウンロード順序において歌の前に映画を予定に入れてもよい。
【０００３】
本方法は、ネットワークの将来の非可用性を判定するステップを含んでもよい。例えば、メディアガイドアプリケーションは、ユーザのカレンダからの情報に基づいて、ユーザが間もなく飛行機に搭乗し、飛行の持続時間の間にネットワークアクセスを有さないであろうことを判定してもよい。メディアガイドアプリケーションはさらに、ユーザが飛行機に搭乗する前に、「映画Ａ」の要求されたメディアアセットダウンロードがＨＤ品質で完了されることができないことを判定してもよい。メディアガイドアプリケーションは、カレンダ、場所、および挙動パターンのうちの１つに基づいて、将来の非可用性を判定してもよい。
【０００４】
本方法は、ユーザ選択を受信するステップに基づいて、サーバから、メディアアセットと関連付けられる第１のバージョン識別子およびメディアアセットと関連付けられる第２のバージョン識別子を受信するステップを含んでもよく、第１のバージョン識別子は、サーバ上に記憶されたメディアアセットの第１のバージョンと関連付けられ、第２のバージョン識別子は、サーバ上に記憶されたメディアアセットの第２のバージョンと関連付けられる。例えば、メディアガイドアプリケーションは、要求されたメディアアセットの全ての利用可能なバージョンの識別子を要求する、要求をサーバに伝送してもよい。メディアガイドアプリケーションは、メディアアセット「映画Ａ」の異なるバージョンと関連付けられる以下の識別子、すなわち、「ＨＤ」および「ＳＤ」を受信してもよい。バージョンは、ＨＤ品質、ＳＤ品質、４Ｋ品質、２４０ｐ品質、３２０ｐ品質、４８０品質、７２０ｐ品質、および１０８０ｐ品質のうちのいずれかであってもよい。
【０００５】
本方法は、第１のバージョン識別子および第２のバージョン識別子を受信するステップに応答して、メディアアセットを第１のセグメントおよび第２のセグメントに分割するステップを含んでもよい。例えば、メディアガイドアプリケーションは、メディアアセット「映画Ａ」を等しい長さの２つのセグメントに分割してもよく、１つのセグメントは、ＳＤ品質でダウンロードされ、別のバージョンは、ＨＤ品質でダウンロードされるであろう。セグメントのサイズは、ネットワークの判定された将来の非可用性に基づいてもよい。分割するステップはさらに、ネットワークの将来の非可用性まで残っている時間に基づいてもよい。例えば、メディアガイドアプリケーションは、ネットワークコネクティビティの喪失の前にメディアアセットが完全にダウンロードされ得ることことを確実にするように、メディアアセットを分割してもよい。分割するステップはさらに、最大ダウンロード時間、メディアアセットの第１のバージョンと関連付けられる割合、およびメディアアセットの所望のバージョン等の受信されたユーザ選択に基づいてもよい。
【０００６】
本方法は、サーバに、メディアアセットの第１のセグメントを備える、第１のバージョン識別子と関連付けられるメディアアセットの第１のバージョンの第１の部分と、メディアアセットの第２のセグメントを備える、第２のバージョン識別子と関連付けられるメディアアセットの第２のバージョンの第２の部分との要求を伝送するステップを含んでもよい。例えば、メディアガイドアプリケーションは、ＳＤ品質で「映画Ａ」の第１の半分およびＨＤ品質で「映画Ａ」の第２の半分を要求する、要求をビデオオンデマンドサーバに伝送してもよく、要求は、受信された識別子「ＳＤ」および「ＨＤ」を備える。メディアガイドアプリケーションは、「映画Ａ」の開始および終了部分が、それぞれ、オープニングおよびエンディングクレジットのみを含有し得、故に、ユーザにとって関心ではない場合があるため、これらの部分にＳＤ品質のみを要求してもよい。
【０００７】
本方法は、ネットワークの判定された将来の非可用性に先立って、サーバから、メディアアセットの第１のバージョンの第１の部分およびメディアアセットの第２のバージョンの第２の部分を受信するステップを含んでもよい。例えば、メディアガイドアプリケーションは、ＳＤ品質で「映画Ａ」の第１の半分およびＨＤ品質で「映画Ａ」の第２の半分を受信してもよい。メディアガイドアプリケーションは、「映画Ａ」がいずれのバージョンでどの程度ダウンロードされたかを示す番組一覧ページ上のアイコンを表示するために生成してもよい。メディアガイドアプリケーションはまた、以降の時間に「映画Ａ」のＳＤ部分を「映画Ａ」のＨＤ部分と置換してもよい。
【図面の簡単な説明】
【０００８】
本開示の上記および他の目的および利点は、類似参照文字が全体を通して類似部品を指す、添付図面と併せて解釈される、以下の詳細な説明を考慮することによって明白となるであろう。
【０００９】
【図１】図１は、本開示のいくつかの実施形態による、ダウンロードのために利用可能なメディアアセットを示す、例証的メディアガイドアプリケーション画面である。
【図２】図２は、本開示のいくつかの実施形態による、ダウンロードされたメディアアセットを示す、例証的メディアガイドアプリケーション画面である。
【図３】図３は、本開示のいくつかの実施形態による、メディアガイドアプリケーションによって生成された表示画面の例証的実施例を示す。
【図４】図４は、本開示のいくつかの実施形態による、メディアガイドアプリケーションによって生成された表示画面の別の例証的実施例を示す。
【図５】図５は、本開示のいくつかの実施形態による、例証的ユーザ機器デバイスのブロック図である。
【図６】図６は、本開示のいくつかの実施形態による、例証的メディアシステムのブロック図である。
【図７】図７は、本開示のいくつかの実施形態による、メディアアセットを効率的にダウンロードするための例示的プロセスである。
【図８】図８は、本開示のいくつかの実施形態による、メディアアセットのユーザ選択を受信するための例示的プロセスである。
【図９】図９は、本開示のいくつかの実施形態による、ネットワークの将来の非可用性を判定するための例示的プロセスである。
【図１０】図１０は、本開示のいくつかの実施形態による、ネットワークから第１のバージョン識別子および第２のバージョン識別子を受信するための例示的プロセスである。
【図１１】図１１は、本開示のいくつかの実施形態による、メディアアセットのどのような割合が第１のバージョンでダウンロードされるべきかを判定するための例示的プロセスである。
【図１２】図１２は、本開示のいくつかの実施形態による、メディアアセットを分割するための例示的プロセスである。
【図１３】図１３は、本開示のいくつかの実施形態による、メディアアセットの第１および第２の部分を受信するための例示的プロセスである。
【図１４】図１４は、本開示のいくつかの実施形態による、ダウンロードされたメディアアセットを置換するための例示的プロセスである。
【発明を実施するための形態】
【００１０】
ネットワークコネクティビティの喪失の前に、メディアアセットを効率的かつ迅速にダウンロードするために、方法およびシステムが要求され得る。例えば、メディアガイドアプリケーションは、ユーザが５分以内に飛行機に搭乗しなければならないことを判定し、映画をダウンロードするユーザ要求を受信してもよい。メディアガイドアプリケーションは、セグメントで映画をダウンロードしてもよく、セグメントの７５％は、ＨＤ品質よりも速くダウンロードするＳＤ品質でダウンロードされ、セグメントの残りの２５％は、ＨＤ品質でダウンロードされる。これは、ユーザが飛行機に搭乗してネットワークコネクティビティを失う前に、ダウンロードが完了されることを可能にし得る。
【００１１】
図１は、本開示の実施形態を組み込む、ダウンロードのために利用可能なメディアアセットを示す、例証的メディアガイドアプリケーション画面１００である。画面１００は、簡単にするために３つだけのメディアアセットを描写するが、任意の数のメディアアセットが、本開示内の実施形態によると、ダウンロードのために利用可能であるものとして表示されてもよい。画面１００は、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、および無線ユーザ通信デバイス６０６のうちのいずれかの上で表示されてもよい。
【００１２】
画面１００は、ダウンロードのために利用可能なメディアアセットを示してもよい。メディアアセットがダウンロードされていないので、それらは、通信ネットワーク６１４が利用可能である間に視聴するためのみに利用可能であり得る。いったんメディアアセットがダウンロードされると、それらは、たとえ通信ネットワーク６１４が利用可能ではなくても視聴するために利用可能であり得る。例えば、メディアアセットは、それらがダウンロードされていない間に視聴されるように、ケーブルテレビネットワークまたはインターネットへのアクセスを要求し得る。
【００１３】
画面１００は、ダウンロードのために利用可能である、多くの異なるタイプのメディアアセットのためのアイコンを示してもよい。メディアガイドアプリケーションは、ディスプレイ５１２上で制御回路５０４を使用して画面１００を表示するために生成してもよい。例えば、映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６は、ダウンロードのために利用可能であり、それらの個別のアイコンによって表されてもよい。映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６のためのアイコンは、任意の形状またはサイズであってもよく、テキスト、画像、およびオーディオの任意の組み合わせを含んでもよい。いくつかの実施形態では、映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６は、セットトップボックス等のユーザデバイスによってダウンロードされたメディアアセットである。メディアアセットは、タブレット等の別の接続されたユーザデバイス上にダウンロードするために利用可能であり得る。いくつかの実施形態では、映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６は、ビデオオンデマンドメディアアセットである、メディアアセットである。メディアアセットは、ダウンロード後に視聴されるように、任意のユーザデバイス上にダウンロードするために利用可能であり得る。
【００１４】
映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６は、ユーザ入力インターフェース５１０を通してユーザによって選択可能であり得る。メディアガイドアプリケーションは、任意の数のメディアアセットがユーザによって選択されることを可能にし得る。
【００１５】
インジケータ１０８は、画面１００を表示するユーザデバイスの識別子または名称を含んでもよい。メディアガイドアプリケーションは、通信ネットワーク６１４を使用して、インジケータ１０８によって識別されるユーザデバイスを他のユーザデバイスに接続してもよい。例えば、タブレットが、インターネットを使用してセットトップボックスに接続されてもよい。インジケータ１０８は、テキスト、画像、およびオーディオの任意の組み合わせを含んでもよい。
【００１６】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザが両方をダウンロードすることを所望することを示す、映画Ａ１０２およびテレビ番組Ｂ１０４の両方の選択を受信してもよい。メディアガイドアプリケーションは、現在のデバイスがタブレットであることを判定し、タブレットがテレビ番組よりも頻繁に映画を視聴するために使用されているという情報を記憶回路５０８から読み出してもよい。記憶回路５０８内の情報は、異なるタイプのユーザデバイス上で異なるタイプのメディアを視聴する頻度を列挙してもよい。読み出された情報に基づいて、メディアガイドアプリケーションは、テレビ番組Ｂ１０４の前にダウンロードするために映画Ａ１０２を予定に入れてもよい。本ダウンロード順序は、記憶回路５０８を使用して記憶されてもよい。
【００１７】
図２は、本開示の実施形態を組み込む、ダウンロードされたメディアアセットを示す、例証的メディアガイドアプリケーション画面２００である。メディアガイドアプリケーションは、いったん画面１００に示されるメディアアセットが完全または部分的にダウンロードされると、画面２００を表示するために生成してもよい。メディアガイドアプリケーションは、ユーザ入力インターフェース５１０を通して、画面２００を表示するために生成する前にメディアアセットがダウンロードされるべきであるというユーザ入力を受信してもよい。
【００１８】
メディアガイドアプリケーションは、映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６のための表示するために生成されたアイコンと同様に、映画Ａ２０２、テレビ番組Ｂ２０４、および歌Ｃ２０６のためのアイコンを表示するために生成してもよい。メディアガイドアプリケーションは、インジケータ１０８と同様にインジケータ２０８を表示するために生成してもよい。
【００１９】
メディアガイドアプリケーションはまた、各メディアアセットのためのアイコンの上に、アイコン２１０のような部分的に透明または不透明なアイコンを表示するために生成してもよい。アイコン２１０は、映画Ａ２０２のどの部分がダウンロードされたかを示してもよい。アイコン２１０はまた、どのバージョンで映画Ａ２０２がダウンロードされたかを示してもよい。本明細書で参照されるように、「バージョン」は、ビデオ品質（ＨＤ、ＳＤ、および４Ｋ品質等）、音質（モノまたはステレオ音響等）、またはメディアアセットの長さ（拡張版の長さまたはディレクターズカットの長さ等）を指し得る。
【００２０】
メディアガイドアプリケーションは、アイコン２１０によって示される情報を表すために、アイコン２１２−２２２のうちのいずれかを使用してもよい。アイコン２１２−２２２は、例示的アイコンとして示され、任意の他のアイコンが、本開示の実施形態に従って使用されてもよい。いくつかの実施形態では、メディアガイドアプリケーションは、ユーザ入力に基づいて、アイコン２１２−２２２のうちのいずれを表示するかを選定する。いくつかの実施形態では、メディアガイドアプリケーションは、メディアアセットのタイプに基づいて、アイコン２１２−２２２のうちのいずれを表示するかを選定する。例えば、アイコン２１２は、テレビ番組Ｂ２０４等のテレビ番組のために表示されてもよく、アイコン２３４は、歌Ｃ２０６等の歌のために表示されてもよい。いくつかの実施形態では、アイコン２１２、２１４、および２１６が、複数のバージョンでダウンロードされたメディアアセットに使用される一方で、アイコン２１８、２２０、および２２２は、単一のバージョンのみでダウンロードされたメディアアセットに使用される。
【００２１】
例えば、メディアガイドアプリケーションは、メディアアセットのどの部分がＨＤ品質等の第１のバージョンでダウンロードされたか、どの部分がＳＤ品質等の第２のバージョンでダウンロードされたかを示すために、アイコン２１２を使用してもよい。アイコン２１２は、円グラフに類似し得る。アイコン２１２内の円グラフの部分２１２ａは、メディアアセットのどの部分がＨＤ品質でダウンロードされたかを示してもよい一方で、部分２１２ｂは、メディアアセットのどの部分がＳＤ品質でダウンロードされたかを示してもよい。例えば、映画Ａ２０２の２５％がＨＤ品質でダウンロードされた場合、部分２１２ａは、アイコン２１２内の円グラフの面積の４分の１を備えてもよい。同様に、映画Ａ２０２の７５％がＳＤ品質でダウンロードされた場合、部分２１２ｂは、アイコン２１２内の円グラフの面積の４分の３を備えてもよい。各部分は、その独自の色および／またはパターンと関連付けられてもよい。メディアアセットのどの部分が４Ｋ品質または他のバージョンでダウンロードされたかを示すように、付加的部分が、アイコン２１２内の円グラフに追加されてもよい。アイコン２１８もまた、円グラフであってもよく、メディアアセットのどの部分が第１のバージョンでロードされたかを示してもよい。例えば、映画Ａ２０２の７５％がＳＤ品質でダウンロードされ、残りのダウンロードが不完全である場合、アイコン２１８内の円グラフは、４分３埋められてもよい。
【００２２】
同様に、メディアガイドアプリケーションは、メディアアセットのどの部分が第１のバージョンでダウンロードされたか、どの部分が第２のバージョンでダウンロードされたかを示すために、アイコン２１４を使用してもよい。アイコン２１４は、個別の部分を表すために、同心円の半径の長さを使用してもよい。円２１４ａの半径の長さは、メディアアセットのどの部分がＨＤ品質でダウンロードされたかを示してもよい一方で、円２１４ｂの半径の長さは、メディアアセットのどの部分がＳＤ品質でダウンロードされたかを示してもよい。例えば、アイコン２１４の３００ピクセルの半径は、完全なダウンロードを示してもよい。映画Ａ２０２の３分の２がＳＤ品質でダウンロードされた場合、円２１４ｂの半径は、２００ピクセルであってもよい。映画Ａ２０２の３分の１がＨＤ品質でダウンロードされた場合、円２１４ａの半径は、１００ピクセルであってもよい。故に、同心円２１４ａおよび２１４ｂの半径の比は、第１および第２のバージョンでダウンロードされた映画の部分の比に比例する。各同心円は、その独自の色および／またはパターンと関連付けられてもよい。メディアアセットのどの部分が４Ｋ品質でダウンロードされたかを示すように、付加的円が、アイコン２１４に追加されてもよい。アイコン２２０は、類似し得、アイコン２２０内の円の半径の長さは、メディアアセットのどの部分が第１のバージョンでダウンロードされたかを示してもよい。例えば、アイコン２２０の３００ピクセルの半径は、完全なダウンロードを示してもよい。映画Ａ２０２の半分がＳＤ品質でダウンロードされ、残りのダウンロードが保留中である場合、アイコン２２０内の円の半径は、１５０ピクセルであってもよい。
【００２３】
同様に、メディアガイドアプリケーションは、メディアアセットのどの部分が第１のバージョンでダウンロードされたか、どの部分が第２のバージョンでダウンロードされたかを示すために、アイコン２１６を使用してもよい。アイコン２１４は、個別の部分を表すために、中空同心円の埋められている円周の長さを使用してもよい。中空同心円２１６ａの埋められている円周の長さは、メディアアセットのどの部分がＨＤ品質でダウンロードされたかを示してもよい一方で、中空同心円２１６ｂの埋められている円周の長さは、メディアアセットのどの部分がＳＤ品質でダウンロードされたかを示してもよい。埋められた円周長は、空白円周長よりも厚く、および／または異なる色であってもよい。例えば、中空同心円２１６ａの完全に埋められた円周は、映画Ａ２０２全体がＨＤ品質でダウンロードされたことを示してもよい。同様に、中空同心円２１６ｂの完全に埋められた円周は、映画Ａ２０２全体がＳＤ品質でダウンロードされたことを示してもよい。映画Ａ２０２の３分の２がＳＤ品質でダウンロードされた場合、中空同心円２１６ａの円周の３分の２が埋められてもよい。映画Ａ２０２の３分の１がＨＤ品質でダウンロードされた場合、中空同心円２１６ｂの円周の３分の１が埋められてもよい。故に、各中空同心円２１６ａおよび２１６ｂの空白円周の長さに対する埋められた円周の長さの比は、第１および第２のバージョンでダウンロードされた映画の部分の比に比例する。各中空同心円の埋められたおよび空白円周長は、それらの独自の色および／またはパターンと関連付けられてもよい。メディアアセットのどの部分が４Ｋ品質でダウンロードされたかを示すように、付加的円が、アイコン２１６に追加されてもよい。アイコン２２２は、円の埋められている円周の長さを使用して、メディアアセットのどの部分が第１のバージョンでダウンロードされたかを示してもよい。
【００２４】
いくつかの実施形態では、アイコン２１０は、メディアアセットダウンロードが起こっている間、動画化されてもよい。例えば、映画Ａ２０２が現在ダウンロードされている場合、メディアガイドアプリケーションは、回転、点滅、または別様の動画化されたアイコン２１０を表示するために生成してもよい。各アイコンの部分は、別個に動画化されてもよい。例えば、メディアガイドアプリケーションは、点滅等の第１のアニメーションをアイコン２１２の部分２１２ａに、輝き等の第２のアニメーションをアイコン２１２の部分２１２ｂに適用してもよい。いくつかの実施形態では、アイコン２１０は、ダウンロードが起こっていないとき、静止してもよい。例えば、メディアガイドアプリケーションが通信ネットワーク６１４へのアクセスを失い、映画Ａ２０２が現在ダウンロードされていない場合、メディアガイドアプリケーションは、静止した非動画アイコン２１０を表示するために生成してもよい。
【００２５】
任意の所与のコンテンツ配信システムでユーザに利用可能なコンテンツの量は、膨大であり得る。その結果、多くのユーザは、ユーザがコンテンツの選択を効率的にナビゲートし、所望し得るコンテンツを容易に識別することを可能にする、インターフェースを通したメディアガイドの形態を所望している。そのようなガイドを提供するアプリケーションは、本明細書では、双方向メディアガイドアプリケーションと称されるが、メディアガイドアプリケーションまたはガイドアプリケーションと称されることもある。
【００２６】
双方向メディアガイドアプリケーションは、ガイドを提供するコンテンツに応じて、種々の形態をとってもよい。１つの典型的なタイプのメディアガイドアプリケーションは、双方向テレビ番組ガイドである。双方向テレビ番組ガイド（電子番組ガイドと称される場合もある）は、とりわけ、ユーザが、多くのタイプのコンテンツまたはメディアアセット間をナビゲートし、それを特定することを可能にする、周知のガイドアプリケーションである。双方向メディアガイドアプリケーションは、ユーザが、コンテンツ間をナビゲートし、それを特定および選択することを可能にする、グラフィカルユーザインターフェース画面を生成してもよい。本明細書で参照されるように、用語「メディアアセット」および「コンテンツ」は、テレビ番組、および有料番組、オンデマンド番組（ビデオオンデマンド（ＶＯＤ）システムにおけるような）、インターネットコンテンツ（例えば、ストリーミングコンテンツ、ダウンロード可能コンテンツ、ウェブキャスト等）、ビデオクリップ、オーディオ、コンテンツ情報、写真、回転画像、ドキュメント、再生一覧、ウェブサイト、記事、書籍、電子書籍、ブログ、チャットセッション、ソーシャルメディア、アプリケーション、ゲーム、および／または任意の他のメディアまたはマルチメディア、および／またはそれらの組み合わせ等の電子的に消費可能なユーザアセットを意味すると理解されたい。ガイドアプリケーションはまた、ユーザが、コンテンツ間をナビゲートし、それを特定することを可能にする。本明細書で参照されるように、用語「マルチメディア」は、上記で説明される少なくとも２つの異なるコンテンツ形態、例えば、テキスト、オーディオ、画像、ビデオ、または双方向コンテンツ形態を利用する、コンテンツを意味すると理解されたい。コンテンツは、ユーザ機器デバイスによって、録画、再生、表示、またはアクセスされてもよいが、また、ライブパーフォーマンスの一部であることもできる。
【００２７】
本明細書で議論される実施形態のいずれかを行うためのメディアガイドアプリケーションおよび／または任意の命令は、コンピュータ可読媒体上に符号化されてもよい。コンピュータ可読媒体は、データを記憶することが可能な任意のメディアを含む。コンピュータ可読媒体は、限定ではないが、電気または電磁信号の伝搬を含む、一過性であり得る、または限定ではないが、ハードディスク、フロッピー（登録商標）ディスク、ＵＳＢドライブ、ＤＶＤ、ＣＤ、メディアカード、レジスタメモリ、プロセッサキャッシュ、ランダムアクセスメモリ（「ＲＡＭ」）等の揮発性および不揮発性コンピュータメモリまたは記憶デバイスを含む、非一過性であり得る。
【００２８】
インターネット、モバイルコンピューティング、および高速無線ネットワークの出現に伴って、ユーザは、従来は使用しなかったユーザ機器デバイス上でメディアにアクセスするようになっている。本明細書で参照されるように、語句「ユーザ機器デバイス」、「ユーザ機器」、「ユーザデバイス」、「電子デバイス」、「電子機器」、「メディア機器デバイス」、または「メディアデバイス」は、テレビ、スマートＴＶ、セットトップボックス、衛星テレビに対応するための統合型受信機デコーダ（ＩＲＤ）、デジタル記憶デバイス、デジタルメディア受信機（ＤＭＲ）、デジタルメディアアダプタ（ＤＭＡ）、ストリーミングメディアデバイス、ＤＶＤプレーヤ、ＤＶＤレコーダ、接続型ＤＶＤ、ローカルメディアサーバ、ＢＬＵ−ＲＡＹ（登録商標）プレーヤ、ＢＬＵ−ＲＡＹ（登録商標）レコーダ、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、タブレットコンピュータ、ウェブＴＶボックス、パーソナルコンピュータテレビ（ＰＣ／ＴＶ）、ＰＣメディアサーバ、ＰＣメディアセンター、ハンドヘルドコンピュータ、固定電話、携帯情報端末（ＰＤＡ）、携帯電話、携帯用ビデオプレーヤ、携帯用音楽プレーヤ、携帯用ゲーム機、スマートフォン、または任意の他のテレビ機器、コンピューティング機器、または無線デバイス、および／またはそれらの組み合わせ等の上記で説明されるコンテンツにアクセスするための任意のデバイスを意味すると理解されたい。いくつかの実施形態では、ユーザ機器デバイスは、正面画面および裏面画面、複数の正面画面、または複数の角度付き画面を有してもよい。いくつかの実施形態では、ユーザ機器デバイスは、正面カメラおよび／または背面カメラを有してもよい。これらのユーザ機器デバイス上で、ユーザは、テレビを通して利用可能な同一のコンテンツ間をナビゲートし、それを特定することが可能であり得る。その結果として、メディアガイドは、これらのデバイス上でも利用可能であり得る。提供されるガイドは、テレビのみを通して利用可能なコンテンツ、他のタイプのユーザ機器デバイスのうちの１つまたはそれを上回るもののみを通して利用可能なコンテンツ、またはテレビおよび他のタイプのユーザ機器デバイスのうちの１つまたはそれを上回るものの両方を通して利用可能なコンテンツのためのものであってもよい。メディアガイドアプリケーションは、オンラインアプリケーションとして（すなわち、ウェブサイト上で提供される）、またはユーザ機器デバイス上の独立型アプリケーションまたはクライアントとして提供されてもよい。メディアガイドアプリケーションを実装し得る、種々のデバイスおよびプラットフォームは、以下でさらに詳細に説明される。
【００２９】
メディアガイドアプリケーションの機能のうちの１つは、メディアガイドデータをユーザに提供することである。本明細書で参照されるように、語句「メディアガイドデータ」または「ガイドデータ」は、コンテンツに関連する任意のデータまたはガイドアプリケーションを動作させる際に使用されるデータを意味すると理解されたい。例えば、ガイドデータは、番組情報、ガイドアプリケーション設定、ユーザ選好、ユーザプロファイル情報、メディア一覧、メディア関連情報（例えば、放送時間、放送チャンネル、タイトル、内容、評価情報（例えば、ペアレンタルコントロール評価、批評家の評価等）、ジャンルまたはカテゴリ情報、俳優情報、放送会社またはプロバイダのロゴのロゴデータ等、メディア形式（例えば、標準解像度、高解像度、３Ｄ等）、オンデマンド情報、ブログ、ウェブサイト、およびユーザが所望のコンテンツ選択間をナビゲートし、それを特定するために役立つ、任意の他のタイプのガイドデータを含んでもよい。
【００３０】
図３−４は、メディアガイドデータを提供するために使用され得る、例証的表示画面を示す。図３−４に示される表示画面は、任意の好適なユーザ機器デバイスまたはプラットフォーム上に実装されてもよい。図３−４の表示は、フル画面表示として図示されているが、それらはまた、表示されているコンテンツ上に完全または部分的にオーバーレイされてもよい。ユーザは、表示画面に提供された選択可能なオプション（例えば、メニューオプション、一覧オプション、アイコン、ハイパーリンク等）を選択することによって、またはリモートコントロールまたは他のユーザ入力インターフェースまたはデバイス上の専用ボタン（例えば、「ガイド」ボタン）を押下することによって、コンテンツ情報にアクセスする所望を示してもよい。ユーザのインジケーションに応答して、メディアガイドアプリケーションは、グリッド内の時間およびチャンネル別、時間別、チャンネル別、ソース別、コンテンツタイプ別、カテゴリ別（例えば、映画、スポーツ、ニュース、子供向け、または他の番組カテゴリ）、または他の所定、ユーザ定義、または他の編成基準等のいくつかの方法のうちの１つにおいて編成されたメディアガイドデータを伴う表示画面を提供してもよい。
【００３１】
図３は、単一表示内の異なるタイプのコンテンツへのアクセスも可能にする、時間およびチャンネル別に配列された番組一覧表示３００の例証的グリッドを示す。表示３００は、（１）各チャンネル／コンテンツタイプ識別子（列内のセル）が利用可能な異なるチャンネルまたはコンテンツのタイプを識別する、チャンネル／コンテンツタイプ識別子３０４の列、および（２）各時間識別子（行内のセル）が番組の時間帯を識別する、時間識別子３０６の行を伴う、グリッド３０２を含んでもよい。グリッド３０２はまた、番組一覧３０８等の番組一覧のセルも含み、各一覧は、一覧の関連チャンネルおよび時間の上に提供される、番組のタイトルを提供する。ユーザ入力デバイスを用いて、ユーザは、ハイライト領域３１０を移動させることによって番組一覧を選択することができる。ハイライト領域３１０によって選択される番組一覧に関する情報が、番組情報領域３１２内に提供されてもよい。領域３１２は、例えば、番組タイトル、番組内容、番組が提供される時間（該当する場合）、番組が放送されるチャンネル（該当する場合）、番組の評価、および他の所望の情報を含んでもよい。
【００３２】
線形番組（例えば、所定の時間に複数のユーザ機器デバイスに伝送されるようにスケジュールされ、スケジュールに従って提供される、コンテンツ）へのアクセスの提供に加え、メディアガイドアプリケーションはまた、非線形番組（例えば、任意の時間においてユーザ機器デバイスにアクセス可能であって、スケジュールに従って提供されない、コンテンツ）へのアクセスも提供する。非線形番組は、オンデマンドコンテンツ（例えば、ＶＯＤ）、インターネットコンテンツ（例えば、ストリーミングメディア、ダウンロード可能メディア等）、ローカルに記憶したコンテンツ（例えば、上記で説明される任意のユーザ機器デバイスまたは他の記憶デバイス上に記憶されたコンテンツ）、または時間的制約のない他のコンテンツを含む、異なるコンテンツソースからのコンテンツを含んでもよい。オンデマンドコンテンツは、映画または特定のコンテンツプロバイダ（例えば、「Ｔｈｅ  Ｓｏｐｒａｎｏｓ」や「Ｃｕｒｂ  Ｙｏｕｒ  Ｅｎｔｈｕｓｉａｓｍ」を提供するＨＢＯ  ＯＮ  ＤＥＭＡＮＤ）によって提供される任意の他のコンテンツを含んでもよい。ＨＢＯ  ＯＮ  ＤＥＭＡＮＤは、Ｔｉｍｅ  Ｗａｒｎｅｒ  Ｃｏｍｐａｎｙ  Ｌ．Ｐ．らによって所有されるサービスマークであり、ＴＨＥ  ＳＯＰＲＡＮＯＳおよびＣＵＲＢ  ＹＯＵＲＥ  ＮＴＨＵＳＩＡＳＭは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。インターネットコンテンツは、チャットセッションまたはウェブキャスト等のウェブイベント、またはインターネットウェブサイトまたは他のインターネットアクセス（例えば、ＦＴＰ）を通して、ストリーミングコンテンツまたはダウンロード可能なコンテンツとしてオンデマンドで利用可能なコンテンツを含んでもよい。
【００３３】
グリッド３０２は、オンデマンド一覧３１４、録画コンテンツ一覧３１６、およびインターネットコンテンツ一覧３１８を含む、非線形番組のメディアガイドデータを提供してもよい。異なるタイプのコンテンツソースからのコンテンツのためのメディアガイドデータを組み合わせる表示は、「混合メディア」表示と称されることもある。表示３００とは異なる、表示され得るメディアガイドデータのタイプの種々の順列は、ユーザ選択またはガイドアプリケーション定義に基づいてもよい（例えば、録画および放送一覧のみの表示、オンデマンドおよび放送一覧のみの表示等）。例証されるように、一覧３１４、３１６、および３１８は、これらの一覧の選択が、それぞれ、オンデマンド一覧、録画一覧、またはインターネット一覧専用の表示へのアクセスを提供し得ることを示すように、グリッド３０２内に表示される時間帯全体に及ぶものとして示されている。いくつかの実施形態では、これらのコンテンツタイプの一覧は、グリッド３０２に直接含まれてもよい。ユーザがナビゲーションアイコン３２０のうちの１つを選択することに応答して、付加的メディアガイドデータが表示されてもよい（ユーザ入力デバイス上の矢印キーを押下することによって、ナビゲーションアイコン３２０を選択することと同様に表示に影響を及ぼしてもよい）。
【００３４】
表示３００はまた、ビデオ領域３２２およびオプション領域３２６を含んでもよい。ビデオ領域３２２は、ユーザが、現在利用可能である、今後利用可能となる、またはユーザに利用可能であった番組を視聴および／またはプレビューすることを可能にしてもよい。ビデオ領域３２２のコンテンツは、グリッド３０２に表示される一覧のうちの１つに対応するか、またはそれから独立してもよい。ビデオ領域を含むグリッド表示は、ピクチャインガイド（ＰＩＧ）表示と称されることもある。ＰＩＧ表示およびそれらの機能は、全体として参照することによって本明細書に組み込まれる、２００３年５月１３日発行のＳａｔｔｅｒｆｉｅｌｄらの米国特許第６，５６４，３７８号、および２００１年５月２９日発行のＹｕｅｎらの米国特許第６，２３９，７９４号でさらに詳細に説明されている。ＰＩＧ表示は、本明細書に説明される実施形態の他のメディアガイドアプリケーション表示画面に含まれてもよい。
【００３５】
オプション領域３２６は、ユーザが、異なるタイプのコンテンツ、メディアガイドアプリケーション表示、および／またはメディアガイドアプリケーション特徴にアクセスすることを可能にしてもよい。オプション領域３２６は、表示３００（および本明細書に説明される他の表示画面）の一部であってもよい、または画面上のオプションを選択すること、またはユーザ入力デバイス上の専用または割当可能ボタンを押下することによって、ユーザによって呼び出されてもよい。オプション領域３２６内の選択可能オプションは、グリッド３０２内の番組一覧に関連する特徴に関してもよい、またはメインメニュー表示から利用可能なオプションを含んでもよい。番組一覧に関連する特徴は、他の放送時間または番組の受信方法の検索、番組の録画、番組の連続録画の有効化、番組および／またはチャンネルをお気に入りとして設定、番組の購入、または他の特徴を含んでもよい。メインメニュー表示から利用可能なオプションは、検索オプション、ＶＯＤオプション、ペアレンタルコントロールオプション、インターネットオプション、クラウドベースのオプション、デバイス同期オプション、第２の画面デバイスオプション、種々のタイプのメディアガイドデータ表示にアクセスするためのオプション、プレミアムサービスを購読するためのオプション、ユーザのプロファイルを編集するためのオプション、ブラウザオーバーレイにアクセスするためのオプション、または他のオプションを含んでもよい。
【００３６】
メディアガイドアプリケーションは、ユーザの選好に基づいて個人化されてもよい。個人化されたメディアガイドアプリケーションは、ユーザが、メディアガイドアプリケーションによって個人化された「体験」を生成するように、表示および特徴をカスタマイズすることを可能にする。この個人化された体験は、ユーザがこれらのカスタマイズを入力できるようにすることによって、および／または種々のユーザ選好を判定するようにメディアガイドアプリケーションがユーザアクティビティを監視することによって、生成されてもよい。ユーザは、ログインすることによって、または別様にガイドアプリケーションに対して自らを識別することによって、その個人化されたガイドアプリケーションにアクセスしてもよい。メディアガイドアプリケーションのカスタマイズは、ユーザプロファイルに従って行われてもよい。カスタマイズは、提示方式（例えば、表示の色方式、テキストのフォントサイズ等）、表示されるコンテンツ一覧の側面（例えば、ＨＤＴＶ番組のみまたは３Ｄ番組のみ、お気に入りチャンネル選択に基づいたユーザ指定の放送チャンネル、チャンネルの表示の並び替え、推奨コンテンツ等）、所望の録画特徴（例えば、特定のユーザに対する録画または連続録画、録画品質等）、ペアレンタルコントロール設定、インターネットコンテンツのカスタマイズされた提示（例えば、ソーシャルメディアコンテンツ、電子メール、電子的に配信された記事等の提示）、および他の所望のカスタマイズを変更させるステップを含んでもよい。
【００３７】
メディアガイドアプリケーションは、ユーザが、ユーザプロファイル情報を提供することを可能にしてもよい、またはユーザプロファイル情報を自動的にコンパイルしてもよい。メディアガイドアプリケーションは、例えば、ユーザがアクセスするコンテンツ、および／またはユーザがガイドアプリケーションと行い得る他の相互作用を監視してもよい。加えて、メディアガイドアプリケーションは、特定のユーザに関連する他のユーザプロファイルの全体または一部を取得し（例えば、ｗｗｗ．ａｌｌｒｏｖｉ．ｃｏｍ等のユーザがアクセスするインターネット上の他のウェブサイトから、ユーザがアクセスする他のメディアガイドアプリケーションから、ユーザがアクセスする他の双方向アプリケーションから、ユーザの別のユーザ機器デバイスから等）、および／またはメディアガイドアプリケーションがアクセスし得る他のソースから、ユーザに関する情報を取得してもよい。結果として、ユーザは、ユーザの異なるユーザ機器デバイスにわたって、統一されたガイドアプリケーション体験を提供されることができる。本タイプのユーザ体験は、図６に関連して以下でさらに詳細に説明される。付加的な個人化されたメディアガイドアプリケーション特徴は、全体として参照することにより本明細書に組み込まれる、２００５年７月１１日出願のＥｌｌｉｓらの米国特許出願第２００５／０２５１８２７号、２００７年１月１６日出願のＢｏｙｅｒらの米国特許出願第７，１６５，０９８号、および２００２年２月２１日出願のＥｌｌｉｓらの米国特許出願第２００２／０１７４４３０号でさらに詳細に説明されている。
【００３８】
メディアガイドを提供するための別の表示配列が、図４に示されている。ビデオモザイク表示４００は、コンテンツのタイプ、ジャンル、および／または他の編成基準に基づいて編成されたコンテンツ情報のための選択可能オプション４０２を含む。表示４００では、テレビ一覧オプション４０４が、選択され、したがって、一覧４０６、４０８、４１０、および４１２を放送番組一覧として提供する。表示４００では、一覧は、カバーアート、コンテンツからの静止画像、ビデオクリップのプレビュー、コンテンツからのライブビデオ、または一覧中のメディアガイドデータによって記述されているコンテンツをユーザに示す他のタイプのコンテンツを含む、グラフィック画像を提供してもよい。グラフィック一覧のそれぞれはまた、一覧と関連付けられたコンテンツに関するさらなる情報を提供するように、テキストを伴ってもよい。例えば、一覧４０８は、メディア部分４１４およびテキスト部分４１６を含む、１つを上回る部分を含んでもよい。メディア部分４１４および／またはテキスト部分４１６は、コンテンツをフル画面で視聴するように、またはメディア部分４１４に表示されるコンテンツに関連する情報を閲覧するように（例えば、ビデオが表示されるチャンネルの一覧を閲覧するように）、選択可能であり得る。
【００３９】
表示４００中の一覧は、異なるサイズである（すなわち、一覧４０６は、一覧４０８、４１０、および４１２より大きい）が、所望の場合、全一覧が同一のサイズであってもよい。一覧は、コンテンツプロバイダの所望に応じて、またはユーザ選好に基づいて、ユーザの関心の程度を示すように、またはあるコンテンツを強調するように、異なるサイズであるか、またはグラフィックが強調されてもよい。コンテンツ一覧をグラフィック的に強調するための種々のシステムおよび方法は、例えば、全体として参照することにより本明細書に組み込まれる、２００９年１１月１２日出願のＹａｔｅｓの米国特許出願公開第２０１０／０１５３８８５号で議論されている。
【００４０】
ユーザは、そのユーザ機器デバイスのうちの１つまたはそれを上回るものから、コンテンツおよびメディアガイドアプリケーション（および上記および下記で説明されるその表示画面）にアクセスしてもよい。図５は、例証的ユーザ機器デバイス５００の汎用実施形態を示す。ユーザ機器デバイスのより具体的な実装は、図６に関連して以下で議論されている。ユーザ機器デバイス５００は、入出力（以下「Ｉ／Ｏ」）パス５０２を介して、コンテンツおよびデータを受信してもよい。Ｉ／Ｏパス５０２は、処理回路５０６および記憶装置５０８を含む制御回路５０４に、コンテンツ（例えば、放送番組、オンデマンド番組、インターネットコンテンツ、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を経由して利用可能なコンテンツ、および／または他のコンテンツ）およびデータを提供してもよい。制御回路５０４は、Ｉ／Ｏパス５０２を使用して、コマンド、要求、および他の好適なデータを送受信するために使用されてもよい。Ｉ／Ｏパス５０２は、制御回路５０４（具体的には、処理回路５０６）を１つまたはそれを上回る通信パス（以下で説明される）に接続してもよい。Ｉ／Ｏ機能は、これらの通信パスのうちの１つまたはそれを上回るものによって提供されてもよいが、図面が複雑になり過ぎることを回避するため、図５では単一パスとして示されている。
【００４１】
制御回路５０４は、処理回路５０６等の任意の好適な処理回路に基づいてもよい。本明細書で参照されるように、処理回路とは、１つまたはそれを上回るマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、プログラマブル論理デバイス、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等に基づく回路を意味すると理解され、マルチコアプロセッサ（例えば、デュアルコア、クアドコア、ヘクサコア、または任意の好適な数のコア）またはスーパーコンピュータを含んでもよい。いくつかの実施形態では、処理回路は、複数の別個のプロセッサまたは処理ユニット、例えば、複数の同一のタイプの処理ユニット（例えば、２つのＩｎｔｅｌ  Ｃｏｒｅ  ｉ７プロセッサ）または複数の異なるプロセッサ（例えば、Ｉｎｔｅｌ  Ｃｏｒｅ  ｉ５プロセッサおよびＩｎｔｅｌ  Ｃｏｒｅ  ｉ７プロセッサ）にわたって分散されてもよい。いくつかの実施形態では、制御回路５０４は、メモリ（すなわち、記憶装置５０８）に記憶されたメディアガイドアプリケーションに対する命令を実行する。具体的には、制御回路５０４は、メディアガイドアプリケーションによって、上記および下記で議論される機能を果たすように命令されてもよい。例えば、メディアガイドアプリケーションは、制御回路５０４に、メディアガイド表示を生成するための命令を提供してもよい。いくつかの実装では、制御回路５０４によって行われるいかなるアクションも、メディアガイドアプリケーションから受信した命令に基づいてもよい。
【００４２】
クライアントサーバベースの実施形態では、制御回路５０４は、ガイドアプリケーションサーバまたは他のネットワークまたはサーバと通信するための好適な通信回路を含んでもよい。前述の機能性を実施するための命令は、ガイドアプリケーションサーバ上に記憶されてもよい。通信回路は、ケーブルモデム、総合デジタル通信網（ＩＳＤＮ）モデム、デジタル加入者回線（ＤＳＬ）モデム、電話モデム、イーサネット（登録商標）カード、または他の機器との通信用の無線モデム、または任意の他の好適な通信回路を含んでもよい。そのような通信は、インターネットまたは任意の他の好適な通信ネットワークまたはパスを伴ってもよい（図６に関連してさらに詳細に説明される）。加えて、通信回路は、ユーザ機器デバイスのピアツーピア通信、または相互から遠隔の場所にあるユーザ機器デバイスの通信を可能にする回路を含んでもよい（以下でさらに詳細に説明される）。
【００４３】
メモリは、制御回路５０４の一部である、記憶装置５０８として提供される、電子記憶デバイスであってもよい。本明細書で参照されるように、語句「電子記憶デバイス」または「記憶デバイス」とは、ランダムアクセスメモリ、読取専用メモリ、ハードドライブ、光学ドライブ、デジタルビデオディスク（ＤＶＤ）レコーダ、コンパクトディスク（ＣＤ）レコーダ、ＢＬＵ−ＲＡＹ（登録商標）ディスク（ＢＤ）レコーダ、ＢＬＵ−ＲＡＹ（登録商標）  ３Ｄディスクレコーダ、デジタルビデオレコーダ（ＤＶＲ（パーソナルビデオレコーダと呼ばれる場合もある）、またはＰＶＲ）、固体デバイス、量子記憶デバイス、ゲームコンソール、ゲームメディア、または任意の他の好適な固定またはリムーバブル記憶デバイス、および／または任意のそれらの組み合わせ等の電子データ、コンピュータソフトウェア、またはファームウェアを記憶するための任意のデバイスを意味すると理解されたい。記憶装置５０８は、本明細書に説明される種々のタイプのコンテンツ、および上記で説明されるメディアガイドデータを記憶するために使用されてもよい。不揮発性メモリもまた、（例えば、ブートアップルーチンおよび他の命令を起動するために）使用されてもよい。図６に関連して説明される、クラウドベースの記憶装置が、記憶装置５０８を補完するために、または記憶装置５０８の代わりに使用されてもよい。
【００４４】
制御回路５０４は、１つまたはそれを上回るアナログチューナ、１つまたはそれを上回るＭＰＥＧ−２デコーダ、または他のデジタル復号回路、高解像度チューナ、または任意の他の好適な同調またはビデオ回路、またはそのような回路の組み合わせ等のビデオ生成回路および同調回路を含んでもよい。（例えば、記憶のために、無線、アナログ、またはデジタル信号をＭＰＥＧ信号に変換するための）符号化回路もまた、提供されてもよい。制御回路５０４はまた、コンテンツをユーザ機器５００の好ましい出力形式に上方変換および下方変換するためのスケーラ回路を含んでもよい。回路５０４はまた、デジタルおよびアナログ信号間で変換するためのデジタルからアナログへの変換回路およびアナログからデジタルへの変換回路を含んでもよい。同調および符号化回路は、コンテンツを受信して表示する、再生する、または録画するために、ユーザ機器デバイスによって使用されてもよい。同調および符号化回路はまた、ガイドデータを受信するために使用されてもよい。例えば、同調、ビデオ生成、符号化、復号、暗号化、解読、スケーラ、およびアナログ／デジタル回路を含む、本明細書に説明される回路は、１つまたはそれを上回る汎用または特殊プロセッサ上で起動するソフトウェアを使用して実装されてもよい。複数のチューナが、同時同調機能（例えば、鑑賞および録画機能、ピクチャインピクチャ（ＰＩＰ）機能、多重チューナ録画等）に対処するように提供されてもよい。記憶装置５０８が、ユーザ機器５００とは別個のデバイスとして提供される場合、同調および符号化回路（複数のチューナを含む）は、記憶装置５０８と関連付けられてもよい。
【００４５】
ユーザは、ユーザ入力インターフェース５１０を使用して、命令を制御回路５０４に送信してもよい。ユーザ入力インターフェース５１０は、リモートコントロール、マウス、トラックボール、キーパッド、キーボード、タッチスクリーン、タッチパッド、スタイラス入力、ジョイスティック、音声認識インターフェース、または他のユーザ入力インターフェース等、任意の好適なユーザインターフェースであってもよい。ディスプレイ５１２は、独立型デバイスとして提供されてもよい、またはユーザ機器デバイス５００の他の要素と統合されてもよい。例えば、ディスプレイ５１２は、タッチスクリーンまたはタッチセンサ式ディスプレイであってもよい。そのような状況では、ユーザ入力インターフェース５１０は、ディスプレイ５１２と統合されてもよい、または組み合わせられてもよい。ディスプレイ５１２は、モニタ、テレビ、モバイルデバイスのための液晶ディスプレイ（ＬＣＤ）、非晶質シリコンディスプレイ、低温ポリシリコンディスプレイ、電子インクディスプレイ、電気泳動ディスプレイ、アクティブマトリクスディスプレイ、エレクトロウェッティングディスプレイ、電気流体ディスプレイ、ブラウン管ディスプレイ、発光ダイオードディスプレイ、エレクトロルミネセントディスプレイ、プラズマディスプレイパネル、高性能アドレッシングディスプレイ、薄膜トランジスタディスプレイ、有機発光ダイオードディスプレイ、表面伝導型電子放出素子ディスプレイ（ＳＥＤ）、レーザテレビ、カーボンナノチューブ、量子ドットディスプレイ、干渉変調器ディスプレイ、または視覚的画像を表示するための任意の他の好適な機器のうちの１つまたはそれを上回るものであってもよい。いくつかの実施形態では、ディスプレイ５１２は、ＨＤＴＶ対応型であり得る。いくつかの実施形態では、ディスプレイ５１２は、３Ｄディスプレイであってもよく、双方向メディアガイドアプリケーションおよび任意の好適なコンテンツは、３Ｄで表示されてもよい。ビデオカードまたはグラフィックカードは、出力をディスプレイ５１２に生成してもよい。ビデオカードは、３Ｄシーンおよび２Ｄグラフィックのレンダリング加速、ＭＰＥＧ−２／ＭＰＥＧ−４復号、ＴＶ出力、または複数のモニタを接続する能力等の種々の機能をもたらしてもよい。ビデオカードは、制御回路５０４に関連する上記で説明される任意の処理回路であってもよい。ビデオカードは、制御回路５０４と統合されてもよい。スピーカ５１４は、ユーザ機器デバイス５００の他の要素との統合として提供されてもよい、または独立型ユニットであってもよい。ディスプレイ５１２上に表示されるビデオおよび他のコンテンツのオーディオ構成要素は、スピーカ５１４を通して再生されてもよい。いくつかの実施形態では、オーディオは、スピーカ５１４を介してオーディオを処理および出力する、受信機（図示せず）に配布されてもよい。
【００４６】
ガイドアプリケーションは、任意の好適なアーキテクチャを使用して実装されてもよい。例えば、それは、ユーザ機器デバイス５００上で完全に実装される、独立型アプリケーションであってもよい。そのようなアプローチでは、アプリケーションの命令は、ローカルに記憶され（例えば、記憶装置５０８内に）、アプリケーションによって使用するためのデータは、（例えば、帯域外フィードから、インターネットリソースから、または別の好適なアプローチを使用して）周期的にダウンロードされる。制御回路５０４は、記憶装置５０８からアプリケーションの命令を読み出し、本明細書で議論される表示のうちのいずれかを生成するための命令を処理してもよい。処理された命令に基づいて、制御回路５０４は、入力が入力インターフェース５１０から受信されるときにどのようなアクションを行うかを判定してもよい。例えば、表示上のカーソルの上／下への移動は、入力インターフェース５１０が上／下ボタンが選択されたことを示すとき、処理された命令によって示されてもよい。
【００４７】
いくつかの実施形態では、メディアガイドアプリケーションは、クライアントサーバベースのアプリケーションである。ユーザ機器デバイス５００上に実装される、シックまたはシンクライアントによって使用するためのデータは、ユーザ機器デバイス５００の遠隔にあるサーバに要求を発行することによって、オンデマンドで読み出される。クライアントサーバベースのガイドアプリケーションの一実施例では、制御回路５０４は、遠隔サーバによって提供されるウェブページを解釈する、ウェブブラウザを実行する。例えば、遠隔サーバは、記憶デバイス内にアプリケーションのための命令を記憶してもよい。遠隔サーバは、回路（例えば、制御回路５０４）を使用して、記憶された命令を処理し、上記および下記で議論される表示を生成してもよい。クライアントデバイスは、遠隔サーバによって生成される表示を受信してもよく、表示のコンテンツを機器デバイス５００上でローカルに表示してもよい。このように、命令の処理は、サーバによって遠隔で行われる一方、結果として生じる表示は、機器デバイス５００上にローカルに提供される。機器デバイス５００は、入力インターフェース５１０を介して、ユーザからの入力を受信し、対応する表示を処理および生成するために、それらの入力を遠隔サーバに伝送してもよい。例えば、機器デバイス５００は、上／下ボタンが入力インターフェース５１０を介して選択されたことを示す、通信を遠隔サーバに伝送してもよい。遠隔サーバは、その入力に従って命令を処理し、入力に対応するアプリケーションの表示を生成してもよい（例えば、カーソルを上／下に移動させる表示）。生成された表示は、次いで、ユーザへの提示のために、機器デバイス５００に伝送される。
【００４８】
いくつかの実施形態では、メディアガイドアプリケーションは、インタープリタまたは仮想マシン（制御回路５０４によって起動される）によって、ダウンロードされ、解釈または別様に起動される。いくつかの実施形態では、ガイドアプリケーションは、ＥＴＶバイナリ交換形式（ＥＴＶ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ／ＥＢＩＦ）で符号化され、好適なフィードの一部として制御回路５０４によって受信され、制御回路５０４上で起動するユーザエージェントによって解釈されてもよい。例えば、ガイドアプリケーションは、ＥＢＩＦアプリケーションであってもよい。いくつかの実施形態では、ガイドアプリケーションは、制御回路５０４によって実行されるローカル仮想マシンまたは他の好適なミドルウェアによって受信および起動される、一連のＪＡＶＡ（登録商標）ベースのファイルによって定義されてもよい。そのような実施形態のうちのいくつか（例えば、ＭＰＥＧ−２または他のデジタルメディア符号化スキームを採用するもの）では、ガイドアプリケーションは、例えば、番組のＭＰＥＧオーディオおよびビデオパケットを用いたＭＰＥＧ−２オブジェクトカルーセルにおいて符号化および伝送されてもよい。
【００４９】
図５のユーザ機器デバイス５００は、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、無線ユーザ通信デバイス６０６、または非携帯用ゲーム機等のコンテンツにアクセスするために好適な任意の他のタイプのユーザ機器として、図６のシステム６００に実装することができる。簡単にするために、これらのデバイスは、本明細書では総称して、ユーザ機器またはユーザ機器デバイスと称されてもよく、上記で説明されるユーザ機器デバイスに実質的に類似し得る。メディアガイドアプリケーションが実装され得る、ユーザ機器デバイスは、独立型デバイスとして機能してもよい、またはデバイスのネットワークの一部であってもよい。デバイスの種々のネットワーク構成が実装されてもよく、以下でさらに詳細に議論される。
【００５０】
図５に関連して上記で説明されるシステム特徴のうちの少なくともいくつかを利用する、ユーザ機器デバイスは、単に、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、または無線ユーザ通信デバイス６０６として分類されなくてもよい。例えば、ユーザテレビ機器６０２は、いくつかのユーザコンピュータ機器６０４のように、インターネットコンテンツへのアクセスを可能にするインターネット対応型であり得る一方で、ユーザコンピュータ機器６０４は、いくつかのテレビ機器６０２のように、テレビ番組へのアクセスを可能にするチューナを含んでもよい。メディアガイドアプリケーションは、種々の異なるタイプのユーザ機器上で同一レイアウトを有してもよい、またはユーザ機器の表示能力に合わせられてもよい。例えば、ユーザコンピュータ機器６０４上では、ガイドアプリケーションは、ウェブブラウザによってアクセスされるウェブサイトとして提供されてもよい。別の実施例では、ガイドアプリケーションは、無線ユーザ通信デバイス６０６用に縮小されてもよい。
【００５１】
システム６００では、典型的には、各タイプのユーザ機器デバイスが１つを上回って存在するが、図面が複雑になり過ぎることを回避するように、それぞれ１つだけが図６に示されている。加えて、各ユーザは、１つを上回るタイプのユーザ機器デバイスと、また、各タイプのユーザ機器デバイスのうちの１つを上回るものとを利用してもよい。
【００５２】
いくつかの実施形態では、ユーザ機器デバイス（例えば、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、無線ユーザ通信デバイス６０６）は、「第２の画面デバイス」と称されてもよい。例えば、第２の画面デバイスは、第１のユーザ機器デバイス上に提示されるコンテンツを補完してもよい。第２の画面デバイス上に提示されるコンテンツは、第１のデバイス上に提示されるコンテンツを補完する、任意の好適なコンテンツであってもよい。いくつかの実施形態では、第２の画面デバイスは、第１のデバイスの設定および表示選好を調節するためのインターフェースを提供する。いくつかの実施形態では、第２の画面デバイスは、他の第２の画面デバイスと相互作用するため、またはソーシャルネットワークと相互作用するために構成される。第２の画面デバイスは、第１のデバイスと同一の部屋内に、第１のデバイスと異なる部屋であるが、同一の家または建物内、または第１のデバイスと異なる建物内に位置することができる。
【００５３】
ユーザはまた、家庭内デバイスおよび遠隔デバイスにわたって一貫したメディアガイドアプリケーション設定を維持するように、種々の設定を設定してもよい。設定は、本明細書に説明される設定、およびお気に入りのチャンネルおよび番組、番組を推奨するためにガイドアプリケーションが利用する番組選好、表示選好、および他の望ましいガイド設定を含む。例えば、ユーザが、そのオフィスのパーソナルコンピュータで、例えば、ウェブサイトｗｗｗ．ａｌｌｒｏｖｉ．ｃｏｍの上で、チャンネルをお気に入りとして設定した場合、所望に応じて、同一のチャンネルが、ユーザの家庭内デバイス（例えば、ユーザテレビ機器およびユーザコンピュータ機器）、およびユーザのモバイルデバイス上でお気に入りとして表示される。したがって、同一のまたは異なるタイプのユーザ機器デバイスであるかどうかにかかわらず、１つのユーザ機器デバイス上で行われる変更は、別のユーザ機器デバイス上のガイド体験を変更することができる。加えて、行われる変更は、ユーザによる設定入力、およびガイドアプリケーションによって監視されるユーザアクティビティに基づいてもよい。
【００５４】
ユーザ機器デバイスは、通信ネットワーク６１４に結合されてもよい。すなわち、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、および無線ユーザ通信デバイス６０６は、それぞれ、通信パス６０８、６１０、および６１２を介して、通信ネットワーク６１４に結合される。通信ネットワーク６１４は、インターネット、携帯電話ネットワーク、モバイルボイスまたはデータネットワーク（例えば、４ＧまたはＬＴＥネットワーク）、ケーブルネットワーク、公衆交換電話ネットワーク、または他のタイプの通信ネットワーク、または通信ネットワークの組み合わせを含む、１つまたはそれを上回るネットワークであってもよい。パス６０８、６１０、および６１２は、別個または一緒に、衛星パス、光ファイバパス、ケーブルパス、インターネット通信をサポートするパス（例えば、ＩＰＴＶ）、フリースペース接続（例えば、放送または他の無線信号用）、または任意の他の好適な有線または無線通信パス、またはそのようなパスの組み合わせ等、１つまたはそれを上回る通信パスを含んでもよい。パス６１２は、図６に示された例示的実施形態において、無線パスであることを示すように破線で描かれ、パス６０８および６１０は、有線パスであることを示すように実線で描かれている（しかし、これらのパスは、所望に応じて、無線パスであってもよい）。ユーザ機器デバイスとの通信は、これらの通信パスのうちの１つまたはそれを上回るものによって提供されてもよいが、図６では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。
【００５５】
通信パスは、ユーザ機器デバイスの間には描かれていないが、これらのデバイスは、パス６０８、６１０、および６１２に関連して上記で説明されるもの、およびＵＳＢケーブル、ＩＥＥＥ  １３９４ケーブル、無線パス（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、赤外線、ＩＥＥＥ  ８０２−１１ｘ等）等の他の短距離ポイントツーポイント通信パス、または有線または無線パスを介した他の短距離通信等の通信パス等の通信パスを介して、相互と直接通信してもよい。ＢＬＵＥＴＯＯＴＨ（登録商標）は、Ｂｌｕｅｔｏｏｔｈ（登録商標）  ＳＩＧ，  ＩＮＣ．によって所有される認証マークである。ユーザ機器デバイスはまた、通信ネットワーク６１４を介した間接的パスを通して、直接相互と通信してもよい。
【００５６】
システム６００は、それぞれ、通信パス６２０および６２２を介して、通信ネットワーク６１４に結合される、コンテンツソース６１６およびメディアガイドデータソース６１８を含む。パス６２０および６２２は、パス６０８、６１０、および６１２に関して上記で説明される通信パスのうちのいずれかを含んでもよい。コンテンツソース６１６およびメディアガイドデータソース６１８との通信は、１つまたはそれを上回る通信パスを介して交信されてもよいが、図６では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。加えて、コンテンツソース６１６およびメディアガイドデータソース６１８のそれぞれが１つを上回ってあってもよいが、図６では、図面が複雑になり過ぎることを回避するように、それぞれ１つだけが示されている。（これらのソースのそれぞれの異なるタイプを以下で議論する）。所望に応じて、コンテンツソース６１６およびメディアガイドデータソース６１８は、１つのソースデバイスとして統合されてもよい。ソース６１６および６１８と、ユーザ機器デバイス６０２、６０４、および６０６との間の通信は、通信ネットワーク６１４を通したものとして示されているが、いくつかの実施形態では、ソース６１６および６１８は、パス６０８、６１０、および６１２に関連して上記で説明されるもの等の通信パス（図示せず）を介して、ユーザ機器デバイス６０２、６０４、および６０６と直接通信してもよい。
【００５７】
コンテンツソース６１６は、テレビ配信施設、ケーブルシステムヘッドエンド、衛星配信施設、番組ソース（例えば、ＮＢＣ、ＡＢＣ、ＨＢＯ等のテレビ放送会社）、中間配信施設および／またはサーバ、インターネットプロバイダ、オンデマンドメディアサーバ、および他のコンテンツプロバイダを含む、１つまたはそれを上回るタイプのコンテンツ配信機器を含んでもよい。ＮＢＣは、Ｎａｔｉｏｎａｌ  Ｂｒｏａｄｃａｓｔｉｎｇ  Ｃｏｍｐａｎｙ，  Ｉｎｃ．によって所有される商標であり、ＡＢＣは、Ａｍｅｒｉｃａｎ  Ｂｒｏａｄｃａｓｔｉｎｇ  Ｃｏｍｐａｎｙ，  ＩＮＣ．によって所有される商標であり、ＨＢＯは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。コンテンツソース６１６は、コンテンツの発信元であってもよく（例えば、テレビ放送会社、ウェブキャストプロバイダ等）、またはコンテンツの発信元でなくてもよい（例えば、オンデマンドコンテンツプロバイダ、ダウンロード用放送番組のコンテンツのインターネットプロバイダ等）。コンテンツソース６１６は、ケーブルソース、衛星プロバイダ、オンデマンドプロバイダ、インターネットプロバイダ、オーバーザトップコンテンツプロバイダ、または他のコンテンツのプロバイダを含んでもよい。コンテンツソース６１６はまた、ユーザ機器デバイスのうちのいずれかから遠隔の場所にある、異なるタイプのコンテンツ（ユーザによって選択されるビデオコンテンツを含む）を記憶するために使用される、遠隔メディアサーバを含んでもよい。コンテンツの遠隔記憶のため、および遠隔に記憶されたコンテンツをユーザ機器に提供するためのシステムおよび方法は、全体として参照することにより本明細書に組み込まれる、２０１０年７月２０日発行のＥｌｌｉｓらの米国特許第７，７６１，８９２号に関連して、さらに詳細に議論されている。
【００５８】
メディアガイドデータソース６１８は、上記で説明されるメディアガイドデータ等のメディアガイドデータを提供してもよい。メディアガイドデータは、任意の好適なアプローチを使用して、ユーザ機器デバイスに提供されてもよい。いくつかの実施形態では、ガイドアプリケーションは、データフィード（例えば、継続フィードまたはトリクルフィード）を介して、番組ガイドデータを受信する、独立型双方向テレビ番組ガイドであってもよい。番組スケジュールデータおよび他のガイドデータは、テレビチャンネルのサイドバンド上で、帯域内デジタル信号を使用して、帯域外デジタル信号を使用して、または任意の他の好適なデータ伝送技術によって、ユーザ機器に提供されてもよい。番組スケジュールデータおよび他のメディアガイドデータは、複数のアナログまたはデジタルテレビチャンネル上でユーザ機器に提供されてもよい。
【００５９】
いくつかの実施形態では、メディアガイドデータソース６１８からのガイドデータは、クライアントサーバアプローチを使用して、ユーザの機器に提供されてもよい。例えば、ユーザ機器デバイスは、メディアガイドデータをサーバからプル配信してもよい、またはサーバは、メディアガイドデータをユーザ機器デバイスにプッシュ配信してもよい。いくつかの実施形態では、ユーザの機器上に常駐するガイドアプリケーションクライアントは、必要に応じて、例えば、ガイドデータが、古くなっているとき、またはユーザ機器デバイスが、データを受信するための要求をユーザから受信するとき、ソース６１８とセッションを開始し、ガイドデータを取得してもよい。メディアガイドは、任意の好適な頻度で（例えば、継続的に、毎日、ユーザ指定期間で、システム指定期間で、ユーザ機器からの要求に応じて等）ユーザ機器に提供されてもよい。メディアガイドデータソース６１８は、ユーザ機器デバイス６０２、６０４、および６０６に、メディアガイドアプリケーション自体、またはメディアガイドアプリケーションのソフトウェア更新を提供してもよい。
【００６０】
いくつかの実施形態では、メディアガイドデータは、視聴者データを含んでもよい。例えば、視聴者データは、現在のおよび／または履歴ユーザアクティビティ情報（例えば、どのようなコンテンツをユーザが典型的に鑑賞するか、どの時刻にユーザがコンテンツを鑑賞するか、ユーザがソーシャルネットワークと相互作用するかどうか、どの時間にユーザがソーシャルネットワークと相互作用して情報をポストするか、どのようなタイプのコンテンツをユーザが典型的に鑑賞するか（例えば、有料ＴＶまたは無料ＴＶ）、気分、脳の活動情報等）を含んでもよい。メディアガイドデータはまた、購読データを含んでもよい。例えば、購読データは、所与のユーザが購読するソースまたはサービスおよび／または所与のユーザが以前に購読していたが、後にアクセスを打ち切ったソースまたはサービス（例えば、ユーザが有料チャンネルを購読するかどうか、ユーザが有料レベルのサービスを追加したかどうか、ユーザがインターネット速度を増加させたかどうか）を識別してもよい。いくつかの実施形態では、視聴者データおよび／または購読データは、１年を上回る期間の間の所与のユーザのパターンを識別してもよい。メディアガイドデータは、所与のユーザがサービス／ソースへのアクセスを打ち切るであろう可能性を示すスコアを生成するために使用される、モデル（例えば、残存者モデル）を含んでもよい。例えば、メディアガイドアプリケーションは、所与のユーザが特定のサービスまたはソースへのアクセスを打ち切るであろうかどうかの可能性を示す、値またはスコアを生成するためのモデルを使用して、購読データとともに視聴者データを処理してもよい。特に、より高いスコアは、ユーザが特定のサービスまたはソースへのアクセスを打ち切るであろう、より高いレベルの信頼性を示し得る。スコアに基づいて、メディアガイドアプリケーションは、ユーザがアクセスを打ち切る可能性が高いであろうものとしてスコアによって示される特定のサービスまたはソースをユーザが維持するように勧誘する宣伝を生成してもよい。
【００６１】
メディアガイドアプリケーションは、例えば、ユーザ機器デバイス上に実装される独立型アプリケーションであってもよい。例えば、メディアガイドアプリケーションは、記憶装置５０８内に記憶され、ユーザ機器デバイス５００の制御回路５０４によって実行され得る、ソフトウェアまたは一式の実行可能命令として実装されてもよい。いくつかの実施形態では、メディアガイドアプリケーションは、クライアント−サーバアプリケーションであってもよく、その場合、クライアントアプリケーションのみが、ユーザ機器デバイス上に常駐し、サーバアプリケーションは、遠隔サーバ上に常駐する。例えば、メディアガイドアプリケーションは、部分的に、ユーザ機器デバイス５００の制御回路５０４上のクライアントアプリケーションとして、および部分的に遠隔サーバ上で、遠隔サーバの制御回路上で起動するサーバアプリケーションとして（例えば、メディアガイドデータソース６１８）、実装されてもよい。遠隔サーバの制御回路（メディアガイドデータソース６１８等）によって実行されると、メディアガイドアプリケーションは、制御回路に、ガイドアプリケーション表示を生成し、生成された表示をユーザ機器デバイスに伝送するように命令してもよい。サーバアプリケーションは、メディアガイドデータソース６１８の制御回路に、ユーザ機器上での記憶のためのデータを伝送するように命令してもよい。クライアントアプリケーションは、受信用ユーザ機器の制御回路に、ガイドアプリケーション表示を生成するように命令してもよい。
【００６２】
ユーザ機器デバイス６０２、６０４、および６０６に配信されるコンテンツおよび／またはメディアガイドデータは、オーバーザトップ（ＯＴＴ）コンテンツであってもよい。ＯＴＴコンテンツ配信は、上記で説明される任意のユーザ機器デバイスを含む、インターネット対応型ユーザデバイスが、ケーブルまたは衛星接続を経由して受信されるコンテンツに加え、上記で説明される任意のコンテンツを含む、インターネットを経由して転送されるコンテンツを受信することを可能にする。ＯＴＴコンテンツは、インターネットサービスプロバイダ（ＩＳＰ）によって提供されるインターネット接続を介して配信されるが、第三者も、コンテンツを配布する。ＩＳＰは、視聴能力、著作権、またはコンテンツの再配布に関与していなくてもよく、ＯＴＴコンテンツプロバイダによって提供されるＩＰパケットのみ転送してもよい。ＯＴＴコンテンツプロバイダの実施例は、ＩＰパケットを介して、オーディオおよびビデオを提供する、ＹＯＵＴＵＢＥ（登録商標）、ＮＥＴＦＬＩＸ、およびＨＵＬＵを含む。Ｙｏｕｔｕｂｅは、Ｇｏｏｇｌｅ  Ｉｎｃ．によって所有される商標であり、Ｎｅｔｆｌｉｘは、Ｎｅｔｆｌｉｘ，  Ｉｎｃ．によって所有される商標であり、Ｈｕｌｕは、Ｈｕｌｕ，  ＬＬＣ．によって所有される商標である。ＯＴＴコンテンツプロバイダは、加えて、または代替として、上記で説明されるメディアガイドデータを提供してもよい。コンテンツおよび／またはメディアガイドデータに加え、ＯＴＴコンテンツのプロバイダは、メディアガイドアプリケーション（例えば、ウェブベースのアプリケーションまたはクラウドベースのアプリケーション）を配布することができる、またはコンテンツは、ユーザ機器デバイス上に記憶されるメディアガイドアプリケーションによって表示されることができる。
【００６３】
メディアガイドシステム６００は、いくつかのアプローチまたはネットワーク構成を例証することを意図しており、これによって、ユーザ機器デバイスおよびコンテンツおよびガイドデータのソースは、コンテンツにアクセスし、メディアガイドを提供する目的で、相互と通信してもよい。本明細書に説明される実施形態は、これらのアプローチのうちのいずれか１つまたはサブセットにおいて、またはコンテンツを配信し、メディアガイドを提供するための他のアプローチを採用するシステムにおいて、適用されてもよい。以下の４つのアプローチは、図６の汎用実施例の具体的例証を提供する。
【００６４】
あるアプローチでは、ユーザ機器デバイスは、ホームネットワーク内で相互と通信してもよい。ユーザ機器デバイスは、上記で説明される短距離ポイントツーポイント通信方式を介して、ホームネットワーク上に提供されるハブまたは他の類似デバイスを通した間接パスを介して、または通信ネットワーク６１４を介して、直接相互と通信することができる。１つの家庭内の複数の個人のそれぞれが、ホームネットワーク上の異なるユーザ機器デバイスを動作させてもよい。結果として、種々のメディアガイド情報または設定が、異なるユーザ機器デバイス間で通信されることが望ましくあり得る。例えば、２００５年７月１１日出願のＥｌｌｉｓらの米国特許公開第２００５／０２５１８２７号でさらに詳細に説明されているように、ホームネットワーク内の異なるユーザ機器デバイス上で、ユーザが一貫したメディアガイドアプリケーション設定を維持することが望ましくあり得る。ホームネットワーク内の異なるタイプのユーザ機器デバイスがまた、相互と通信し、コンテンツを伝送してもよい。例えば、ユーザは、ユーザコンピュータ機器から携帯用ビデオプレーヤまたは携帯用音楽プレーヤにコンテンツを伝送してもよい。
【００６５】
第２のアプローチでは、ユーザは、複数のタイプのユーザ機器を有してもよく、これによって、コンテンツにアクセスし、メディアガイドを取得する。例えば、一部のユーザは、家庭内およびモバイルデバイスによってアクセスされる、ホームネットワークを有してもよい。ユーザは、遠隔デバイス上に実装されるメディアガイドアプリケーションを介して、家庭内デバイスを制御してもよい。例えば、ユーザは、そのオフィスのパーソナルコンピュータ、またはＰＤＡまたはウェブ対応携帯電話等のモバイルデバイスを介して、ウェブサイト上のオンラインメディアガイドアプリケーションにアクセスしてもよい。ユーザは、オンラインガイドアプリケーション上で種々の設定（例えば、録画、リマインダ、または他の設定）を設定して、ユーザの家庭内機器を制御してもよい。オンラインガイドは、直接、またはユーザの家庭内機器上のメディアガイドアプリケーションと通信することによって、ユーザの機器を制御してもよい。ユーザ機器デバイスが相互から遠隔の場所にある、ユーザ機器デバイスの通信のための種々のシステムおよび方法は、例えば、その全体を参照することにより本明細書に組み込まれる、Ｅｌｌｉｓらの２０１１年１０月２５日発行の米国特許第８，０４６，８０１号で議論されている。
【００６６】
第３のアプローチでは、家庭内外のユーザ機器デバイスのユーザは、コンテンツソース６１６と直接通信し、コンテンツにアクセスするために、そのメディアガイドアプリケーションを使用することができる。具体的には、家庭内では、ユーザテレビ機器６０２およびユーザコンピュータ機器６０４のユーザは、メディアガイドアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。ユーザはまた、無線ユーザ通信デバイス６０６を使用して、家庭外のメディアガイドアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。
【００６７】
第４のアプローチでは、ユーザ機器デバイスは、クラウドコンピューティング環境内で動作し、クラウドサービスにアクセスしてもよい。クラウドコンピューティング環境では、コンテンツ共有、記憶、または配布のための種々のタイプのコンピューティングサービス（例えば、ビデオ共有サイトまたはソーシャルネットワーキングサイト）が、「クラウド」と称される、ネットワーク−アクセス可能コンピューティングおよび記憶リソースの集合によって提供される。例えば、クラウドは、ネットワークを介して接続される、種々のタイプのユーザおよびデバイスにクラウドベースのサービス、例えば、通信ネットワーク６１４を介したインターネットを提供する、中央または分散場所に位置し得る、サーバコンピューティングデバイスの集合を含むことができる。これらのクラウドリソースは、１つまたはそれを上回るコンテンツソース４１６および１つまたはそれを上回るメディアガイドデータソース４１８を含んでもよい。加えて、または代替として、遠隔コンピューティングサイトは、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、および無線ユーザ通信デバイス６０６等の他のユーザ機器デバイスを含んでもよい。例えば、他のユーザ機器デバイスは、ビデオの記憶されたコピーまたはストリーミング配信されたビデオへのアクセスを提供してもよい。そのような実施形態では、ユーザ機器デバイスは、中央サーバと通信せずに、ピアツーピア様式で動作してもよい。
【００６８】
クラウドは、ユーザ機器デバイスのために、他の実施例の中でもとりわけ、コンテンツ記憶、コンテンツ共有、またはソーシャルネットワーキングサービス等のサービスへのアクセス、および上記で説明される任意のコンテンツへのアクセスを提供する。サービスは、クラウドコンピューティングサービスプロバイダを通して、またはオンラインサービスの他のプロバイダを通して、クラウド内で提供されることができる。例えば、クラウドベースのサービスは、コンテンツ記憶サービス、コンテンツ共有サイト、ソーシャルネットワーキングサイト、または他のサービスを含むことができ、それを介して、ユーザ供給コンテンツは、接続されたデバイス上の他者によって視聴するために配布される。これらのクラウドベースのサービスは、ユーザ機器デバイスが、コンテンツをローカルに記憶し、ローカルに記憶されたコンテンツにアクセスするのではなく、コンテンツをクラウドに記憶し、コンテンツをクラウドから受信することを可能にしてもよい。
【００６９】
ユーザは、カムコーダ、ビデオモード付きデジタルカメラ、オーディオレコーダ、携帯電話、およびハンドヘルドコンピューティングデバイス等の種々のコンテンツ捕捉デバイスを使用して、コンテンツを録画してもよい。ユーザは、直接、例えば、ユーザコンピュータ機器６０４から、またはコンテンツ捕捉特徴を有する、無線ユーザ通信デバイス６０６からのいずれかにおいて、クラウド上のコンテンツ記憶サービスにコンテンツをアップロードすることができる。代替として、ユーザは、最初に、コンテンツをユーザコンピュータ機器６０４等のユーザ機器デバイスに転送することができる。コンテンツを記憶するユーザ機器デバイスは、通信ネットワーク６１４上のデータ伝送サービスを使用して、コンテンツをクラウドにアップロードする。いくつかの実施形態では、ユーザ機器デバイス自体が、クラウドリソースであって、他のユーザ機器デバイスが、直接、ユーザがコンテンツを記憶したユーザ機器デバイスから、コンテンツにアクセスすることができる。
【００７０】
クラウドリソースは、例えば、ウェブブラウザ、メディアガイドアプリケーション、デスクトップアプリケーション、モバイルアプリケーション、および／またはそれらのアクセスアプリケーションの任意の組み合わせを使用して、ユーザ機器デバイスによってアクセスされてもよい。ユーザ機器デバイスは、アプリケーション配信のためにクラウドコンピューティングに依拠する、クラウドクライアントであってもよい、またはユーザ機器デバイスは、クラウドリソースにアクセスせずに、いくつかの機能性を有してもよい。例えば、ユーザ機器デバイス上で起動するいくつかのアプリケーションは、クラウドアプリケーション、すなわち、インターネットを経由して、サービスとして配信されるアプリケーションであってもよい一方、他のアプリケーションは、ユーザ機器デバイス上に記憶され、起動されてもよい。いくつかの実施形態では、ユーザデバイスは、コンテンツを複数のクラウドリソースから同時に受信してもよい。例えば、ユーザデバイスは、オーディオを１つのクラウドリソースからストリーミングする一方、コンテンツを第２のクラウドリソースからダウンロードすることができる。または、ユーザデバイスは、より効率的なダウンロードのために、コンテンツを複数のクラウドリソースからダウンロードすることができる。いくつかの実施形態では、ユーザ機器デバイスは、図５に関連して説明される処理回路によって行われる処理動作等の処理動作のために、クラウドリソースを使用することができる。
【００７１】
本明細書で参照されるように、用語「〜に応答して」は、「〜の結果として開始される」ことを指す。例えば、第２のアクションに応答して行われている第１のアクションは、第１のアクションと第２のアクションとの間に介在ステップを含んでもよい。本明細書で参照されるように、用語「〜に直接応答して」は、「〜によって引き起こされる」ことを指す。例えば、第２のアクションに直接応答して行われている第１のアクションは、第１のアクションと第２のアクションとの間に介在ステップを含まなくてもよい。
【００７２】
図７は、本開示の実施形態を組み込む、メディアアセットを効率的にダウンロードするための例示的プロセス７００である。メディアガイドアプリケーションは、画面１００および２００に示されるメディアアセットをダウンロードするように、制御回路５０４を使用してプロセス７００を実行してもよい。
【００７３】
ブロック７０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、メディアアセットのユーザ選択を受信する。制御回路５０４は、ユーザ入力インターフェース５１０を使用して、画面１００上に示されるメディアアセットのうちのいずれかのユーザ選択を受信してもよい。制御回路５０４は、図８に関連して説明されるようにユーザ選択を受信してもよい。
【００７４】
ブロック７０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、ネットワークの将来の非可用性を判定する。例えば、メディアガイドアプリケーションは、ユーザが間もなく飛行機に搭乗するであろうことをユーザのカレンダが示す場合に、インターネットが利用不可能になるであろうことを判定してもよい。別の実施例では、メディアガイドアプリケーションは、ユーザの場所が暴風雨の経路の中にある場合に、ケーブル信号が利用不可能である可能性が高いことを判定してもよい。メディアガイドアプリケーションは、図９に関連して説明されるように将来の非可用性を判定してもよい。
【００７５】
メディアガイドアプリケーションは、ネットワークが利用不可能であると予測される場合に、ダウンロードすることがより迅速であるバージョンでメディアアセットをダウンロードしてもよい。例えば、メディアガイドアプリケーションが映画をダウンロードするユーザ要求を受信し、インターネットが間もなく利用不可能になるであろうことを判定する場合、メディアガイドアプリケーションは、ＳＤ品質のほうが高速であり得るため、ＨＤ品質の代わりにＳＤ品質で映画をダウンロードしてもよい。これは、ネットワークコネクティビティが失われる前に、メディアアセットのより多くがダウンロードされることを可能にし得る。メディアガイドアプリケーションはまた、ユーザが部分的にダウンロードされたメディアアセットを視聴することを可能にしてもよい。例えば、ユーザがネットワーク可用性を失う前に、メディアガイドアプリケーションが映画の半分のみをダウンロードする場合、メディアガイドアプリケーションは、ユーザがダウンロードされた映画の半分を視聴することを可能にしてもよい。
【００７６】
ブロック７０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、ユーザ選択を受信するステップに基づいて、サーバから、メディアアセットと関連付けられる第１のバージョン識別子およびメディアアセットと関連付けられる第２のバージョン識別子を受信し、第１のバージョン識別子は、サーバ上に記憶されたメディアアセットの第１のバージョンと関連付けられ、第２のバージョン識別子は、サーバ上に記憶されたメディアアセットの第２のバージョンと関連付けられる。メディアガイドアプリケーションは、図１０に関連して説明されるように識別子を受信してもよい。
【００７７】
サーバは、メディアコンテンツソース６１６およびメディアガイドデータソース６１８のうちのいずれかであってもよい。サーバは、記憶回路５０８を使用して、同一のメディアアセットの多くの異なるバージョンを記憶してもよい。例えば、サーバは、映画Ａ１０２のＳＤおよびＨＤバージョンを記憶してもよい。メディアガイドアプリケーションは、サーバからメディアアセットの異なるバージョンを要求するために、受信された識別子を使用することが可能であり得る。
【００７８】
ブロック７０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、第１のバージョン識別子および第２のバージョン識別子を受信するステップに応答して、ユーザ選択メディアアセットを第１のセグメントおよび第２のセグメントに分割する。メディアガイドアプリケーションは、たとえ他がダウンロードされていなくても、ユーザがこれらのセグメントのうちのいずれかを視聴することを可能してもよい。
メディアガイドアプリケーションは、本開示によると、メディアアセットを、２つを上回るセグメントに分割してもよい。メディアガイドアプリケーションは、図１１および１２に関連して説明されるプロセスを使用して、メディアアセットを分割してもよい。
【００７９】
ブロック７１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、サーバに、メディアアセットの第１のセグメントを備える、第１のバージョン識別子と関連付けられるメディアアセットの第１のバージョンの第１の部分と、メディアアセットの第２のセグメントを備える、第２のバージョン識別子と関連付けられるメディアアセットの第２のバージョンの第２の部分との要求を伝送する。例えば、メディアガイドアプリケーションは、ＳＤ品質における映画の最初の３０分およびＨＤ品質における映画の第２の３０分の要求を伝送してもよい。サーバは、ビデオオンデマンドまたは記憶されたメディアアセットのソースであってもよい。
【００８０】
ブロック７１２では、メディアガイドアプリケーションは、制御回路５０４を使用して、ネットワークの判定された将来の非可用性に先立って、サーバから、メディアアセットの第１のバージョンの第１の部分およびメディアアセットの第２のバージョンの第２の部分を受信する。メディアガイドアプリケーションは、通信ネットワーク６１４を使用して、第１および第２の部分を受信してもよい。例えば、メディアガイドアプリケーションは、ＳＤ品質における要求された映画の最初の３０分およびＨＤ品質における映画の第２の３０分を受信してもよい。メディアガイドアプリケーションは、同時に第１および第２の部分を受信してもよい。メディアガイドアプリケーションは、受信された第１および第２の部分を記憶し、次いで、メディアアセットのさらなる部分の要求を伝送してもよい。メディアガイドアプリケーションは、図１３に関連して説明されるようにブロック７１０および７１２を実行してもよい。
【００８１】
図８は、本開示の実施形態を組み込む、メディアアセットのユーザ選択を受信するための例示的プロセス８００である。プロセス８００は、ブロック７０２を行うように制御回路５０４によって実行されてもよい。メディアガイドアプリケーションは、ディスプレイ５１２上で選択を受信するようにプロセス８００を実行してもよいが、メディアガイドアプリケーションは、ユーザの口頭のコマンドを解釈するように、音声テキスト化ソフトウェアを使用して、ユーザから口頭の選択も受信してもよいことが理解される。
【００８２】
ブロック８０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、メディアアセットの複数のインジケータを表示するために生成し、メディアアセットの各インジケータは、個別の領域と関連付けられる。例えば、メディアガイドアプリケーションは、ディスプレイ５１２上に画面１００を表示するために生成してもよい。メディアガイドアプリケーションは、各メディアアセットインジケータと関連付けられる領域を表示するために生成してもよい。例えば、メディアガイドアプリケーションは、映画Ａ１０２、テレビ番組Ｂ１０４、および歌Ｃ１０６のためのインジケータを含む、画面１００を表示するために生成してもよい。各インジケータは、画面１００に示されるように、画像領域と関連付けられてもよい。
【００８３】
ブロック８０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、表示上の領域のユーザ選択を検出する。メディアガイドアプリケーションは、ユーザ入力インターフェース５１０を通してユーザ選択を受信してもよい。例えば、メディアガイドアプリケーションは、ユーザが画面１００を表示するタブレット上のタッチスクリーンの表面上の点に触れたことを検出してもよい。
【００８４】
ブロック８０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、ユーザ選択の座標を判定する。例えば、メディアガイドアプリケーションは、画面１００を表示するタブレットのタッチスクリーンをアクティブ化することによって、ユーザが（ｘ、ｙ）座標（２００、５００）を伴うピクセルを選択したことを判定してもよい。
【００８５】
ブロック８０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、座標をメディアアセットの複数のインジケータのそれぞれと関連付けられる各領域と比較する。例えば、メディアガイドアプリケーションは、（ｘ、ｙ）座標（１００、３００）から（３００、７００）を伴って画面１００上の映画Ａ１０２のための選択可能な長方形領域を表示するために生成してもよい。メディアガイドアプリケーションはまた、（ｘ、ｙ）座標（７００、３００）から（９００、７００）を伴って画面１００上のテレビ番組Ｂ１０４のための選択可能な長方形領域を表示するために生成してもよい。メディアガイドアプリケーションは、ユーザ選択の（ｘ、ｙ）座標をこれら両方の領域の（ｘ、ｙ）座標と比較してもよい。
【００８６】
ブロック８１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、比較に基づいて、座標がメディアアセットのインジケータと関連付けられる領域内にあることを判定する。例えば、メディアガイドアプリケーションは、上記で説明されるように、座標（２００、５００）の受信されたユーザ選択が映画Ａ１０２と関連付けられる領域に属することを判定してもよい。
【００８７】
図９は、本開示の実施形態を組み込む、ネットワークの将来の非可用性を判定するための例示的プロセス９００である。メディアガイドアプリケーションは、ブロック７０４の一部としてプロセス９００を実行してもよい。本明細書で参照されるように、ネットワークアクセス、ネットワークコネクティビティ、およびネットワーク可用性は、同義的に使用される。
【００８８】
ブロック９０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、カレンダ、ユーザ場所、および挙動パターンの任意の組み合わせを備える、ユーザプロファイルを読み出す。メディアガイドアプリケーションは、通信ネットワーク６１４を使用して、記憶回路５０８から、または遠隔ユーザプロファイルデータベースから、ローカルユーザプロファイルを読み出してもよい。カレンダは、過去、現在、および将来のユーザアクティビティの記録を含んでもよい。例えば、カレンダは、ユーザが２月２３日の午後４時〜午後６時に飛行機を予約したという記録を含んでもよい。ユーザ場所が、ユーザデバイス上のＧＰＳ回路を使用して、判定されてもよい。例えば、メディアガイドアプリケーションは、タブレット上で制御回路５０４によって実行されてもよく、同一のタブレット上のＧＰＳ回路は、ユーザの現在の経度および緯度座標を提供してもよい。挙動パターンは、ユーザの周期的移動における共通パターンを識別することによって、判定されてもよい。例えば、タブレット上の制御回路５０４は、おそらくユーザが車で通勤しているため、ユーザのデバイスが毎朝午前８時〜午前９時の間にネットワークコネクティビティを失うことを判定してもよい。別の実施例では、タブレット上の制御回路５０４は、おそらくユーザが家族に会うために帰省するため、ユーザのデバイスが毎年クリスマス頃にネットワークコネクティビティを失うことを判定してもよい。
【００８９】
ブロック９０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、ユーザが間もなくネットワークアクセスを失うであろうことをカレンダが示すかどうかを判定する。読み出されたユーザプロファイルにカレンダがない場合、プロセス９００は、ブロック９０６に進んでもよい。制御回路５０４は、カレンダ内の今後の記録を、ネットワーク喪失が起こり得ることを示すキーワードのデータベースと比較してもよい。例えば、メディアガイドアプリケーションは、カレンダ記録を、記憶回路５０８を使用して、データベースに記憶されている「空港」、「運転」、および「地下鉄」等のキーワードと比較してもよい。いくつかの実施形態では、メディアガイドアプリケーションは、現在の時間のある閾値時間以内のカレンダ記録のサブセット（例えば、現在の時間の２時間以内のカレンダ記録）のみをキーワードと比較するであろう。カレンダ内の記録がキーワードのうちのいずれかに合致する場合、メディアガイドアプリケーションは、ユーザが間もなくネットワークアクセスを失うであろうことをカレンダが示すことを判定してもよく、プロセス９００は、ブロック９１２に進む。メディアガイドアプリケーションはまた、キーワードと言葉を共有するカレンダ記録内の情報に基づいて、ユーザがネットワークアクセスを失うことが予期される時間を記憶してもよい。そうでなければ、プロセス９００は、ブロック９０６に進む。
【００９０】
ブロック９０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、ユーザ場所がネットワークコネクティビティの喪失と関連付けられるかどうかを判定する。メディアガイドアプリケーションは、ＧＰＳ回路によって提供される座標を使用することによって、現在のユーザ場所を判定してもよい。メディアガイドアプリケーションは、通信ネットワーク６１４を使用して、これらの座標をサーバ上のマップに伝送してもよい。次いで、メディアガイドアプリケーションは、「レストラン」、「コーヒーショップ」、または「空港」等の場所座標と関連付けられる場所の記述子を受信してもよい。制御回路５０４は、受信された記述子を、ネットワーク喪失が起こり得ることを示すキーワードのデータベースと比較してもよい。キーワードのデータベースは、ブロック９０４で使用されるキーワードのデータベースと同一であり得る、または異なり得る。例えば、メディアガイドアプリケーションは、受信された記述子「地下鉄」を、記憶回路５０８を使用して、データベースに記憶されている「空港」、「運転」、および「地下鉄」と比較してもよい。受信された記述子の一部がキーワードのうちのいずれかに合致する場合、メディアガイドアプリケーションは、ユーザ場所がネットワークコネクティビティの喪失と関連付けられることを判定してもよく、プロセス９００は、ブロック９１２に進む。そうでなければ、プロセス９００は、ブロック９０８に進む。いくつかの実施形態では、プロセス９００は、いかなるユーザ場所データもユーザプロファイル内で利用可能ではない場合に、ブロック９０８に進む。
【００９１】
ブロック９０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、現在のコンテキストに関連する挙動パターンのサブセットを抽出する。例えば、メディアガイドアプリケーションによって読み出されるユーザプロファイルは、以下の挙動パターン、すなわち、（おそらくユーザが通勤することに起因する）就業日の午前８時〜午前９時の間のネットワークコネクティビティの喪失、および（おそらく休日の間に帰省することに起因する）毎年１２月のネットワークコネクティビティの喪失を含んでもよい。メディアガイドアプリケーションは、現在のコンテキストに適用可能である挙動パターンのサブセットを抽出してもよい。例えば、メディアガイドアプリケーションは、現在の日付が１１月中の就業日であることを判定してもよい。故に、第１の挙動パターンは、現在のコンテキストに関連するが、第２のパターンは関連しない。メディアガイドアプリケーションは、（おそらくユーザが通勤することに起因する）就業日の午前８時〜午前９時の間のネットワークコネクティビティの喪失を示す、挙動パターンを抽出してもよい。
【００９２】
ブロック９１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、ユーザが間もなくネットワークアクセスを失うであろうかどうかを挙動パターンのサブセットが示すかどうかを判定する。挙動パターンのサブセットは、ブロック９０８で抽出される挙動であってもよく、サブセットの中の挙動パターンはそれぞれ、ブロック９１０で状態について個別に検査されてもよい。例えば、メディアガイドアプリケーションは、（おそらくユーザが通勤することに起因する）就業日の午前８時〜午前９時の間のネットワークコネクティビティの喪失を示す、挙動パターンを抽出している場合がある。メディアガイドアプリケーションは、現在の時間が午前７時５５分である場合に、ユーザが間もなくネットワークアクセスを失うであろうことを挙動パターンが示すことを判定してもよく、プロセス９００は、ブロック９１２に進んでもよい。メディアガイドアプリケーションはまた、以下で説明されるように、ユーザがネットワークアクセスを失うことが予期される時間を記憶してもよい。メディアガイドアプリケーションは、現在の時間が挙動パターンと関連付けられる時間の閾値時間量（例えば、１０分または挙動パターンの時間の長さの１０％）以内である場合に、ユーザが間もなくネットワークアクセスを失うであろうことを判定してもよい。一方で、メディアガイドアプリケーションは、現在の時間が午前９時５分である場合に、ユーザが間もなくネットワークアクセスを失わないであろうことを挙動パターンが示すことを判定してもよく、プロセス９００は、終了されてもよい。いかなる挙動パターンも読み出されたユーザプロファイル内で利用可能ではない場合、プロセス９００はまた、終了されてもよい。
【００９３】
ブロック９１２では、メディアガイドアプリケーションは、制御回路５０４を使用して、ネットワークが、将来、利用不可能になるであろうことを判定する。メディアガイドアプリケーションは、ブール変数の値「ＮｅｔｗｏｒｋＬｏｓｓＵｐｃｏｍｉｎｇ」を「Ｔｒｕｅ」に変更するように、記憶回路５０８を使用して、本判定を記憶してもよい。メディアガイドアプリケーションはまた、記憶回路５０８を使用して、その情報がユーザプロファイルから抽出されることができる場合、ネットワーク喪失が起こることが予期される時間を記憶してもよい。メディアガイドアプリケーションはまた、ユーザがネットワークアクセスを失うことが予期される時間を記憶してもよい。例えば、メディアガイドアプリケーションが、午後７時に開始するカレンダ記録がブロック９０４においてネットワークコネクティビティの喪失を示したことを判定した場合、午後７時が記憶されてもよい。別の実施例では、メディアガイドアプリケーションが、午前８時〜午前９時の挙動パターンがブロック９１０においてネットワークコネクティビティの喪失を示したことを判定した場合、午前８時が記憶されてもよい。いかなる時間情報も利用可能ではない場合、メディアガイドアプリケーションは、現在の時間から３０分等の所定のデフォルト値を記憶してもよい。
【００９４】
図１０は、本開示の実施形態を組み込む、ネットワークから第１のバージョン識別子および第２のバージョン識別子を受信するための例示的プロセス１０００である。メディアガイドアプリケーションは、サーバのうちのいずれかの上のメディアアセットの第１および第２のバージョンの存在および可用性を知るために、第１および第２のバージョン識別子を使用してもよい。サーバは、メディアコンテンツソース６１６およびメディアガイドデータソース６１８のうちのいずれかであってもよい。制御回路５０４は、ブロック７０６の一部としてプロセス１０００を実行してもよい。
【００９５】
ブロック１００２では、メディアガイドアプリケーションは、制御回路５０４を使用して、ユーザ選択メディアアセットの識別子と、バージョン識別子の要求とを備える、クエリを構築する。例えば、メディアガイドアプリケーションは、以下の形式でユーザによって選択されるメディアアセットの要求、すなわち、「ＭＥＤＩＡ＿ＩＤ＝‘ＭｏｖｉｅＡ’  ＡＮＤ  ＭＥＤＩＡ＿ＶＥＲＳＩＯＮ＝‘Ａｎｙ’」を構築してもよい。いくつかの実施形態では、メディアガイドアプリケーションは、要求を伝送するために使用されているユーザデバイスと互換性があるバージョンのみを要求する。例えば、メディアガイドアプリケーションは、要求を伝送するために無線ユーザ通信デバイス６０６を使用してもよく、無線ユーザ通信デバイス６０６は、ディスプレイ５１２上に品質３６０ｐおよび４８０ｐのビデオのみを表示することができる。故に、メディアガイドアプリケーションは、以下の形式の要求、すなわち、「ＭＥＤＩＡ＿ＩＤ＝‘ＭｏｖｉｅＡ’  ＡＮＤ  （ＭＥＤＩＡ＿ＶＥＲＳＩＯＮ＝‘３６０ｐ’ＯＲ‘４８０ｐ’）」を構築してもよい。ここで示される要求形式は、例示的であり、任意の適切な要求形式が使用されてもよい。
【００９６】
ブロック１００４では、メディアガイドアプリケーションは、制御回路５０４を使用して、ブロック１００２で構築されるクエリを複数のサーバに伝送する。メディアガイドアプリケーションは、通信ネットワーク６１４を使用して、クエリを伝送してもよい。複数のサーバは、ダウンロードのためのメディアアセットを提供することができる、メディアサーバ（メディアコンテンツソース６１６およびメディアガイドデータソース６１８等）であってもよい。
【００９７】
ブロック１００６では、メディアガイドアプリケーションは、制御回路５０４を使用して、応答を待機する閾値時間量に達したかどうかを判定する。例えば、メディアガイドアプリケーションは、５秒の所定の応答待機時間を有してもよい。制御回路５０４は、クエリがブロック１００４において伝送されてから５秒に達したかどうかを判定してもよい。クエリが伝送された時間は、最後のクエリが複数のサーバのうちの最後のものに伝送された時間であってもよい。閾値時間量に達していない場合、メディアガイドアプリケーションは、複数のサーバからの応答を待機し続け、記憶回路５０８を使用して、任意の受信された応答をキャッシュする。閾値時間量に達した場合、プロセス１０００は、ブロック１００８に進む。
【００９８】
ブロック１００８では、メディアガイドアプリケーションは、制御回路５０４を使用して、受信されたバージョン識別子および関連付けられるサーバを記憶する。応答待機時間期間中に受信される全ての応答は、メディアガイドアプリケーションによってキャッシュされている場合がある。メディアガイドアプリケーションは、ここで、受信されたバージョン識別子および関連付けられるサーバを記憶してもよい。例えば、メディアガイドアプリケーションは、ブロック１００６でサーバから応答を受信し、応答をキャッシュしている場合がある。メディアガイドアプリケーションは、ここで、キャッシュから応答を読み出し、応答からバージョン識別子およびサーバ識別子を抽出し、記憶回路５０８を使用して、本情報を記憶してもよい。例えば、受信およびキャッシュされた応答は、「ＴＩＭＥ＝‘１３５８’  ＡＮＤ  ＭＥＤＩＡ＿ＩＤ＝‘Ｍｏｖｉｅ  Ａ’  ＡＮＤ  ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ  ４’  ＡＮＤ  （ＶＥＲＳＩＯＮ＿ＩＤ＝‘３６０ｐ’ＡＮＤ‘４８０ｐ’）  ＡＮＤ  ＬＯＣＡＴＩＯＮ＝‘ＡＬＡＢＡＭＡ’」であった場合がある。メディアガイドアプリケーションは、記憶回路５０８を使用して、将来使用するために、バージョン識別子（ＶＥＲＳＩＯＮ＿ＩＤ＝‘３６０ｐ’ＡＮＤ‘４８０ｐ’）およびサーバ識別子（ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ  ４’）のみを記憶してもよい。メディアガイドアプリケーションは、ブロック１００８が各受信された応答について実行された後に、キャッシュに記憶された情報を破棄してもよい。
【００９９】
ブロック１０１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、ブロック１００８中に記憶される情報から重複バージョン識別子を除去する。例えば、メディアガイドアプリケーションは、以下の入力、すなわち、［（ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ  ４’  ＡＮＤ  （ＶＥＲＳＩＯＮ＿ＩＤ＝‘３６０ｐ’ａｎｄ‘４８０ｐ’））、（ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ５’  ＡＮＤ  ＶＥＲＳＩＯＮ＿ＩＤ＝‘４８０ｐ’）］を記憶している場合がある。いくつかの実施形態では、メディアガイドアプリケーションは、可能な限り最大数の一意のサーバ識別子を記憶されたままにさせるように、重複を除去してもよい。故に、メディアガイドアプリケーションは、以下のような記憶された入力、すなわち、［（ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ  ４’  ＡＮＤ  ＶＥＲＳＩＯＮ＿ＩＤ＝‘３６０ｐ’）、（ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ  ５’  ＡＮＤ  ＶＥＲＳＩＯＮ＿ＩＤ＝‘４８０ｐ’）］から重複バージョン識別子「４８０ｐ」を除去してもよい。いくつかの実施形態では、メディアガイドアプリケーションは、（例えば、アルファベット順に、または応答の受信順に）サーバ識別子をソートし、重複がソートされたエントリの中で出現するにつれてそれらを除去してもよい。故に、メディアガイドアプリケーションは、以下のような記憶されてアルファベット順にソートされた入力、すなわち、［（ＳＥＲＶＥＲ＿ＩＤ＝‘Ｍｏｖｉｅｓ  Ｏｎｌｉｎｅ  Ｓｅｒｖｅｒ  ４’ＡＮＤ  （ＶＥＲＳＩＯＮ＿ＩＤ＝‘３６０ｐ’ＡＮＤ‘４８０ｐ’））から、重複バージョン識別子「４８０ｐ」を除去してもよい。
【０１００】
図１１は、本開示の実施形態を組み込む、メディアアセットのどのような割合が第１のバージョンでダウンロードされるべきかを判定するための例示的プロセス１１００である。プロセス１１００は、複数のメディアアセットの中のいずれかのメディアアセットのどのような割合が複数の利用可能なバージョンのうちのいずれかのバージョンでダウンロードされるべきかを判定するように、複数回実行され得ることが理解される。制御回路５０４は、ブロック７０８の一部としてプロセス１１００を実行してもよい。
【０１０１】
ブロック１１０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、ダウンロードのための時間量のユーザ選択、ユーザが第１のバージョンで所望するコンテンツの割合、およびメディアアセットの所望のバージョンのうちのいくつかまたは全てを読み出す。いくつかの実施形態では、メディアガイドアプリケーションは、ユーザ選択のうちのいずれも読み出さなくてもよく、以下のブロックのために、読み出された選択の代わりに所定のデフォルト値を使用してもよい。情報は、図９に関連して説明されるユーザプロファイルから読み出されてもよい。ダウンロードのための時間量は、１時間等のユーザがメディアアセットのダウンロードに要することを所望する最大時間を規定してもよい。ユーザが第１のバージョンで所望するコンテンツの例示的割合は、ＳＤでは映画の最大７５％、残りがＨＤであってもよい。メディアアセットの所望のバージョンは、時間およびネットワーク可用性制約に照らして可能なときは常にＨＤであってもよい。メディアガイドアプリケーションは、充足されるべき制約として受信されたユーザ選択を使用してもよい。メディアガイドアプリケーションは、必要とされる場合、メディアアセットを完全にダウンロードするために、またはネットワークコネクティビティが失われる前にダウンロード可能なできるだけ多くのメディアアセットをダウンロードするために、これらの制約を破ってもよい。
【０１０２】
メディアガイドアプリケーションは、ユーザ入力インターフェース５１０を通して本情報を受信し、記憶回路５０８を使用して、それを記憶している場合がある。ユーザは、ディスプレイ５１２上でオプションを選択するためにユーザ入力インターフェース５１０を使用してもよい。ユーザは、キーボードまたはドロップダウン選択を使用して、ダウンロードのための時間量を入力することが可能であり得る。ユーザは、スライダバーを使用して、またはキーボードを使用して数字を入力することによって、ユーザが第１のバージョンで所望するコンテンツの割合を入力することが可能であり得る。ユーザは、メディアアセットの利用可能なバージョンのうちのいくつかまたは全てのためのチェックボックスを選択することによって、メディアアセットの所望のバージョンを入力することが可能であり得る。いくつかの実施形態では、ユーザは、自分の選好をマイクロホンに話してもよく、メディアガイドアプリケーションは、ユーザの音声を転写し、次いで、それからユーザ選択を抽出するために、音声テキスト化変換を使用してもよい。
【０１０３】
ブロック１１０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、ネットワークが利用不可能になるまで残っている時間を判定する。メディアガイドアプリケーションは、プロセス９００中に記憶される時間（例えば、ネットワークコネクティビティが午前８時に失われることが予期される）を読み出し、現在の時間（例えば、午前７時４５分）を判定し、読み出された時間から現在の時間を減算して残っている時間（例えば、１５分）を判定してもよい。
【０１０４】
ブロック１１０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、ブロック１１０２で読み出される、ダウンロードのためのユーザ選択時間の最小値に等しいローカル「ｔｉｍｅ＿ｖａｒｉａｂｌｅ」と、ブロック１１０４で判定される、ネットワークが利用不可能になるまで残っている時間を設定する。メディアガイドアプリケーションは、記憶回路５０８を使用して、「ｔｉｍｅ＿ｖａｒｉａｂｌｅ」を記憶してもよい。例えば、メディアガイドアプリケーションは、１時間のユーザ選択最大ダウンロード時間の最小値および１５分のネットワークコネクティビティの喪失まで残っている時間を判定してもよい。メディアガイドアプリケーションは、記憶回路５０８を使用して、「ｔｉｍｅ＿ｖａｒｉａｂｌｅ＝００：１５」を記憶してもよい。
【０１０５】
ブロック１１０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、第１のバージョンでメディアアセットの第１の割合および第２のバージョンでメディアアセットの第２の割合をダウンロードすることが、「ｔｉｍｅ＿ｖａｒｉａｂｌｅ」よりも少ない時間を要するように、第１の割合および第２の割合を判定する。メディアアセットの２つより多くのバージョンがダウンロードされるであろう場合に、２つより多くの割合が判定されてもよい。２つのバージョンは、図１０に関連して受信されて記憶されるバージョンであってもよい。メディアガイドアプリケーションは、以下の要因、すなわち、ネットワーク上の利用可能な帯域幅、ネットワーク上でダウンロードする速度、ダウンロードされるメディアアセットのサイズまたは長さ、「ｔｉｍｅ＿ｖａｒｉａｂｌｅ」、所望のバージョンの読み出されたユーザ選択、および／またはユーザが第１のバージョンで所望するコンテンツの割合の読み出されたユーザ選択の任意の組み合わせに基づいて、２つの割合を判定してもよい。メディアガイドアプリケーションは、利用可能な帯域幅またはダウンロード速度の所定のデフォルト値を使用してもよい。メディアガイドアプリケーションは、ダウンロードの速度およびダウンロードされたバージョンの品質の両方を最適化して平衡を保とうとしてもよい。例えば、ユーザ選択が、ユーザがＳＤ品質でメディアアセットの最大で５０％を所望し、ＨＤ品質をダウンロードすることを好むことを示した場合、メディアガイドアプリケーションは、ネットワークコネクティビティが１５分位内に失われる前に、映画Ａ１０２の４５％がＳＤ品質でダウンロードされる必要があり、映画Ａ１０２の２５％がＨＤ品質でダウンロードされることができ、残りがダウンロードされることができないであろうことを判定してもよい。別の実施例では、ユーザ選択が、ユーザがＳＤ品質でメディアアセットの最大で１００％を所望することを示した場合、メディアガイドアプリケーションは、ネットワークコネクティビティが１５分位内に失われる前に、映画Ａ１０２の１００％がＳＤ品質でダウンロードされる必要があり、０％がＨＤ品質であることを判定してもよい。割合は、メディアアセットの長さの割合またはメディアアセットのサイズの割合として表されてもよい。
【０１０６】
ブロック１１１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、現在のネットワークコネクティビティの推定値に基づいて、第１の割合および第２の割合を調節する。例えば、メディアガイドアプリケーションは、ブロック１１０８で第１および第２の割合を判定するときに、５ＭＢ／秒の所定のデフォルトダウンロード速度を使用している場合がある。故に、メディアガイドアプリケーションは、ネットワークコネクティビティが１５分位内に失われる前に、映画Ａ１０２の４５％がＳＤ品質でダウンロードされる必要があり、映画Ａ１０２の２５％がＨＤ品質でダウンロードされることができ、残りがダウンロードされることができないであろうことを判定してもよい。しかしながら、メディアガイドアプリケーションは、現在のダウンロード速度が実際には６ＭＢ／秒であることを判定してもよい。メディアガイドアプリケーションは、ネットワーク６１４を使用して試験ファイルをアップロードまたはダウンロードし、試験を実行するために要する時間を測定する試験を実行することによって、現在のダウンロード速度または利用可能な帯域幅を判定してもよい。メディアガイドアプリケーションは、第１および第２の割合を調節し、ネットワークコネクティビティが１５分位内に失われる前に、映画Ａ１０２の５０％がＳＤ品質でダウンロードされる必要があり、映画Ａ１０２の３０％がＨＤ品質でダウンロードされることができ、残りがダウンロードされることができないであろうことを判定してもよい。
【０１０７】
ブロック１１１２では、メディアガイドアプリケーションは、制御回路５０４を使用して、記憶回路５０８を使用して第１の割合および第２の割合を記憶する。例えば、メディアガイドアプリケーションは、ブロック１１１０で、映画Ａ１０２の５０％がＳＤ品質でダウンロードされる必要があり、映画Ａ１０２の３０％がＨＤ品質でダウンロードされることができることを判定してもよい。メディアガイドアプリケーションは、記憶回路５０８を使用して、以下の例示的情報形式のうちのいずれか、すなわち、［ＨＤ＝．５，ＳＤ＝３］、［．５，．３］、［ＨＤ＝５０，ＳＤ３０］、［５０，３０］、［ＨＤ＝５０，ＳＤ＝３０、ＮＵＬＬ＝２０］、および［５０，３０，２０］において、これらの割合を記憶してもよい。情報を記憶するための任意の他の類似形式もまた、使用されてもよい。
【０１０８】
図１２は、本開示の実施形態を組み込む、メディアアセットを分割するための例示的プロセス１２００である。制御回路５０４は、ブロック７０８の一部としてプロセス１１００を実行してもよい。プロセス１２００は、２つの割合を使用するものとして説明されるが、任意の数の割合が本プロセスに従って使用され得ることが理解される。
【０１０９】
ブロック１２０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、メディアアセットの開始タイムスタンプを識別してもよい。メディアガイドアプリケーションは、メディアアセットがユーザによってすでに部分的に視聴されていない限り、またはユーザがメディアアセットの一部のみのダウンロードを要求していない限り、００：００のデフォルトタイムスタンプを判定してもよい。メディアアセットがユーザによって部分的に視聴された場合、メディアガイドアプリケーションは、メディアアセットの中の最新ブックマークと同一の値を有するように開始タイムスタンプを判定してもよい。ユーザがメディアアセットの一部のみのダウンロードを要求した場合、メディアガイドアプリケーションは、要求された部分の中の第１のタイムスタンプであるように開始タイムスタンプを判定してもよい。
【０１１０】
ブロック１２０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、記憶回路５０４を使用して第１の割合および第２の割合を読み出す。第１の割合および第２の割合の判定および記憶は、図１１に関連してさらに詳細に説明される。
【０１１１】
ブロック１２０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、メディアアセットの長さの第１の割合およびメディアアセットの長さの第２の割合と関連付けられるマーカをメディアアセットメタデータの中に記憶する。例えば、メディアガイドアプリケーションは、開始タイムスタンプからメディアアセットの終了までの長さが２０分であることを判定してもよい。第１の割合は、０．５であってもよく、第２の割合は、０．３であってもよい。メディアガイドアプリケーションは、記憶回路５０８を使用して、メディアアセットの長さの第１の割合（２０分＊０．５＝１０分）を示すマーカおよびメディアアセットの長さの第２の割合（２０分＊０．３＝６分）を示すマーカを、ローカル記憶装置内のメディアアセットメタデータの中に記憶してもよい。いくつかの実施形態では、メディアガイドアプリケーションは、割合のサイズ、すなわち、１０分および６分を記憶する。いくつかの実施形態では、メディアガイドアプリケーションは、割合の境界をマークするメディアアセットの長さの中の点、すなわち、１０分および（１０分＋６分＝）１６分を記憶する。これは、メディアガイドアプリケーションが第１のバージョンで０分のタイムスタンプと１分のタイムスタンプとの間、および第２のバージョンで１０分のタイムスタンプと１６分のタイムスタンプとの間のメディアアセットをダウンロードするであろうためである。
【０１１２】
ブロック１２０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、行われることができる同時ダウンロードの数を判定し、記憶回路５０８を使用して変数「ｎｕｍ＿ｓｉｍ＿ｄｌ」として数を記憶する。メディアガイドアプリケーションは、現在のユーザデバイスの能力に基づいて、この数を判定してもよい。メディアガイドアプリケーションはまた、利用可能な同時ダウンロードストリームのうちのいくつが、ユーザデバイス上ですでに使用されているかを判定し、利用可能な総数からこの数を減算してもよい。例えば、メディアガイドアプリケーションは、メディアガイドアプリケーションを起動するユーザタブレットが１０回の同時ダウンロードストリームが可能であることを判定してもよく、ダウンロードストリームのうちの８回が、現在使用されている。故に、メディアガイドアプリケーションは、記憶回路５０８を使用して、「ｎｕｍ＿ｓｉｍ＿ｄｌ＝２」を記憶してもよい。
【０１１３】
ブロック１２１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、（ａ）開始タイムスタンプおよび第１の割合と関連付けられるマーカと、（ｂ）第１および第２のタイムスタンプと関連付けられるマーカとのそれぞれの間の「ｎｕｍ＿ｓｉｍ＿ｄｌ−１」マーカを記憶する。これは、可能な限り多くの同時セグメントがダウンロードされることを可能にし得る。例えば、メディアガイドアプリケーションは、００：００に開始タイムスタンプ、１０：００に第１の割合のためのタイムスタンプ、および１６：００に第２の割合のためのタイムスタンプを伴って、２０分の長さのメディアアセットをダウンロードしている場合がある。次いで、メディアガイドアプリケーションは、これらのタイムスタンプのそれぞれの間の「ｎｕｍ＿ｓｉｍ＿ｄｌ−１」タイムスタンプを記憶してもよい。例えば、メディアガイドアプリケーションは、０５：００における００：００の開始タイムスタンプと１０：００の第１の割合タイムスタンプとの間、および１３：００における１０：００の第１の割合タイムスタンプと１６：００の第２の割合タイムスタンプとの間の「ｎｕｍ＿ｓｉｍ＿ｄｌ−１」（＝２−１＝１）という付加的タイムスタンプを記憶してもよい。
【０１１４】
ブロック１２１２では、メディアガイドアプリケーションは、制御回路５０４を使用して、開始タイムスタンプと第１の割合と関連付けられるマーカとの間の全てのセグメントの第１のバージョンとの関連付け、および第１および第２の割合と関連付けられるマーカの間の全てのセグメントの第２のバージョンとの関連付けを記憶するように、メディアアセットメタデータを修正する。例えば、第１および第２のバージョンは、それぞれ、ＳＤおよびＨＤバージョンであってもよい。上記で議論されるように、メディアガイドアプリケーションは、００：００、０５：００、１０：００、１３：００、および１６：００において、記憶されたタイムスタンプをメディアアセットメタデータの中に記憶している場合がある。メディアガイドアプリケーションは、セグメント００：００〜０５：００および０５：００〜１０：００のためのＳＤ品質との関連付けを記憶してもよい。メディアガイドアプリケーションはまた、セグメント１０：００〜１３：００および１３：００〜１６：００のためのＨＤ品質との関連付けを記憶してもよい。メディアガイドアプリケーションは、記憶回路５０８を使用して、メディアアセットメタデータをローカル記憶装置の中に記憶してもよい。
【０１１５】
図１３は、本開示の実施形態を組み込む、メディアアセットの第１および第２の部分を受信するための例示的プロセス１３００である。制御回路５０４は、ブロック７１０および７１２の一部としてプロセス１３００を実行してもよい。プロセス１３００は、第１のメディアアセットの第１のセグメントに関連して説明され、同一のプロセスが任意のメディアの任意のセグメントを受信するために使用され得ることが理解される。
【０１１６】
ブロック１３０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、サーバに、ユーザ選択メディアアセットの第１のセグメントを備える、第１のバージョン識別子と関連付けられるメディアアセットの第１のバージョンの第１の部分の要求を伝送する。ユーザ選択メディアアセットは、画面１００に示されるような映画Ａ１０２であってもよい。図１０に関連して説明されるように、第１のバージョン識別子は、「ＳＤ」であってもよい。図１２に関連して議論されるように、第１のセグメントは、タイムスタンプ００：００と０５：００との間のメディアアセットの一部であってもよい。サーバは、メディアコンテンツソース６１６およびメディアガイドデータソース６１８のうちのいずれかであってもよい。メディアガイドアプリケーションは、通信ネットワーク６１４を通して、サーバに、ユーザ選択メディアアセットの識別子、第１のバージョン識別子を含む要求、および第１の部分と関連付けられるタイムスタンプを伝送してもよい。例えば、例示的要求は、［ＭＥＤＩＡ＿ＩＤ＝“Ｍｏｖｉｅ  Ａ”  ＡＮＤ  ＶＥＲＳＩＯＮ＿ＩＤ＝“ＳＤ”  ＡＮＤ  ＴＴＭＥＳＴＡＭＰ１＝“００：００”  ＡＮＤ  ＴＩＭＥＳＴＡＭＰ２＝“０５：００”］であってもよい。メディアガイドアプリケーションは、ブロック１００８で記憶されるようなバージョン識別子と関連付けられるサーバに要求を伝送してもよい。
【０１１７】
ブロック１３０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、サーバからメディアアセットの第１のバージョンの第１の部分を受信する。メディアガイドアプリケーションは、ブロック１３０２で要求される部分を受信してもよい。メディアガイドアプリケーションが閾値応答時間以内に第１の部分を受信しない場合、メディアガイドアプリケーションは、要求を再伝送してもよい、または要求を別のサーバに伝送してもよい。ブロック１３０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、ブロック１３０４で受信されるようなメディアアセットの第１のバージョンの第１の部分を、記憶回路５０８を使用して記憶する。
【０１１８】
ブロック１３０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、メディアアセットメタデータに基づいて、メディアアセットの第１のバージョンの第１の部分をメディアアセットの他の部分にリンクする。例えば、メディアアセットメタデータは、メディアアセットがタイムスタンプ００：００〜０５：００からの第１のセグメントと、タイムスタンプ０５：００〜１０：００からの第２のセグメントとを有することを示してもよい。メディアガイドアプリケーションは、００：００〜０５：００からのセグメントを備える、受信された第１の部分を、０５：００〜１０：００からのセグメントを備える、後に、または同時に受信される部分にリンクしてもよい。メディアガイドアプリケーションは、ユーザが画面２００上で映画Ａ２０２を選択するときに、第１の受信された部分および第２の受信された部分が連続して再生されることを可能にするように、受信された部分をリンクしてもよい。いくつかの実施形態では、メディアガイドアプリケーションは、部分的にダウンロードされた部分を完全にダウンロードされた部分にリンクするであろう。例えば、メディアアセットの一部のダウンロードが、ネットワークコネクティビティの喪失の前に終了されることができなかった場合、部分的にダウンロードされた部分は、記憶され、完全にダウンロードされた部分にリンクされてもよい。メディアガイドアプリケーションは、ダウンロードされている間にユーザがメディアアセットを視聴することを可能にしてもよい。
【０１１９】
いったんメディアアセットの第１の部分がダウンロードされると、メディアガイドアプリケーションは、画面１００からメディアアセット（例えば、映画Ａ１０２）のためのアイコンを除去し、メディアアセット（例えば、映画Ａ２０２）のためのアイコンを画面２００に追加し、画面２００上のメディアアセットのためのアイコンの上にオーバーレイされたアイコン２１０を表示するために生成してもよい。メディアアセットの各後続部分がダウンロードされるとき、メディアガイドアプリケーションは、アイコン２１０を更新してもよい。更新は、メディアアセットのどの部分が各バージョンでダウンロードされたかをメディアガイドアプリケーションが判定することに基づいてもよい。判定を使用して、メディアガイドアプリケーションは、円グラフの部分の新しい面積でアイコン２１２または２１８を、同心円の新しい半径でアイコン２１４または２２０を、または中空同心円の埋められた円周の新しい長さでアイコン２１６または２２２を更新してもよい。
【０１２０】
図１４は、本開示の実施形態を組み込む、ダウンロードされたメディアアセットを置換するための例示的プロセス１４００である。制御回路５０４は、より低品質のバージョンでダウンロードされたメディアアセットの部分をより高品質のバージョンと置換するように、プロセス１４００を実行してもよい。例えば、ブロック１１０２で受信されるようなユーザ選択は、ユーザが「７２０ｐ」品質におけるメディアアセットを好むことを示してもよい。メディアガイドアプリケーションは、ネットワークコネクティビティが失われる前にダウンロードを完了するように、「３６０ｐ」品質でメディアアセットをダウンロードしている場合がある。いくつかの実施形態では、メディアガイドアプリケーションは、「３６０ｐ」部分を「４８０ｐ」部分と置換し、次いで、「４８０ｐ」部分を「７２０ｐ」部分と置換するであろう。いくつかの実施形態では、メディアガイドアプリケーションは、「３６０ｐ」部分を「７２０ｐ」部分と置換するであろう。
【０１２１】
いくつかの実施形態では、メディアアセットの開始および終了部分における部分は、クレジットを含有する可能性が高く、故に、ユーザにとって重要ではない場合があるため、これらの部分は、メディアアセットのより高品質のバージョンと置換されなくてもよい。
【０１２２】
ブロック１４０２では、メディアガイドアプリケーションは、制御回路５０４を使用して、現在のネットワークコネクティビティを判定する。メディアガイドアプリケーションは、図９に関連して予測されるネットワークコネクティビティの喪失後に、ユーザがネットワークコネクティビティを再獲得したかどうかを判定してもよい。メディアガイドアプリケーションは、通信ネットワーク６１４がアクセスされることができるかどうかを判定し、アクセスの品質を測定してもよい。例えば、メディアガイドアプリケーションは、帯域幅、アップロード速度、ダウンロード速度、または任意の他のネットワーク品質統計を測定してもよい。
【０１２３】
ブロック１４０４では、メディアガイドアプリケーションは、制御回路５０４を使用して、ブロック１４０２で判定されるような現在のネットワークコネクティビティが、所定の閾値コネクティビティを上回るか、またはそれと等しいかどうかを判定する。条件が真である場合、プロセス１４００は、ブロック１４０６に進む。そうでなければ、ブロック１４００は、ブロック１４０２に戻る。
【０１２４】
ブロック１４０６では、メディアガイドアプリケーションは、制御回路５０４を使用して、任意のダウンロードが現在起こっているかどうかを判定する。メディアガイドアプリケーションが、ダウンロードが現在起こっていることを判定する場合、メディアガイドアプリケーションは、すでにダウンロードされたメディアアセットの置換を開始する前に、これらのダウンロードが完了することを可能にしてもよい。メディアガイドアプリケーションは、現在のユーザデバイスのための全ての起こり得る同時ダウンロードストリームのステータスをチェックすることによって、任意のダウンロードが現在起こっているかどうかを判定してもよい。メディアガイドアプリケーションが、少なくとも１つのダウンロードストリームが使用されていないことを見出す場合、プロセス１４００は、ブロック１４０８に進む。そうでなければ、ブロック１４００は、ブロック１４０２に戻る。
【０１２５】
ブロック１４０８では、メディアガイドアプリケーションは、制御回路５０４を使用して、不完全なメディアアセットまたは第１のバージョンにおけるメディアアセットを識別する。メディアガイドアプリケーションが、メディアアセットが完全にダウンロードされなかったことを判定する場合、メディアガイドアプリケーションは、不完全なメディアアセットの残りの部分をダウンロードしてもよい。メディアアセットが、より低品質の第１のバージョンの部分を有する場合、メディアガイドアプリケーションは、より低品質の第１のバージョン部分をより高品質の第２のバージョン部分と置換してもよい。メディアガイドアプリケーションは、最も長い不完全な部分またはより低品質の第１のバージョンの最も長い部分のいずれかを伴うメディアアセットを識別してもよい。
【０１２６】
ブロック１４１０では、メディアガイドアプリケーションは、制御回路５０４を使用して、サーバからより高品質の第２のバージョンのメディアアセットを読み出す。いくつかの実施形態では、メディアガイドアプリケーションがブロック１４０８で不完全なメディアアセットを識別した場合、メディアガイドアプリケーションは、不完全なメディアアセットのダウンロードを完了するように、サーバからより低品質の第１のバージョンの部分を読み出してもよい。メディアガイドアプリケーションは、図１３に関連して説明されるようにメディアアセットを読み出してもよい。
【０１２７】
ブロック１４１２では、メディアガイドアプリケーションは、制御回路５０４を使用して、識別されたメディアアセットを読み出されたメディアアセットと置換する。メディアガイドアプリケーションは、記憶回路５０８からメディアアセットのより低品質の第１のバージョン部分を消去し、消去された部分をメディアアセットのより高品質の第２のバージョン部分と置換してもよい。メディアガイドアプリケーションはまた、ブロック１３０８に関連して説明されるように、より低品質の第１のバージョン部分へのリンクを除去し、より高品質のセクションバージョン部分へのリンクを追加するように、メディアアセットメタデータの中のリンクを更新してもよい。メディアガイドアプリケーションはまた、アイコン２１０を更新してもよい。
【０１２８】
いくつかの実施形態では、メディアガイドアプリケーションがブロック１４０８で不完全なメディアアセットを識別した場合、メディアガイドアプリケーションは、ブロック１３０８に関連して説明されるように、新たにダウンロードされた部分と不完全なメディアアセットとの間にリンクを作成してもよい。
【０１２９】
プロセス７００−１４００またはその任意のステップは、図３−４に示されるデバイスのうちのいずれかの最適化システムの上で行われ得る、またはそれによって提供され得ることに留意されたい。例えば、プロセス７００−１４００は、情報をユーザに提供するために、ユーザ機器６０２、４０４、および／または４０６（図４）の上に実装される処理回路によって命令されるように、処理回路５０４（図３）によって実行されてもよい。加えて、プロセス７００−１４００の１つまたはそれを上回るステップは、任意の他のプロセスまたは実施形態の１つまたはそれを上回るステップに組み込まれてもよい、またはそれと組み合わせられてもよい。
【０１３０】
図７−１４のステップまたは説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される。加えて、図７−１４に関連して説明されるステップまたは説明は、本開示の目的を促進するように、代替的順序で、または並行して行われてもよい。例えば、これらのステップはそれぞれ、遅延を低減させる、またはシステムまたは方法の速度を増加させるように、任意の順序で、または並行して、または実質的に同時に行われてもよい。
【０１３１】
上記で議論されるプロセスは、限定的ではなく、例証的であることが意図される。当業者は、本明細書で議論されるプロセスのステップが、省略される、修正される、組み合わせられる、および／または並べ替えられてもよく、任意の付加的ステップが、本発明の範囲から逸脱することなく、行われてもよいことを理解するであろう。より一般的には、上記の開示は、限定的ではなく、例示的であることを意図する。続く請求項のみが、本発明が包含するものに関する境界を設定することを意図する。さらに、いずれか１つの実施形態で説明される特徴および制限は、本明細書の任意の他の実施形態に適用され得、一実施形態に関するフローチャートまたは実施例は、好適な様式で任意の他の実施形態と組み合わせられ、異なる順序で行われ、または並行して行われ得ることに留意されたい。加えて、本明細書で説明されるシステムおよび方法は、リアルタイムで行われてもよい。また、上記で説明されるシステムおよび／または方法は、他のシステムおよび／または方法に適用され、またはそれらに従って使用され得ることにも留意されたい。
【図１】
2019511848.tif 000003
【図２】
2019511848.tif 000004
【図３】
2019511848.tif 000005
【図４】
2019511848.tif 000006
【図５】
2019511848.tif 000007
【図６】
2019511848.tif 000008
【図７】
2019511848.tif 000009
【図８】
2019511848.tif 000010
【図９】
2019511848.tif 000011
【図１０】
2019511848.tif 000012
【図１１】
2019511848.tif 000013
【図１２】
2019511848.tif 000014
【図１３】
2019511848.tif 000015
【図１４】
2019511848.tif 000016
【国際調査報告】
2019511848.tif 000017
2019511848.tif 000018
2019511848.tif 000019