(57)【要約】サービス品質に基づいて、ユーザデバイスにおいてメディア一覧を提示するための方法およびシステムが、説明される。一実施形態では、メディアガイドアプリケーションは、ユーザのために、自動的に、種々のコンテンツプロバイダにサブスクライブし、および／またはそれとのアカウントを管理してもよい。さらに、ユーザは、同時に、各コンテンツプロバイダのメディアコンテンツライブラリを検索し、消費するためのコンテンツを探してもよい。
2019522386.tif 000002
【特許請求の範囲】
【請求項１】
メディアコンテンツのプロバイダを選択する方法であって、前記方法は、
サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するステップであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ステップと、
前記サーバにおいて、メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するステップと、
前記サーバにおいて、前記第１のサービス品質と前記第２のサービス品質を比較するステップと、
前記サーバにおいて、前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質を上回ることを判定するステップと、
表示のために、前記サーバにおいて、前記第１のサービス品質が前記第２のサービス品質を上回ることの判定に基づいて、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧を生成するステップと
を含む、方法。
【請求項２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１に記載の方法。
【請求項３】
前記第１のサービス品質を判定するステップは、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を含む、請求項２に記載の方法。
【請求項４】
前記第１のサービス品質を判定するステップはさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと
を含む、請求項１に記載の方法。
【請求項５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するステップと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するステップと、
表示のために、前記メディア一覧と同時に、前記格付けを生成するステップと
をさらに含む、請求項１に記載の方法。
【請求項６】
前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するステップをさらに含み、前記通知は、前記第２のサービス品質が前記第１のサービス品質より低いことを示す、請求項１に記載の方法。
【請求項７】
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質と等しいことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する異なるメディア一覧を生成するステップをさらに含む、請求項１に記載の方法。
【請求項８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すステップと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すステップであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ステップと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するステップと
をさらに含む、請求項１に記載の方法。
【請求項９】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するステップと
をさらに含む、請求項１に記載の方法。
【請求項１０】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するステップであって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、ステップと
をさらに含む、請求項１に記載の方法。
【請求項１１】
メディアコンテンツのプロバイダを選択するためのシステムであって、前記システムは、ユーザデバイスと通信するサーバを備え、前記サーバは、
制御回路であって、前記制御回路は、
前記ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信することであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ことと、
メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定することと、
前記メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定することと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定することと、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定することと、
前記第１のサービス品質と前記第２のサービス品質を比較することと、
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質を上回ることを判定することと、
表示のために、前記第１のサービス品質が前記第２のサービス品質を上回ることの判定に基づいて、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧を生成することと
を行うように構成される、制御回路
を含む、システム。
【請求項１２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１１に記載のシステム。
【請求項１３】
前記第１のサービス品質を判定するように構成される前記制御回路はさらに、
第１のサービス品質特性および第２のサービス品質特性を判定することと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てることと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定することと
を行うように構成される、請求項１２に記載のシステム。
【請求項１４】
前記第１のサービス品質を判定するように構成される前記制御回路はさらに、
前記ユーザデバイスにチェックサム値に関してクエリすることと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信することと
を行うようにさらに構成される、請求項１１に記載のシステム。
【請求項１５】
前記制御回路はさらに、
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力することと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定することと、
表示のために、前記メディア一覧と同時に、前記格付けを生成することと
を行うように構成される、請求項１１に記載のシステム。
【請求項１６】
前記制御回路はさらに、前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するように構成され、前記通知は、前記第２のサービス品質が前記第１のサービス品質より低いことを示す、請求項１１に記載のシステム。
【請求項１７】
前記制御回路はさらに、前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質と等しいことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する異なるメディア一覧を生成するように構成される、請求項１１に記載のシステム。
【請求項１８】
前記制御回路はさらに、
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すことと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すことであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ことと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定することと
を行うように構成される、請求項１１に記載のシステム。
【請求項１９】
前記制御回路はさらに、
サービス閾値品質を読み出すことと、
前記第１のサービス品質と前記サービス閾値品質を比較することと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成することと
を行うように構成される、請求項１１に記載のシステム。
【請求項２０】
前記制御回路はさらに、
サービス閾値品質を読み出すことと、
前記第１のサービス品質と前記サービス閾値品質を比較することと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成することであって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、ことと
を行うように構成される、請求項１１に記載のシステム。
【請求項２１】
メディアコンテンツのプロバイダを選択するシステムであって、前記システムは、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するための手段であって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、手段と、
メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するための手段と、
前記メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するための手段と、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するための手段と、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するための手段と、
前記第１のサービス品質と前記第２のサービス品質を比較するための手段と、
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質を上回ることを判定するための手段と、
表示のために、前記サーバにおいて、前記第１のサービス品質が前記第２のサービス品質を上回ることの判定に基づいて、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧を生成するための手段と
を備える、システム。
【請求項２２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項２１に記載のシステム。
【請求項２３】
前記第１のサービス品質を判定するための手段は、
第１のサービス品質特性および第２のサービス品質特性を判定するための手段と、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるための手段と、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するための手段と
を備える、請求項２２に記載のシステム。
【請求項２４】
前記第１のサービス品質を判定するための手段はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするための手段と、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するための手段と
を備える、請求項２１に記載の方法。
【請求項２５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するための手段と、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するための手段と、
表示のために、前記メディア一覧と同時に、前記格付けを生成するための手段と
をさらに備える、請求項２１に記載のシステム。
【請求項２６】
前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するための手段をさらに備え、前記通知は、前記第２のサービス品質が前記第１のサービス品質より低いことを示す、請求項２１に記載の方法。
【請求項２７】
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質と等しいことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する異なるメディア一覧を生成するための手段をさらに備える、請求項２１に記載の方法。
【請求項２８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すための手段と、
前記ユーザプロファイルに関するサブスクプションデータを読み出すための手段であって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、手段と、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するための手段と
をさら備える、請求項２１に記載の方法。
【請求項２９】
サービス閾値品質を読み出すための手段と、
前記第１のサービス品質と前記サービス閾値品質を比較するための手段と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するための手段と
をさらに備える、請求項２１に記載の方法。
【請求項３０】
サービス閾値品質を読み出すための手段と、
前記第１のサービス品質と前記サービス閾値品質を比較するための手段と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するための手段であって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、手段と
をさらに備える、請求項１に記載の方法。
【請求項３１】
メディアコンテンツのプロバイダを選択する方法であって、前記方法は、
サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するステップであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ステップと、
前記サーバにおいて、メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するステップと、
前記サーバにおいて、前記第１のサービス品質と前記第２のサービス品質を比較するステップと、
前記サーバにおいて、前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質を上回ることを判定するステップと、
表示のために、前記サーバにおいて、前記第１のサービス品質が前記第２のサービス品質を上回ることの判定に基づいて、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧を生成するステップと
を含む、方法。
【請求項３２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項３１に記載の方法。
【請求項３３】
前記第１のサービス品質を判定するステップは、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を含む、請求項３２に記載の方法。
【請求項３４】
前記第１のサービス品質を判定するステップはさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと
を含む、請求項３１に記載の方法。
【請求項３５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するステップと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するステップと、
表示のために、前記メディア一覧と同時に、前記格付けを生成するステップと
をさらに含む、請求項３１に記載の方法。
【請求項３６】
前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するステップをさらに含み、前記通知は、前記第２のサービス品質が前記第１のサービス品質より低いことを示す、請求項３１に記載の方法。
【請求項３７】
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質と等しいことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する異なるメディア一覧を生成するステップをさらに含む、請求項３１に記載の方法。
【請求項３８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すステップと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すステップであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ステップと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するステップと
をさらに含む、請求項３１に記載の方法。
【請求項３９】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するステップと
をさらに含む、請求項３１に記載の方法。
【請求項４０】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するステップであって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、ステップと
をさらに含む、請求項３１に記載の方法。
【請求項４１】
非一過性コンピュータ可読媒体であって、前記非一過性コンピュータ可読媒体は、メディアコンテンツのためのプロバイダを選択するための非一過性コンピュータ可読媒体上に記録される命令を有し、前記命令は、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するための命令であって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、命令と、
メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するための命令と、
前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するための命令と、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するための命令と、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するための命令と、
前記第１のサービス品質と前記第２のサービス品質を比較するための命令と、
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質を上回ることを判定するための命令と、
表示のために、前記第１のサービス品質が前記第２のサービス品質を上回ることの判定に基づいて、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧を生成するための命令と
を備える、非一過性コンピュータ可読媒体。
【請求項４２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項４３】
前記第１のサービス品質を判定するための命令はさらに、
第１のサービス品質特性および第２のサービス品質特性を判定するための命令と、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるための命令と、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するための命令と
を備える、請求項４２に記載の非一過性コンピュータ可読媒体。
【請求項４４】
前記第１のサービス品質を判定するための命令はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするための命令と、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するための命令と
を備える、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項４５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するための命令と、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するための命令と、
表示のために、前記メディア一覧と同時に、前記格付けを生成するための命令と
をさらに備える、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項４６】
前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するための命令をさらに備え、前記通知は、前記第２のサービス品質が前記第１のサービス品質より低いことを示す、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項４７】
前記比較に基づいて、前記第１のサービス品質が前記第２のサービス品質と等しいことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関するメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する異なるメディア一覧を生成するための命令をさらに備える、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項４８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すための命令と、
前記ユーザプロファイルに関するサブスクプションデータを読み出すための命令であって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、命令と、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するための命令と
をさらに備える、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項４９】
サービス閾値品質を読み出すための命令と、
前記第１のサービス品質と前記サービス閾値品質を比較するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するための命令と
をさらに備える、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項５０】
サービス閾値品質を読み出すための命令と、
前記第１のサービス品質と前記サービス閾値品質を比較するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するための命令であって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、命令と
をさらに備える、請求項４１に記載の非一過性コンピュータ可読媒体。
【請求項５１】
ユーザインターフェース内でオーバーザトップコンテンツを配列する方法であって、前記方法は、
サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するステップであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ステップと、
前記サーバにおいて、メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するステップと、
前記サーバにおいて、前記第１のサービス品質が前記第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で前記第１のコンテンツプロバイダを前記第２のコンテンツプロバイダより高くランク付けするステップと、
ユーザインターフェース内における表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成するステップであって、前記第１のメディア一覧および前記第２のメディア一覧は、前記ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、前記ユーザインターフェース内で配列される、ステップと
を含む、方法。
【請求項５２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項５１に記載の方法。
【請求項５３】
前記第１のサービス品質を判定するステップは、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を含む、請求項５２に記載の方法。
【請求項５４】
前記第１のサービス品質を判定するステップはさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと
を含む、請求項５１に記載の方法。
【請求項５５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するステップと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するステップと、
表示のために、前記メディア一覧と同時に、前記格付けを生成するステップと
をさらに含む、請求項５１に記載の方法。
【請求項５６】
前記第１のメディア一覧は、第１のモザイクセルに対応し、前記第２のメディア一覧は、第２のモザイクセルに対応し、前記第１のモザイクセルは、前記第２のモザイクセルより顕著に表示される、請求項５１に記載の方法。
【請求項５７】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すステップと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すステップであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ステップと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するステップと
をさらに含む、請求項５１に記載の方法。
【請求項５８】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、前記第１のメディア一覧を前記ランク付けされた一覧に追加するステップと
をさらに含む、請求項５１に記載の方法。
【請求項５９】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するステップと
をさらに含む、請求項５１に記載の方法
【請求項６０】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するステップであって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、ステップと
をさらに含む、請求項１に記載の方法。
【請求項６１】
ユーザインターフェース内でオーバーザトップコンテンツを配列するシステムであって、前記システムは、ユーザデバイスと通信するサーバを備え、前記サーバは、
制御回路であって、前記制御回路は、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信することであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ことと、
メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定することと、
前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定することと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定することと、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定することと、
前記第１のサービス品質が前記第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で前記第１のコンテンツプロバイダを前記第２のコンテンツプロバイダより高くランク付けすることと、
ユーザインターフェース内における表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成することであって、前記第１のメディア一覧および前記第２のメディア一覧は、前記ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、前記ユーザインターフェース内で配列される、ことと
を行うように構成される、制御回路
を含む、システム。
【請求項６２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項６１に記載のシステム。
【請求項６３】
前記第１のサービス品質を判定するように構成される前記制御回路はさらに、
第１のサービス品質特性および第２のサービス品質特性を判定することと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てることと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定することと
を行うように構成される、請求項６２に記載のシステム。
【請求項６４】
前記第１のサービス品質を判定するように構成される前記制御回路はさらに、
前記ユーザデバイスにチェックサム値に関してクエリすることと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信することと
を行うようにさらに構成される、請求項６１に記載のシステム。
【請求項６５】
前記制御回路は、
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力することと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定することと、
表示のために、前記メディア一覧と同時に、前記格付けを生成することと
を行うように構成される、請求項６１に記載のシステム。
【請求項６６】
前記第１のメディア一覧は、第１のモザイクセルに対応し、前記第２のメディア一覧は、第２のモザイクセルに対応し、前記第１のモザイクセルは、前記第２のモザイクセルより顕著に表示される、請求項６１に記載のシステム。
【請求項６７】
前記制御回路はさらに、
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すことと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すことであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ことと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定することと
を行うように構成される、請求項６１に記載のシステム。
【請求項６８】
前記制御回路はさらに、
サービス閾値品質を読み出すことと、
前記第１のサービス品質と前記サービス閾値品質を比較することと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、前記第１のメディア一覧を前記ランク付けされた一覧に追加することと
を行うように構成される、請求項６１に記載のシステム。
【請求項６９】
前記制御回路はさらに、
サービス閾値品質を読み出すことと、
前記第１のサービス品質と前記サービス閾値品質を比較することと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成することと
を行うように構成される、請求項６１に記載のシステム。
【請求項７０】
前記制御回路はさらに、
サービス閾値品質を読み出すことと、
前記第１のサービス品質と前記サービス閾値品質を比較することと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成することであって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、ことと
を行うように構成される、請求項６１に記載のシステム。
【請求項７１】
ユーザインターフェース内でオーバーザトップコンテンツを配列するシステムであって、前記システムは、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するための手段であって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、手段と、
メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するための手段と、
前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するための手段と、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するための手段と、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するための手段と、
前記第１のサービス品質が前記第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で前記第１のコンテンツプロバイダを前記第２のコンテンツプロバイダより高くランク付けするための手段と、
ユーザインターフェース内における表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成するための手段であって、前記第１のメディア一覧および前記第２のメディア一覧は、前記ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、前記ユーザインターフェース内で配列される、手段と
を備える、システム。
【請求項７２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項７１に記載のシステム。
【請求項７３】
前記第１のサービス品質を判定するための手段は、
第１のサービス品質特性および第２のサービス品質特性を判定するための手段と、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるための手段と、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するための手段と
を備える、請求項７２に記載のシステム。
【請求項７４】
前記第１のサービス品質を判定するための手段はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするための手段と、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するための手段と
を備える、請求項７１に記載のシステム。
【請求項７５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するための手段と、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するための手段と、
表示のために、前記メディア一覧と同時に、前記格付けを生成するための手段と
をさらに備える、請求項７１に記載のシステム。
【請求項７６】
前記第１のメディア一覧は、第１のモザイクセルに対応し、前記第２のメディア一覧は、第２のモザイクセルに対応し、前記第１のモザイクセルは、前記第２のモザイクセルより顕著に表示される、請求項７１に記載のシステム。
【請求項７７】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すための手段と、
前記ユーザプロファイルに関するサブスクプションデータを読み出すための手段であって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、手段と、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するための手段と
をさらに備える、請求項７１に記載のシステム。
【請求項７８】
サービス閾値品質を読み出すための手段と、
前記第１のサービス品質と前記サービス閾値品質を比較するための手段と、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、前記第１のメディア一覧を前記ランク付けされた一覧に追加するための手段と
をさらに備える、請求項７１に記載のシステム。
【請求項７９】
サービス閾値品質を読み出すための手段と、
前記第１のサービス品質と前記サービス閾値品質を比較するための手段と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するための手段と
をさらに備える、請求項７１に記載のシステム。
【請求項８０】
サービス閾値品質を読み出すための手段と、
前記第１のサービス品質と前記サービス閾値品質を比較するための手段と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するための手段であって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、手段と
をさらに備える、請求項７１に記載のシステム。
【請求項８１】
ユーザインターフェース内でオーバーザトップコンテンツを配列する方法であって、前記方法は、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するステップであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ステップと、
メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するステップと、
前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するステップと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するステップと、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するステップと、
前記第１のサービス品質が前記第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で前記第１のコンテンツプロバイダを前記第２のコンテンツプロバイダより高くランク付けするステップと、
ユーザインターフェース内における表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成するステップであって、前記第１のメディア一覧および前記第２のメディア一覧は、前記ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、前記ユーザインターフェース内で配列される、ステップと
を含む、方法。
【請求項８２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項８１に記載の方法。
【請求項８３】
前記第１のサービス品質を判定するステップは、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を含む、請求項８２に記載の方法。
【請求項８４】
前記第１のサービス品質を判定するステップはさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと
を含む、請求項８１−８３のいずれか１項に記載の方法。
【請求項８５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するステップと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するステップと、
表示のために、前記メディア一覧と同時に、前記格付けを生成するステップと
をさらに含む、請求項８１−８４のいずれか１項に記載の方法。
【請求項８６】
前記第１のメディア一覧は、第１のモザイクセルに対応し、前記第２のメディア一覧は、第２のモザイクセルに対応し、前記第１のモザイクセルは、前記第２のモザイクセルより顕著に表示される、請求項８１−８５のいずれか１項に記載の方法。
【請求項８７】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すステップと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すステップであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ステップと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するステップと
をさらに含む、請求項８１−８６のいずれか１項に記載の方法。
【請求項８８】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、前記第１のメディア一覧を前記ランク付けされた一覧に追加するステップと
をさらに含む、請求項８１−８７のいずれか１項に記載の方法。
【請求項８９】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するステップと
をさらに含む、請求項８１−８８のいずれか１項に記載の方法。
【請求項９０】
サービス閾値品質を読み出すステップと、
前記第１のサービス品質と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するステップであって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、ステップと
をさらに含む、請求項８１−８９のいずれか１項に記載の方法。
【請求項９１】
非一過性コンピュータ可読媒体であって、前記非一過性コンピュータ可読媒体は、ユーザインターフェース内でオーバーザトップコンテンツを配列するための前記非一過性コンピュータ可読媒体上に記録される命令を有し、前記命令は、
サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するための命令であって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、命令と、
前記サーバにおいて、メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するための命令と、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するための命令と、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するための命令と、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するための命令と、
前記サーバにおいて、前記第１のサービス品質が前記第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で前記第１のコンテンツプロバイダを前記第２のコンテンツプロバイダより高くランク付けするための命令と、
ユーザインターフェース内における表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧および前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成するための命令であって、前記第１のメディア一覧および前記第２のメディア一覧は、前記ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、前記ユーザインターフェース内で配列される、命令と
を備える、非一過性コンピュータ可読媒体。
【請求項９２】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項９３】
前記第１のサービス品質を判定するための命令はさらに、
第１のサービス品質特性および第２のサービス品質特性を判定するための命令と、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるための命令と、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するための命令と
を備える、請求項９２に記載の非一過性コンピュータ可読媒体。
【請求項９４】
前記第１のサービス品質を判定するための命令はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするための命令と、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するための命令と
を備える、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項９５】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するための命令と、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するための命令と、
表示のために、前記メディア一覧と同時に、前記格付けを生成するための命令と
をさらに備える、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項９６】
前記第１のメディア一覧は、第１のモザイクセルに対応し、前記第２のメディア一覧は、第２のモザイクセルに対応し、前記第１のモザイクセルは、前記第２のモザイクセルより顕著に表示される、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項９７】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すための命令と、
前記ユーザプロファイルに関するサブスクプションデータを読み出すための命令であって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、命令と、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するための命令と
をさらに備える、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項９８】
サービス閾値品質を読み出すための命令と、
前記第１のサービス品質と前記サービス閾値品質を比較するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、前記第１のメディア一覧を前記ランク付けされた一覧に追加するための命令と
をさらに備える、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項９９】
サービス閾値品質を読み出すための命令と、
前記第１のサービス品質と前記サービス閾値品質を比較するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するための命令と
をさらに備える、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項１００】
サービス閾値品質を読み出すための命令と、
前記第１のサービス品質と前記サービス閾値品質を比較するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するための命令であって、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、命令と
をさらに備える、請求項９１に記載の非一過性コンピュータ可読媒体。
【請求項１０１】
メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨する方法であって、前記方法は、
サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するステップであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ステップと、
前記サーバにおいて、メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するステップと、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するステップと、
前記サーバにおいて、サービス閾値品質を読み出すステップと、
前記サーバにおいて、前記第１のサービス品質および前記第２のサービス品質の両方と前記サービス閾値品質を比較するステップと、
前記サーバにおいて、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことを判定するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧を生成し、表示のために、前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成しないステップと
を含む、方法。
【請求項１０２】
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定するステップと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第３のサービス品質を判定するステップと、
前記第３のサービス品質と前記サービス閾値品質を比較するステップと、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることを判定するステップと、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、表示のために、前記第１のメディア一覧と同時に、前記第３のコンテンツプロバイダからの前記メディアアセットに関する第３のメディア一覧を生成するステップと
をさらに含む、請求項１０１に記載の方法。
【請求項１０３】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１０１に記載の方法。
【請求項１０４】
前記第１のサービス品質を判定するステップは、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を含む、請求項１０３に記載の方法。
【請求項１０５】
前記第１のサービス品質を判定するステップはさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと
を含む、請求項１０１に記載の方法。
【請求項１０６】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するステップと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するステップと、
表示のために、前記メディア一覧と同時に、前記格付けを生成するステップと
をさらに含む、請求項１０１に記載の方法。
【請求項１０７】
表示のために、前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するステップをさらに含み、前記通知は、前記第２のサービス品質が前記サービス閾値品質より低いことを示す、請求項１０１に記載の方法。
【請求項１０８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すステップと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すステップであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ステップと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するステップと
をさらに含む、請求項１０１に記載の方法。
【請求項１０９】
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するステップをさらに含む、請求項１０１に記載の方法。
【請求項１１０】
前記第１のサービス品質または前記第２のサービス品質のいずれも前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するステップをさらに含み、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、請求項１０１に記載の方法。
【請求項１１１】
メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨するためのシステムであって、前記システムは、ユーザデバイスと通信するサーバを備え、前記サーバは、
制御回路であって、前記制御回路は、
前記ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信することであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ことと、
メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定することと、
前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定することと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定することと、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定することと、
サービス閾値品質を読み出すことと、
前記第１のサービス品質および前記第２のサービス品質の両方と前記サービス閾値品質を比較することと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことを判定することと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧を生成し、表示のために、前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成しない、ことと
を行うように構成される、制御回路
を含む、システム。
【請求項１１２】
前記制御回路はさらに、
前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定することと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第３のサービス品質を判定することと、
前記第３のサービス品質と前記サービス閾値品質を比較することと、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることを判定することと、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、表示のために、前記第１のメディア一覧と同時に、前記第３のコンテンツプロバイダからの前記メディアアセットに関する第３のメディア一覧を生成することと
を行うように構成される、請求項１１１に記載のシステム。
【請求項１１３】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１１１に記載のシステム。
【請求項１１４】
前記第１のサービス品質を判定するように構成された前記制御回路はさらに、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を行うように構成される、請求項１１３に記載のシステム。
【請求項１１５】
前記第１のサービス品質を判定するように構成された前記制御回路はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと、
を行うように構成される、請求項１１１に記載のシステム。
【請求項１１６】
前記制御回路はさらに、
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力することと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定することと、
表示のために、前記メディア一覧と同時に、前記格付けを生成することと
を行うように構成される、請求項１１１に記載のシステム。
【請求項１１７】
前記制御回路はさらに、表示のために、前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するように構成され、前記通知は、前記第２のサービス品質が前記サービス閾値品質より低いことを示す、請求項１１１に記載のシステム。
【請求項１１８】
前記制御回路はさらに、
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すことと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すことであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ことと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定することと
を行うように構成される、請求項１１１に記載のシステム。
【請求項１１９】
前記制御回路はさらに、前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことを判定し、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するように構成される、請求項１１１に記載のシステム。
【請求項１２０】
前記制御回路はさらに、前記第１のサービス品質または前記第２のサービス品質のいずれも前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するように構成され、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、請求項１１１に記載のシステム。
【請求項１２１】
メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨するシステムであって、前記システムは、
サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するための手段であって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、手段と、
前記サーバにおいて、メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するための手段と、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するための手段と、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するための手段と、
前記サーバにおいて、前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するための手段と、
前記サーバにおいて、サービス閾値品質を読み出すための手段と、
前記サーバにおいて、前記第１のサービス品質および前記第２のサービス品質の両方と前記サービス閾値品質を比較するための手段と、
前記サーバにおいて、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことを判定するための手段と、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧を生成し、表示のために、前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成しないための手段と
を備える、システム。
【請求項１２２】
前記サーバにおいて、前記メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定するための手段と、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第３のサービス品質を判定するための手段と、
前記第３のサービス品質と前記サービス閾値品質を比較するための手段と、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることを判定するための手段と、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、表示のために、前記第１のメディア一覧と同時に、前記第３のコンテンツプロバイダからの前記メディアアセットに関する第３のメディア一覧を生成するための手段と
をさらに備える、請求項１２１に記載のシステム。
【請求項１２３】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１２１に記載のシステム。
【請求項１２４】
前記第１のサービス品質を判定するための手段はさらに、
第１のサービス品質特性および第２のサービス品質特性を判定するための手段と、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるための手段と、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するための手段と
を備える、請求項１２３に記載のシステム。
【請求項１２５】
前記第１のサービス品質を判定するための手段はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするための手段と、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するための手段と
を備える、請求項１２１に記載のシステム。
【請求項１２６】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するための手段と、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するための手段と、
表示のために、前記メディア一覧と同時に、前記格付けを生成するための手段と
をさらに備える、請求項１２１に記載のシステム。
【請求項１２７】
表示のために、前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するための手段をさらに備え、前記通知は、前記第２のサービス品質が前記サービス閾値品質より低いことを示す、請求項１２１に記載のシステム。
【請求項１２８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すための手段と、
前記ユーザプロファイルに関するサブスクプションデータを読み出すための手段であって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、手段と、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するための手段と
をさらに備える、請求項１２１に記載のシステム。
【請求項１２９】
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するための手段をさらに備える、請求項１２１に記載のシステム。
【請求項１３０】
前記第１のサービス品質または前記第２のサービス品質のいずれも前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するための手段をさらに備え、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、請求項１２１に記載のシステム。
【請求項１３１】
メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨する方法であって、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するステップであって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、ステップと、
メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するステップと、
前記メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するステップと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するステップと、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するステップと、
サービス閾値品質を読み出すステップと、
前記第１のサービス品質および前記第２のサービス品質の両方と前記サービス閾値品質を比較するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことを判定するステップと、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧を生成し、表示のために、前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成しないステップと
を含む、方法。
【請求項１３２】
前記メディアアセットを提供する、前記複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定するステップと、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第３のサービス品質を判定するステップと、
前記第３のサービス品質と前記サービス閾値品質を比較するステップと、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることを判定するステップと、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、表示のために、前記第１のメディア一覧と同時に、前記第３のコンテンツプロバイダからの前記メディアアセットに関する第３のメディア一覧を生成するステップと
をさらに含む、請求項１３１に記載の方法。
【請求項１３３】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１３１または１３２に記載の方法。
【請求項１３４】
前記第１のサービス品質を判定するステップは、
第１のサービス品質特性および第２のサービス品質特性を判定するステップと、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるステップと、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するステップと
を含む、請求項１３２または１３３に記載の方法。
【請求項１３５】
前記第１のサービス品質を判定するステップはさらに、
前記ユーザデバイスにチェックサム値に関してクエリするステップと、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するステップと
を含む、請求項１３１−１３４のいずれか１項に記載の方法。
【請求項１３６】
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するステップと、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するステップと、
表示のために、前記メディア一覧と同時に、前記格付けを生成するステップと
をさらに含む、請求項１３１−１３５のいずれか１項に記載の方法。
【請求項１３７】
表示のために、前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するステップをさらに含み、前記通知は、前記第２のサービス品質が前記サービス閾値品質より低いことを示す、請求項１３１−３１６のいずれか１項に記載の方法。
【請求項１３８】
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すステップと、
前記ユーザプロファイルに関するサブスクプションデータを読み出すステップであって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、ステップと、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するステップと
をさらに含む、請求項１３１−１３７のいずれか１項に記載の方法。
【請求項１３９】
前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するステップをさらに含む、請求項１３１−１３８のいずれか１項に記載の方法。
【請求項１４０】
前記第１のサービス品質または前記第２のサービス品質のいずれも前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するステップをさらに含み、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、請求項１３１−１３９のいずれか１項に記載の方法。
【請求項１４１】
非一過性コンピュータ可読媒体であって、前記非一過性コンピュータ可読媒体は、メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨するための前記非一過性コンピュータ可読媒体上に記録される命令を有し、前記命令は、
ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信するための命令であって、前記メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である、命令と、
メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定するための命令と、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定するための命令と、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第１のサービス品質を判定するための命令と、
前記ユーザデバイスが前記メディアアセットを前記第２のコンテンツプロバイダから受信するための第２のサービス品質を判定するための命令と、
サービス閾値品質を読み出すための命令と、
前記第１のサービス品質および前記第２のサービス品質の両方と前記サービス閾値品質を比較するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことを判定するための命令と、
前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超え、前記第２のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のコンテンツプロバイダからの前記メディアアセットに関する第１のメディア一覧を生成し、表示のために、前記第２のコンテンツプロバイダからの前記メディアアセットに関する第２のメディア一覧を生成しないための命令と
を備える、非一過性コンピュータ可読媒体。
【請求項１４２】
前記命令はさらに、
前記サーバにおいて、前記メディアアセットを提供する前記複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定するための命令と、
前記ユーザデバイスが前記メディアアセットを前記第１のコンテンツプロバイダから受信するための第３のサービス品質を判定するための命令と、
前記第３のサービス品質と前記サービス閾値品質を比較するための命令と、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることを判定するための命令と、
前記第３のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えることの判定に応答して、表示のために、前記第１のメディア一覧と同時に、前記第３のコンテンツプロバイダからの前記メディアアセットに関する第３のメディア一覧を生成するための命令と
を備える、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１４３】
前記第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、前記サービス品質特性は、前記ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１４４】
前記第１のサービス品質を判定するための命令は、
第１のサービス品質特性および第２のサービス品質特性を判定するための命令と、
第１の加重を前記第１のサービス品質特性に、第２の加重を前記第２のサービス品質特性に割り当てるための命令と、
前記第１のサービス品質特性および前記第２のサービス品質特性に関する加重された平均を判定するための命令と
を備える、請求項１４３に記載の非一過性コンピュータ可読媒体。
【請求項１４５】
前記第１のサービス品質を判定するための命令はさらに、
前記ユーザデバイスにチェックサム値に関してクエリするための命令と、
前記クエリに応答して、前記チェックサム値を前記ユーザデバイスから受信するための命令と
を備える、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１４６】
前記命令はさらに、
前記第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力するための命令と、
前記第１のサービス品質と前記異なるサービス品質とを比較し、前記第１のサービス品質に関する格付けを判定するための命令と、
表示のために、前記メディア一覧と同時に、前記格付けを生成するための命令と
を備える、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１４７】
前記命令はさらに、表示のために、前記第２のコンテンツプロバイダから前記メディアアセットにアクセスするための通知を生成するための命令を備え、前記通知は、前記第２のサービス品質が前記サービス閾値品質より低いことを示す、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１４８】
前記命令はさらに、
前記ユーザデバイスと関連付けられたユーザプロファイルを読み出すための命令と、
前記ユーザプロファイルに関するサブスクプションデータを読み出すための命令であって、前記サブスクプションデータは、ユーザが前記複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す、命令と、
前記複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、前記サブスクプションデータに基づいて、前記複数のオーバーザトップコンテンツプロバイダがそれぞれ、前記メディアアセットを提供するかどうかを判定するための命令と
を備える、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１４９】
前記命令はさらに、前記第１のサービス品質が前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のサービス品質が前記サービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成するための命令を備える、請求項１４１に記載の非一過性コンピュータ可読媒体。
【請求項１５０】
前記命令はさらに、前記第１のサービス品質または前記第２のサービス品質のいずれも前記サービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、前記第１のメディアアセットを前記サーバに自動的にダウンロードするオプションを生成するための命令を備え、前記ダウンロードされた第１のメディアアセットは、前記ユーザデバイス上でオンデマンド再生のために利用可能である、請求項１４１に記載の非一過性コンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
本願は、２０１６年５月１６日に出願された米国特許出願第１５／１５５，４８５号および２０１６年５月１６日に出願された米国特許出願第１５／１５５，５２２号および２０１６年５月１６日に出願された米国特許出願第１５／１５５，６０４号（本開示は、参照することによってその全体として本明細書に組み込まれる）の優先権および利益を主張するものである。
【０００２】
従来のシステムでは、ユーザは、複数のコンテンツプロバイダから多数のメディアコンテンツへのアクセスを有する。残念ながら、複数のコンテンツプロバイダから本メディアコンテンツにアクセスするために、ユーザは、多くの場合、個々に、種々のコンテンツプロバイダにサブスクライブし、それとのアカウントを管理しなければならない。さらに、コンテンツプロバイダのそれぞれにサブスクライブした後も、ユーザは、個々に、各コンテンツプロバイダのメディアコンテンツライブラリを検索し、消費するためのコンテンツを探さなければならない。
【発明の概要】
【課題を解決するための手段】
【０００３】
故に、ユーザのためのメディアコンテンツを集約することによって、前述の問題を解決するメディアガイドアプリケーションのための方法およびシステムが、本明細書に説明される。具体的には、メディアガイドアプリケーションは、ユーザのために、自動的に、種々のコンテンツプロバイダにサブスクライブし、および／またはそれとのアカウントを管理してもよい。さらに、ユーザは、同時に、各コンテンツプロバイダのメディアコンテンツライブラリを検索し、消費するためのコンテンツを探してもよい。
【０００４】
例えば、メディアガイドアプリケーションは、多数のプロバイダからのコンテンツを集約し、単一インターフェースを通して、コンテンツを提供してもよい。単一インターフェースはさらに、ユーザが、同時に、各コンテンツプロバイダのメディアコンテンツライブラリを通して検索し、メディア推奨を受信することを可能にすることによって、種々のコンテンツプロバイダとの間の協調を促進してもよい。さらに、最良可能ユーザ体験を提供するために、メディアガイドアプリケーションは、任意の所与のメディアアセットに関するコンテンツプロバイダと関連付けられたサービス品質に基づいて、ユーザに提示するメディア一覧をフィルタ処理および／または選択してもよい。
【０００５】
いくつかの側面では、メディアガイドアプリケーションは、メディアコンテンツのプロバイダを選択してもよい。例えば、メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信してもよく、メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である。例えば、ユーザは、モバイルデバイス上で、コンテンツを複数のソースから集約するメディアガイドアプリケーションに遠隔でアクセスしてもよい。
【０００６】
メディアガイドアプリケーションは、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザがメディアコンテンツをストリーミングすることを可能にする、ウェブサイトから現在利用可能であるメディアアセットを判定してもよい。メディアガイドアプリケーションは、次いで、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定してもよい。例えば、メディアガイドアプリケーションは、同様にユーザがメディアコンテンツをストリーミングすることを可能にする、第２のウェブサイトから現在利用可能であるメディアアセットを判定してもよい。さらに、メディアガイドアプリケーションは、２つのウェブサイトの両方が同一メディアアセットをオファーしていることを判定してもよい。
【０００７】
メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスがメディアアセットを第１のコンテンツプロバイダから受信するための第１のサービス品質を判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスにチェックサム値に関してクエリし、クエリに応答して、チェックサム値をユーザデバイスから受信してもよい。例えば、メディアガイドアプリケーションは、コンテンツを第１のウェブサイトから受信するための誤り率を判定してもよい。メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスがメディアアセットを第２のコンテンツプロバイダから受信するための第２のサービス品質を判定してもよい。例えば、メディアガイドアプリケーションは、コンテンツを第１のウェブサイトから受信するための誤り率を判定してもよい。
【０００８】
メディアガイドアプリケーションは、次いで、サーバにおいて、第１のサービス品質と第２のサービス品質を比較してもよい。例えば、メディアガイドアプリケーションは、ユーザがより低い誤り率を伴う同一メディアアセットを得ることを可能にするであろうウェブサイトを判定してもよい。
【０００９】
メディアガイドアプリケーションは、サーバにおいて、比較に基づいて、第１のサービス品質が第２のサービス品質を上回ることを判定してもよい。例えば、メディアガイドアプリケーションは、第１のウェブサイトに対応する誤り率と第２のウェブサイトに対応する誤り率を比較してもよい。
【００１０】
メディアガイドアプリケーションは、表示のために、サーバにおいて、第１のサービス品質が第２のサービス品質を上回ることの判定に基づいて、第１のコンテンツプロバイダからのメディアアセットに関するメディア一覧を生成してもよい。例えば、重複メディア一覧（例えば、各メディア一覧が異なるメディアコンテンツプロバイダに対応する、同一メディアアセットに対応する２つの一覧）を提示する代わりに、メディアガイドアプリケーションは、自動的に（例えば、任意の試験および／またはさらなるユーザ入力を要求せずに）、ユーザに最良ユーザ体験を提供する（例えば、最良サービス品質を提供する）、メディア一覧を選択してもよい。
【００１１】
いくつかの実施形態では、サービス品質は、ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタ等、１つまたはそれを上回るサービス品質特性に基づいてもよい。さらに、いくつかの実施形態では、メディアガイドアプリケーションは、第１のサービス品質特性および第２のサービス品質特性を判定してもよい。例えば、メディアガイドアプリケーションは、複数の要因に基づいて、サービス品質を判定してもよい。メディアガイドアプリケーションは、第１の加重を第１のサービス品質特性に、第２の加重を第２のサービス品質特性に割り当ててもよい。例えば、メディアガイドアプリケーションは、要因がユーザ体験、産業規格、および／またはユーザ選好に影響を及ぼす量に従って、要因に加重してもよい。メディアガイドアプリケーションは、次いで、第１のサービス品質特性および第２のサービス品質特性に関する加重された平均を判定してもよい。例えば、第１および第２の特性を定量化し、個別の加重を適用後、メディアガイドアプリケーションは、加重された第１および第２の特性の和を判定し、サービス品質を判定してもよい。
【００１２】
いくつかの実施形態では、メディアガイドアプリケーションは、種々のサービス品質を格付けしてもよい。例えば、メディアガイドアプリケーションは、第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力してもよい。メディアガイドアプリケーションは、第１のサービス品質と異なるサービス品質とを比較し、第１のサービス品質に関する格付けを判定してもよい。メディアガイドアプリケーションは、次いで、表示のために、メディア一覧と同時に、格付けを生成してもよい。例えば、最良サービス品質を有するコンテンツプロバイダから利用可能であるメディア一覧のみを提示することに加えて、または代替として、メディアガイドアプリケーションは、各メディア一覧とともに、サービス品質格付けを提示してもよい。加えて、または代替として、メディアガイドアプリケーションは、第２のコンテンツプロバイダからメディアアセットにアクセスするための通知を生成してもよく、通知は、第２のサービス品質が第１のサービス品質より低いことを示す。例えば、メディアガイドアプリケーションは、メディアアセットの付加的ソースおよび他のソースに対応する個別のサービス品質（またはサービス品質格付け）を示す、通知をユーザに提示してもよい。
【００１３】
いくつかの実施形態では、比較に基づいて、第１のサービス品質が第２のサービス品質と等しいことの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のコンテンツプロバイダからのメディアアセットに関するメディア一覧および第２のコンテンツプロバイダからのメディアアセットに関する異なるメディア一覧を生成してもよい。例えば、メディアガイドアプリケーションは、複数のソースからのメディア一覧を提示してもよい。
【００１４】
いくつかの実施形態では、メディアガイドアプリケーションは、利用可能なメディアコンテンツプロバイダを判定し、ユーザのサブスクプションステータスに基づいて、集約してもよい。例えば、メディアガイドアプリケーションは、携帯電話等のユーザデバイスと関連付けられたユーザプロファイルを読み出してもよい。メディアガイドアプリケーションは、ユーザプロファイルに関するサブスクプションデータを読み出してもよく、サブスクプションデータは、ユーザが複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す。例えば、ユーザプロファイルは、ユーザが現在サブスクライブしている各メディアコンテンツプロバイダの一覧、および／またはユーザが種々のメディアコンテンツプロバイダを現在サブスクライブしているかどうかを含んでもよい。メディアガイドアプリケーションは、複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、サブスクプションデータに基づいて、複数のオーバーザトップコンテンツプロバイダがそれぞれ、メディアアセットを提供するかどうかを判定する。例えば、ユーザがメディアアセットをあるコンテンツプロバイダからサブスクライブしている（例えば、アクセスすることを可能にされている）ことの判定に応答して、メディアガイドアプリケーションは、利用可能なメディアアセットに関するメディアコンテンツプロバイダを検索する。
【００１５】
いくつかの実施形態では、メディアガイドアプリケーションは、特殊閾値を適用し、メディア一覧を提示するかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、サービス閾値品質、例えば、メディア一覧が提示されるであろう最小容認可能サービス品質を読み出してもよい。メディアガイドアプリケーションは、第１のサービス品質とサービス閾値品質を比較してもよく、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成してもよい。代替として、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、表示のために、第１のメディアアセットをサーバに自動的にダウンロードするオプションを生成してもよく、ダウンロードされた第１のメディアアセットは、ユーザデバイス上でオンデマンド再生のために利用可能である。
【００１６】
いくつかの側面では、メディアガイドアプリケーションは、ユーザインターフェース内でオーバーザトップコンテンツを配列してもよい。例えば、メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信してもよく、メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である。例えば、メディアガイドアプリケーションは、モバイルデバイスから、インターネットを経由して、多数のストリーミングメディアプロバイダからメディアアセットのライブラリにアクセスすることを要求する要求を受信してもよい。
【００１７】
メディアガイドアプリケーションは、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスと関連付けられたユーザプロファイルを読み出し、ユーザプロファイルに関するサブスクプションデータを読み出してもよく、サブスクプションデータは、ユーザが複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す。メディアガイドアプリケーションは、次いで、複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、サブスクプションデータに基づいて、複数のオーバーザトップコンテンツプロバイダがそれぞれ、メディアアセットを提供するかどうかを判定してもよい。
【００１８】
メディアガイドアプリケーションはまた、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定してもよい。例えば、メディアガイドアプリケーションは、第１のストリーミングメディアプロバイダ（例えば、放送テレビネットワークと関連付けられる）および第２のストリーミングメディアプロバイダ（例えば、ユーザによってアップロードされたコンテンツのウェブサイトと関連付けられる）の両方が、同一メディアアセットへのアクセスをオファーしていることを判定してもよい。
【００１９】
メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスがメディアアセットを第１のコンテンツプロバイダから受信するための第１のサービス品質を判定してもよい。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、ユーザデバイスが第１のコンテンツプロバイダからメディアアセットにアクセスし得る、ビットレートを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスにチェックサム値に関してクエリし、クエリに応答して、チェックサム値をユーザデバイスから受信してもよい。
【００２０】
メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスがメディアアセットを第２のコンテンツプロバイダから受信するための第２のサービス品質を判定してもよい。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、同様に、ユーザデバイスが第２のコンテンツプロバイダからメディアアセットにアクセスし得る、ビットレートを判定してもよい。
【００２１】
メディアガイドアプリケーションは、サーバにおいて、第１のサービス品質が第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で第１のコンテンツプロバイダを第２のコンテンツプロバイダより高くランク付けしてもよい。例えば、最良ユーザ体験を提供する（例えば、ユーザがメディアアセットを最良ビットレートを提供するコンテンツプロバイダから受信することを選択することを確実にする）ために、メディアガイドアプリケーションは、その個別のサービス品質に基づいて、コンテンツプロバイダをランク付けしてもよい。
【００２２】
メディアガイドアプリケーションは、ユーザインターフェース内における表示のために、第１のコンテンツプロバイダからのメディアアセットに関する第１のメディア一覧および第２のコンテンツプロバイダからのメディアアセットに関する第２のメディア一覧を生成してもよく、第１のメディア一覧および第２のメディア一覧は、ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、ユーザインターフェース内で配列される。例えば、メディアガイドアプリケーションは、両コンテンツプロバイダからのメディアアセットに対応するメディア一覧を提示してもよいが、メディアガイドアプリケーションは、その個別のサービス品質を反映させる順序で一覧を配列してもよい。故に、ユーザは、直感的方法において、最良サービス品質を伴うメディアアセットを提供するであろう、コンテンツプロバイダを判定し得る。
【００２３】
いくつかの実施形態では、第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、サービス品質特性は、ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む。さらに、メディアガイドアプリケーションは、第１のサービス品質を判定してもよく、これは、第１のサービス品質特性および第２のサービス品質特性（例えば、誤り率およびビットレート）を判定し、第１の加重を第１のサービス品質特性に、第２の加重を第２のサービス品質特性に割り当て（例えば、ユーザ選好に基づいて）、第１のサービス品質特性および第２のサービス品質特性に関する加重された平均すること（例えば、特性に基づいて全体的サービス品質を表す加重された平均）を含む。
【００２４】
いくつかの実施形態では、メディアガイドアプリケーションは、コンテンツプロバイダ毎に、定質的または定量的なサービス品質格付けを判定してもよい。例えば、メディアガイドアプリケーションは、第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力してもよい。メディアガイドアプリケーションは、次いで、第１のサービス品質と異なるサービス品質とを比較し、第１のサービス品質に関する格付けを判定し、表示のために、メディア一覧と同時に、格付けを生成してもよい。
【００２５】
いくつかの実施形態では、メディアガイドアプリケーションは、そのメディアアセットを提供する、コンテンツプロバイダと関連付けられたサービス品質に基づいて、１つのメディア一覧を別のものよりグラフィック的に強調させてもよい。例えば、メディアガイドアプリケーションは、メディア一覧をモザイク表示内に提示してもよく、第１のメディア一覧は、第１のモザイクセルに対応し、第２のメディア一覧は、第２のモザイクセルに対応し、第１のモザイクセルは、第２のモザイクセルより顕著に表示される。
【００２６】
いくつかの実施形態では、メディアガイドアプリケーションは、ある基準を試験し、閾値基準を満たすかどうかを判定してもよい。該当する場合、具体的アクションが、トリガされてもよい。例えば、メディアガイドアプリケーションは、サービス閾値品質（例えば、第１のコンテンツプロバイダに対応する）を読み出し、第１のサービス品質とサービス閾値品質を比較してもよい。第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えることの判定に応答して、メディアガイドアプリケーションは、第１のメディア一覧をランク付けされた一覧に追加してもよい。代替として、または加えて、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成してもよい。代替として、または加えて、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、表示のために、第１のメディアアセットをサーバに自動的にダウンロードするオプションを生成してもよく、ダウンロードされた第１のメディアアセットは、ユーザデバイス上でオンデマンド再生のために利用可能である。
【００２７】
いくつかの側面では、メディアガイドアプリケーションは、該当する場合、サービス品質に基づいて、ユーザに提示するメディア一覧を判定してもよい。例えば、高品質ユーザ体験を確保するために、メディアガイドアプリケーションは、あるサービス品質に対応するメディア一覧のみを提示してもよい。
【００２８】
メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスから、通信ネットワークを経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信してもよく、メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である。例えば、ユーザは、映画をその携帯電話またはパーソナルコンピュータにストリーミングすることを所望してもよい。
【００２９】
メディアガイドアプリケーションは、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスと関連付けられたユーザプロファイルを読み出し、ユーザプロファイルに関するサブスクプションデータを読み出してもよく、サブスクプションデータは、ユーザが複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す。メディアガイドアプリケーションは、次いで、複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、サブスクプションデータに基づいて、複数のオーバーザトップコンテンツプロバイダがそれぞれ、メディアアセットを提供するかどうかを判定してもよい。
【００３０】
メディアガイドアプリケーションはまた、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスと関連付けられたサブスクプションサービスのそれぞれから利用可能な全てのメディアアセットの一覧を読み出してもよい。
【００３１】
メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスがメディアアセットを第１のコンテンツプロバイダから受信するための第１のサービス品質を判定してもよい。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、ユーザデバイスが第１のコンテンツプロバイダからメディアアセットにアクセスし得る、誤り率を判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスにチェックサム値に関してクエリし、クエリに応答して、チェックサム値をユーザデバイスから受信してもよい。
【００３２】
メディアガイドアプリケーションは、サーバにおいて、ユーザデバイスがメディアアセットを第２のコンテンツプロバイダから受信するための第２のサービス品質を判定してもよい。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、同様に、ユーザデバイスが第２のコンテンツプロバイダからメディアアセットにアクセスし得る、誤り率を判定してもよい。
【００３３】
メディアガイドアプリケーションは、サーバにおいて、サービス閾値品質を読み出してもよい。例えば、メディアガイドアプリケーションは、ある基準を試験し、閾値基準を満たすかどうかを判定してもよい。該当する場合、具体的アクションが、トリガされてもよい。
【００３４】
メディアガイドアプリケーションは、サーバにおいて、第１のサービス品質および第２のサービス品質の両方とサービス閾値品質を比較してもよい。例えば、サブスクプションおよび／またはアクセスが利用可能なコンテンツプロバイダ毎に、メディアガイドアプリケーションは、サービス品質がサービス閾値品質を超えるかどうかを判定してもよい。
【００３５】
メディアガイドアプリケーションは、サーバにおいて、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超え、第２のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことを判定してもよい。例えば、メディアガイドアプリケーションは、第１のコンテンツプロバイダからのコンテンツの受信と関連付けられた誤り率が容認可能である一方、第２のコンテンツプロバイダからのコンテンツの受信と関連付けられた誤り率が容認不可能であることを判定してもよい。
【００３６】
第１のサービス品質がサービス閾値品質と等しいか、またはそれを超え、第２のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のコンテンツプロバイダからのメディアアセットに関する第１のメディア一覧を生成し、表示のために、第２のコンテンツプロバイダからのメディアアセットに関する第２のメディア一覧を生成しなくてもよい。加えて、メディアガイドアプリケーションは、表示のために、第２のコンテンツプロバイダからメディアアセットにアクセスするための通知を生成してもよく、通知は、第２のサービス品質がサービス閾値品質より低いことを示す。故に、メディアガイドアプリケーションは、高品質ユーザ体験を確保する、メディア一覧のみを提示してもよい。
【００３７】
いくつかの実施形態では、メディアガイドアプリケーションは、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定してもよい。例えば、第３のコンテンツプロバイダは、サブスクプションを要求しない、公的に利用可能なストリーミングメディアプロバイダを含んでもよい。メディアガイドアプリケーションは、ユーザデバイスがメディアアセットを第１のコンテンツプロバイダから受信するための第３のサービス品質を判定し、第３のサービス品質とサービス閾値品質を比較してもよい。メディアガイドアプリケーションは、第３のサービス品質がサービス閾値品質と等しいか、またはそれを超えることを判定してもよい。第３のサービス品質がサービス閾値品質と等しいか、またはそれを超えることの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のメディア一覧と同時に、第３のコンテンツプロバイダからのメディアアセットに関する第３のメディア一覧を生成してもよい。
【００３８】
いくつかの実施形態では、第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、サービス品質特性は、ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む。さらに、メディアガイドアプリケーションは、第１のサービス品質を判定してもよく、これは、第１のサービス品質特性および第２のサービス品質特性（例えば、誤り率およびビットレート）を判定し、第１の加重を第１のサービス品質特性に、第２の加重を第２のサービス品質特性に割り当て（例えば、ユーザ選好に基づいて）、第１のサービス品質特性および第２のサービス品質特性に関する加重された平均すること（例えば、特性に基づいて全体的サービス品質を表す、加重された平均）を含んでもよい。
【００３９】
いくつかの実施形態では、メディアガイドアプリケーションは、コンテンツプロバイダ毎に、定質的または定量的なサービス品質格付けを判定してもよい。例えば、メディアガイドアプリケーションは、第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力してもよい。メディアガイドアプリケーションは、次いで、第１のサービス品質と異なるサービス品質とを比較し、第１のサービス品質に関する格付けを判定し、表示のために、メディア一覧と同時に、格付けを生成してもよい。
【００４０】
いくつかの実施形態では、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成してもよい。例えば、高品質ユーザ体験を確保するために、メディアガイドアプリケーションは、ユーザに、メディア一覧がサービス閾値品質に対応するであろうときに関してアラートしてもよい。加えて、または代替として、メディアガイドアプリケーションは、第１のサービス品質または第２のサービス品質のいずれもサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、第１のメディアアセットをサーバに自動的にダウンロードするオプションを生成してもよく、ダウンロードされた第１のメディアアセットは、ユーザデバイス上でオンデマンド再生のために利用可能である。例えば、メディアアセットのストリーミングが、サービス品質に起因して、好ましくない場合、メディアガイドアプリケーションは、ユーザによって後に視聴するために、メディアアセットをダウンロードしてもよい。
【００４１】
上記に説明されるシステムおよび／または方法は、他のシステム、方法、および／または装置に適用される、もしくはそれに従って使用されてもよいことに留意されたい。
【図面の簡単な説明】
【００４２】
本開示の上記および他の目的ならびに利点は、類似する参照文字が全体を通して類似部品を指す添付図面と併せて解釈される以下の詳細な説明を考慮することによって明白となるであろう。
【００４３】
【図１】図１は、本開示のいくつかの実施形態による、複数のコンテンツプロバイダからのメディア一覧を単一インターフェース内でユーザに提供するために使用され得る、例証的メディア一覧表示を示す。
【図２】図２は、本開示のいくつかの実施形態による、メディアアセットおよび他のメディアアセットの推奨を提供するために使用され得る、別の例証的表示を示す。
【図３】図３は、本開示のいくつかの実施形態による、別の例証的メディア一覧表示を示す。
【図４】図４は、本開示のいくつかの実施形態による、別の例証的メディア一覧表示を示す。
【図５】図５は、本開示のいくつかの実施形態による、例証的ユーザ機器デバイスのブロック図である。
【図６】図６は、本開示のいくつかの実施形態による、例証的メディアネットワークのブロック図である。
【図７】図７は、本開示のいくつかの実施形態による、メディアコンテンツのプロバイダを選択するための例証的ステップのフローチャートである。
【図８】図８は、本開示のいくつかの実施形態による、ユーザインターフェース内でオーバーザトップコンテンツを配列する例証的ステップのフローチャートである。
【図９】図９は、本開示のいくつかの実施形態による、メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨する例証的ステップのフローチャートである。
【図１０】図１０は、本開示のいくつかの実施形態による、サービス品質とサービス閾値品質を比較する例証的ステップのフローチャートである。
【図１１】図１１は、本開示のいくつかの実施形態による、サービス品質とサービス閾値品質を比較するための擬似コードの例証的実施例である。
【図１２】図１２は、本開示のいくつかの実施形態による、メディアアセットが利用可能な複数のコンテンツプロバイダに関するサービス品質を判定するための例証的ステップのフローチャートである。
【図１３】図１３は、本開示のいくつかの実施形態による、メディアアセットが利用可能な複数のコンテンツプロバイダに関するサービス品質を判定するための例証的ステップのフローチャートである。
【発明を実施するための形態】
【００４４】
オーバーザトップコンテンツを視聴しているユーザのためにメディアコンテンツを集約するメディアガイドアプリケーションのための方法およびシステムが、本明細書に説明される。例えば、メディアガイドアプリケーションは、多数のプロバイダからのコンテンツを集約し、単一インターフェースを通して、コンテンツを提供してもよい。さらに、本明細書に説明されるメディアガイドアプリケーションは、複数のコンテンツプロバイダのうちの少なくとも１つから利用可能なメディアアセットを識別してもよく、サービス品質に基づいて、複数のコンテンツプロバイダのうちの少なくとも１つと関連付けられたユーザデバイスにおいて、メディアアセットをユーザに推奨してもよい。
【００４５】
ユーザが、インターフェースを通して、コンテンツ選択を効率的にナビゲートし、所望し得るコンテンツを容易に識別することを可能にする、アプリケーションは、本明細書では、双方向メディアガイドアプリケーションと称されるが、時として、メディアガイドアプリケーションまたはガイドアプリケーションと称されることもある。メディアガイドアプリケーションは、ガイドを提供するコンテンツに応じて、種々の形態をとってもよい。典型的なタイプのメディアガイドアプリケーションの１つは、双方向テレビ番組ガイドである。双方向テレビ番組ガイド（時として、電子番組ガイドと称される場合もある）は、とりわけ、ユーザが、多くのタイプのコンテンツまたはメディアアセット間をナビゲートし、それを特定することが可能である、周知のガイドアプリケーションである。双方向メディアガイドアプリケーションは、ユーザが、コンテンツ間をナビゲートし、それを特定および選択することを可能にする、グラフィカルユーザインターフェース画面を生成してもよい。
【００４６】
本明細書で参照されるように、用語「メディアアセット」および「コンテンツ」とは、電子的に消費可能なユーザアセット、例えば、テレビ番組、ならびに有料番組、オンデマンド番組（ビデオオンデマンド（ＶＯＤ）システムにおけるような）、インターネットコンテンツ（例えば、ストリーミングコンテンツ、ダウンロード可能コンテンツ、ウェブキャスト等）、ビデオクリップ、オーディオ、コンテンツ情報、写真、回転画像、ドキュメント、再生一覧、ウェブサイト、記事、書籍、電子書籍、ブログ、広告、チャットセッション、ソーシャルメディア、アプリケーション、ゲーム、および／または任意の他のメディアもしくはマルチメディア、および／またはそれらの組み合わせを意味すると理解されたい。ガイドアプリケーションはまた、ユーザが、コンテンツ間をナビゲートし、それを特定することを可能にする。本明細書で参照されるように、用語「マルチメディア」とは、前述の少なくとも２つの異なるコンテンツ形態、例えば、テキスト、オーディオ、画像、ビデオ、または双方向コンテンツ形態を利用する、コンテンツを意味すると理解されたい。コンテンツは、ユーザ機器デバイスによって、録画、再生、表示、またはアクセスされてもよいが、また、ライブパーフォーマンスの一部であることも可能である。
【００４７】
１つのタイプのコンテンツは、オーバーザトップコンテンツである。本明細書で参照されるように、「オーバーザトップコンテンツ」または「ＯＴＴコンテンツ」は、インターネット技術を使用するネットワークを経由して（例えば、インターネットまたは管理されるネットワークを介して）配信される、メディアコンテンツである。いくつかの実施形態では、ＯＴＴコンテンツは、コンテンツの制御または配布において複数のシステムオペレータの関わりを伴わずに配信されてもよい。例えば、ＯＴＴコンテンツは、インターネットを経由してユーザにストリーミングされる、メディアアセット（例えば、映画）を含んでもよい。
【００４８】
いくつかの実施形態では、ＯＴＴコンテンツは、多数のプロバイダからのコンテンツを集約する、プラットフォームを通して提供されてもよい。そのような特徴を提供する、プラットフォームは、スーパーアグリゲータまたはコンテンツアグリゲータ、もしくは時として、クラウドベースのアグリゲータと称され得る。例えば、スーパーアグリゲータは、単一インターフェースを提供してもよく、それを通してユーザが、多数のメディアコンテンツプロバイダからのメディアコンテンツおよびメディアガイドデータソースからのメディアガイドデータについての情報にアクセスする、それを検索する、および／または別様に、それを受信してもよい。そのようなインターフェースは、本明細書では、メディアガイドアプリケーションと称される。
【００４９】
本明細書に説明されるように、メディアガイドアプリケーションは、ユーザデバイスと１つまたはそれを上回るコンテンツプロバイダとの間のサービス品質を検証してもよい。本明細書で参照されるように、「サービス品質」は、電話またはコンピュータネットワーク内でエンドユーザによって受信されるような品質を指す。サービス品質は、情報の送信側または受信側の視点から見られるような誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、ジッタ等、ネットワークサービスの１つまたはそれを上回る側面によって測定される、および／またはそれを反映してもよい。
【００５０】
Ｐｅｕｈｋｕｒｉ  Ｍ．，  ＩＰ  Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ，  Ｈｅｌｓｉｎｋｉ  Ｕｎｉｖｅｒｓｉｔｙ  ｏｆ  Ｔｅｃｈｎｏｌｏｇｙ，  Ｌａｂｏｒａｔｏｒｙ  ｏｆ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｔｅｃｈｎｏｌｏｇｙ，  １９９９（参照することによって本明細書に組み込まれる）に説明されるように、パケット交換ネットワークでは、サービス品質は、「ヒト」および「技術的」要因に分割され得る、種々の要因によって影響される。ヒト要因は、サービスの安定性、サービスの可用性、遅延、およびユーザ情報を含む。技術的要因は、信頼性、スケーリングビリティ、有効性、維持性、サービスのグレード等を含む。
【００５１】
サービス品質は、容認可能な最小帯域幅および最大遅延に基づいてもよい。例えば、特定の用途（例えば、ビデオ会議を含み、したがって、高需要をネットワークに課す、用途）は、別の用途（例えば、テキストデータ伝送に限定され、したがって、より低い需要をネットワークに課す、用途）と異なる容認可能最小帯域幅および最大遅延を有し得る。例えば、異なるコンテンツプロバイダと関連付けられた保証されたサービス品質を判定するために、メディアガイドアプリケーションは、各コンテンツプロバイダと関連付けられた利用可能な帯域幅および最大遅延を比較してもよい。例えば、コンテンツプロバイダ毎に、メディアガイドアプリケーションは、以下の式を使用して、最大遅延ｄｍａｘを計算してもよく、ｂは、トークンバケット深度であって、ｒは、バケットレートであって、ｐは、トークンバケット＋ピークレートであって、Ｍは、最大データグラムサイズであって、Ｒは、接続に配分される帯域幅であって、Ｃｔｏｔは、レート依存誤差項のエンドツーエンド和であって、Ｄｔｏｔは、レート独立要素あたり誤差項のエンドツーエンド和である。
【化１】
2019522386.tif 000003
【００５２】
メディアガイドアプリケーションは、次いで、同一メディアアセットの異なるコンテンツプロバイダに関するサービス品質を比較し、最高のサービス品質をユーザデバイスに提供する、特定のメディアアセットのコンテンツプロバイダを判定してもよい。本比較に基づいて、メディアガイドアプリケーションは、以下に議論されるように、メディアアセットにアクセスするためにユーザデバイスにオファーするために使用すべきコンテンツプロバイダを選択してもよい、種々のコンテンツプロバイダをランク付けしてもよい、またはコンテンツプロバイダからのメディアアセットがユーザにオファーされるべきかどうかを判定してもよい。
【００５３】
例えば、サービス品質は、特定のタイプのコンテンツを提供するために要求される、性能レベルを指し得る。例えば、より大きいサイズまたは特定のフォーマットにおけるコンテンツの配信は、より大きい需要をネットワークに課し得る。故に、そのようなコンテンツをユーザに配信するために、コンピュータネットワークは、より高い性能または達成されるサービス品質（例えば、高ビットレート、短待ち時間、および低ビットエラー確率）を要求し得る。メディアガイドアプリケーションは、メディアガイドアプリケーションがユーザによる消費のためにそのコンテンツプロバイダからのメディアアセットをオファーする前に、具体的コンテンツプロバイダを使用してオファーされる性能レベルが容認可能であることを検証してもよい。本検証サービスを提供することによって、メディアガイドアプリケーションは、高レベルのユーザ体験を確実にする。例えば、性能レベルが検証されたため、メディアガイドアプリケーションは、低いサービス品質および不良なユーザ体験をもたらすであろう、コンテンツプロバイダへの接続を促進しないであろう。
【００５４】
サービス品質を判定する際の種々の変数を試験するために、メディアガイドアプリケーションは、帯域幅、ジッタ、待ち時間、およびパケット損失を測定してもよい。例えば、メディアガイドアプリケーションは、サービス品質の特性毎に、試験するための１つまたはそれを上回るモジュールを組み込み、および／またはそこへのアクセスを有してもよい。試験は、１つまたはそれを上回るデバイスにクエリし、アウトオブシーケンスカウント等の統計を生成し、チェックサムエラー等のデータパケット内のエラーを検出することを含んでもよい（例えば、パリティバイトまたはパリティワードアルゴリズム、モジュール総和アルゴリズム、位置依存アルゴリズム等に従って）。加えて、メディアガイドアプリケーションは、１つまたはそれを上回るデバイスにデータに関してピングし、これらの測定を判定してもよい。例えば、待ち時間を試験するために、メディアガイドアプリケーションは、近端から遠端および遠端から近端の両方向を同時に試験してもよい。
【００５５】
いくつかの実施形態では、メディアガイドアプリケーションは、１つまたはそれを上回るサービス品質の特性の加重された平均に基づいて、サービス品質を判定してもよい。本明細書で参照されるように、サービス品質の「特性」は、サービス品質に影響を及ぼす、任意の変数である。例えば、特性は、情報の送信側または受信側の視点から見られるような誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、ジッタ等を含んでもよい。加えて、または代替として、特性は、前述のように、保証されたサービス品質における最大遅延を判定するために使用される、任意の変数を含んでもよい。さらに、サービス品質を判定するために使用される、特性は、変動し得る。例えば、メディアガイドアプリケーションは、統計的データが生成され得る、またはメディアガイドアプリケーションが好適な手段を通して検証し得る、特性のみを選択してもよい。加えて、または代替として、特性は、産業規格、ユーザ選択、または工場デフォルトに基づいて、選択されてもよい。
【００５６】
さらに、メディアガイドアプリケーションは、サービス品質を判定するとき、これらの特性のそれぞれに異なるように加重してもよい。例えば、特定の特性は、いくつかの状況では、サービス品質をより示し得る。例えば、第１の特性を測定するために使用される、データは、第２の特性を測定するために使用されるデータより精密であって、より正確であって、よりロバスト等であり得る。故に、メディアガイド器具は、サービス品質の判定の際、第２の特性より重く第１の特性に加重してもよい。
【００５７】
また、サービス品質（または特定の特性の測定）は、継続的に、もしくは所定の時間において、および／または特定の入力に応答して、判定されてもよいことに留意されたい。例えば、メディアガイドアプリケーションは、ユーザデバイスに関するサービス品質を持続的に判定し、メディアアセットを異なるコンテンツプロバイダから受信してもよい。メディアガイドアプリケーションがサービス品質を要求する、任意の時間に（例えば、特定のコンテンツプロバイダからのメディア一覧を生成するために）、メディアガイドアプリケーションは、現在のサービス品質を読み出してもよい。代替として、または加えて、メディアガイドアプリケーションは、所定の時間（例えば、正時に、毎時）に、サービス品質を判定してもよい。代替として、または加えて、メディアガイドアプリケーションは、メディアアセットにアクセスする、コンテンツプロバイダの集約にアクセスする、メディアガイドアプリケーションにアクセスする、ユーザデバイスをオンにする等のユーザ要求に応答して、サービス品質を判定してもよい。
【００５８】
いくつかの実施形態では、メディアガイドアプリケーションは、サービス閾値品質を読み出してもよい。サービス閾値品質は、メディアガイドアプリケーションによって特定のアクションをトリガする、任意のサービス品質であってもよい。例えば、サービス閾値品質は、産業規格、ユーザ選択、または工場デフォルトに基づいてもよい。さらに、サービス閾値品質は、全体的ネットワーク条件および／またはユーザ選択に応じて、動的に変化してもよい。例えば、ネットワーク条件が逼迫する（例えば、システムにかかる負荷が増加する）と、サービス閾値品質は、より多くのメディアアセットがユーザに利用可能となることを可能にするために減少され得る。代替として、ネットワーク条件が逼迫すると、サービス閾値品質は、増加され、ユーザ体験がネットワーク条件によって影響されないことを確実にし得る。同様に、ユーザが、ネットワークにかかる潜在的需要を下げることを選択する（例えば、標準解像度メディアアセットのみを要求する）と、サービス閾値品質は、ネットワークにかかるより低い需要を反映させるように調節されてもよい。
【００５９】
本明細書で参照されるように、「コンテンツプロバイダ」または「サービスプロバイダ」は、メディアコンテンツを提供する、第三者エンティティである。例えば、コンテンツプロバイダは、映画、音楽、および他のメディアコンテンツをユーザに提供する、第三者エンティティであってもよい。コンテンツプロバイダは、クラウドベースのアグリゲータと提携しなくてもよい。コンテンツプロバイダは、クラウドベースのアグリゲータと契約関係にあってもよい。例えば、コンテンツプロバイダは、クラウドベースのアグリゲータに、何らかの補償の見返りとして、ユーザについての情報を提供することに合意してもよい。コンテンツプロバイダは、クラウドベースのアグリゲータではなく、ユーザと契約関係にあってもよい。例えば、コンテンツプロバイダは、ユーザによってサブスクライブされてもよく、クラウドベースのアグリゲータとの任意の合意を有していなくてもよい。
【００６０】
本明細書で議論される実施形態のいずれかを行うためのメディアガイドアプリケーションおよび／または任意の命令は、コンピュータ可読媒体上にエンコードされてもよい。コンピュータ可読媒体は、データを記憶することが可能な任意のメディアを含む。コンピュータ可読媒体は、限定ではないが、電気信号または電磁信号の伝搬を含む、一過性であってもよく、または限定ではないが、ハードディスク、フロッピー（登録商標）ディスク、ＵＳＢドライブ、ＤＶＤ、ＣＤ、メディアカード、レジスタメモリ、プロセッサキャッシュ、ランダムアクセスメモリ（「ＲＡＭ」）等の揮発性および不揮発性コンピュータメモリまたは記憶デバイスを含む、非一過性であってもよい。
【００６１】
インターネット、モバイルコンピューティング、および高速無線ネットワークの出現に伴って、ユーザは、従来は使用しなかったユーザ機器デバイス上でメディアにアクセスするようになっている。本明細書で参照されるように、語句「ユーザ機器デバイス」、「ユーザ機器」、「ユーザデバイス」、「電子デバイス」、「電子機器」、「メディア機器デバイス」、または「メディアデバイス」は、テレビ、スマートＴＶ、セットトップボックス、衛星テレビに対応するための統合型受信機デコーダ（ＩＲＤ）、デジタル記憶デバイス、デジタルメディア受信機（ＤＭＲ）、デジタルメディアアダプタ（ＤＭＡ）、ストリーミングメディアデバイス、ＤＶＤプレーヤ、ＤＶＤレコーダ、接続型ＤＶＤ、ローカルメディアサーバ、ＢＬＵ−ＲＡＹ（登録商標）プレーヤ、ＢＬＵ−ＲＡＹ（登録商標）レコーダ、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、タブレットコンピュータ、ウェブＴＶボックス、パーソナルコンピュータテレビ（ＰＣ／ＴＶ）、ＰＣメディアサーバ、ＰＣメディアセンター、ハンドヘルドコンピュータ、固定電話、携帯情報端末（ＰＤＡ）、携帯電話、ポータブルビデオプレーヤ、ポータブル音楽プレーヤ、ポータブルゲーム機、スマートフォン、または任意の他のテレビ機器、コンピューティング機器、もしくは無線デバイス、および／またはそれらの組み合わせ等の前述のコンテンツにアクセスするための任意のデバイスを意味すると理解されたい。いくつかの実施形態では、ユーザ機器デバイスは、正面画面および裏面画面、複数の正面画面、または複数の角度付き画面を有してもよい。いくつかの実施形態では、ユーザ機器デバイスは、正面カメラおよび／または背面カメラを有してもよい。これらのユーザ機器デバイス上で、ユーザは、テレビを通して利用可能な同一のコンテンツ間をナビゲートし、それを特定することが可能であってもよい。その結果として、メディアガイドは、これらのデバイス上でも利用可能であってもよい。提供されるガイドは、テレビのみを通して利用可能なコンテンツ、他のタイプのユーザ機器デバイスのうちの１つまたはそれを上回るもののみを通して利用可能なコンテンツ、またはテレビおよび他のタイプのユーザ機器デバイスのうちの１つまたはそれを上回るものの両方を通して利用可能なコンテンツのためのものであってもよい。メディアガイドアプリケーションは、ユーザ機器デバイス上で、オンラインアプリケーション（すなわち、ウェブサイト上で提供される）、もしくは独立型アプリケーションまたはクライアントとして提供されてもよい。メディアガイドアプリケーションを実装し得る、種々のデバイスおよびプラットフォームは、以下でより詳細に説明される。
【００６２】
メディアガイドアプリケーションの機能の１つは、メディアガイドデータをユーザに提供することである。本明細書で参照されるように、語句「メディアガイドデータ」または「ガイドデータ」は、コンテンツに関連する任意のデータ、またはガイドアプリケーションを動作させる際に使用されるデータを意味すると理解されたい。例えば、ガイドデータは、番組情報、ガイドアプリケーション設定、ユーザ選好、ユーザプロファイル情報、メディア一覧、メディア関連情報（例えば、放送時間、放送チャンネル、タイトル、内容、評価情報（例えば、ペアレンタルコントロール評価、批評家の評価等）、ジャンルまたはカテゴリ情報、俳優情報、放送会社またはプロバイダのロゴのロゴデータ等）、メディア形式（例えば、標準解像度、高解像度、３Ｄ等）、広告情報（例えば、テキスト、画像、メディアクリップ等）、オンデマンド情報、ブログ、ウェブサイト、およびユーザが所望のコンテンツ選択間をナビゲートし、それを特定するために役立つ、任意の他のタイプのガイドデータを含んでもよい。
【００６３】
図１−２は、メディアガイドデータを提供するために使用され得る、例証的表示画面を示す。例えば、図１−２の表示は、複数のコンテンツプロバイダから利用可能である、メディアアセットを提示してもよい。例えば、メディアガイドアプリケーションは、多数のプロバイダからのコンテンツを集約し、単一インターフェースを通して、コンテンツを提供してもよい。単一インターフェースはさらに、ユーザが、同時に、各コンテンツプロバイダのメディアコンテンツライブラリを通して検索し、メディア推奨を受信することを可能にすることによって、種々のコンテンツプロバイダ間の協調を促進してもよい。さらに、最良可能ユーザ体験を提供するために、メディアガイドアプリケーションは、任意の所与のメディアアセットに関してコンテンツプロバイダと関連付けられたサービス品質に基づいて、ユーザに提示するメディア一覧をフィルタ処理および／または選択してもよい。例えば、メディアガイドアプリケーションは、多数のコンテンツプロバイダがメディアアセットをオファーしているという事実にもかかわらず、最良サービス品質を提供する単一コンテンツプロバイダに基づいて、表示のために、単一コンテンツプロバイダに対応する単一メディア一覧を選択してもよい。代替として、メディアガイドアプリケーションは、単一表示内の同一メディアアセットに関して、複数のコンテンツプロバイダからのメディア一覧をグラフィック的に強調させてもよい（例えば、順序、位置付け、サイズ、着色、陰影、フォント、画像、透明度、または他の好適な基準を調節する）。
【００６４】
図１−２に示される表示画面は、任意の好適なユーザ機器デバイスまたはプラットフォーム上に実装されてもよい。図１−２の表示は、フル画面表示として図示されているが、それらはまた、表示されているコンテンツ上に完全または部分的にオーバーレイされてもよい。ユーザは、表示画面に提供された選択可能なオプション（例えば、メニューオプション、一覧オプション、アイコン、ハイパーリンク等）を選択することによって、もしくはリモートコントロールまたは他のユーザ入力インターフェースもしくはデバイス上の専用ボタン（例えば、「ガイド」ボタン）を押下することによって、コンテンツ情報へのアクセス要望を指示してもよい。ユーザの指示に応答して、メディアガイドアプリケーションは、コンテンツタイプ別、カテゴリ別（例えば、映画、スポーツ、ニュース、子供向け、または他の番組カテゴリ）、または他の所定、ユーザ定義、もしくは他の編成基準等のいくつかの方法のうちの１つにおいて編成されたメディアガイドデータを伴う表示画面を提供してもよい。
【００６５】
図１は、複数のコンテンツプロバイダからのメディア一覧を単一インターフェース内でユーザに提供するために使用され得る、例証的メディア一覧表示を示す。表示１００は、行１１２、１１４、１１６、および１１８を含み、それぞれ、映画１２０等の選択可能メディア一覧のセルを含む。選択可能メディア一覧は、タイトルまたは他のテキストを画像の下に含んでもよい。選択可能メディア一覧は、複数のコンテンツプロバイダによって提供されてもよい。種々の選択可能メディア一覧に関するコンテンツプロバイダは、示されなくてもよい。
【００６６】
表示１５０は、（１）スーパーアグリゲータと関連付けられ得る、ロゴ１０４と、（２）タイプ、ジャンル、および／または他の編成基準によってコンテンツを選択するための選択可能オプション１０６と、（３）テキストによってコンテンツを検索するための検索ボックス１０８と、（４）ユーザ情報および選好にアクセスし、それを編集するためのユーザ設定１１０とともに、ヘッダ１０２を含む。行１１２、１１４、１１６、および１１８は、映画１２０等の選択可能メディア一覧のセルを含み、各選択可能メディア一覧は、カバーアート、コンテンツからの静止画像、ビデオクリップのプレビュー、コンテンツからのライブビデオ、または一覧中のメディアガイドデータによって記述されているコンテンツをユーザに示す他のタイプのコンテンツを含む、グラフィカル画像を提供する。ユーザ入力デバイスを用いて、ユーザは、ハイライト領域をメディア一覧に移動させることによって、またはメディア一覧をクリックすることによって、メディア一覧を選択することができる。表示１００からのメディア一覧の選択は、表示を選択されたメディア一覧に関連する情報を含むように変化させ得る（例えば、表示２５０（図２））。
【００６７】
メディアガイドアプリケーションは、非線形番組（例えば、任意の時間においてユーザ機器デバイスにアクセス可能であって、スケジュールに従って提供されない、コンテンツ）へのアクセスを提供する。非線形番組は、オンデマンドコンテンツ（例えば、ＶＯＤ）、インターネットコンテンツ（例えば、ストリーミングメディア、ダウンロード可能メディア等）、ローカルに記憶されるコンテンツ（例えば、上記に説明される任意のユーザ機器デバイスまたは他の記憶デバイス上に記憶されるコンテンツ）、または他の時間独立コンテンツを含む、異なるコンテンツソースからのコンテンツを含んでもよい。オンデマンドコンテンツは、特定のコンテンツプロバイダによって提供される、映画または任意の他のコンテンツを含んでもよい（例えば、「Ｔｈｅ  Ｓｏｐｒａｎｏｓ」や「Ｃｕｒｂ  Ｙｏｕｒ  Ｅｎｔｈｕｓｉａｓｍ」を提供するＨＢＯ  Ｏｎ  Ｄｅｍａｎｄ）。ＨＢＯ  ＯＮ  ＤＥＭＡＮＤは、Ｔｉｍｅ  Ｗａｒｎｅｒ  Ｃｏｍｐａｎｙ  Ｌ．Ｐ．らによって所有されるサービスマークであり、ＴＨＥ  ＳＯＰＲＡＮＯＳおよびＣＵＲＢ  ＹＯＵＲ  ＥＮＴＨＵＳＩＡＳＭは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。インターネットコンテンツは、チャットセッションまたはウェブキャスト等のウェブイベント、もしくはインターネットウェブサイトまたは他のインターネットアクセス（例えば、ＦＴＰ）を通して、ストリーミングコンテンツまたはダウンロード可能なコンテンツとしてオンデマンドで利用可能なコンテンツを含んでもよい。
【００６８】
複数のコンテンツプロバイダからのメディア一覧を単一インターフェース内でユーザに提供するための別の表示配列は、図２に示される。表示２００は、推奨領域２１６を含む。例えば、推奨領域２１６には、メディアアセットに関する推奨が取り込まれてもよい。メディアガイドアプリケーションは、ユーザに関するユーザプロファイルに基づいて、推奨すべきメディアアセットを判定してもよい。さらに、メディアアセットを提供する、コンテンツプロバイダは、示されなくてもよい。
【００６９】
表示２５０は、（１）スーパーアグリゲータと関連付けられ得る、ロゴ２０４と、（２）タイプ、ジャンル、および／または他の編成基準によってコンテンツを選択するための選択可能オプション２０６と、（３）テキストによってコンテンツを検索するための検索ボックス２０８と、（４）ユーザ情報および選好にアクセスし、それを編集するためのユーザ設定２１０とともに、ヘッダ２０２を含んでもよい。表示２５０はまた、メディア領域２１２と、情報領域２１４と、推奨領域２１６とを含む。メディア領域２１２は、メディアアセットを含んでもよく、コンテンツをフル画面で視聴するために選択可能であってもよい。情報領域２１４は、メディアアセットと関連付けられた情報、例えば、タイトル、説明、持続時間、評価、および他の所望の情報を含んでもよい。推奨領域２１６は、カバーアート、コンテンツからの静止画像、ビデオクリップのプレビュー、コンテンツからのライブビデオ、または一覧中のメディアガイドデータによって記述されているコンテンツをユーザに示す他のタイプのコンテンツを含む、グラフィカル画像２１８ａ、２１８ｂ、および２１８ｃとともに、メディア一覧を提供してもよい。メディア一覧はそれぞれまた、テキスト２２０ａ、２２０ｂ、および２２０ｃを伴って、一覧と関連付けられたコンテンツについての情報をさらに提供してもよい。価格インジケータ２２２ａは、一覧に記述されるコンテンツが利用可能なコンテンツプロバイダのサブスクプションと関連付けられた価格を提供する。いくつかの実施形態では、価格インジケータ２２２ａは、グラフィカル画像２１８ａの上に設置されてもよい。いくつかの実施形態では、価格インジケータ２２２ａは、メディア一覧内のグラフィカル画像２１８ａの近傍に設置されてもよい。
【００７０】
表示２５０内のメディア一覧は、同一サイズであるが、所望に応じて、一覧は、異なるサイズであってもよい。一覧は、所望に応じて、コンテンツプロバイダによって、またはユーザ選好に基づいて、異なるサイズにされ得るかまたはグラフィック的に強調され得ることにより、ユーザに関心のある程度を示すかもしくは特定のコンテンツを強調し得る。コンテンツ一覧をグラフィック的に強調するための種々のシステムおよび方法は、例えば、全体として参照することにより本明細書に組み込まれる、２００９年１１月１２日に出願されたＹａｔｅｓの米国特許出願公開第２０１０／０１５３８８５号で論じられている。
【００７１】
図３−４は、メディアガイドデータを提供するために使用され得る、例証的表示画面を示す。図３−４に示される表示画面は、任意の好適なユーザ機器デバイスまたはプラットフォーム上に実装されてもよい。図３−４の表示は、フル画面表示として図示されているが、それらはまた、表示されているコンテンツ上に完全または部分的にオーバーレイされてもよい。ユーザは、表示画面に提供された選択可能なオプション（例えば、メニューオプション、一覧オプション、アイコン、ハイパーリンク等）を選択することによって、もしくはリモートコントロールまたは他のユーザ入力インターフェースもしくはデバイス上の専用ボタン（例えば、「ガイド」ボタン）を押下することによって、コンテンツ情報へのアクセス要望を指示してもよい。ユーザの指示に応答して、メディアガイドアプリケーションは、グリッド内の時間およびチャンネル別、時間別、チャンネル別、ソース別、コンテンツタイプ別、カテゴリ別（例えば、映画、スポーツ、ニュース、子供向け、または他の番組カテゴリ）、または他の所定、ユーザ定義、もしくは他の編成基準等のいくつかの方法のうちの１つにおいて編成されたメディアガイドデータを伴う表示画面を提供してもよい。
【００７２】
図３は、単一表示内の異なるタイプのコンテンツへのアクセスも可能にする、時間およびチャンネル別に配列された番組一覧表示３００の例証的グリッドを示す。表示３００は、以下を伴うグリッド３０２を含んでもよい。（１）各チャンネル／コンテンツタイプ識別子（列内のセル）が利用可能な異なるチャンネルまたはコンテンツのタイプを識別する、チャンネル／コンテンツタイプ識別子３０４の列、および（２）各時間識別子（行内のセル）が番組の時間帯を識別する、時間識別子３０６の行。グリッド３０２はまた、番組一覧３０８等の番組一覧のセルも含み、各一覧は、一覧の関連チャンネルおよび時間の上に提供される、番組のタイトルを提供する。ユーザ入力デバイスを用いて、ユーザは、ハイライト領域３１０を移動させることによって番組一覧を選択することができる。ハイライト領域３１０によって選択される番組一覧に関する情報が、番組情報領域３１２内に提供されてもよい。領域３１２は、例えば、番組タイトル、番組内容、番組が提供される時間（該当する場合）、番組が放送されるチャンネル（該当する場合）、番組の評価、および他の所望の情報を含んでもよい。
【００７３】
線形番組（例えば、所定の時間に複数のユーザ機器デバイスに伝送されるようにスケジューリングされ、スケジューリングに従って提供される、コンテンツ）へのアクセスの提供に加え、メディアガイドアプリケーションはまた、非線形番組（例えば、任意の時間においてユーザ機器デバイスにアクセス可能であって、スケジューリングに従って提供されない、コンテンツ）へのアクセスも提供する。非線形番組は、オンデマンドコンテンツ（例えば、ＶＯＤ）、インターネットコンテンツ（例えば、ストリーミングメディア、ダウンロード可能メディア等）、ローカルに記憶したコンテンツ（例えば、前述の任意のユーザ機器デバイスまたは他の記憶デバイス上に記憶されたコンテンツ）、または時間的制約のない他のコンテンツを含む、異なるコンテンツソースからのコンテンツを含んでもよい。オンデマンドコンテンツは、映画または特定のコンテンツプロバイダ（例えば、「Ｔｈｅ  Ｓｏｐｒａｎｏｓ」や「Ｃｕｒｂ  Ｙｏｕｒ  Ｅｎｔｈｕｓｉａｓｍ」を提供するＨＢＯ  Ｏｎ  Ｄｅｍａｎｄ）によって提供される任意の他のコンテンツを含んでもよい。ＨＢＯ  ＯＮ  ＤＥＭＡＮＤは、Ｔｉｍｅ  Ｗａｒｎｅｒ  Ｃｏｍｐａｎｙ  Ｌ．Ｐ．らによって所有されるサービスマークであり、ＴＨＥ  ＳＯＰＲＡＮＯＳおよびＣＵＲＢ  ＹＯＵＲ  ＥＮＴＨＵＳＩＡＳＭは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。インターネットコンテンツは、チャットセッションまたはウェブキャスト等のウェブイベント、もしくはインターネットウェブサイトまたは他のインターネットアクセス（例えば、ＦＴＰ）を通して、ストリーミングコンテンツまたはダウンロード可能なコンテンツとしてオンデマンドで利用可能なコンテンツを含んでもよい。
【００７４】
グリッド３０２は、オンデマンド一覧３１４、録画コンテンツ一覧３１６、およびインターネットコンテンツ一覧３１８を含む、非線形番組のメディアガイドデータを提供してもよい。異なるタイプのコンテンツソースからのコンテンツのためのメディアガイドデータを組み合わせる表示は、時として、「混合メディア」表示と称されることもある。表示３００とは異なる、表示され得るメディアガイドデータのタイプの種々の順列は、ユーザ選択またはガイドアプリケーション定義に基づいてもよい（例えば、録画および放送一覧のみの表示、オンデマンドおよび放送一覧のみの表示等）。例証されるように、一覧３１４、３１６、および３１８は、これらの一覧の選択が、それぞれ、オンデマンド一覧、録画一覧、またはインターネット一覧に専用の表示へのアクセスを提供し得ることを示すように、グリッド３０２内に表示される時間帯全体に及ぶものとして示されている。いくつかの実施形態では、これらのコンテンツタイプの一覧は、グリッド３０２に直接含まれてもよい。ユーザがナビゲーションアイコン３２０のうちの１つを選択することに応答して、付加的メディアガイドデータが表示されてもよい（ユーザ入力デバイス上の矢印キーを押下することによって、ナビゲーションアイコン３２０を選択することと同様に表示に影響を及ぼしてもよい）。
【００７５】
表示３００はまた、ビデオ領域３２２、広告３２４、およびオプション領域３２６を含んでもよい。ビデオ領域３２２は、ユーザが、現在利用可能である、今後利用可能となる、またはユーザに利用可能であった番組を視聴および／またはプレビューすることを可能にしてもよい。ビデオ領域３２２のコンテンツは、グリッド３０２に表示される一覧のうちの１つに対応するか、またはそれから独立してもよい。ビデオ領域を含むグリッド表示は、時として、ピクチャインガイド（ＰＩＧ）表示と称されることもある。ＰＩＧ表示およびそれらの機能は、２００３年５月１３日発行のＳａｔｔｅｒｆｉｅｌｄらの米国特許第６，５６４，３７８号、および２００１年５月２９日発行のＹｕｅｎらの米国特許第６，２３９，７９４号でさらに詳細に説明されており、それらは全体として参照することによって本明細書に組み込まれる。ＰＩＧ表示は、本明細書に説明される実施形態の他のメディアガイドアプリケーション表示画面に含まれてもよい。
【００７６】
広告３２４は、（例えば、サブスクプション番組に対する）視聴者のアクセス権に応じて、現在視聴が利用可能である、将来視聴が利用可能となる、または決して視聴利用可能とはなり得ない、コンテンツの広告を提供してもよく、グリッド３０２内のコンテンツ一覧のうちの１つまたはそれを上回るものに対応するか、または無関係であってもよい。広告３２４はまた、グリッド３０２内で表示されるコンテンツに関係するか、または無関係である製品もしくはサービスに対するものであってもよい。広告３２４は、選択可能であってもよく、コンテンツに関するさらなる情報を提供する、製品またはサービスに関する情報を提供する、コンテンツ、製品、またはサービスを購入することを可能にする、広告に関するコンテンツを提供する等を行ってもよい。広告３２４は、ユーザのプロファイル／選好、監視されたユーザ活動、提供される表示のタイプ、または他の好適な標的化された広告基盤に基づいて標的化されてもよい。
【００７７】
広告３２４は、長方形またはバナー形状として示されているが、広告は、ガイドアプリケーション表示内の任意の好適なサイズ、形状、および場所で提供されてもよい。例えば、広告３２４は、グリッド３０２に水平方向に隣接する長方形として提供されてもよい。これは、時として、パネル広告と称されることもある。加えて、広告は、コンテンツまたはガイドアプリケーション表示上にオーバーレイされるか、または表示内に埋め込まれてもよい。広告はまた、テキスト、画像、回転画像、ビデオクリップ、または前述の他のタイプのコンテンツを含んでもよい。広告は、ガイドアプリケーションを有するユーザ機器デバイス内、ユーザ機器に接続されたデータベース内、遠隔場所（ストリーミングメディアサーバを含む）内、もしくは他の記憶手段またはこれらの場所の組み合わせ上に記憶されてもよい。メディアガイドアプリケーションに広告を提供するステップは、例えば、それらの全体が参照することにより本明細書に組み込まれる、２００３年１月１７日出願のＫｎｕｄｓｏｎらの米国特許出願公開第２００３／０１１０４９９号、２００４年６月２９日発行のＷａｒｄ，ＩＩＩらの米国特許第６，７５６，９９７号、および２００２年５月１４日発行のＳｃｈｅｉｎらの米国特許第６，３８８，７１４号で、さらに詳細に論じられている。広告は、本明細書に説明される実施形態の他のメディアガイドアプリケーション表示画面に含まれてもよいことが理解されるであろう。
【００７８】
オプション領域３２６は、ユーザが、異なるタイプのコンテンツ、メディアガイドアプリケーション表示、および／またはメディアガイドアプリケーション特徴にアクセスすることを可能にしてもよい。オプション領域３２６は、ディプレイ３００（および本明細書に説明される他の表示画面）の一部であってもよく、もしくは画面上のオプションを選択すること、またはユーザ入力デバイス上の専用または割当可能ボタンを押下することによって、ユーザによって呼び出されてもよい。オプション領域３２６内の選択可能オプションは、グリッド３０２内の番組一覧に関連する特徴に関してもよく、またはメインメニュー表示から利用可能なオプションを含んでもよい。番組一覧に関連する特徴は、他の放送時間または番組の受信方法の検索、番組の録画、番組の連続録画の有効化、番組および／またはチャンネルをお気に入りとして設定、番組の購入、もしくは他の特徴を含んでもよい。メインメニュー表示から利用可能なオプションは、検索オプション、ＶＯＤオプション、ペアレンタルコントロールオプション、インターネットオプション、クラウドベースのオプション、デバイス同期オプション、第２の画面デバイスオプション、種々のタイプのメディアガイドデータ表示にアクセスするためのオプション、プレミアムサービスにサブスクライブするためのオプション、ユーザのプロファイルを編集するためのオプション、ブラウザオーバーレイにアクセスするためのオプション、もしくは他のオプションを含んでもよい。
【００７９】
メディアガイドアプリケーションは、ユーザの選好に基づいて個人化されてもよい。個人化されたメディアガイドアプリケーションは、ユーザが、メディアガイドアプリケーションによって個人化された「体験」を生成するように、表示および特徴をカスタマイズすることを可能にする。この個人化された体験は、ユーザがこれらのカスタマイズを入力できるようにすることによって、および／または種々のユーザ選好を判定するようにメディアガイドアプリケーションがユーザ活動を監視することによって、生成されてもよい。ユーザは、ログインすることによって、または別様にガイドアプリケーションに対して自らを識別することによって、それらの個人化されたガイドアプリケーションにアクセスしてもよい。メディアガイドアプリケーションのカスタマイズは、ユーザプロファイルに従って作成されてもよい。カスタマイズは、提示方式（例えば、表示の色方式、テキストのフォントサイズ等）、表示されるコンテンツ一覧の態様（例えば、ＨＤＴＶ番組のみまたは３Ｄ番組のみ、お気に入りチャンネル選択に基づいたユーザ指定の放送チャンネル、チャンネルの表示の並び替え、推奨コンテンツ等）、所望の録画特徴（例えば、特定のユーザに対する録画または連続録画、録画品質等）、ペアレンタルコントロール設定、インターネットコンテンツのカスタマイズされた提示（例えば、ソーシャルメディアコンテンツ、電子メール、電子的に配信された記事等の提示）、および他の所望のカスタマイズを変更させるステップを含んでもよい。
【００８０】
メディアガイドアプリケーションは、ユーザが、ユーザプロファイル情報を提供することを可能にしてもよく、またはユーザプロファイル情報を自動的にコンパイルしてもよい。メディアガイドアプリケーションは、例えば、ユーザがアクセスするコンテンツ、および／またはユーザがガイドアプリケーションと行ってもよい他の相互作用を監視してもよい。加えて、メディアガイドアプリケーションは、特定のユーザに関連する他のユーザプロファイルの全体または一部を取得し（例えば、ｗｗｗ．ａｌｌｒｏｖｉ．ｃｏｍ等のユーザがアクセスするインターネット上の他のウェブサイトから、ユーザがアクセスする他のメディアガイドアプリケーションから、ユーザがアクセスする他の双方向アプリケーションから、ユーザの別のユーザ機器デバイスから等）、および／またはメディアガイドアプリケーションがアクセスし得る他のソースから、ユーザに関する情報を取得してもよい。結果として、ユーザの異なるユーザ機器デバイスにわたって、統一されたガイドアプリケーション体験をユーザに提供することができる。このタイプのユーザ体験は、図６に関連して、以下でより詳細に説明される。付加的な個人化されたメディアガイドアプリケーション特徴は、２００５年７月１１日出願のＥｌｌｉｓらの米国特許出願公開第２００５／０２５１８２７号、２００７年１月１６日発行のＢｏｙｅｒらの米国特許第７，１６５，０９８号、および２００２年２月２１日出願のＥｌｌｉｓらの米国特許出願公開第２００２／０１７４４３０号でさらに詳細に説明されており、それらは全体として参照することにより本明細書に組み込まれる。
【００８１】
メディアガイドを提供するための別の表示配列が、図４に示されている。ビデオモザイク表示４００は、コンテンツのタイプ、ジャンル、および／または他の編成基準に基づいて編成されたコンテンツ情報のための選択可能オプション４０２を含む。表示４００では、テレビ一覧オプション４０４が、選択され、したがって、一覧４０６、４０８、４１０、および４１２を放送番組一覧として提供する。表示４００では、一覧は、カバーアート、コンテンツからの静止画像、ビデオクリップのプレビュー、コンテンツからのライブビデオ、または一覧中のメディアガイドデータによって記述されているコンテンツをユーザに示す他のタイプのコンテンツを含む、グラフィック画像を提供してもよい。グラフィック一覧のそれぞれはまた、一覧と関連付けられたコンテンツに関するさらなる情報を提供するように、テキストを伴ってもよい。例えば、一覧４０８は、メディア部分４１４およびテキスト部分４１６を含む、１つより多くの部分を含んでもよい。メディア部分４１４および／またはテキスト部分４１６は、コンテンツをフル画面で視聴するように、またはメディア部分４１４に表示されるコンテンツに関連する情報を閲覧するように（例えば、ビデオが表示されるチャンネルの一覧を閲覧するように）、選択可能であってもよい。
【００８２】
表示４００中の一覧は、異なるサイズである（すなわち、一覧４０６は、一覧４０８、４１０、および４１２より大きい）が、所望の場合、全一覧が同一のサイズであってもよい。一覧は、コンテンツプロバイダの所望に応じて、またはユーザ選好に基づいて、ユーザに関心の程度を示すように、または、あるコンテンツを強調するように、異なるサイズであるか、またはグラフィック的に強調されてもよい。コンテンツ一覧をグラフィック的に強調するための種々のシステムおよび方法は、例えば、全体として参照することにより本明細書に組み込まれる、２００９年１１月１２日に出願されたＹａｔｅｓの米国特許出願公開第２０１０／０１５３８８５号で論じられている。
【００８３】
ユーザは、そのユーザ機器デバイスのうちの１つまたはそれを上回るものから、コンテンツおよびメディアガイドアプリケーション（ならびに前述および後述で説明されるその表示画面）にアクセスしてもよい。図５は、例証的ユーザ機器デバイス５００の一般的実施形態を示す。ユーザ機器デバイスのより具体的な実装は、図６に関連して以下で議論される。ユーザ機器デバイス５００は、入出力（以下「Ｉ／Ｏ」）パス５０２を介して、コンテンツおよびデータを受信してもよい。Ｉ／Ｏパス５０２は、処理回路５０６および記憶装置５０８を含む制御回路５０４に、コンテンツ（例えば、放送番組、オンデマンド番組、インターネットコンテンツ、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を経由して利用可能なコンテンツ、および／または他のコンテンツ）およびデータを提供してもよい。制御回路５０４は、Ｉ／Ｏパス５０２を使用して、コマンド、要求、および他の好適なデータを送受信するために使用されてもよい。Ｉ／Ｏパス５０２は、制御回路５０４（具体的には、処理回路５０６）を１つまたはそれを上回る通信パス（以下で説明される）に接続してもよい。Ｉ／Ｏ機能は、これらの通信パスのうちの１つまたはそれを上回るものによって提供されてもよいが、図面が複雑になり過ぎることを回避するため、図５では単一パスとして示されている。
【００８４】
制御回路５０４は、処理回路５０６等の任意の好適な処理回路に基づいてもよい。本明細書で参照されるように、処理回路とは、１つまたはそれを上回るマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、プログラマブル論理デバイス、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等に基づく回路を意味すると理解され、マルチコアプロセッサ（例えば、デュアルコア、クアドコア、ヘクサコア、または任意の好適な数のコア）またはスーパーコンピュータを含んでもよい。いくつかの実施形態では、処理回路は、複数の別個のプロセッサまたは処理ユニット、例えば、複数の同一のタイプの処理ユニット（例えば、２つのＩｎｔｅｌ  Ｃｏｒｅ  ｉ７プロセッサ）または複数の異なるプロセッサ（例えば、Ｉｎｔｅｌ  Ｃｏｒｅ  ｉ５プロセッサおよびＩｎｔｅｌ  Ｃｏｒｅ  ｉ７プロセッサ）にわたって分散されてもよい。いくつかの実施形態では、制御回路５０４は、メモリ（すなわち、記憶装置５０８）に記憶されたメディアガイドアプリケーションに対する命令を実行する。具体的には、制御回路５０４は、メディアガイドアプリケーションによって、前述および後述の機能を行うように命令されてもよい。例えば、メディアガイドアプリケーションは、制御回路５０４に、メディアガイド表示を生成するための命令を提供してもよい。いくつかの実装では、制御回路５０４によって行われるいかなるアクションも、メディアガイドアプリケーションから受信した命令に基づいてもよい。
【００８５】
クライアントサーバに基づく実施形態では、制御回路５０４は、ガイドアプリケーションサーバもしくは他のネットワークまたはサーバと通信するための好適な通信回路を含んでもよい。前述の機能性を実施するための命令は、ガイドアプリケーションサーバ上に記憶されてもよい。通信回路は、ケーブルモデム、総合デジタル通信網（ＩＳＤＮ）モデム、デジタルサブスクライバ回線（ＤＳＬ）モデム、電話モデム、イーサネット（登録商標）カード、または他の機器との通信用無線モデム、または任意の他の好適な通信回路を含んでもよい。そのような通信は、インターネットもしくは任意の他の好適な通信ネットワークまたはパスを伴ってもよい（図６に関連してさらに詳細に説明される）。加えて、通信回路は、ユーザ機器デバイスのピアツーピア通信、または相互から遠隔の場所にあるユーザ機器デバイスの通信を可能にする回路を含んでもよい（以下でさらに詳細に説明される）。
【００８６】
メモリは、制御回路５０４の一部である、記憶装置５０８として提供される、電子記憶デバイスであってもよい。本明細書で参照されるように、語句「電子記憶デバイス」または「記憶デバイス」とは、ランダム−アクセスメモリ、読取専用メモリ、ハードドライブ、光学ドライブ、デジタルビデオディスク（ＤＶＤ）レコーダ、コンパクトディスク（ＣＤ）レコーダ、ＢＬＵ−ＲＡＹ（登録商標）ディスク（ＢＤ）レコーダ、ＢＬＵ−ＲＡＹ（登録商標）  ３Ｄディスクレコーダ、デジタルビデオレコーダ（ＤＶＲ、時として、パーソナルビデオレコーダと呼ばれる場合もある、またはＰＶＲ）、固体デバイス、量子記憶デバイス、ゲームコンソール、ゲームメディア、もしくは任意の他の好適な固定またはリムーバブル記憶デバイス、および／または任意のそれらの組み合わせ等の電子データ、コンピュータソフトウェア、またはファームウェアを記憶するための任意のデバイスを意味すると理解されたい。記憶装置５０８は、本明細書に説明される種々のタイプのコンテンツ、ならびに前述のメディアガイドデータを記憶するために使用されてもよい。不揮発性メモリもまた、使用されてもよい（例えば、ブートアップルーチンや他の命令を起動するために）。図６に関連して説明される、クラウドベースの記憶装置が、記憶装置５０８を補完するために使用される、または記憶装置５０８の代わりに使用されてもよい。
【００８７】
制御回路５０４は、１つまたはそれを上回るアナログチューナ、１つまたはそれを上回るＭＰＥＧ−２デコーダ、または他のデジタルデコード回路、高解像度チューナ、または任意の他の好適な同調もしくはビデオ回路、もしくはそのような回路の組み合わせ等のビデオ生成回路および同調回路を含んでもよい。エンコード回路（例えば、記憶のために、無線、アナログ、またはデジタル信号をＭＰＥＧ信号に変換するためのもの）もまた、提供されてもよい。制御回路５０４はまた、コンテンツをユーザ機器５００の好ましい出力形式に上方変換および下方変換するためのスケーリング回路を含んでもよい。回路５０４はまた、デジタル信号およびアナログ信号間で変換するためのデジタルからアナログへの変換回路ならびにアナログからデジタルへの変換回路を含んでもよい。同調およびエンコード回路は、コンテンツを受信して表示する、再生する、または録画するために、ユーザ機器デバイスによって使用されてもよい。同調およびエンコード回路はまた、ガイドデータを受信するために使用されてもよい。例えば、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、およびアナログ／デジタル回路を含む、本明細書に説明される回路は、１つまたはそれを上回る汎用または特殊プロセッサ上で起動するソフトウェアを使用して実装されてもよい。複数のチューナが、同時同調機能に対処するように提供されてもよい（例えば、視聴および録画機能、ピクチャインピクチャ（ＰＩＰ）機能、多重チューナ録画機能等）。記憶装置５０８が、ユーザ機器５００とは別のデバイスとして提供される場合、同調およびエンコード回路（複数のチューナを含む）は、記憶装置５０８と関連付けられてもよい。
【００８８】
ユーザは、ユーザ入力インターフェース５１０を使用して、命令を制御回路５０４に送信してもよい。ユーザ入力インターフェース５１０は、リモートコントロール、マウス、トラックボール、キーパッド、キーボード、タッチ画面、タッチパッド、スタイラス入力、ジョイスティック、音声認識インターフェース、または他のユーザ入力インターフェース等、任意の好適なユーザインターフェースであってもよい。ディスプレイ５１２は、独立型デバイスとして提供されるか、またはユーザ機器デバイス５００の他の要素と統合してもよい。例えば、ディスプレイ５１２は、タッチスクリーンまたはタッチセンサ式表示であってもよい。そのような状況では、ユーザ入力インターフェース５１０は、ディスプレイ５１２と統合される、または組み合わせられてもよい。ディスプレイ５１２は、モニタ、テレビ、モバイルデバイスのための液晶ディスプレイ（ＬＣＤ）、非晶質シリコンディスプレイ、低温ポリシリコンディスプレイ、電子インクディスプレイ、電気泳動ディスプレイ、アクティブマトリクスディスプレイ、エレクトロウェッティングディスプレイ、電気流体ディスプレイ、ブラウン管ディスプレイ、発光ダイオードディスプレイ、エレクトロルミネセントディスプレイ、プラズマ表示パネル、高性能アドレッシングディスプレイ、薄膜トランジスタディスプレイ、有機発光ダイオードディスプレイ、表面伝導型電子放出素子ディスプレイ（ＳＥＤ）、レーザテレビ、カーボンナノチューブ、量子ドットディスプレイ、干渉変調器ディスプレイ、または視覚的画像を表示するための任意の他の好適な機器のうちの１つまたはそれを上回るものであってもよい。いくつかの実施形態では、ディスプレイ５１２は、ＨＤＴＶ対応型であってもよい。いくつかの実施形態では、ディスプレイ５１２は、３Ｄ表示であってもよく、双方向メディアガイドアプリケーションおよび任意の好適なコンテンツは、３Ｄで表示されてもよい。ビデオカードまたはグラフィックカードは、出力をディスプレイ５１２に生成してもよい。ビデオカードは、３Ｄシーンおよび２Ｄグラフィックのレンダリング加速、ＭＰＥＧ−２／ＭＰＥＧ−４デコード、ＴＶ出力、または複数のモニタを接続する能力等の種々の機能をもたらしてもよい。ビデオカードは、制御回路５０４に関連する前述の任意の処理回路であってもよい。ビデオカードは、制御回路５０４と統合されてもよい。スピーカ５１４は、ユーザ機器デバイス５００の他の要素との統合として提供されてもよく、または独立型ユニットであってもよい。ディスプレイ５１２上に表示されるビデオおよび他のコンテンツのオーディオコンポーネントは、スピーカ５１４を通して再生されてもよい。いくつかの実施形態では、音声は、スピーカ５１４を介して音声を処理および出力する、受信機（図示せず）に配信されてもよい。
【００８９】
ガイドアプリケーションは、任意の好適なアーキテクチャを使用して実装されてもよい。例えば、それは、ユーザ機器デバイス５００上で完全に実装される、独立型アプリケーションであってもよい。そのようなアプローチでは、アプリケーションの命令は、ローカルに記憶され（例えば、記憶装置５０８内）、アプリケーションによって使用するためのデータは、周期的にダウンロードされる（例えば、帯域外フィードから、インターネットリソースから、または別の好適なアプローチを使用して）。制御回路５０４は、記憶装置５０８からアプリケーションの命令を読み出し、本明細書で議論される表示のいずれかを生成するための命令を処理してもよい。処理された命令に基づいて、制御回路５０４は、入力が入力インターフェース５１０から受信されるときに行うアクションを判定してもよい。例えば、表示上のカーソルの上／下への移動は、入力インターフェース５１０が上／下ボタンが選択されたことを示すとき、処理された命令によって示されてもよい。
【００９０】
いくつかの実施形態では、メディアガイドアプリケーションは、クライアントサーバベースのアプリケーションである。ユーザ機器デバイス５００上に実装される、シックまたはシンクライアントによって使用するためのデータは、ユーザ機器デバイス５００の遠隔にあるサーバに要求を発行することによって、オンデマンドで読み出される。クライアントサーバベースのガイドアプリケーションの一実施例では、制御回路５０４は、遠隔サーバによって提供されるウェブページを解釈する、ウェブブラウザを実行する。例えば、遠隔サーバは、記憶デバイス内にアプリケーションのための命令を記憶してもよい。遠隔サーバは、回路（例えば、制御回路５０４）を使用して、記憶された命令を処理し、前述および後述の表示を生成してもよい。クライアントデバイスは、遠隔サーバによって生成される表示を受信してもよく、表示のコンテンツを機器デバイス５００上でローカルに表示してもよい。このように、命令の処理は、サーバによって遠隔で行われる一方、結果として生じる表示は、機器デバイス５００上にローカルに提供される。機器デバイス５００は、入力インターフェース５１０を介して、ユーザからの入力を受信し、対応する表示を処理および生成するために、それらの入力を遠隔サーバに伝送してもよい。例えば、機器デバイス５００は、上／下ボタンが入力インターフェース５１０を介して選択されたことを示す、通信を遠隔サーバに伝送してもよい。遠隔サーバは、その入力に従って命令を処理し、入力に対応するアプリケーションの表示を生成してもよい（例えば、カーソルを上／下に移動させる表示）。生成された表示は、次いで、ユーザへの提示のために、機器デバイス５００に伝送される。
【００９１】
いくつかの実施形態では、メディアガイドアプリケーションは、インタープリタまたは仮想マシン（制御回路５０４によって起動される）によって、ダウンロードされ、解釈または別様に起動される。いくつかの実施形態では、ガイドアプリケーションは、ＥＴＶバイナリ交換形式（ＥＴＶ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ／ＥＢＩＦ）でエンコードされ、好適なフィードの一部として制御回路５０４によって受信され、制御回路５０４上で起動するユーザエージェントによって解釈されてもよい。例えば、ガイドアプリケーションは、ＥＢＩＦアプリケーションであってもよい。いくつかの実施形態では、ガイドアプリケーションは、制御回路５０４によって実行されるローカル仮想マシンまたは他の好適なミドルウェアによって受信および起動される、一連のＪＡＶＡ（登録商標）ベースのファイルによって定義されてもよい。そのような実施形態のうちのいくつか（例えば、ＭＰＥＧ−２または他のデジタルメディアエンコードスキームを採用するもの）では、ガイドアプリケーションは、例えば、番組のＭＰＥＧオーディオおよびビデオパケットを用いたＭＰＥＧ−２オブジェクトカルーセルにおいてエンコードおよび伝送されてもよい。
【００９２】
図５のユーザ機器デバイス５００は、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、無線ユーザ通信デバイス６０６、または非携帯型ゲーム機等のコンテンツにアクセスするために好適な任意の他のタイプのユーザ機器として、図６のシステム６００に実装することができる。簡単にするために、これらのデバイスは、本明細書では総称して、ユーザ機器またはユーザ機器デバイスと称されてもよく、前述のユーザ機器デバイスに実質的に類似してもよい。メディアガイドアプリケーションが実装され得る、ユーザ機器デバイスは、独立型デバイスとして機能してもよく、またはデバイスのネットワークの一部であってもよい。デバイスの種々のネットワーク構成が実装されてもよく、以下でさらに詳細に議論される。
【００９３】
図５に関連して前述のシステム特徴のうちの少なくともいくつかを利用する、ユーザ機器デバイスは、単に、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、または無線ユーザ通信デバイス６０６として分類されなくてもよい。例えば、ユーザテレビ機器６０２は、いくつかのユーザコンピュータ機器６０４のように、インターネットコンテンツへアクセスすることを可能にするインターネット対応型であってもよい一方で、ユーザコンピュータ機器６０４は、いくつかのテレビ機器６０２のように、テレビ番組へアクセスすることを可能にするチューナを含んでもよい。メディアガイドアプリケーションはまた、種々の異なるタイプのユーザ機器上で同一レイアウトを有してもよく、またはユーザ機器の表示能力に合わせられてもよい。例えば、ユーザコンピュータ機器６０４上では、ガイドアプリケーションは、ウェブブラウザによってアクセスされるウェブサイトとして提供されてもよい。別の実施例では、ガイドアプリケーションは、無線ユーザ通信デバイス６０６用に縮小されてもよい。
【００９４】
システム６００では、典型的には、各タイプのユーザ機器デバイスが１つを上回って存在するが、図面が複雑になり過ぎることを回避するように、それぞれ１つだけが図６に示されている。加えて、各ユーザは、１つを上回るタイプのユーザ機器デバイスと、また、各タイプのユーザ機器デバイスのうちの１つを上回るものとを利用してもよい。
【００９５】
いくつかの実施形態では、ユーザ機器デバイス（例えば、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、無線ユーザ通信デバイス６０６）は、「第２の画面デバイス」と称されてもよい。例えば、第２の画面デバイスは、第１のユーザ機器デバイス上に提示されるコンテンツを補完してもよい。第２の画面デバイス上に提示されるコンテンツは、第１のデバイス上に提示されるコンテンツを補完する、任意の好適なコンテンツであってもよい。いくつかの実施形態では、第２の画面デバイスは、第１のデバイスの設定および表示選好を調節するためのインターフェースを提供する。いくつかの実施形態では、第２の画面デバイスは、他の第２の画面デバイスと相互作用する、またはソーシャルネットワークと相互作用するために構成される。第２の画面デバイスは、第１のデバイスと同一の部屋内に、第１のデバイスと異なる部屋であるが同一の家または建物内に、もしくは第１のデバイスと異なる建物内に位置することができる。
【００９６】
ユーザはまた、家庭内デバイスおよび遠隔デバイスにわたって一貫したメディアガイドアプリケーション設定を維持するように、種々の設定を設定してもよい。設定は、本明細書に説明される設定、ならびにお気に入りのチャンネルおよび番組、番組を推奨するためにガイドアプリケーションが利用する番組選好、表示選好、および他の望ましいガイド設定を含む。例えば、ユーザが、オフィスのパソコンで、例えば、ウェブサイトｗｗｗ．ａｌｌｒｏｖｉ．ｃｏｍの上で、チャンネルをお気に入りとして設定した場合、所望に応じて、同一のチャンネルが、ユーザの家庭内デバイス（例えば、ユーザテレビ機器およびユーザコンピュータ機器）、ならびにユーザのモバイルデバイス上でお気に入りとして表示されるであろう。したがって、同一タイプのユーザ機器デバイスであるかまたは異なるタイプのユーザ機器デバイスであるかにかかわらず、１つのユーザ機器デバイス上で行われる変更は、別のユーザ機器デバイス上のガイド体験を変更することができる。加えて、行われる変更は、ユーザによる設定入力、ならびにガイドアプリケーションによって監視されるユーザ活動に基づいてもよい。
【００９７】
ユーザ機器デバイスは、通信ネットワーク６１４に結合されてもよい。すなわち、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、および無線ユーザ通信デバイス６０６は、それぞれ、通信パス６０８、６１０、および６１２を介して、通信ネットワーク６１４に結合される。通信ネットワーク６１４は、インターネット、携帯電話ネットワーク、モバイルボイスまたはデータネットワーク（例えば、６ＧまたはＬＴＥネットワーク）、ケーブルネットワーク、公衆交換電話ネットワーク、または他のタイプの通信ネットワーク、もしくは通信ネットワークの組み合わせを含む、１つまたはそれを上回るネットワークであってもよい。パス６０８、６１０、および６１２は、別個または一緒に、衛星パス、光ファイバパス、ケーブルパス、インターネット通信をサポートするパス（例えば、ＩＰＴＶ）、フリースペース接続（例えば、放送または他の無線信号用）、もしくは任意の他の好適な有線または無線通信パス、もしくはそのようなパスの組み合わせ等、１つまたはそれを上回る通信パスを含んでもよい。パス６１２は、図６に示された例示的実施形態において、無線パスであることを示すように破線で描かれ、パス６０８および６１０は、有線パスであることを示すように実線で描かれている（しかし、これらのパスは、所望に応じて、無線パスであってもよい）。ユーザ機器デバイスとの通信は、これらの通信パスのうちの１つまたはそれを上回るものによって提供されてもよいが、図６では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。
【００９８】
通信パスは、ユーザ機器デバイスの間には描かれていないが、これらのデバイスは、パス６０８、６１０、および６１２に関連して上記で説明されるもの、ならびにＵＳＢケーブル、ＩＥＥＥ１５９６ケーブル、無線パス（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、赤外線、ＩＥＥＥ８０２−１１ｘ等）等の他の短距離ポイントツーポイント通信パス、もしくは有線または無線パスを介した他の短距離通信等の通信パスを介して、相互に直接通信してもよい。ＢＬＵＥＴＯＯＴＨ（登録商標）は、Ｂｌｕｅｔｏｏｔｈ（登録商標）  ＳＩＧ，  ＩＮＣ．によって所有される認証マークである。ユーザ機器デバイスはまた、通信ネットワーク６１４を介した間接的パスを通して、相互に直接通信してもよい。
【００９９】
システム６００は、通信パス６２６を介して通信ネットワーク６１４に結合される、スーパーアグリゲータ６２４を含む。パス６２６は、パス６０８、６１０、および６１２と接続する、上記で説明される通信パスのうちのいずれかを含んでもよい。スーパーアグリゲータ６２４との通信は、１つまたはそれを上回る通信パスを介して交信されてもよいが、図６では、図面が複雑になり過ぎることを回避するように単一パスとして示される。スーパーアグリゲータ６２４とユーザ機器デバイス６０２、６０４、および６０６との間の通信は、通信ネットワーク６１４を通して示されるが、いくつかの実施形態では、スーパーアグリゲータ６２４は、パス６０８、６１０、および６１２に関連して上記で説明されるもの等の通信パス（図示せず）を介して、直接、ユーザ機器デバイス６０２、６０４、および６０６と通信してもよい。
【０１００】
システム６００は、それぞれ、通信パス６２０および６２２を介して、通信ネットワーク６１４に結合される、コンテンツソース６１６およびメディアガイドデータソース６１８を含む。パス６２０および６２２は、パス６０８、６１０、ならびに６１２に関して上記で説明される通信パスのうちのいずれかを含んでもよい。コンテンツソース６１６およびメディアガイドデータソース６１８との通信は、１つまたはそれを上回る通信パスを介して交信されてもよいが、図６では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。加えて、２つを上回るコンテンツソース６１６があってもよいが、図６では、図面が複雑になり過ぎることを回避するように、２つのみが示されている。加えて、１つを上回るメディアガイドデータソース６１８があってもよいが、図６では、図面が複雑になり過ぎることを回避するように、１つのみが示されている。（これらのソースのそれぞれの異なるタイプを以下で論じる）。所望に応じて、コンテンツソース６１６およびメディアガイドデータソース６１８は、１つのソースデバイスとして統合されてもよい。ソース６１６および６１８とスーパーアグリゲータ６２４との間の通信は、通信ネットワーク６１４を通したものとして示されているが、いくつかの実施形態では、ソース６１６および６１８は、パス６０８、６１０、および６１２に関連して上記で説明されるもの等の通信パス（図示せず）を介して、スーパーアグリゲータ６２４と直接通信してもよい。
【０１０１】
コンテンツソース６１６は、テレビ配信施設、ケーブルシステムヘッドエンド、衛星配信施設、番組ソース（例えば、ＮＢＣ、ＡＢＣ、ＨＢＯ等のテレビ放送会社）、中間配信施設および／またはサーバ、インターネットプロバイダ、オンデマンドメディアサーバ、および他のコンテンツプロバイダを含む、１つまたはそれを上回るタイプのコンテンツ配信機器を含んでもよい。ＮＢＣは、Ｎａｔｉｏｎａｌ  Ｂｒｏａｄｃａｓｔｉｎｇ  Ｃｏｍｐａｎｙ，  Ｉｎｃ．によって所有される商標であり、ＡＢＣは、Ａｍｅｒｉｃａｎ  Ｂｒｏａｄｃａｓｔｉｎｇ  Ｃｏｍｐａｎｙ，  ＩＮＣ．によって所有される商標であり、ＨＢＯは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。コンテンツソース６１６は、コンテンツの発信元であってもよく（例えば、テレビ放送会社、ウェブキャストプロバイダ等）、またはコンテンツの発信元でなくてもよい（例えば、オンデマンドコンテンツプロバイダ、ダウンロード用放送番組のコンテンツのインターネットプロバイダ等）。コンテンツソース６１６は、ケーブルソース、衛星プロバイダ、オンデマンドプロバイダ、インターネットプロバイダ、オーバーザトップコンテンツプロバイダ、または他のコンテンツのプロバイダを含んでもよい。コンテンツソース６１６はまた、ユーザ機器デバイスのうちのいずれかから遠隔の場所にある、異なるタイプのコンテンツ（ユーザによって選択されるビデオコンテンツを含む）を記憶するために使用される、遠隔メディアサーバを含んでもよい。コンテンツの遠隔記憶のため、および遠隔に記憶されたコンテンツをユーザ機器に提供するためのシステムおよび方法は、全体として参照することにより本明細書に組み込まれる、２０１０年７月２０日出願のＥｌｌｉｓらの米国特許出願第７，７６１，８９２号に関連して、さらに詳細に論じられている。
【０１０２】
メディアガイドデータソース６１８は、前述のメディアガイドデータ等のメディアガイドデータを提供してもよい。メディアガイドデータは、任意の好適なアプローチを使用して、ユーザ機器デバイスに提供されてもよい。いくつかの実施形態では、ガイドアプリケーションは、データフィード（例えば、継続フィードまたはトリクルフィード）を介して、番組ガイドデータを受信する、独立型双方向テレビ番組ガイドであってもよい。番組スケジューリングデータおよび他のガイドデータは、テレビチャンネルのサイドバンド上で、帯域内デジタル信号を使用して、帯域外デジタル信号を使用して、または任意の他の好適なデータ伝送技術によって、ユーザ機器に提供されてもよい。番組スケジューリングデータおよび他のメディアガイドデータは、複数のアナログまたはデジタルテレビチャンネル上でユーザ機器に提供されてもよい。
【０１０３】
いくつかの実施形態では、メディアガイドデータソース６１８からのガイドデータは、クライアントサーバアプローチを使用して、ユーザの機器に提供されてもよい。例えば、ユーザ機器デバイスは、メディアガイドデータをサーバからプルしてもよく、またはサーバは、メディアガイドデータをユーザ機器デバイスにプッシュしてもよい。いくつかの実施形態では、ユーザの機器上に常駐するガイドアプリケーションクライアントは、必要に応じて、例えば、ガイドデータが、古くなっているとき、またはユーザ機器デバイスが、データを受信する要求をユーザから受信するとき、ソース６１８とセッションを開始し、ガイドデータを取得してもよい。メディアガイドは、任意の好適な頻度で（例えば、継続的に、毎日、ユーザ指定期間で、システム指定期間で、ユーザ機器からの要求に応答して等）ユーザ機器に提供されてもよい。メディアガイドデータソース６１８は、ユーザ機器デバイス６０２、６０４、および６０６に、メディアガイドアプリケーション自体、またはメディアガイドアプリケーションのソフトウェア更新を提供してもよい。
【０１０４】
いくつかの実施形態では、メディアガイドデータは、視聴者データを含んでもよい。例えば、視聴者データは、現在および／または履歴ユーザアクティビティ情報（例えば、ユーザが典型的に見るコンテンツ、ユーザがコンテンツを見る時刻、ユーザがソーシャルネットワークと相互作用するかどうか、ユーザがソーシャルネットワークと相互作用し、情報をポストする時間、ユーザが典型的に見るコンテンツのタイプ（例えば、有料ＴＶまたは無料ＴＶ）、気分、脳の活動情報等）を含んでもよい。メディアガイドデータはまた、サブスクプションデータを含んでもよい。例えば、サブスクプションデータは、所与のユーザがサブスクライブするソースまたはサービスおよび／または所与のユーザが以前にサブスクライブしていたが、後にアクセスを打ち切ったソースまたはサービスを識別してもよい（例えば、ユーザがプレミアムチャンネルにサブスクライブしているかどうか、ユーザがプレミアムレベルのサービスを追加したかどうか、ユーザがインターネット速度を加速させたかどうか）。いくつかの実施形態では、視聴者データおよび／またはサブスクプションデータは、１年を上回る期間の間の所与のユーザのパターンを識別してもよい。メディアガイドデータは、所与のユーザがサービス／ソースへのアクセスを打ち切るであろう可能性を示すスコアを生成するために使用される、モデル（例えば、残存者モデル）を含んでもよい。例えば、メディアガイドアプリケーションは、サブスクプションデータと、所与のユーザが特定のサービスまたはソースへのアクセスを打ち切るであろうかどうかの可能性を示す、値またはスコアを生成するためのモデルを併用して、視聴者データを処理してもよい。特に、より高いスコアは、ユーザが特定のサービスまたはソースへのアクセスを打ち切るであろう、より高いレベルの信頼性を示し得る。スコアに基づいて、メディアガイドアプリケーションは、ユーザがアクセスを打ち切る可能性が高いであろうものとしてスコアによって示される特定のサービスまたはソースをユーザが維持するように勧誘する宣伝および広告を生成してもよい。
【０１０５】
いくつかの実施形態では、メディアガイドデータソース６１８からのメディアガイドデータおよびメディアコンテンツソース６１６からのメディアコンテンツは、スーパーアグリゲータ６２４によって、ユーザ機器に提供されてもよい。例えば、ユーザ機器デバイスは、メディアガイドデータおよび他のコンテンツをスーパーアグリゲータ６２４からプルしてもよく、またはスーパーアグリゲータ６２４は、メディアガイドデータおよび他のコンテンツをユーザ機器デバイスにプッシュしてもよい。加えて、スーパーアグリゲータ６２４は、メディアガイドデータソース６１８からのメディアガイドデータおよびメディアコンテンツソース６１６からのメディアコンテンツをプッシュしてもよく、またはメディアガイドデータソースおよびメディアコンテンツソースは、メディアガイドデータソースおよびメディアコンテンツを、それぞれ、スーパーアグリゲータ６２４にプッシュしてもよい。
【０１０６】
いくつかの実施形態では、スーパーアグリゲータ６２４は、メディアコンテンツをユーザ機器に提供する前に、コンテンツプロバイダから受信されたメディアコンテンツをフィルタ処理してもよい。同様に、スーパーアグリゲータ６２４は、メディアコンテンツをユーザ機器に提供する前に、メディアガイドデータソースから受信されたメディアガイドデータをフィルタ処理してもよい。例えば、スーパーアグリゲータは、それらをユーザに提供する前に、コンテンツプロバイダの任意のインジケーションをメディアコンテンツおよびメディアガイドデータから除去してもよい。
【０１０７】
いくつかの実施形態では、スーパーアグリゲータ６２４は、メディアコンテンツソースおよびメディアガイドデータソースからのメディアコンテンツおよびメディアガイドデータを、それぞれ、電子メールまたは電話によって、ユーザに提供してもよい。例えば、スーパーアグリゲータは、メディアアセットの可用性および価格を、電子メールによって、ユーザに提供してもよい。
【０１０８】
メディアガイドアプリケーションは、例えば、ユーザ機器デバイス上に実装される独立型アプリケーションであってもよい。例えば、メディアガイドアプリケーションは、記憶装置５０８内に記憶され、ユーザ機器デバイス５００の制御回路５０４によって実行され得る、ソフトウェアまたは実行可能命令のセットとして実装されてもよい。いくつかの実施形態では、メディアガイドアプリケーションは、クライアント−サーバアプリケーションであってもよく、その場合、クライアントアプリケーションのみ、ユーザ機器デバイス上に常駐し、サーバアプリケーションは、遠隔サーバ上に常駐する。例えば、メディアガイドアプリケーションは、部分的に、ユーザ機器デバイス５００の制御回路５０４上のクライアントアプリケーションとして、および部分的に遠隔サーバ上で、遠隔サーバの制御回路上で起動するサーバアプリケーションとして（例えば、メディアガイドデータソース６１８）、実装されてもよい。遠隔サーバの制御回路（メディアガイドデータソース６１８等）によって実行されると、メディアガイドアプリケーションは、制御回路に、ガイドアプリケーション表示を生成し、生成された表示をユーザ機器デバイスに伝送するように命令してもよい。サーバアプリケーションは、メディアガイドデータソース６１８の制御回路に、ユーザ機器上での記憶のためのデータを伝送するように命令してもよい。クライアントアプリケーションは、受信用ユーザ機器の制御回路に、ガイドアプリケーション表示を生成するように命令してもよい。
【０１０９】
ユーザ機器デバイス６０２、６０４、および６０６に配信されるコンテンツならびに／またはメディアガイドデータは、オーバーザトップコンテンツであってもよい。ＯＴＴコンテンツ配信は、前述の任意のユーザ機器デバイスを含む、インターネット対応型ユーザデバイスが、ケーブルまたは衛星接続を経由して受信されるコンテンツに加え、前述の任意のコンテンツを含む、インターネットを経由して転送されるコンテンツを受信することを可能にする。ＯＴＴコンテンツは、インターネットサービスプロバイダ（ＩＳＰ）によって提供されるインターネット接続を介して配信されるが、第三者も、コンテンツを配信する。ＩＳＰは、視聴能力、著作権、またはコンテンツの再配信に関与していなくてもよく、ＯＴＴコンテンツプロバイダによって提供されるＩＰパケットのみ転送してもよい。ＯＴＴコンテンツプロバイダの実施例として、ＩＰパケットを介して、オーディオおよびビデオを提供する、ＹＯＵＴＵＢＥ（登録商標）、ＮＥＴＦＬＩＸ、およびＨＵＬＵが挙げられる。Ｙｏｕｔｕｂｅは、Ｇｏｏｇｌｅ  Ｉｎｃ．によって所有される商標であり、Ｎｅｔｆｌｉｘは、Ｎｅｔｆｌｉｘ，  Ｉｎｃ．によって所有される商標であり、Ｈｕｌｕは、Ｈｕｌｕ，  ＬＬＣ．によって所有される商標である。ＯＴＴコンテンツプロバイダは、加えて、または代替として、前述のメディアガイドデータを提供してもよい。コンテンツおよび／またはメディアガイドデータに加え、ＯＴＴコンテンツのプロバイダは、メディアガイドアプリケーション（例えば、ウェブベースのアプリケーションまたはクラウドベースのアプリケーション）を配信することができ、またはコンテンツは、ユーザ機器デバイス上に記憶されるメディアガイドアプリケーションによって表示されることができる。
【０１１０】
メディアガイドシステム６００は、いくつかのアプローチまたはネットワーク構成を例証することを意図しており、これによって、ユーザ機器デバイスならびにコンテンツおよびガイドデータのソースは、コンテンツにアクセスし、メディアガイドを提供する目的で、相互に通信してもよい。本明細書に説明される実施形態は、これらのアプローチの任意の１つまたは一部において、もしくはコンテンツを配信し、メディアガイドを提供するための他のアプローチを採用するシステムにおいて、適用されてもよい。以下の４つのアプローチは、図６の一般的実施例の具体的例証を提供する。
【０１１１】
１つのアプローチでは、ユーザ機器デバイスは、ホームネットワーク内で相互に通信してもよい。ユーザ機器デバイスは、上記で説明される短距離ポイントツーポイント通信方式を介して、ホームネットワーク上に提供されるハブまたは他の類似デバイスを通した間接パスを介して、もしくは通信ネットワーク６１４を介して、相互に直接通信することができる。１つの家庭内の複数の個人のそれぞれが、ホームネットワーク上の異なるユーザ機器デバイスを操作してもよい。結果として、種々のメディアガイド情報または設定が、異なるユーザ機器デバイス間で伝達されることが望ましくてもよい。例えば、２００５年７月１１日出願のＥｌｌｉｓらの米国特許公開第２００５／０２５１８２７号でさらに詳細に説明されているように、ホームネットワーク内の異なるユーザ機器デバイス上で、ユーザが一貫したメディアガイドアプリケーション設定を維持することが望ましくてもよい。ホームネットワーク内の異なるタイプのユーザ機器デバイスがまた、相互に通信し、コンテンツを伝送してもよい。例えば、ユーザは、ユーザコンピュータ機器から携帯用ビデオプレーヤまたは携帯用音楽プレーヤにコンテンツを伝送してもよい。
【０１１２】
第２のアプローチでは、ユーザは、複数のタイプのユーザ機器を有してもよく、これによって、コンテンツにアクセスし、メディアガイドを取得する。例えば、一部のユーザは、家庭内およびモバイルデバイスによってアクセスされる、ホームネットワークを有してもよい。ユーザは、遠隔デバイス上に実装されるメディアガイドアプリケーションを介して、家庭内デバイスを制御してもよい。例えば、ユーザは、オフィスのパーソナルコンピュータ、もしくはＰＤＡまたはウェブ対応携帯電話等のモバイルデバイスを介して、ウェブサイト上のオンラインメディアガイドアプリケーションにアクセスしてもよい。ユーザは、オンラインガイドアプリケーション上で種々の設定（例えば、録画、リマインダ、または他の設定）を設定して、ユーザの家庭内機器を制御してもよい。オンラインガイドは、直接、またはユーザの家庭内機器上のメディアガイドアプリケーションと通信することによって、ユーザの機器を制御してもよい。ユーザ機器デバイスが相互から遠隔の場所にある、ユーザ機器デバイスの通信のための種々のシステムおよび方法は、例えば、その全体を参照することにより本明細書に組み込まれる、Ｅｌｌｉｓらの２０１１年１０月２５日発行の米国特許第８，０６６，８０１号で論じられている。
【０１１３】
第３のアプローチでは、家庭内外のユーザ機器デバイスのユーザは、コンテンツソース６１６と直接通信し、コンテンツにアクセスするために、そのメディアガイドアプリケーションを使用することができる。具体的には、家庭内では、ユーザテレビ機器６０２およびユーザコンピュータ機器６０４のユーザは、メディアガイドアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。ユーザはまた、無線ユーザ通信デバイス６０６を使用して、家庭外のメディアガイドアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。
【０１１４】
第４のアプローチでは、例えば、スーパーアグリゲータ６２４を用いたアプローチでは、ユーザ機器デバイスは、クラウドコンピューティング環境内で操作し、クラウドサービスにアクセスしてもよい。クラウドコンピューティング環境では、コンテンツ共有、記憶、または配信のための種々のタイプのコンピューティングサービス（例えば、ビデオ共有サイトまたはソーシャルネットワーキングサイト）が、「クラウド」と称される、ネットワーク−アクセス可能コンピューティングおよび記憶リソースの集合によって提供される。例えば、クラウドは、ネットワークを介して接続される、種々のタイプのユーザおよびデバイスにクラウドベースのサービス、例えば、通信ネットワーク６１４を介したインターネットを提供する、中央または分散場所に位置し得る、サーバコンピューティングデバイスの集合を含むことができる。これらのクラウドリソースは、ユーザに、メディアコンテンツソース６１６からのメディアコンテンツおよびメディアガイドデータソース６１８からのメディアガイドデータを提供し得る、本明細書では、「クラウドベースのアグリゲータ」とも称される、スーパーアグリゲータ６２４を含んでもよい。これらのクラウドリソースは、１つまたはそれを上回るコンテンツソース６１６および１つまたはそれを上回るメディアガイドデータソース６１８を含んでもよい。加えて、または代替として、遠隔コンピューティングサイトは、ユーザテレビ機器６０２、ユーザコンピュータ機器６０４、および無線ユーザ通信デバイス６０６等の他のユーザ機器デバイスを含んでもよい。例えば、他のユーザ機器デバイスは、ビデオの記憶されたコピーまたはストリーミングされたビデオへのアクセスを提供してもよい。そのような実施形態では、ユーザ機器デバイスは、中央サーバと通信せずに、ピアツーピア様式で操作してもよい。
【０１１５】
クラウドは、ユーザ機器デバイスのために、他の実施例の中でもとりわけ、コンテンツ記憶、コンテンツ共有、またはソーシャルネットワーキングサービス等のサービスへのアクセス、ならびに前述の任意のコンテンツへのアクセスを提供する。サービスは、クラウドコンピューティングサービスプロバイダを通して、またはオンラインサービスの他のプロバイダを通して、クラウド内で提供されることができる。例えば、クラウドベースのサービスは、コンテンツ記憶サービス、コンテンツ共有サイト、ソーシャルネットワーキングサイト、または他のサービスを含むことができ、それを介して、ユーザ供給コンテンツは、接続されたデバイス上の他者によって視聴するために配信される。これらのクラウドベースのサービスは、ユーザ機器デバイスが、コンテンツをローカルに記憶し、ローカルに記憶されたコンテンツにアクセスするのではなく、コンテンツをクラウドに記憶し、コンテンツをクラウドから受信することを可能にしてもよい。
【０１１６】
ユーザは、カムコーダ、ビデオモード付きデジタルカメラ、オーディオレコーダ、携帯電話、およびハンドヘルドコンピューティングデバイス等の種々のコンテンツ捕捉デバイスを使用して、コンテンツを録画してもよい。ユーザは、直接、例えば、ユーザコンピュータ機器６０４から、またはコンテンツ捕捉特徴を有する、無線ユーザ通信デバイス６０６からのいずれかにおいて、クラウド上のコンテンツ記憶サービスにコンテンツをアップロードすることができる。代替として、ユーザは、最初に、コンテンツをユーザコンピュータ機器６０４等のユーザ機器デバイスに転送することができる。コンテンツを記憶するユーザ機器デバイスは、通信ネットワーク６１４上のデータ伝送サービスを使用して、コンテンツをクラウドにアップロードする。いくつかの実施形態では、ユーザ機器デバイス自体が、クラウドリソースであって、他のユーザ機器デバイスが、直接、ユーザがコンテンツを記憶したユーザ機器デバイスから、コンテンツにアクセスすることができる。
【０１１７】
クラウドリソースは、例えば、ウェブブラウザ、メディアガイドアプリケーション、デスクトップアプリケーション、モバイルアプリケーション、および／またはそれらのアクセスアプリケーションの任意の組み合わせを使用して、ユーザ機器デバイスによってアクセスされてもよい。ユーザ機器デバイスは、アプリケーション配信のために、クラウドコンピューティングに依拠する、クラウドクライアントであってもよく、またはユーザ機器デバイスは、クラウドリソースにアクセスせずに、いくつかの機能性を有してもよい。例えば、ユーザ機器デバイス上で起動するいくつかのアプリケーションは、クラウドアプリケーション、すなわち、インターネットを経由して、サービスとして配信されるアプリケーションであってもよい一方、他のアプリケーションは、ユーザ機器デバイス上に記憶され、起動されてもよい。いくつかの実施形態では、ユーザデバイスは、コンテンツを複数のクラウドリソースから同時に受信してもよい。例えば、ユーザデバイスは、オーディオを１つのクラウドリソースからストリーミングする一方、コンテンツを第２のクラウドリソースからダウンロードすることができる。または、ユーザデバイスは、より効率的ダウンロードのために、コンテンツを複数のクラウドリソースからダウンロードすることができる。いくつかの実施形態では、ユーザ機器デバイスは、図５に関連して説明される処理回路によって行われる処理操作等の処理操作のために、クラウドリソースを使用することができる。
【０１１８】
本明細書で参照されるように、用語「〜に応答して」は、「〜の結果として開始される」ことを指す。例えば、別のアクションに応答して行われている第１のアクションは、第１のアクションと第２のアクションとの間に介在ステップを含んでもよい。本明細書で参照されるように、用語「〜に直接応答して」は、「〜によって引き起こされる」ことを指す。例えば、別のアクションに直接応答して行われている第１のアクションは、第１のアクションと第２のアクションとの間に介在ステップを含まなくてもよい。
【０１１９】
本明細書で参照されるように、用語「表示のために生成する」は、メディアコンテンツが表示されるデバイスがメディアコンテンツを表示のために生成させるデバイスかどうかにかかわらず、直接または間接的に、メディアコンテンツの表示をデバイス上に生じさせることを意味する。例えば、セットトップボックスは、表示のために、制御回路（例えば、グラフィック処理ユニット）を使用して、表示デバイス（例えば、ＴＶ）に送信される信号を生成し、メディアアセットを表示することによって、メディアアセットを生成してもよい。本実施例では、セットトップボックスは、表示デバイスによってメディアアセットを表示するために使用される信号を生成し、したがって、セットトップボックスは、表示のために、メディアアセットを生成する。
【０１２０】
図７は、メディアコンテンツのプロバイダを選択するための例証的ステップのフローチャートである。プロセス７００またはその任意のステップは、図５−６に示されるデバイスのいずれか上で行われる、またはそれによって提供され得ることに留意されたい。例えば、プロセス７００は、メディアコンテンツのプロバイダを選択するために、ユーザ機器６０２、６０４、および／または６０６（図６）上に実装されるメディアガイドアプリケーションによって命令されるような制御回路５０４（図５）によって実行されてもよい。加えて、プロセス７００の１つまたはそれを上回るステップは、任意の他のプロセスまたは実施形態の１つまたはそれを上回るステップの中に組み込まれる、またはそれと組み合わせられてもよい（例えば、図８−１３に関連して説明されるように）。
【０１２１】
プロセス７００では、メディアガイドアプリケーションは、メディアコンテンツのプロバイダを選択する。ステップ７０２では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイスから、通信ネットワーク（例えば、通信ネットワーク６１４（図６））を経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信し（例えば、ユーザｉ／ｏパス５０２（図５）を介して）、メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である。例えば、ユーザは、モバイルデバイス上で、複数のソースからのコンテンツを集約するメディアガイドアプリケーションに遠隔でアクセスしてもよい。
【０１２２】
ステップ７０４では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、ユーザがメディアコンテンツをストリーミングすることを可能にする、ウェブサイトから現在利用可能であるメディアアセットを判定してもよい。
【０１２３】
ステップ７０６では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、同様に、ユーザがメディアコンテンツをストリーミングすることを可能にする第２のウェブサイトから現在利用可能であるメディアアセットを判定してもよい。さらに、メディアガイドアプリケーションは、２つのウェブサイトの両方が同一メディアアセットをオファーしていることを判定してもよい。
【０１２４】
ステップ７０８では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイスがメディアアセットを第１のコンテンツプロバイダから受信するための第１のサービス品質を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、ユーザデバイスにチェックサム値に関してクエリし、クエリに応答して、チェックサム値をユーザデバイスから受信してもよい。例えば、メディアガイドアプリケーションは、コンテンツを第１のウェブサイトから受信するための誤り率を判定してもよい。
【０１２５】
ステップ７１０では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイスがメディアアセットを第２のコンテンツプロバイダから受信するための第２のサービス品質を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、コンテンツを第１のウェブサイトから受信するための誤り率を判定してもよい。
【０１２６】
ステップ７１０では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、第１のサービス品質と第２のサービス品質を比較する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、ユーザがより低い誤り率を伴う同一メディアアセットを得ることを可能にするであろう、ウェブサイトを判定してもよい。
【０１２７】
ステップ７１２では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、比較に基づいて、第１のサービス品質が第２のサービス品質を上回ることを判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、第１のウェブサイトに対応する誤り率と第２のウェブサイトに対応する誤り率を比較してもよい。
【０１２８】
ステップ７１４では、メディアガイドアプリケーションは、表示のために、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、第１のサービス品質が第２のサービス品質を上回ることの判定に基づいて、第１のコンテンツプロバイダからのメディアアセットに関するメディア一覧（例えば、映画１２０（図１））を生成する（例えば、制御回路５０４（図５）を介して）。例えば、重複メディア一覧（例えば、各メディア一覧が異なるメディアコンテンツプロバイダに対応する同一メディアアセットに対応する２つの一覧）を提示する代わりに、メディアガイドアプリケーションは、自動的に（例えば、任意の試験および／またはさらなるユーザ入力を要求せずに）、ユーザに最良ユーザ体験を提供する（例えば、最良サービス品質を提供する）、メディア一覧を選択してもよい。
【０１２９】
いくつかの実施形態では、サービス品質は、ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタ等、１つまたはそれを上回るサービス品質特性に基づいてもよい。さらに、いくつかの実施形態では、メディアガイドアプリケーションは、第１のサービス品質特性および第２のサービス品質特性を判定してもよい。例えば、メディアガイドアプリケーションは、複数の要因に基づいて、サービス品質を判定してもよい。メディアガイドアプリケーションは、第１の加重を第１のサービス品質特性に、第２の加重を第２のサービス品質特性に割り当ててもよい。例えば、メディアガイドアプリケーションは、要因がユーザ体験、産業規格、および／またはユーザ選好に影響を及ぼす量に従って、要因に加重してもよい。メディアガイドアプリケーションは、次いで、第１のサービス品質特性および第２のサービス品質特性に関する加重された平均を判定してもよい。例えば、第１および第２の特性を定量化し、個別の加重を適用後、メディアガイドアプリケーションは、加重された第１および第２の特性の和を判定し、サービス品質を判定してもよい。
【０１３０】
いくつかの実施形態では、メディアガイドアプリケーションは、種々のサービス品質を格付けしてもよい。例えば、メディアガイドアプリケーションは、第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力してもよい。メディアガイドアプリケーションは、第１のサービス品質と異なるサービス品質とを比較し、第１のサービス品質に関する格付けを判定してもよい。メディアガイドアプリケーションは、次いで、表示のために、メディア一覧と同時に、格付けを生成してもよい。例えば、最良サービス品質を有する、コンテンツプロバイダから利用可能であるメディア一覧のみを提示することに加えて、またはその代替として、メディアガイドアプリケーションは、各メディア一覧とともに、サービス品質格付けを提示してもよい。加えて、または代替として、メディアガイドアプリケーションは、第２のコンテンツプロバイダからメディアアセットにアクセスするための通知を生成してもよく、通知は、第２のサービス品質が第１のサービス品質より低いことを示す。例えば、メディアガイドアプリケーションは、メディアアセットの付加的ソースおよび他のソースに対応する個別のサービス品質（またはサービス品質格付け）を示す、通知をユーザに提示してもよい。
【０１３１】
いくつかの実施形態では、比較に基づいて、第１のサービス品質が第２のサービス品質と等しいことの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のコンテンツプロバイダからのメディアアセットに関するメディア一覧および第２のコンテンツプロバイダからのメディアアセットに関する異なるメディア一覧を生成してもよい。例えば、メディアガイドアプリケーションは、複数のソースからのメディア一覧を提示してもよい。
【０１３２】
いくつかの実施形態では、メディアガイドアプリケーションは、利用可能なメディアコンテンツプロバイダを判定し、ユーザのサブスクプションステータスに基づいて、集約してもよい。例えば、メディアガイドアプリケーションは、携帯電話等のユーザデバイスと関連付けられたユーザプロファイルを読み出してもよい。メディアガイドアプリケーションは、ユーザプロファイルに関するサブスクプションデータを読み出してもよく、サブスクプションデータは、ユーザが複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す。例えば、ユーザプロファイルは、ユーザが現在サブスクライブしている各メディアコンテンツプロバイダの一覧および／またはユーザが種々のメディアコンテンツプロバイダを現在サブスクライブしているかどうかを含んでもよい。メディアガイドアプリケーションは、複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、サブスクプションデータに基づいて、複数のオーバーザトップコンテンツプロバイダがそれぞれ、メディアアセットを提供するかどうかを判定する。例えば、ユーザがあるコンテンツプロバイダからのメディアアセットにサブスクライブしている（例えば、アクセスすることを可能にされる）ことの判定に応答して、メディアガイドアプリケーションは、利用可能なメディアアセットに関するメディアコンテンツプロバイダを検索する。
【０１３３】
いくつかの実施形態では、メディアガイドアプリケーションは、特殊閾値を適用し、メディア一覧を提示するかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、サービス閾値品質を読み出してもよい。例えば、メディア一覧が提示されるであろう、最小容認可能サービス品質である。メディアガイドアプリケーションは、第１のサービス品質とサービス閾値品質を比較してもよく、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成してもよい。代替として、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、表示のために、第１のメディアアセットをサーバに自動的にダウンロードするオプションを生成してもよく、ダウンロードされた第１のメディアアセットは、ユーザデバイス上でオンデマンド再生のために利用可能である。
【０１３４】
図７のステップまたは説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される。加えて、図７に関して説明されるステップおよび説明は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。例えば、これらのステップはそれぞれ、システムまたは方法の遅延を低減させる、もしくは速度を増加させるように、任意の順序で、または並行して、もしくは同時に行われてもよい。さらに、図５−６に関して議論されるデバイスまたは機器のいずれかは、図７におけるステップのうちの１つまたはそれを上回るものを行うために使用され得ることに留意されたい。
【０１３５】
図８は、ユーザインターフェース内でオーバーザトップコンテンツを配列する例証的ステップのフローチャートである。プロセス８００またはその任意のステップは、図５−６に示されるデバイスのいずれか上で行われる、またはそれによって提供され得ることに留意されたい。例えば、プロセス８００は、ユーザインターフェース内でオーバーザトップコンテンツを配列するために、ユーザ機器６０２、６０４、および／または６０６（図６）上に実装されるメディアガイドアプリケーションによって命令されるような制御回路５０４（図５）によって実行されてもよい。加えて、プロセス８００の１つまたはそれを上回るステップは、任意の他のプロセスまたは実施形態の１つまたはそれを上回るステップの中に組み込まれる、またはそれと組み合わせられてもよい（例えば、図７および９−１３に関連して説明されるように）。
【０１３６】
プロセス８００では、メディアガイドアプリケーションは、ユーザインターフェース内でオーバーザトップコンテンツを配列する。ステップ８０２では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイス（例えば、ユーザ機器６０２（図６））から、通信ネットワーク（例えば、通信ネットワーク６１４（図６））を経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信し（例えば、制御回路５０４（図５）を介して）、メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である。例えば、メディアガイドアプリケーションは、モバイルデバイスから、インターネットを経由して、多数のストリーミングメディアプロバイダからのメディアアセットのライブラリにアクセスすることを要求する要求を受信してもよい。
【０１３７】
ステップ８０４では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、ユーザデバイスと関連付けられたユーザプロファイルを読み出し、ユーザプロファイルに関するサブスクプションデータを読み出してもよく、サブスクプションデータは、ユーザが複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す。メディアガイドアプリケーションは、次いで、複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、サブスクプションデータに基づいて、複数のオーバーザトップコンテンツプロバイダがそれぞれ、メディアアセットを提供するかどうかを判定してもよい。
【０１３８】
ステップ８０６では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、第１のストリーミングメディアプロバイダ（例えば、放送テレビネットワークと関連付けられる）および第２のストリーミングメディアプロバイダ（例えば、ユーザがアップロードしたコンテンツのウェブサイトと関連付けられる）の両方が同一メディアアセットへのアクセスをオファーしていることを判定してもよい。
【０１３９】
ステップ８０８では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイス（例えば、ユーザ機器６０２（図６））がメディアアセット（例えば、映画１２０（図１））を第１のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））から受信するための第１のサービス品質を判定する（例えば、制御回路５０４（図５）を介して）。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、ユーザデバイスが第１のコンテンツプロバイダからのメディアアセットにアクセスし得る、ビットレートを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスにチェックサム値に関してクエリし、クエリに応答して、チェックサム値をユーザデバイスから受信してもよい。
【０１４０】
ステップ８１０では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイス（例えば、ユーザ機器６０２（図６））が第２のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））からメディアアセットを受信するための第２のサービス品質を判定する（例えば、制御回路５０４（図５）を介して）。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、同様に、ユーザデバイスが第２のコンテンツプロバイダからのメディアアセットにアクセスし得る、ビットレートを判定してもよい。
【０１４１】
ステップ８１２では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、第１のサービス品質が第２のサービス品質を上回ることに基づいて、ランク付けされた一覧内で第１のコンテンツプロバイダを第２のコンテンツプロバイダより高くランク付してもよい（例えば、制御回路５０４（図５）を介して）。例えば、最良ユーザ体験を提供する（例えば、ユーザが最良ビットレートを提供するコンテンツプロバイダからメディアアセットを受信することを選択することを確実にする）ために、メディアガイドアプリケーションは、その個別のサービス品質に基づいて、コンテンツプロバイダをランク付けしてもよい。
【０１４２】
ステップ８１４では、メディアガイドアプリケーションは、表示のために、ユーザインターフェース（例えば、表示１００（図１））内に、第１のコンテンツプロバイダからのメディアアセットに関する第１のメディア一覧（例えば、映画１２０（図１））および第２のコンテンツプロバイダからのメディアアセットに関する第２のメディア一覧を生成し（例えば、制御回路５０４（図５）を介して）、第１のメディア一覧および第２のメディア一覧は、ランク付けされた一覧内のその個別のコンテンツプロバイダのランク付けに従って、ユーザインターフェース内で配列される。例えば、メディアガイドアプリケーションは、両コンテンツプロバイダからのメディアアセットに対応するメディア一覧を提示してもよいが、メディアガイドアプリケーションは、その個別のサービス品質を反映させる順序で一覧を配列してもよい。故に、ユーザは、直感的方法において、最良サービス品質を伴うメディアアセットを提供するであろうコンテンツプロバイダを判定し得る。
【０１４３】
いくつかの実施形態では、第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、サービス品質特性は、ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む。さらに、メディアガイドアプリケーションは、第１のサービス品質を判定し得、これは、第１のサービス品質特性および第２のサービス品質特性（例えば、誤り率およびビットレート）を判定し、第１の加重を第１のサービス品質特性に、第２の加重を第２のサービス品質特性に割り当て（例えば、ユーザ選好に基づいて）、第１のサービス品質特性および第２のサービス品質特性に関する加重された平均すること（例えば、特性に基づいて全体的サービス品質を表す、加重された平均）を判定を含み得る。
【０１４４】
いくつかの実施形態では、メディアガイドアプリケーションは、コンテンツプロバイダ毎に、定質的または定量的なサービス品質格付けを判定してもよい。例えば、メディアガイドアプリケーションは、第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力してもよい。メディアガイドアプリケーションは、次いで、第１のサービス品質と異なるサービス品質とを比較し、第１のサービス品質に関する格付けを判定し、表示のために、メディア一覧と同時に、格付けを生成してもよい。
【０１４５】
いくつかの実施形態では、メディアガイドアプリケーションは、そのメディアアセットを提供する、コンテンツプロバイダと関連付けられたサービス品質に基づいて、１つのメディア一覧を別のものよりグラフィック的に強調させてもよい。例えば、メディアガイドアプリケーションは、メディア一覧をモザイク表示内に提示してもよく、第１のメディア一覧は、第１のモザイクセルに対応し、第２のメディア一覧は、第２のモザイクセルに対応し、第１のモザイクセルは、第２のモザイクセルより顕著に表示される。
【０１４６】
いくつかの実施形態では、メディアガイドアプリケーションは、ある基準を試験し、閾値基準を満たすかどうかを判定してもよい。該当する場合、具体的アクションが、トリガされてもよい。例えば、メディアガイドアプリケーションは、サービス閾値品質（例えば、第１のコンテンツプロバイダに対応する）を読み出し、第１のサービス品質とサービス閾値品質を比較してもよい。第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えることの判定に応答して、メディアガイドアプリケーションは、第１のメディア一覧をランク付けされた一覧に追加してもよい。代替として、または加えて、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成してもよい。代替として、または加えて、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、表示のために、第１のメディアアセットをサーバに自動的にダウンロードするオプションを生成してもよく、ダウンロードされた第１のメディアアセットは、ユーザデバイス上でオンデマンド再生のために利用可能である。
【０１４７】
図８のステップまたは説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される。加えて、図８に関して説明されるステップおよび説明は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。例えば、これらのステップはそれぞれ、システムまたは方法の遅延を低減させる、もしくは速度を増加させるように、任意の順序で、または並行して、もしくは同時に行われてもよい。さらに、図５−６に関して議論されるデバイスまたは機器のいずれかは、図８におけるステップのうちの１つまたはそれを上回るものを行うために使用され得ることに留意されたい。
【０１４８】
図９は、メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨する例証的ステップのフローチャートである。プロセス９００またはその任意のステップは、図５−６に示されるデバイスのいずれか上で行われる、またはそれによって提供され得ることに留意されたい。例えば、プロセス９００は、メディアコンテンツのプロバイダをオーバーザトップコンテンツを視聴しているユーザに推奨するために、ユーザ機器６０２、６０４、および／または６０６（図６）上に実装されるメディアガイドアプリケーションによって命令されるような制御回路５０４（図５）によって実行されてもよい。加えて、プロセス９００の１つまたはそれを上回るステップは、任意の他のプロセスまたは実施形態の１つまたはそれを上回るステップの中に組み込まれる、またはそれと組み合わせられてもよい（例えば、図７−８および１０−１３に関連して説明されるように）。
【０１４９】
プロセス９００では、メディアガイドアプリケーションは、該当する場合、サービス品質に基づいて、ユーザに提示するメディア一覧を判定する。例えば、高品質ユーザ体験を確保するために、メディアガイドアプリケーションは、あるサービス品質に対応するメディア一覧のみを提示してもよい。
【０１５０】
ステップ９０２では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイス（例えば、ユーザ機器６０２（図６））から、通信ネットワーク（例えば、通信ネットワーク６１４（図６））を経由して、クラウドベースのアグリゲータからメディアアセットにアクセスするための要求を受信し（例えば、Ｉ／Ｏパス５０２（図５）を介して）、メディアアセットは、複数のオーバーザトップコンテンツプロバイダから利用可能である。例えば、ユーザは、映画をその携帯電話またはパーソナルコンピュータにストリーミングすることを所望してもよい。
【０１５１】
ステップ９０４では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第１のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、ユーザデバイスと関連付けられたユーザプロファイルを読み出し、ユーザプロファイルに関するサブスクプションデータを読み出してもよく、サブスクプションデータは、ユーザが複数のオーバーザトップコンテンツプロバイダのそれぞれにサブスクライブしていることを示す。メディアガイドアプリケーションは、次いで、複数のオーバーザトップコンテンツプロバイダのそれぞれを検索し、サブスクプションデータに基づいて、複数のオーバーザトップコンテンツプロバイダがそれぞれ、メディアアセットを提供するかどうかを判定してもよい。
【０１５２】
ステップ９０６では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第２のコンテンツプロバイダ（例えば、メディアコンテンツソース６１６（図６））を判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、ユーザデバイスと関連付けられたサブスクプションサービスのそれぞれから利用可能である全てのメディアアセットの一覧を読み出してもよい。
【０１５３】
ステップ９０８では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイス（例えば、ユーザ機器６０２（図６））がメディアアセットを第１のコンテンツプロバイダから受信するための第１のサービス品質を判定する（例えば、制御回路５０４（図５）を介して）。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、ユーザデバイスが第１のコンテンツプロバイダからのメディアアセットにアクセスし得る、誤り率を判定してもよい。例えば、メディアガイドアプリケーションは、ユーザデバイスにチェックサム値に関してクエリし、クエリに応答して、チェックサム値をユーザデバイスから受信してもよい。
【０１５４】
ステップ９１０では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、ユーザデバイス（例えば、ユーザ機器６０２（図６））が第２のコンテンツプロバイダからのメディアアセットを受信するための第２のサービス品質を判定する（例えば、制御回路５０４（図５）を介して）。例えば、現在のネットワーク条件に基づいて、メディアガイドアプリケーションは、同様に、ユーザデバイスが第２のコンテンツプロバイダからのメディアアセットにアクセスし得る、誤り率を判定してもよい。
【０１５５】
ステップ９１２では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、サービス閾値品質を読み出す（例えば、記憶装置５０８（図５）から）。例えば、メディアガイドアプリケーションは、ある基準を試験し、閾値基準を満たすかどうかを判定してもよい。該当する場合、具体的アクションが、トリガされてもよい。
【０１５６】
ステップ９１４では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、第１のサービス品質および第２のサービス品質の両方とサービス閾値品質を比較する（例えば、制御回路５０４（図５）を介して）。例えば、サブスクプションおよび／またはアクセスが利用可能なコンテンツプロバイダ毎に、メディアガイドアプリケーションは、サービス品質がサービス閾値品質を超えるかどうかを判定してもよい。
【０１５７】
ステップ９１６では、メディアガイドアプリケーションは、サーバ（例えば、スーパーアグリゲータ６２４（図６））において、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超え、第２のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことを判定する（例えば、制御回路５０４（図５）を介して）。例えば、メディアガイドアプリケーションは、第１のコンテンツプロバイダからのコンテンツの受信と関連付けられた誤り率が容認可能である一方、第２のコンテンツプロバイダからのコンテンツの受信と関連付けられた誤り率が容認不可能であることを判定してもよい。
【０１５８】
ステップ９１８では、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超え、第２のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のコンテンツプロバイダからのメディアアセットに関する第１のメディア一覧（例えば、映画１２０（図１））を生成し（例えば、制御回路５０４（図５）を介して）、表示のために、第２のコンテンツプロバイダからのメディアアセットに関する第２のメディア一覧を生成しない。加えて、メディアガイドアプリケーションは、表示のために、第２のコンテンツプロバイダからメディアアセットにアクセスするための通知を生成してもよく、通知は、第２のサービス品質がサービス閾値品質より低いことを示す。故に、メディアガイドアプリケーションは、高品質ユーザ体験を確保する、メディア一覧のみを提示してもよい。
【０１５９】
いくつかの実施形態では、メディアガイドアプリケーションは、サーバにおいて、メディアアセットを提供する、複数のオーバーザトップコンテンツプロバイダの第３のコンテンツプロバイダを判定する。例えば、第３のコンテンツプロバイダは、サブスクプションを要求しない、公的に入手可能なストリーミングメディアプロバイダを含んでもよい。メディアガイドアプリケーションは、ユーザデバイスがメディアアセットを第１のコンテンツプロバイダから受信するための第３のサービス品質を判定し、第３のサービス品質とサービス閾値品質を比較してもよい。メディアガイドアプリケーションは、第３のサービス品質がサービス閾値品質と等しいか、またはそれを超えることを判定してもよい。第３のサービス品質がサービス閾値品質と等しいか、またはそれを超えることの判定に応答して、メディアガイドアプリケーションは、表示のために、第１のメディア一覧と同時に、第３のコンテンツプロバイダからのメディアアセットに関する第３のメディア一覧を生成してもよい。
【０１６０】
いくつかの実施形態では、第１のサービス品質は、１つまたはそれを上回るサービス品質特性に基づき、サービス品質特性は、ユーザデバイスによって被られる誤り率、ビットレート、スループット遅れ、伝送遅延、可用性、またはジッタを含む。さらに、メディアガイドアプリケーションは、第１のサービス品質特性および第２のサービス品質特性（例えば、誤り率およびビットレート）を判定し、第１の加重を第１のサービス品質特性に、第２の加重を第２のサービス品質特性に割り当て（例えば、ユーザ選好に基づいて）、および第１のサービス品質特性および第２のサービス品質特性に関する加重された平均（例えば、特性に基づいて全体的サービス品質を表す、加重された平均）を判定してもよい。
【０１６１】
いくつかの実施形態では、メディアガイドアプリケーションは、コンテンツプロバイダ毎に、定質的または定量的なサービス品質格付けを判定してもよい。例えば、メディアガイドアプリケーションは、第１のサービス品質を異なるサービス品質に対応するデータベース一覧格付けの中に入力してもよい。メディアガイドアプリケーションは、次いで、第１のサービス品質と異なるサービス品質とを比較し、第１のサービス品質に関する格付けを判定し、表示のために、メディア一覧と同時に、格付けを生成してもよい。
【０１６２】
いくつかの実施形態では、メディアガイドアプリケーションは、第１のサービス品質がサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、第１のサービス品質がサービス閾値品質と等しいか、またはそれを超えるとき、アラートを受信するオプションを生成してもよい。例えば、高品質ユーザ体験を確保するために、メディアガイドアプリケーションは、ユーザに、メディア一覧がサービス閾値品質に対応するであろうときに関してアラートしてもよい。加えて、または代替として、メディアガイドアプリケーションは、第１のサービス品質または第２のサービス品質のいずれもサービス閾値品質と等しくなく、かつそれを超えないことの判定に応答して、表示のために、第１のメディアアセットをサーバに自動的にダウンロードするオプションを生成してもよく、ダウンロードされた第１のメディアアセットは、ユーザデバイス上でオンデマンド再生のために利用可能である。例えば、ストリーミングメディアアセットが、サービス品質に起因して好ましくない場合、メディアガイドアプリケーションは、ユーザによって後に視聴するために、メディアアセットをダウンロードしてもよい。
【０１６３】
図９のステップまたは説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される。加えて、図９に関して説明されるステップおよび説明は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。例えば、これらのステップはそれぞれ、システムまたは方法の遅延を低減させる、もしくは速度を増加させるように、任意の順序で、または並行して、もしくは同時に行われてもよい。さらに、図５−６に関して議論されるデバイスまたは機器のいずれかは、図９におけるステップのうちの１つまたはそれを上回るものを行うために使用され得ることに留意されたい。
【０１６４】
図１０および１１は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路５０４）がサービス品質とサービス閾値品質を比較するためのプロセスを提示する。いくつかの実施形態では、本プロセスは、処理回路（例えば、処理回路５０６）によってデコードおよび実行されるための命令のセットとして非一過性の記憶媒体（例えば、記憶デバイス５０８）上にエンコードされてもよい。処理回路は、順に、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ／デジタル変換回路、および等価物等、制御回路５０４内に含有される他のサブ回路に命令を提供してもよい。
【０１６５】
図１０におけるフローチャートは、本開示のいくつかの実施形態による、サービス品質とサービス閾値品質を比較するために制御回路（例えば、制御回路５０４）上に実装されるプロセスを説明する。
【０１６６】
ステップ１００２では、制御回路５０４は、サービス品質とサービス閾値品質を比較する。いくつかの実施形態では、これは、直接または間接的にのいずれかにおいて、（例えば、制御回路５０４またはユーザ入力インターフェース５１０によって受信された信号からの）ユーザアクションまたは入力に応答して行われてもよい。例えば、プロセスは、直接、制御回路５０４がユーザ入力インターフェース５１０から信号を受信することに応答して開始してもよい、または制御回路５０４は、ユーザに、アルゴリズムの起動に先立って、表示を使用して、その入力を確認するように指示を求めてもよい（例えば、ディスプレイ５１２上に表示されるためのプロンプトを生成することによって）。
【０１６７】
ステップ１００４では、制御回路５０４は、サービス品質をメモリから読み出すことに進む。いくつかの実施形態では、制御回路５０４は、サービス品質の値を表す、単一プリミティブデータ構造を受信してもよい。いくつかの実施形態では、値は、より大きいデータ構造の一部として記憶されてもよく、制御回路５０４は、適切なアクセッサメソッドを実行し、値をより大きいデータ構造から読み出すことによって、値を読み出してもよい。
【０１６８】
ステップ１００６では、制御回路５０４は、サービス品質の値とサービス閾値品質の記憶された値を比較することに進む。いくつかの実施形態では、サービス閾値品質の値は、プロセスの開始に先立って、記憶されてもよい（例えば、記憶デバイス５０８上に）。いくつかの実施形態では、サービス閾値品質の値はまた、サービス品質の全てのインスタンス毎に読み出されてもよく、サービス閾値品質の値は、反復毎に変化し得る。いくつかの実施形態では、制御回路５０４は、それぞれ、メモリからの値にアクセスし、値比較を行うことによって、直接、サービス閾値品質の値とサービス品質の値を比較してもよい。いくつかのインスタンスでは、制御回路５０４は、比較関数（例えば、オブジェクト間比較のため）を呼び出し、サービス品質とサービス閾値品質を比較してもよい。
【０１６９】
ステップ１００８では、制御回路５０４は、サービス品質およびサービス閾値品質の値を比較し、サービス品質の値がサービス閾値品質の値を上回るかどうかを判定してもよい。条件が満たされる場合、アルゴリズムは、ステップ１０１０に進んでもよい。条件が満たされない場合、アルゴリズムは、代わりに、ステップ１０１２に進んでもよい。
【０１７０】
ステップ１０１０では、制御回路５０４は、ステップ１００８における条件が満たされたことに基づいて、サブルーチンを実行し、コンテンツプロバイダからのメディア一覧を生成し、メディア一覧をランク付けされた一覧等に追加する。サブルーチンが実行された後、プロセス１０００は、ステップ１０１８に進み、そこで、全てのサービス閾値品質が考慮されたかどうか判定される。例えば、メディアガイドアプリケーションは、種々の閾値を適用してもよい。例えば、メディアガイドアプリケーションは、コンテンツのタイプ、伝送の時間、または任意の他の基準に基づいて、閾値を適用してもよい。さらに、いくつかの実施形態では、メディアガイドは、閾値をサービス品質の個々の特性に適用してもよい。故に、ステップ１０１８では、メディアガイドアプリケーションは、全ての閾値が考慮されたかどうかと、さらなる反復が必要とされるかどうかとを判定する。
【０１７１】
ステップ１０１２では、制御回路５０４は、サービス品質およびサービス閾値品質の値を比較し、サービス品質の値がサービス品質の値未満であるかどうかを判定する。条件が満たされる場合、プロセスは、ステップ１０１４に進んでもよい。条件が満たされない場合、プロセスは、代わりに、ステップ１０１６に進んでもよい。
【０１７２】
ステップ１０１４では、制御回路５０４は、ステップ１０１２の条件が満たされたことに基づいて、代替アクションのためのサブルーチンを実行する。例えば、メディアガイドアプリケーションは、メディア一覧を表示画面から除去してもよく、メディア一覧をランク付けされた一覧から除去してもよく、ユーザに不十分なサービス品質を通知してもよい等である。サブルーチンが実行された後、プロセス１０００は、ステップ１０１８に進む。
【０１７３】
ステップ１０１６では、制御回路５０４は、１００８および１０１２における条件の両方が満たされない（例えば、サービス品質がサービス閾値品質と等しい）ことに基づいて、サブルーチンを実行し、コンテンツプロバイダからのメディア一覧を生成する。サブルーチンが実行された後、プロセス１０００は、１０１８に進む。
【０１７４】
ステップ１０１８では、制御回路５０４は、全ての閾値が考慮されたかどうかチェックする。インスタンスの全てが評価された場合、制御回路５０４は、ステップ１０２０に進んでもよい。例えば、制御回路５０４は、関数を呼び出し、付加的閾値が存在するかどうかを確認してもよい。関数が真を返す（すなわち、依然として、処理される必要があるインスタンスが存在する）場合、制御回路５０４は、ステップ１００４に進む。ステップ１０２０では、制御回路５０４は、サブルーチンを実行し、メディア一覧を生成する（例えば、図１−３に関連して説明されるように）。
【０１７５】
図１０の説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される（例えば、図７−９に説明されるように）。加えて、図１０のアルゴリズムに関連して説明される説明は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。例えば、１００８および１０１２におけるもののような条件文ならびに論理評価は、システムまたは方法の遅延を低減させる、もしくは速度を増加させるように、任意の順序で、または並行して、もしくは同時に行われてもよい。さらなる実施例として、いくつかの実施形態では、いくつかの閾値は、複数の論理プロセッサスレッドを使用して、並行して評価されてもよい、またはアルゴリズムは、分岐予測を組み込むことによって拡張されてもよい。さらに、図１０のプロセスは、適切に構成されたソフトウェアおよびハードウェアの組み合わせ上に実装されてもよく、プロセスのうちの１つまたはそれを上回る部分を実装するために、図４-５に関して議論されるデバイスまたは機器のいずれかが使用され得ることに留意されたい。
【０１７６】
図１１における擬似コードは、本開示のいくつかの実施形態による、コンテンツプロバイダのサービス品質と閾値を比較するプロセスを説明する。図１０における擬似コードによって説明されるプロセスは、任意の数のプログラミング言語および種々の異なるハードウェアで実装され得、スタイルおよび形式は、限定的として解釈されるべきではなく、むしろ、本開示のいくつかの実施形態を実装するために使用されるコードと一致するであろうステップおよびプロシージャの一般的テンプレートであることが当業者に明白となるであろう。
【０１７７】
ライン１１０１では、制御回路５０４は、サブルーチンを起動し、変数を初期化し、ライン１１０３から開始する、コンテンツプロバイダのサービス品質と閾値を比較する準備を行う。例えば、いくつかの実施形態では、制御回路５０４は、初期化段階の間、命令を非一過性の記憶媒体（例えば、記憶デバイス５０８）からＲＡＭまたは処理回路５０６のためのキャッシュの中へコピーしてもよい。加えて、いくつかの実施形態では、比較のために使用されるサービス閾値品質の値または２つの値が本質的に等価であるかどうかを判定するための公差レベルが、１１０１において読み出され、設定され、記憶されてもよい。
【０１７８】
ライン１１０５では、制御回路５０４は、サービス品質のインスタンスを受信する。いくつかの実施形態では、これらのインスタンスは、記憶されたメモリから読み出されてもよい。制御回路５０４は、例えば、サービス品質の値のアレイへのポインタを受信することによって、サービス品質のインスタンスを受信してもよい。別の実施例では、制御回路５０４は、サービス品質の要素を含有するイテレータオブジェクト等のクラスのオブジェクトを受信してもよい。
【０１７９】
ライン１１０６では、制御回路５０４は、サービス品質の種々のインスタンスを通して反復し、単一インスタンスのみが利用可能である場合、ループは、１回のみ実行されるであろう。本ループは、図１１のアルゴリズムを実装するために使用されるハードウェアおよびソフトウェア言語の選択肢に応じて、複数の方式において実装されてもよい。例えば、これは、「ｆｏｒ」または「ｗｈｉｌｅ」ループの一部として実装されてもよい。
【０１８０】
ライン１１０７では、制御回路５０４は、サービス品質の値を一時的変数「Ａ」の中に記憶する。いくつかの実施形態では、サービス品質の値は、より大きいデータ構造またはクラスの一部として記憶され、サービス品質の値は、適切なアクセッサメソッドを通して得られてもよい。いくつかの実施形態では、サービス品質は、適切なハッシュアルゴリズムを用いて、ストリングまたは他の非数値データタイプから数値データタイプに変換されてもよい。いくつかの実施形態では、制御回路５０４は、関数を呼び出し、サービス品質とサービス閾値品質の比較を行ってもよい。いくつかの実施形態では、サービス品質は、プリミティブデータ構造としてエンコードされてもよく、一時的変数を使用するのではなく、サービス品質は、直接、ライン１１０９および１１１１における比較において使用されてもよい。
【０１８１】
ライン１１０８では、制御回路５０４は、サービス閾値品質の値を一時的変数「Ｂ」の中に記憶する。サービス品質と同様に、いくつかの実施形態では、サービス閾値品質の値は、より大きいデータ構造またはクラスの一部として記憶され、サービス閾値品質の値は、アクセッサメソッドを通して得られてもよい。いくつかの実施形態では、サービス閾値品質は、適切なハッシュアルゴリズムを用いて、ストリングまたは他の非数値データタイプから数値データタイプに変換されてもよい、またはサービス閾値品質は、プリミティブデータ構造であってもよく、直接、ライン１１０９および１１１１における比較において使用されてもよい。
【０１８２】
ライン１１０９では、制御回路５０４は、Ａの値とＢの値を比較し、それらが本質的に等価であるかどうか確認する。これは、Ｂの値をＡから減算し、差異の絶対値を求め、次いで、差異の絶対値と所定の公差レベルを比較することによって達成される。いくつかの実施形態では、公差レベルは、ＡまたはＢのいずれかの設定パーセンテージであってもよい。いくつかの実施形態では、公差レベルは、固定数であってもよい。例えば、公差レベルを計算機イプシロンの設定倍数に設定することは、アルゴリズムが、浮動小数点演算の使用から生じ得るわずかな丸め誤差を考慮することを可能にし得る。いくつかの実施形態では、公差レベルは、ゼロに設定されてもよい、またはＩＦ文内の条件は、ＡとＢとの間の厳密な等価と置換されてもよい。
【０１８３】
ライン１１１０では、制御回路５０４は、ライン１１０９における条件が満たされる場合、制御回路を使用して、サブルーチンを実行し、コンテンツプロバイダからのメディア一覧を生成する。いくつかの実施形態では、これは、処理回路５０６が適切な信号を制御回路５０４に送信することによって達成されてもよい。
【０１８４】
ライン１１１１では、制御回路５０４は、ＡおよびＢの値を比較し、ＡがＢ未満かどうかを判定する。いくつかの実施形態では、本比較は、Ａが本質的にＢと等価ではない場合のみ行われ、ライン１１０９における比較は、偽を評価する。
【０１８５】
ライン１１１２では、制御回路５０４は、ライン１１１１における条件が満たされる場合、制御回路を使用して、代替アクションのためのサブルーチンを実行する。
【０１８６】
ライン１１１３では、制御回路５０４は、ライン１１０９または１１１１におけるいずれの条件も満たされないかどうかを判定する。いずれの条件も満たされない場合、ライン１１１４における命令が、評価および実行されてもよい。
【０１８７】
ライン１１１４では、制御回路５０４は、ライン６０９または６１１におけるいずれの条件も満たされない場合、制御回路５０４を使用して、サブルーチンを実行し、コンテンツプロバイダからのメディア一覧を生成する。
【０１８８】
ライン１１１６では、制御回路５０４は、アルゴリズムがその関数を行った後、終了サブルーチンを起動する。例えば、いくつかの実施形態では、制御回路５０４は、変数を破棄する、ガーベッジコレクションを行う、処理回路５０６のメモリを解放する、またはキャッシュをクリアしてもよい。
【０１８９】
図１１における擬似コードによって説明されるプロセス１１００は、任意の数のプログラミング言語および種々の異なるハードウェアで実装され得、プリミティブ関数、論理均等物、および機能均等物の特定の選択肢および場所は、限定的として解釈されるべきではないことが当業者に明白となるであろう。また、コードは、リファクタリングされ、または書き換えられ、種々の論理評価の順序を操作する、いくつかの反復を単一反復ループではなく、並行して行う、または別様に、入力もしくは最終出力を基本的に変更することなく、ランタイムおよび性能メトリックを操作および最適化してもよいことが明白となるであろう。例えば、いくつかの実施形態では、ブレーク条件が、演算を加速するために、ライン１１１０および１１１２後に設置される、または条件文が、ｃａｓｅ−ｓｗｉｔｃｈ文と置換される。
【０１９０】
図１２および１３は、本開示のいくつかの実施形態による、メディアアセットを提供するコンテンツプロバイダに関するデータベースを検索するために、制御回路（例えば、制御回路５０４）上で実装されるプロセスを提示する。図１０および１１によって説明されるアルゴリズムと同様に、いくつかの実施形態では、本プロセスは、処理回路（例えば、処理回路５０６）によってデコードおよび実行されるための命令のセットとして非一過性の記憶媒体（例えば、記憶デバイス５０８）上にエンコードされてもよい。処理回路は、順に、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ／デジタル変換回路、および等価物等、制御回路５０４内に含有される他のサブ回路に命令を提供してもよい。
【０１９１】
図１２におけるフローチャートは、本開示のいくつかの実施形態による、メディアアセットを提供するコンテンツプロバイダに関するデータベースを検索するために制御回路（例えば、制御回路５０４）上に実装されるプロセスを説明する。
【０１９２】
ステップ１２０２では、制御回路５０４は、メディアアセットを提供する、コンテンツプロバイダに関するデータベースを検索する。いくつかの実施形態では、これは、直接または間接的にのいずれかにおいて、（例えば、制御回路５０４またはユーザ入力インターフェース５１０によって受信された信号からの）ユーザアクションまたは入力に応答して行われてもよい。
【０１９３】
ステップ１２０４では、制御回路５０４は、メディアアセットの次のインスタンスを記憶されたメモリから読み出すことに進む。いくつかの実施形態では、制御回路５０４は、メディアアセットの値を表す、単一プリミティブデータ構造を読み出してもよい。いくつかの実施形態では、制御回路５０４は、より大きいクラスまたはデータ構造から値を読み出してもよい。
【０１９４】
ステップ１２０６では、制御回路５０４は、メディアアセットのコンテンツプロバイダを含有するデータベースにアクセスする。いくつかの実施形態では、本データベースは、アルゴリズムの開始に先立って、ローカルに（例えば、記憶デバイス５０８上に）記憶されてもよい。いくつかの実施形態では、データベースはまた、通信回路を使用して、通信ネットワーク（例えば、通信ネットワーク６１４）を横断して、情報を遠隔記憶デバイス上に実装されるデータベース（例えば、メディアガイドデータソース６１８）に伝送することによって、アクセスされてもよい。
【０１９５】
ステップ１２０８では、制御回路５０４は、メディアアセットに合致するエントリに関するデータベーステーブルを検索する。いくつかの実施形態では、これは、データベース内で使用される識別子のタイプに合致する、識別子、例えば、メディアアセットを表すストリングまたは整数を比較することによって行われてもよい。いくつかの実施形態では、制御回路５０４は、メディアアセットに合致するテーブルエントリに関する汎用クエリをデータベースにサブミットしてもよく、制御回路５０４は、データベースコンテンツの一部を含有するインデックスまたはデータ構造の一覧を受信してもよい。いくつかの実施形態では、データベースは、ジャンクションテーブルを実装し、これは、順に、他のデータベースからのエントリを相互参照してもよい。この場合、制御回路５０４は、第１のデータベースからのインデックスを読み出してもよく、これは、順に、情報を第２のデータベースから読み出すために使用されることができる。明確性目的のために、単一データベースと相互作用する制御回路５０４を説明するが、図１２のアルゴリズムは、複数の独立または相互参照データベースを使用して実装されてもよいことを理解されたい。
【０１９６】
ステップ１２１０では、制御回路５０４は、メディアアセットに合致するデータベースエントリが存在するかどうかを判定する。いくつかの実施形態では、制御回路５０４は、データベースから、合致するエントリが存在しないことを示す信号を受信してもよい。いくつかの実施形態では、制御回路５０４は、代わりに、ヌルまたはダミー値を伴うインデックスまたはデータ構造のリストを受信してもよい。制御回路５０４が、メディアアセットに合致するデータベースエントリが存在することを識別する場合、プロセス１２００は、ステップ１２１２に進み、そうでなければ、プロセス１２００は、ステップ１２１４に進む。
【０１９７】
ステップ１２１２では、制御回路５０４は、サブルーチンを実行し、合致するメディアアセットのコンテンツプロバイダのサービス品質を判定する。その後、プロセス１２００は、ステップ１２２０に進み、そこで、考慮される必要があるメディアアセットのさらなるインスタンスが存在するかどうか判定される。
【０１９８】
ステップ１２１４では、制御回路５０４は、メディアアセットに類似するデータベースエントリが存在するかどうかを判定する。例えば、いくつかの実施形態では、メディアアセットが、複数の文字を伴うストリングとしてエンコードされる場合、制御回路５０４は、置換、除去、または追加された個々の文字を伴う類似ストリングに関して付加的データベースクエリを行ってもよい。いくつかの実施形態では、制御回路５０４はまた、オリジナルクエリが一般ミススペル単語であるかどうかを判定してもよく（例えば、ファジー論理を介して）、代わりに、正しいスペルを伴うクエリをサブミットするであろう。別の実施例では、メディアアセットは、整数としてエンコードされてもよい。制御回路５０４は、ある範囲内の他の整数に関して付加的クエリを行ってもよい。いくつかの実施形態では、制御回路５０４は、さらなるクエリを要求せずに、メディアアセットに類似するデータベースエントリを読み出してもよい。制御回路５０４が、メディアアセットに類似するデータベースエントリが存在することを識別する場合、プロセス１２００は、ステップ１２１６に進み、そうでなければ、プロセス１２００は、ステップ１２１８に進む。
【０１９９】
ステップ１２１６では、制御回路５０４は、サブルーチンを実行し、類似メディアアセットのコンテンツプロバイダのサービス品質を判定する。その後、アルゴリズムは、ステップ１２２０に進んでもよい。
【０２００】
ステップ１２１８では、制御回路５０４は、メディアアセットに関する合致するデータベースエントリが存在しないことの判定後、サブルーチンを実行し、新しいコンテンツプロバイダを検索する。その後、プロセス１２００は、ステップ１２２０に進む。
【０２０１】
ステップ１２２０では、制御回路５０４は、メディアアセットの全てのインスタンスが考慮されたかどうかと、さらなる反復が必要とされるかどうかとを判定する。さらなる反復が必要とされる場合、プロセス１２００は、ステップ１２０４にループバックし、そこで、制御回路５０４は、メディアアセットの次のインスタンスを読み出すであろう。さらなる反復が必要とされない場合、アルゴリズムは、ステップ１２２２に進むであろう。
【０２０２】
ステップ１２２２では、制御回路５０４は、サブルーチンを実行し、各コンテンツプロバイダのサービス品質を比較する。
【０２０３】
図１２の説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される（例えば、図７−９に説明されるように）。加えて、図１２のプロセス１２００に関して説明される説明は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。例えば、制御回路５０４は、プロセス１２００の実行の遅延を減少または速度を増加させるように、複数のクエリをデータベースに並行してサブミットする、または複数のクエリを複数の類似データベースにサブミットする。さらなる実施例として、ステップ１２１２およびステップ１２１６は、相互に排他的であるように説明されるが、正確なエントリおよび類似エントリの両方が、メディアアセットの単一インスタンスのために処理され得る。本目的を促進するために、いくつかの実施形態では、ステップ１２１０およびステップ１２１４は、制御回路５０４によって並行して行われてもよい。さらに、図１２のプロセスは、適切に構成されるソフトウェアおよびハードウェアの組み合わせ上で実装されてもよく、図４−５に関して議論されるデバイスまたは機器のいずれかが、プロセス１２００の１つまたはそれを上回る部分を実装するために使用され得ることに留意されたいことに留意されたい。
【０２０４】
図１３における擬似コードは、本開示のいくつかの実施形態による、メディアアセットを提供するコンテンツプロバイダに関するデータベースを検索するプロセスを説明する。図１３における擬似コードによって説明されるプロセス１３００は、任意の数のプログラミング言語および種々の異なるハードウェアで実装されてもよく、スタイルおよびフォーマットは、限定として解釈されるべきではなく、むしろ、本開示のいくつかの実施形態を実装するために使用されるコードに準拠するであろう、ステップおよびプロシージャの一般的テンプレートが実装されてもよいことが、当業者に明白となるであろう。
【０２０５】
ライン１３０１では、制御回路５０４は、サブルーチンを起動し、変数を初期化し、ライン１３０５から開始する、メディアアセットを提供するコンテンツプロバイダに関するデータベースを検索する準備を行う。例えば、いくつかの実施形態では、制御回路５０４は、初期化段階の間、命令を非一過性の記憶媒体（例えば、記憶デバイス５０８）からＲＡＭまたは処理回路５０６のためのキャッシュの中にコピーしてもよい。
【０２０６】
ライン１３０５では、制御回路５０４は、メディアアセットのインスタンスを受信する。いくつかの実施形態では、これらのインスタンスは、メモリから読み出されてもよい。
【０２０７】
ライン１３０６では、制御回路５０４は、メディアアセットの種々のインスタンスを通して反復し、単一インスタンスのみが利用可能である場合、ループは、１回のみ実行するであろう。本ループは、図１３のアルゴリズムを実装するために使用されるハードウェアおよびソフトウェア言語の選択肢に応じて、複数の方式において実装されてもよい。例えば、これは、いくつかのプログラミング言語では、「ｆｏｒ」または「ｗｈｉｌｅ」ループの一部として実装されさてもよい。いくつかの実施形態では、メディアアセットのインスタンスを、ループを内部方法の一部として行うであろう、単一クラスまたはカプセル化されたデータ構造内に記憶することが便宜的である。
【０２０８】
ライン１３０７では、制御回路５０４は、メディアアセットに合致するエントリに関してデータベースをクエリする。データベースが実装される方法およびメディアアセットが記憶される方法に応じて、中断ステップが、メディアアセットをデータベースと一致する形態に変換するために要求されてもよい。例えば、メディアアセットは、制御回路５０４によってクエリの一部としてデータベースに伝送されることに先立って、適切なハッシュアルゴリズムを使用して、ストリングまたは整数にエンコードされてもよい。いくつかの実施形態では、メディアアセットは、プリミティブデータ構造としてエンコードされてもよく、制御回路５０４は、直接、メディアアセットをデータベースへのクエリとしてサブミットしてもよい。データベースにクエリ後、制御回路５０４は、メディアアセットに合致するデータベースエントリのセットを受信してもよい。いくつかの実施形態では、制御回路５０４は、これらのエントリをデータ構造、データベースのインデックスのセット、または別の相互参照データベースのインデックスのセットの形態で受信してもよい。
【０２０９】
ライン１３０８では、制御回路５０４は、メディアアセットに合致する任意のデータベースエントリが存在するかどうかを判定するであろう。いくつかの実施形態では、制御回路５０４は、データベースが、ライン１３０７におけるクエリに応答して、空データ構造またはヌル値を返したかどうかをチェックすることによって、これを判定してもよい。合致するデータベースエントリが存在する場合、プロセス１３００は、ライン１３０９に進む。合致するデータベースエントリが存在しない場合、アルゴリズムは、代わりに、ライン１３１２に進んでもよい。
【０２１０】
ライン１３０９では、制御回路５０４は、コンテンツプロバイダの１つまたはそれを上回る値をメディアアセットに合致するデータベースエントリから読み出す。例えば、制御回路５０４が、ライン１３０７において、データベースにクエリ後、インデックスのリストを読み出す場合、いくつかの実施形態では、制御回路５０４は、受信されたインデックスに位置するコンテンツプロバイダに関するデータベースエントリを読み出してもよい。いくつかの実施形態では、インデックスは、データベース内に含有されるより大きいデータ構造をポイントしてもよく、制御回路５０４は、適切なアクセッサメソッドを使用して、コンテンツプロバイダの値をデータ構造内から読み出してもよい。いくつかの実施形態では、制御回路５０４は、さらに進むことに先立って、コンテンツプロバイダの値を読み出し、それらを別個のデータ構造内にローカルに（例えば、記憶装置５０８内に）記憶してもよい。コンテンツプロバイダの値を読み出した後、アルゴリズムは、ライン１３１０に進むであろう。
【０２１１】
ライン１３１０では、制御回路５０４は、制御回路を使用して、サブルーチンを実行し、コンテンツプロバイダの値を使用して、コンテンツプロバイダ毎にサービス品質を判定する。その後、プロセス１３００は、ライン１３１５に進む。
【０２１２】
ライン１３１１では、制御回路５０４は、メディアアセットに類似する任意のデータベースエントリが存在するかどうかを判定する。例えば、メディアアセットは、クラスのオブジェクトによって表されてもよい。制御回路５０４は、クラスの具体的フィールドを比較することによって、またはメディアアセットに関連するデータ上で近似ストリング合致を行うことによって、ファジー比較（例えば、クラスの類似オブジェクトを識別するための比較）を行うための関数を呼び出してもよい。メディアアセットに類似するデータベースエントリが、制御回路５０４によって見出される場合、プロセス１３００は、ライン１３１２に進む。制御回路５０４が、合致するエントリを見出さない（例えば、データベースへのクエリがヌル値を返す）場合、プロセス１３００は、ライン１３１２に進む。
【０２１３】
ライン１３１２では、制御回路５０４は、制御回路を使用して、サブルーチンを実行し、コンテンツプロバイダ毎にサービス品質を判定する。その後、プロセス１３００は、ライン１３１５に進む。
【０２１４】
ライン１３１１では、制御回路５０４は、メディアアセットに合致するデータベースエントリが存在しないことを判定する。この場合、プロセス１３００は、ライン１３１２に進むであろう。
【０２１５】
ライン１３１２では、制御回路５０４は、制御回路５０４を使用して、サブルーチンを実行し、サービス品質を判定する。その後、アルゴリズムは、ライン１３１４に進んでもよい。
【０２１６】
ライン１３１４では、制御回路５０４は、ライン１３０９または１３１１おける条件のいずれも満たされない場合、制御回路５０４を使用して、サブルーチンを実行し、サービス品質を判定する。
【０２１７】
ライン１３１５では、制御回路５０４は、制御回路を使用して、サブルーチンを実行し、コンテンツプロバイダのサービス品質を比較する。その後、プロセス１３００は、ライン１３１７において、終了サブルーチンに進む。
【０２１８】
ライン１３１７では、制御回路５０４は、プロセス１３００がその関数を行い、メディアアセットの全てのインスタンスが処理され、データベースに対してチェックされた後、終了サブルーチンを実行する。例えば、いくつかの実施形態では、制御回路５０４は、変数を破棄し、ガーベッジコレクションを行い、処理回路５０６のメモリを解放する、またはキャッシュをクリアしてもよい。
【０２１９】
図１３おける擬似コードによって説明されるプロセス１３００は、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、プリミティブ関数、論理評価、および関数評価の特定の選択肢および場所を限定することを意図するものではないことが、当業者に明白となるであろう。また、コードは、リファクタリングされ、または書き換えられ、種々の論理評価の順序を操作する、いくつかの反復を単一反復ループではなく、並行して行う、または別様に、入力もしくは最終出力を基本的に変更することなく、ランタイムおよび性能メトリックを操作および最適化してもよいことが明白となるであろう。例えば、いくつかの実施形態では、コードは、書き換えられ、したがって、制御回路５０４は、複数のプロセッサまたはプロセッサスレッドを使用して、メディアアセットの複数のインスタンスを評価し、複数のデータベースクエリを同時にサブミットするように命令される。また、単一データベースと相互作用する制御回路５０４を説明し得るが、これは、例証目的のために説明される単一実施形態にすぎず、プロセス１３００は、複数の独立または相互参照データベースを使用して実装されてもよいことを理解されたい。例えば、ローカルに（例えば、記憶装置５０８上に）記憶されるデータベースは、任意の数の通信チャンネル（例えば、通信ネットワーク６１４）を通してアクセス可能である、遠隔で記憶されるデータベース（例えば、メディアガイドデータソース６１８）もインデックスまたは相互参照してもよい。いくつかの実施形態では、これは、制御回路５０４が、小規模ローカルドライブ上に記憶されるルックアップテーブルまたはデータベースフロントエンドを効率的に利用し、必要に応じて、遠隔サーバ上に記憶されるより大きいデータベースにアクセスすることを可能にし得る。
【０２２０】
本開示の前述の実施形態は、限定ではなく、例証目的のために提示され、本開示は、続く請求項によってのみ限定される。さらに、いずれか１つの実施形態で説明される特徴および制限は、本明細書の任意の他の実施形態に適用され得、一実施形態に関するフローチャートまたは実施例は、好適な様式で任意の他の実施形態と組み合わせられ、異なる順序で行われ、または並行して行われ得ることに留意されたい。加えて、本明細書で説明されるシステムおよび方法は、リアルタイムで行われてもよい。また、上記で説明されるシステムおよび／または方法は、他のシステムならびに／もしくは方法に適用され、またはそれらに従って使用され得ることにも留意されたい。
【図１】
2019522386.tif 000004
【図２】
2019522386.tif 000005
【図３】
2019522386.tif 000006
【図４】
2019522386.tif 000007
【図５】
2019522386.tif 000008
【図６】
2019522386.tif 000009
【図７】
2019522386.tif 000010
【図８】
2019522386.tif 000011
【図９】
2019522386.tif 000012
【図１０】
2019522386.tif 000013
【図１１】
2019522386.tif 000014
【図１２】
2019522386.tif 000015
【図１３】
2019522386.tif 000016
【国際調査報告】
2019522386.tif 000017
2019522386.tif 000018