(57)【要約】【解決手段】  家庭内で「ストリーミング」メディアを配信するハイブリッドシステムおよび方法を提供する。当該方法によると、制御デバイスからメディアアイテムの一部分を、キャッシュへ事前にキャッシュするために、レンダリングデバイスで受信する。再生対象となるメディアアイテムをユーザが選択すると、メディアアイテムの再生が、リアルタイムでキャッシュから即座に開始される一方、同時に、選択されたメディアアイテムの残りの部分が、リアルタイムより高速で制御デバイスからダウンロードされてキャッシュに付加される。【選択図】  図１
2010158008.tif 000002
【特許請求の範囲】
【請求項１】
複数のマルチメディアアイテムを格納するストレージを有する制御デバイスを備えるホームネットワークシステムであって、
前記制御デバイスは、複数のレンダリングデバイスに結合されており、
前記複数のレンダリングデバイスはそれぞれ、モニタに接続されていて、ストレージを有し、
前記複数のレンダリングデバイスそれぞれの前記ストレージは、マルチメディアアイテムが視聴対象としてユーザによって選択される前に、前記マルチメディアアイテムの一部分を前記制御デバイスから前記複数のレンダリングデバイスのうち少なくとも１つのレンダリングデバイスに事前にキャッシュさせるためのパーティションされたキャッシュを含み、
ユーザが前記メディアアイテムを視聴対象として選択すると、ユーザが同時に前記キャッシュから前記メディアアイテムを視聴している間に、前記メディアアイテムの残りの部分は、前記制御デバイスから前記キャッシュにプログレッシブダウンロードされるホームネットワークシステム。
【請求項２】
前記パーティションされたキャッシュの長さは、事前に決定されている請求項１に記載のシステム。
【請求項３】
前記制御デバイスから前記キャッシュへの前記マルチメディアアイテムの前記残りの部分のダウンロードは、リアルタイムよりも速いレートでのメディアストリーミングを含む請求項１に記載のシステム。
【請求項４】
前記ユーザが視聴対象として前記メディアアイテムを選択すると、選択された前記メディアアイテムのうち事前にキャッシュされた前記一部分のリアルタイムでの再生が開始され、その間に前記選択されたメディアアイテムの前記残りの部分を、リアルタイムよりも速いレートで、前記キャッシュに格納されている前記メディアアイテムの前記事前にキャッシュされた一部分に付加させる請求項１に記載のシステム。
【請求項５】
前記レンダリングデバイスに事前にキャッシュさせるメディアアイテムは、利用履歴および最近取得されたメディアに基づくインテリジェント予測によって決定され、
前記方法はさらに、
前記レンダリングデバイスに設けられているインターフェースであって、前記レンダリングデバイスのユーザに前記制御デバイスに格納されているメディアアイテムを選択および評価させて、前記評価に基づいて、前記レンダリングデバイスにメディアアイテムを事前にキャッシュさせるインターフェース
を備える請求項１に記載のシステム。
【請求項６】
前記メディアアイテムが保護メディアアイテムを含む場合、コンテンツ保護技術を用いて前記メディアアイテムは前記レンダリングデバイスに配信され、
前記キャッシュされたメディアコンテンツは、保護された状態で前記レンダリングデバイスに格納され、
選択された前記メディアアイテムが保護メディアアイテムを含む場合、前記システムはさらに、
前記保護メディアアイテムのうち前記事前にキャッシュされたコンテンツを復号する、前記キャッシュに格納および保護されている第１の鍵と、
前記保護メディアアイテムの前記残りの部分を復号する、前記キャッシュに格納および保護されている第２の鍵と
を備える請求項１に記載のシステム。
【請求項７】
前記メディアアイテムが前記キャッシュに格納されると、セキュアに鍵が交換され、
前記鍵は、キャッシュされ、保護される請求項６に記載のシステム。
【請求項８】
制御デバイスから、レンダリングデバイスのキャッシュに事前にキャッシュされるメディアアイテムの一部分を受信する段階と、
再生対象のメディアアイテムをユーザが選択すると、前記ユーザに対してリアルタイムで前記キャッシュから前記メディアアイテムを即座に再生し、その間に同時に前記制御デバイスと接続して、選択された前記メディアアイテムの残りの部分を、リアルタイムより高速なレートで、前記キャッシュにダウンロードする段階と
を備えるハイブリッド・ストリーミング方法。
【請求項９】
再生対象のメディアアイテムを前記ユーザが選択すると、前記キャッシュは拡大される請求項８に記載の方法または請求項４に記載のシステム。
【請求項１０】
前記制御デバイスは、前記メディアアイテムを事前にキャッシュするべく、前記レンダリングデバイスに接続される請求項８に記載の方法。
【請求項１１】
前記レンダリングデバイスは、前記ユーザに、再生対象の前記メディアアイテムを選択する前に、前記制御デバイス上のメディアアイテムを閲覧させる請求項８に記載の方法。
【請求項１２】
選択された前記メディアアイテムの前記残りの部分のダウンロードは、事前にキャッシュされた前記メディアアイテムの前記一部分の終了箇所に対応するようにオフセットされて開始される請求項８に記載の方法。
【請求項１３】
選択された前記メディアアイテムの前記残りの部分を受信する段階と、
前記キャッシュが満杯になるまで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュに格納されている対応するファイルに付加する段階と
をさらに備える請求項８に記載の方法。
【請求項１４】
前記キャッシュは移動性バッファとして機能し、リアルタイムで前記キャッシュから前記メディアアイテムを再生している間に、リアルタイムよりも高速のレートで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュに入れ続ける請求項１３に記載の方法。
【請求項１５】
前記選択されたメディアアイテムの前記残りの部分のダウンロードを低速または停止させる事象が前記制御デバイスで発生して、前記キャッシュが減少されると、前記事象が終了するとより速いレートで前記キャッシュを充填する請求項１４に記載の方法。
【請求項１６】
前記メディアアイテムのいずれかが保護メディアアイテムである場合、前記方法はさらに、
事前にキャッシュするべく、制御デバイスからレンダリングデバイスのキャッシュへと、保護メディアアイテムの一部分を受信する段階と、
再生対象として保護メディアアイテムをユーザが選択すると、前記ユーザに対してリアルタイムで事前にキャッシュされた前記メディアアイテムを前記キャッシュから即座に再生する間、同時に前記制御デバイスに接続して、選択された前記保護メディアアイテムの残りの部分を前記キャッシュにリアルタイムよりも高速なレートでダウンロードする段階と
を備え、
前記保護メディアアイテムの前記一部分は、セキュアな鍵の交換を実行するコンテンツ保護技術を用いて配信され、事前にキャッシュされた前記メディアアイテムのそれぞれに対する第１の暗号鍵は、キャッシュおよび保護されており、
事前にキャッシュされた前記メディアアイテムのコンテンツは、前記第１の暗号鍵を用いて復号される請求項８に記載の方法。
【請求項１７】
前記選択された保護メディアアイテムの前記残りの部分を受信する段階と、
前記キャッシュが満杯になるまで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュ内の対応するファイルに付加する段階と
をさらに備え、
前記選択された保護メディアアイテムの残りの部分に対する第２の暗号鍵が、キャッシュおよび保護される
請求項１６に記載の方法。
【請求項１８】
前記キャッシュは移動性バッファとして機能し、リアルタイムで前記キャッシュから前記選択された保護メディアアイテムの前記残りの部分を再生している間、リアルタイムよりも高速のレートで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュに入れ続け、
前記選択された保護メディアアイテムの前記残りの部分は、前記第２の暗号鍵で復号される
請求項１７に記載の方法。
【請求項１９】
複数の機械アクセス可能命令を有する記憶媒体を備える物品であって、プロセッサによって前記命令が実行されると、前記プロセッサは、請求項８から請求項１８のうちいずれか一項に記載する方法を実行する物品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は概して、デジタルホームメディアストリーミングに関する。本発明は特に、家庭内で「ストリーミング」メディアを配信するハイブリッド方法に関する。
【背景技術】
【０００２】
従来のストリーミング方法は現在、ホームネットワークを介して家庭内でメディアを配信することを目的として利用されている。これら従来のストリーミング方法は、これらに限定されないが、ネットワーク帯域幅が不十分であること、８０２．１１またはＨＰＡＶ（ホーム・パワーライン・オーディオ／ビデオ）のような信頼性の高い無線リンクが無いこと、ホームネットワークの混雑状態等の問題を抱えている。また、今日において配信されるメディアは、標準画質（ＳＤ）解像度から高画質（ＨＤ）解像度へと変わりつつあり、さらに問題が大きくなっている。このような問題を抱えているために、ユーザの満足度が低くなってしまうことが多い。ホームネットワークでメディアを再生するユーザは、選択後即座にメディアが開始することや、テレビと同様の品質で再生されること、つまり、グリッチ、一時停止、フレームのフリーズ等が発生しないことを望んでいる。
【図面の簡単な説明】
【０００３】
添付図面は、本願に組み込まれて本明細書の一部を成し、本発明の実施形態を図示する。以下に記載する説明と共に参照することによって、本発明の原理が明らかになり、当業者は本発明を実施および利用することができるようになる。添付図面においては、同様の参照番号は概して、同一の構成要素、機能が同様の構成要素、および／または、構造が同様の構成要素を指すものである。構成要素が最初に図示される図面は、当該構成要素に割り当てられる参照番号の最上桁の数字で示す。
【０００４】
【図１】本発明の実施形態に応じて本発明が実装され得るホームネットワークシステムの一例を示す図である。
【０００５】
【図２】本発明の実施形態に応じた、レンダリング・デバイス／エンドポイントのキャッシュに大量メディアアイテムの最初の数分間をキャッシュする方法を示すフローチャートである。
【０００６】
【図３】本発明の実施形態に応じた、家庭内でレンダリングデバイスに「ストリーミング」メディアを配信するハイブリッド方法を示すフローチャートである。
【０００７】
【図４】本発明の実施形態に応じた、レンダリング・デバイス／エンドポイントのキャッシュに、保護された大量メディアアイテムの最初の数分間をキャッシュする方法を示すフローチャートである。
【０００８】
【図５】本発明の実施形態に応じた、保護されたメディアコンテンツについて、家庭内でレンダリングデバイスに「ストリーミング」メディアを配信するハイブリッド方法を示すフローチャートである。
【０００９】
【図６】本発明の実施形態に応じた、トリックモードの実施を可能とする方法を示すフローチャートである。
【００１０】
【図７】さまざまなネットワークリンクを介して本発明の実施形態に係るハイブリッドストリーミングプロセスを用いて９０分間のビデオをダウンロードする場合にかかる時間のシミュレーション結果を示す図である。
【発明を実施するための形態】
【００１１】
本明細書では特定の用途のための実施形態例を参照しつつ本発明を説明するが、本発明は記載する実施形態例に限定されるものではないと理解されたい。当業者であれば、本明細書の教示内容を参考にして、本発明の範囲内で更なる変形例、用途、および実施形態、ならびに本発明の実施形態が大きな有用性を持ち得るほかの技術分野に想到するであろう。
【００１２】
本明細書では本発明の「一実施形態」、「実施形態」または「別の実施形態」というような表現を用いるが、これは、当該実施形態に関連して記載されている特定の特徴、構造または特性が本発明の少なくとも１つの実施形態に含まれていることを意味する。このため、本明細書では何度も「一実施形態において」または「実施形態において」という表現が見られるが、全てが必ずしも同じ実施形態を指しているわけではない。
【００１３】
従来のストリーミングはリアルタイムで実行される。従来のストリーミングプロセスを用いて家庭内でメディアを配信する場合、ユーザはホームメディアサーバが提供するメディアリストを閲覧して再生するアイテムを選択する。メディアサーバは、この選択を受信すると、ユーザのレンダリングデバイスでレンダリングされるべき選択されたメディアのストリーミングをリアルタイムで開始する。
【００１４】
従来のストリーミングプロセスでは、実効ネットワークスループットが変化すると、視聴しているユーザにとっては良くない影響が発生し得る。このような影響を部分的に緩和するべくデバイス側のバッファリングを通常利用するが、今日のデバイスによって問題なく可能なバッファリングの量は約数秒である。この一方、デバイス側のバッファリングが大きくなると、レイテンシが大きくなる。つまり、コンテンツを閲覧するためのユーザの待ち時間が長くなってしまう。これもまた、視聴しているユーザにとっては良くない影響である。このため、このようなバッファの限界値よりも大きくなると、ジッタまたはレイテンシがエンドユーザに見えてしまう／分かってしまう。また、ネットワークベースのトリックモード、例えば、早送り、巻き戻し等は、従来のストリーミングを実行している場合は、高品質で実現することが非常に難しい。
【００１５】
ストリーミングプロセスの実行時間は、メディアアイテムの長さと同じであり、ネットワーク条件に実行時間が左右され、映画の場合は９０分から１２０分以上となり得る。「リアルタイム」でストリーミングするために必要な時間が長くなると、多くのリソースを必要とするＰＣで実行されるアプリケーション、例えば、ビデオゲームの再生、ネットサーフィン、大量の文書の印刷等によって、ストリーミングの劣化、停止等が発生する可能性を高くなってしまう。
【００１６】
本発明の実施形態は、家庭内で「ストリーミング」メディアを配信するためのハイブリッドシステムおよびハイブリッド方法に関する。この目的は、メディアファイルの最初の数分間を、所与の規模のストレージを備えるクライアントデバイスにキャッシュしておくことによって達成される。このような構成とすることによって、従来のストリーミング方法に比べて、メディアを再生するユーザの満足度を大きく改善する。閲覧するメディアファイルをユーザが選択すると、当該メディアファイルは即座にキャッシュから再生が開始され、その間に当該メディアファイルの残りの部分がキャッシュにストリーミングされる。クライアントデバイスがメディアファイルを格納する機能を備えるので、メディアファイルの残りの部分は、ネットワークがそのような機能を有していれば、リアルタイムよりも高速にストリーミングされ得る。メディアファイルの最初の数分間をキャッシュすることによって、ユーザは、ローカルに格納されているメディアファイルを再生する場合と同様に、メディアファイルを即座に再生することができる。本発明の実施形態によれば、ユーザは、メディアサーバとの接続が確立されるまで待つ必要がなく、また、再生が開始されるまでに十分な量のコンテンツがバッファリングされるまで待つ必要もない。
【００１７】
ホームネットワークに基づいて本発明の実施形態を説明しているが、本発明は家庭という環境に限定されない。実際、当業者であれば、専用メディアサーバが内部のさまざまな実体／記憶箇所にメディアをストリーミングするような他の環境にも本発明は応用され得ることが分かるであろう。このような環境には、オフィス、学校、娯楽施設、または、内部のユーザが専用メディアサーバに対してメディアアイテムを要求するようなその他の任意の環境等が含まれ得る。
【００１８】
図１は、本発明の実施形態に応じて本発明が実装され得るホームネットワークシステムの一例を示す図である。ホームネットワークシステム１００は、コンテンツプロバイダからワイドエリアネットワーク（ＷＡＮ）１１２を介してマルチメディアコンテンツを受信するデジタルホームネットワーク１０２を備えるとしてよい。コンテンツプロバイダは、これらに限定されないが、例えば、独立したコンテンツサービスプロバイダ１０４（Ａ、Ｂ、ＣおよびＤ）、放送処理センター１０６、およびスタジオ１０８である。一実施形態によると、独立したコンテンツサービスプロバイダ１０４およびスタジオ１０８は、コンテンツのフォーマッティングおよびデジタルホームネットワーク１０２への配信のために、放送処理センター１０６にコンテンツを送信するとしてよい。また、スタジオ１０８は、コンテンツのフォーマッティングおよびデジタルホームネットワーク１０２への配信のために、独立したコンテンツサービスプロバイダ１０４にコンテンツを送信するとしてよい。コンテンツは、１以上のシステム１１０を用いて、デジタルホームネットワーク１０２に与えられるとしてよい。１以上のシステム１１０は、これらに限定されないが、同軸ケーブル接続を利用するケーブルシステム、人工衛星接続を用いる人工衛星システム、ダイヤルイン接続、ＤＳＬ（デジタル加入者回線）等のデジタル電話接続、高速ケーブルモデム等を用いるインターネットサービス、および、高解像度（ＨＤ）接続を用いるＡＴＳＣ（Ａｄｖａｎｃｅｄ  Ｔｅｌｅｖｉｓｉｏｎ  Ｓｙｓｔｅｍｓ  Ｃｏｍｍｉｔｔｅｅ）システム等である。ＡＴＳＣ／ケーブル／人工衛星／インターネットシステム１１０は、デジタルホームネットワーク１０２にオーディオ／ビデオ情報を転送するべく、独立したコンテンツプロバイダ１０４、放送処理センター１０６、およびスタジオ１０８から情報を取得する。これに代えて、独立したコンテンツサービスプロバイダ１０４、放送処理センター１０６、およびスタジオ１０８から、デジタルホームネットワーク１０２に、無線でコンテンツを放送するとしてもよい。
【００１９】
デジタルホームネットワーク１０２は、制御デバイス１１４を用いて、独立したコンテンツサービスプロバイダ１０４、放送処理センター１０６、およびスタジオ１０８から受信したデジタルマルチメディアコンテンツおよび情報を、有線技術および／または無線技術を用いて、家庭全体に拡張する。制御デバイス１１４は、これに限定されないが、パーソナルコンピュータ（ＰＣ）、メディアセンター、ストレージＰＣ、ワークステーション、メディアサーバ、これらの組み合わせ、または、メディアコンテンツを格納およびストリーミングすることが可能なその他の任意のコンピューティングデバイス等を含むとしてよい。制御デバイス１１４は、独立したコンテンツサービスプロバイダ１０４、放送処理センター１０６、およびスタジオ１０８から配信されるコンテンツを格納するとしてよい。制御デバイス１１４は、家庭内の１以上のレンダリングデバイスに、適切な方法で、コンテンツを配信するとしてよい。この点については、図２、３、４および５を参照しつつ、詳細に後述する。デジタルホームネットワーク１０２は、ダイヤルイン接続、高速ケーブルモデム接続、ＤＳＬ（デジタル加入者回線）接続、人工衛星接続、ＨＤ接続、または、デジタルホームネットワーク１０２をＷＡＮ１１２に接続することができるその他の任意の手段等の接続（不図示）を介してＷＡＮ１１２に結合されるとしてよい。
【００２０】
デジタルホームネットワーク１０２は、メディアコンテンツの遠隔閲覧のために（制御デバイス１１４でメディアコンテンツを閲覧するのみではなく）制御デバイス１１４を介して家庭内でメディアコンテンツが配信される、複数のレンダリングデバイスを有する。レンダリングデバイスは、数多くの方法で、家庭内で分散して設けられているとしてよい。
【００２１】
説明を簡単にするべく、図１ではレンダリングデバイスが３つ設けられている例を図示する。各レンダリングデバイスは、家庭内の異なる部屋に配置されているとする。部屋１に配置されているレンダリングデバイスは、第１のテレビモニタ１２２に接続されるセットトップボックス１２０を含む。セットトップボックス１２０は、第１のテレビモニタ１２２および制御デバイス１１４に接続され、制御デバイス１１４からの信号を第１のテレビモニタ１２２に表示すべきコンテンツに変換する。
【００２２】
部屋２に配置されるレンダリングデバイスは、第２のテレビモニタ１１８に結合されているデジタルメディアアダプタ１１６を含む。デジタルメディアアダプタ１１６は、通常であれば共に使用することが意図されていないデバイス同士を電気的に接続することができる。例えば、デジタルメディアアダプタ１１６は、制御デバイス１１４をテレビモニタ１１８に電気的に接続する。テレビモニタ１１８は、デジタルメディアアダプタ１１６がなければ制御デバイス１１４から直接受信することができないオーディオ／ビデオ入力を受信するべく、デジタルメディアアダプタ１１６を用いる。部屋２は、制御デバイス１１４を有する部屋としても図示されている。図１では制御デバイス１１４が部屋２に配置されていると図示しているが、制御デバイスは部屋１、２または３のうちいずれに配置されるとしてもよく、また、家庭内の別の場所に配置されるとしてもよい。
【００２３】
部屋３に配置されるレンダリングデバイスは、第３のテレビモニタ１２６に結合されているネットワークＤＶＤ（デジタル・ビデオ・ディスク）プレーヤ１２４を含む。ネットワークＤＶＤプレーヤ１２４は、第３のテレビモニタ１２６および制御デバイス１１４に接続されており、制御デバイス１１４から受信したコンテンツを第３のテレビモニタ１２６に表示させる。ネットワークＤＶＤプレーヤ１２４は、光学的にビデオおよびその他のデータを格納するべく用いられるとしてもよい。
【００２４】
制御デバイス１１４は、メディアサーバ等の専用デバイスであってもよいし、または、多くの同時利用をサポートするデバイスであってもよい。例えば、制御デバイス１１４は、テレビモニタ１１８、１２２、および／または、１２６で閲覧するべく、例えばデジタルメディアアダプタ１１６、セットトップボックス１２０、および／または、ネットワークＤＶＤプレーヤ１２４等の、デジタルホームネットワーク１０２に含まれるレンダリングデバイスに与えられるメディアコンテンツを格納するメディアサーバとして機能するとしてよい。一部の実施形態によると、メディアコンテンツを与える処理は、バックグラウンドで行われるとしてもよい。フォアグラウンドでは、その他の処理が行われているとしてよい。例えば、制御デバイス１１４は、ユーザがさまざまな処理を実行できるパーソナルコンピュータとして機能するとしてよい。そのような処理は、例えば、ビデオゲーム、インターネット上での検索、帯域幅を用いたホームネットワークへのその他のコンテンツのダウンロード、文書の印刷、その他のアプリケーションの実行等である。制御デバイス１１４の同時利用は、制御デバイス１１４をＰＣおよびメディアサーバとして機能させる必要があり、非同期的に実行され得るので、干渉により制御デバイス１１４で高品質メディアストリーミングを実現することができなくなる場合がある。例えば、制御デバイス１１４がストリーミングメディア用のストレージからメディアレンダリングデバイス１１６、１２０、および１２４のうち１つへとメディアデータの読み出しを行うのと同時に、制御デバイス１１４に接続されているプリンタはディスクから印刷用のデータを読み出しているとしてよい。このように制御デバイス１１４を同時に利用すると、制御デバイス１１４はレートが遅くなり、多くの場合には同時に実行中のアプリケーションのうち１以上のアプリケーションに対してしばらくの間応答しなくなってしまうことがある。ここで、ストリーミングメディアアプリケーションは、制御デバイス１１４がしばらくの間応答しなくなるアプリケーションのうち１つである可能性があるので、プロセス干渉またはネットワークの混雑のために、一定期間、例えば、数分間にわたってメディアコンテンツを供給することができない場合がある。干渉の原因はこれ以外にも、エリア内のほかの無線ネットワーク、これに限定されないが、携帯電話ネットワークからの信号、および、制御デバイスと近接して動作しており、全体的なスループットを低減し得るその他の電子デバイス、例えば電子レンジからの信号等が挙げられる。
【００２５】
デジタルメディアアダプタ１１６、セットトップボックス１２０、およびネットワークＤＶＤプレーヤ１２４は、制御デバイス１１４から供給されるメディアコンテンツを、ライブメディアストリームとして受信するとしてよい。一実施形態によると、デジタルメディアアダプタ１１６、セットトップボックス１２０、およびネットワークＤＶＤプレーヤ１２４は、ネットワーク接続によって、制御デバイス１１４に直接接続されているものと図示されている。ネットワーク接続は、イーサネット（登録商標）接続等の有線接続であってもよいし、または、これらに限定されないが、ＷｉＦｉ、ＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）、ＵＷＢ（超広帯域無線）等の無線接続であってもよい。
【００２６】
一実施形態によると、制御デバイス１１４はさらに、他のデジタルデバイス（不図示）からデジタルマルチメディアデータを受信するとしてよい。そのようなデジタルデバイスには、これらに限定されないが、ＭＰ３プレーヤ、デジタルビデオカメラ、デジタルカメラ、および、制御デバイス１１４にマルチメディアデータを供給し得るその他の任意の電子デバイスが含まれる。これらのデジタルデバイスから受信されたデジタルマルチメディアデータは、制御デバイス１１４を介して、レンダリングデバイス１１６、１２０、および１２４のうち１以上でレンダリングされるとしてよい。
【００２７】
本発明の実施形態では、レンダリング・デバイス／エンドポイントが現在では、安価な大容量ストレージを備えているという事実を利用する。レンダリングデバイスは、ストレージデバイスの一部分がキャッシュとして動作するように、パーティションされるとしてよい。本発明の実施形態では、レンダリング・デバイス／エンドポイントにおけるこのストレージまたはキャッシュを活用することによって、ホームネットワークによるロードを低減する。レンダリングデバイスは、この利点を得るためにネットワーク上のコンテンツ全てを複製する必要はない。大量メディアアイテムの最初の数分間のみをレンダリングデバイスに予めキャッシュするだけでよい。
【００２８】
図２は、本発明の実施形態に応じた、レンダリング・デバイス／エンドポイントのキャッシュに大量メディアアイテムの最初の数分間をキャッシュする方法を示すフローチャート２００である。本発明は、フローチャート２００を参照して本明細書で説明する実施形態に限定されるものではない。本発明の範囲内で別の機能的フローチャートが得られることは、本明細書に記載する教示内容を読めば、当業者には明らかである。プロセスは、ブロック２０２で開始され、決定ブロック２０４に即座に進む。
【００２９】
決定ブロック２０４では、レンダリングデバイスに一部分をキャッシュすべきメディアコンテンツが、制御デバイス１１４に格納されているか否かを判断する。この判断を実行し得るメカニズムには、いくつか異なるものが考えられる。例えば、過去の利用および最近取得されたメディアコンテンツに基づくインテリジェント予測を用いて、レンダリングデバイスにその一部分を事前にキャッシュする必要があるメディアコンテンツを判断するとしてよい。例えば、メディアアイテム、例えば、映画をユーザが最近購入していた場合、このアイテムは当該ユーザが最もよく利用するネットワークデバイスに事前にキャッシュされるとしてもよい。別の例を挙げると、レンダリングデバイスに単純なユーザインターフェースを備えて、制御デバイス１１４に格納されているアイテムのうち、近々レンダリングデバイスで視聴したいアイテムを、ユーザに選択および評価させるとしてよい。例えば、ユーザのプロフィールを提供するアプリケーションを実行して、ホームサーバ上のアイテムの選択および評価に基づいてユーザの好き嫌いを示すとしてよい。ユーザが視聴する可能性が最も高いアイテムは、ユーザが最もよく視聴に利用するレンダリングデバイスに事前にキャッシュされる。本発明の実施形態は、これらの例に限定されない。レンダリングデバイスに一部分を事前にキャッシュするべきメディアコンテンツを決定する際には、ほかのメカニズムを利用するとしてもよい。対象とするレンダリングデバイスに一部分を事前にキャッシュすべきメディアコンテンツがあると判断されると、ブロック２０６に進む。
【００３０】
ブロック２０６では、制御デバイス１１４がレンダリングデバイスに接続される。そして、ブロック２０８に進む。
【００３１】
ブロック２０８では、レンダリングデバイスのユーザが関心を持っていると判断されたメディアコンテンツを検索して、一部分をレンダリングデバイスに送信する。受信したレンダリングデバイスに、メディアコンテンツの一部分を事前にキャッシュする。そしてブロック２０４に戻り、レンダリングデバイスに一部分をキャッシュする必要があるメディアコンテンツが制御デバイス１１４にあるか否か判断する。
【００３２】
ブロック２０４に戻って、一部分を事前にキャッシュすべきメディアコンテンツがないと判断されると、プロセスはブロック２０４で留まる。
【００３３】
レンダリングデバイスにおいてキャッシュが構築されると、ユーザは再生用のアイテムを選択するとしてよい。図３は、本発明の実施形態に応じた、家庭内でレンダリングデバイスに「ストリーミング」メディアを配信するハイブリッド方法を示すフローチャート３００である。本発明は、フローチャート３００を参照して本明細書で説明する実施形態に限定されるものではない。本発明の範囲内で別の機能的フローチャートが得られることは、本明細書に記載する教示内容を読めば、当業者には明らかである。プロセスは、ブロック３０２で開始され、ブロック３０４に即座に進む。
【００３４】
ブロック３０４では、レンダリングデバイスによって、ユーザは、制御デバイス１１４に格納されているメディアコンテンツを閲覧することができる。そして、ブロック３０６に進む。
【００３５】
ブロック３０６において、再生すべきアイテムをユーザが選択すると、レンダリングデバイスはローカルキャッシュから当該メディアアイテムの再生を開始する。選択されたメディアアイテムのうち所定量をレンダリングデバイスのローカルキャッシュに事前にキャッシュしておくことによって、レンダリングデバイスにおいて再生を即座に開始することができるので、再生が開始される前の、メディアの再生を要求することによるネットワーク／制御デバイス１１４のレイテンシおよびデバイスで発生するバッファリングのレイテンシを無くすことができる。事前にキャッシュすることによって、比較的長時間にわたるネットワーク不安定性を緩和しつつもユーザに対しては非常に良好な使用感を実現し、ネットワークジッタを緩和して、ローカル（ネットワークに対して）トリックモードによる利点を全て含め、ディスクを備える民生電気デバイスを利用する場合と同等の再生品質を達成する。即座にブロック３０８に進む。
【００３６】
ブロック３０８において、選択されたメディアアイテムの再生をレンダリングデバイスが開始すると、この処理によってトリガされて、レンダリングデバイスは、事前キャッシュコンテンツの元となる制御デバイス１１４に格納されているメディアアイテムに接続される。そして、ブロック３１０に進む。
【００３７】
ブロック３１０において、選択されたメディアアイテムの残りのメディアコンテンツが、「ハイブリッド・ストリーミング」方法でキャッシュにダウンロードされる。メディアは、リアルタイムレートよりも速いレートで、レンダリングデバイスのキャッシュに配信されるとしてよい。レンダリングデバイスは、選択されたメディアコンテンツを制御デバイス１１４に対して、キャッシュ内に格納されているメディアアイテムの終端箇所に対応するようにオフセットして要求する。レンダリングデバイスが制御デバイス１１４のメディアソースからメディアコンテンツを受信すると、レンダリングデバイスのキャッシュが満杯になるまで、メディアコンテンツをキャッシュ内の対応するファイルに付加する。キャッシュは、移動性バッファとして機能して、ローカルキャッシュからメディアアイテムを再生している間、メディアアイテムの残りの部分をキャッシュに入れ続ける。一実施形態によると、再生用のメディアアイテムが選択されると、利用可能なキャッシュサイズ上限値は数分間から大幅に増加させられるとしてもよい。デバイスが格納空間を有している場合、選択されたメディアアイテム全部を含めることができるように拡大されるとしてよい。そして、決定ブロック３１２に進む。
【００３８】
尚、レンダリングデバイスのキャッシュにメディアアイテムのうち所定量が保存されていた場合であっても、ストリーミングプロセスを数分間にわたって遅くしたり、または、停止させてしまうような事象が１以上制御デバイス１１４において発生した結果、キャッシュされているコンテンツの量が短期間にわたって少なくなってしまう場合がある。このようにキャッシュされているコンテンツの量が少なくなってしまうとしても、当該システムではリアルタイムより早いレートでストリーミング／ダウンロードが行われる機能をサポートしているので、追いついてキャッシュを再度満たすことができる。
【００３９】
決定ブロック３１２では、選択されたメディアアイテムが全てレンダリングデバイスにキャッシュされたか否かを判断する。選択されたメディアアイテムが全てレンダリングデバイスにキャッシュされていない場合には、ブロック３１０に戻って、メディアアイテムがリアルタイムで再生されている間に、リアルタイムのレートよりも速いレートでメディアアイテムをキャッシュにストリーミングし続ける。
【００４０】
決定ブロック３１２に戻って、選択されたメディアアイテムが全てレンダリングデバイスにキャッシュされていると判断される場合には、ブロック３１４に進む。ブロック３１４において、メディアアイテムのリアルタイムでの再生が、メディアアイテムが終了するまで、または、ユーザがメディアアイテムの再生を停止するまで、継続して行われるとしてよい。
【００４１】
上記ダウンロードプロセスを「ハイブリッド・ストリーミング」と呼ぶのは、レンダリングデバイスがローカルキャッシュからリアルタイムでメディアアイテムを再生している間に、レンダリングデバイスのローカルキャッシュを満杯にするべくリアルタイムよりも早いレートでソースからメディアコンテンツをストリーミングするためである。リアルタイムよりも早いレートでソースからストリーミングするべく利用され得るストリーミング方法は複数ある。例えば、メディアは、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）パケットタグ付け方法（つまり、優先度に応じてパケットにタグを付与する）を用いて、ストリーミングされるとしてよい。本発明の別の実施形態によると、低い優先度のタグが付与されたパケットまたはタグが付与されていないパケットが自動的に低優先度タグ付きパケットとして扱われるベストエフォート型を用いるとしてよい。ベストエフォート型の方法は、家庭内で実施されている他のネットワーク動作を考慮すると、ネットワーク的により利便性が高いとしてよい。さらに別の実施形態によると、複数の方法を組み合わせて利用するとしてもよい。例えば、ベストエフォート型を用いてプロセスを開始して、ユーザがキャッシュを使い果たしてしまうと、ＱｏＳに切り替えるとしてよい。
【００４２】
本発明の別の実施形態によると、メディアコンテンツは保護されているとしてよい。保護されているコンテンツの場合、コンテンツは暗号化されている。本発明においては、メディアアイテムの再生に先立ってメディアアイテムの一部分をレンダリングデバイスに事前にキャッシュする必要があり、その後ユーザがメディアアイテムの再生を希望した時点において、キャッシュからメディアアイテムを再生している間、同時にメディアアイテムの残りのコンテンツをキャッシュに付加するので、事前にキャッシュされたコンテンツは、視聴時にキャッシュされるコンテンツとは暗号鍵が異なる場合がある。事前にキャッシュされたアイテムおよび残りのコンテンツは同じアルゴリズムを用いて暗号化され得るが、メディアアイテムの一部分を事前にキャッシュする時点と、メディアアイテムの残りの部分を視聴のためにキャッシュする時点において時間差があるので、暗号鍵が異なってしまう場合がある。
【００４３】
図４は、本発明の実施形態に応じた、レンダリング・デバイス／エンドポイントのキャッシュに、保護された大量メディアアイテムの最初の数分間をキャッシュする方法を示すフローチャート４００である。本発明は、フローチャート４００を参照して本明細書で説明する実施形態に限定されるものではない。本発明の範囲内で別の機能的フローチャートが得られることは、本明細書に記載する教示内容を読めば、当業者には明らかである。プロセスは、ブロック４０２で開始され、決定ブロック４０４に即座に進む。
【００４４】
決定ブロック４０４では、レンダリングデバイスの一部分をキャッシュすべきメディアコンテンツが制御デバイス１１４に格納されているか否かを判断する。この判断は、図２を参照して上述した複数のメカニズムを用いて実行するとしてよい。対象とするレンダリングデバイスに一部分を事前にキャッシュすべきメディアコンテンツがあると判断されると、ブロック４０６に進む。
【００４５】
ブロック４０６では、制御デバイス１１４がレンダリングデバイスに接続される。そして、ブロック４０８に進む。
【００４６】
ブロック４０８では、レンダリングデバイスのユーザが関心を持っていると判断されたメディアコンテンツを検索して、一部分をレンダリングデバイスに送信する。受信したレンダリングデバイスに、メディアコンテンツの一部分を事前にキャッシュする。保護コンテンツの場合、コンテンツのレンダリングデバイスへの配信は、何らかのコンテンツ保護技術を用いて行わなければならない。そのようなコンテンツ保護技術としては、例えば、ＤＴＣＰ−ＩＰ（デジタル・トランスミッション・コンテンツ・プロテクション−インターネット・プロトコル）がある。ＤＴＣＰ−ＩＰを一例として挙げたが、他のコンテンツ保護技術を用いるとしてもよい。この結果キャッシュされるコンテンツは、保護された状態でレンダリングデバイスに格納されなければならない。例えば、キャッシュされるコンテンツは、ＤＴＣＰ−ＩＰ、特許された（または標準的な）暗号化方法を利用して格納されるとしてもよいし、または、保護ストレージインフラストラクチャを利用して「クリアに」格納されるとしてもよい。その他の方法を用いて保護された状態で格納するとしてもよい。保護コンテンツが格納されると、セキュアに鍵が交換される。この鍵も同様にキャッシュおよび保護されて、メディアコンテンツが視聴の対象として選択されると当該メディアコンテンツを適切に復号化できるようにする。この後、ブロック４０４に戻り、レンダリングデバイスに一部分をキャッシュする必要があるメディアコンテンツが制御デバイス１１４にあるか否か判断する。
【００４７】
ブロック４０４に戻って、一部分を事前にキャッシュすべきメディアコンテンツがないと判断されると、プロセスはブロック４０４で留まる。
【００４８】
レンダリングデバイスにおいてキャッシュが構築されると、ユーザは再生すべき保護メディアアイテムを選択するとしてよい。図５は、本発明の実施形態に応じた、保護されたメディアコンテンツについて、家庭内でレンダリングデバイスに「ストリーミング」メディアを配信するハイブリッド方法を示すフローチャート５００である。本発明は、フローチャート５００を参照して本明細書で説明する実施形態に限定されるものではない。本発明の範囲内で別の機能的フローチャートが得られることは、本明細書に記載する教示内容を読めば、当業者には明らかである。プロセスは、ブロック５０２で開始され、ブロック５０４に即座に進む。
【００４９】
ブロック５０４では、レンダリングデバイスによって、ユーザは、制御デバイス１１４に格納されているメディアコンテンツを閲覧することができる。そして、ブロック５０６に進む。
【００５０】
ブロック５０６において、再生すべきアイテムをユーザが選択すると、レンダリングデバイスはローカルキャッシュから保護メディアアイテムの再生を開始して、キャッシュに格納および保護されている暗号鍵を用いてコンテンツを復号する。選択されたメディアアイテムのうち所定量をレンダリングデバイスのローカルキャッシュに事前にキャッシュしておくことによって、レンダリングデバイスにおいて再生を即座に開始することができるので、再生を開始する前にバッファリングが必要なメディアの再生を要求することによるネットワーク／制御デバイス１１４のレイテンシを無くすことができる。事前にキャッシュすることによって、比較的長時間にわたるネットワーク不安定性を緩和しつつもユーザに対しては非常に良好な使用感を実現し、ネットワークジッタを緩和して、ローカル（ネットワークに対して）トリックモードによる利点を全て含め、ディスクを備える民生電気デバイスを利用する場合と同等の再生品質を達成する。即座にブロック５０８に進む。
【００５１】
ブロック５０８において、選択されたメディアアイテムの再生をレンダリングデバイスが開始すると、この処理によってトリガされて、レンダリングデバイスは、事前キャッシュコンテンツの元となる制御デバイス１１４に格納されているメディアアイテムに接続される。そして、ブロック５１０に進む。
【００５２】
ブロック５１０において、選択されたメディアアイテムの残りのメディアコンテンツが、図３を参照して上述した「ハイブリッド・ストリーミング」方法で、ＤＴＣＰ−ＩＰまたはその他のコンテンツ保護プロトコルを用いて、キャッシュにダウンロードされる。メディアは、リアルタイムレートよりも速いレートで、レンダリングデバイスのキャッシュに配信されるとしてよい。レンダリングデバイスは、選択されたメディアコンテンツを制御デバイス１１４に対して、キャッシュ内に格納されているメディアアイテムの終端箇所に対応するようにオフセットして要求する。レンダリングデバイスが制御デバイス１１４のメディアソースからメディアコンテンツを受信すると、レンダリングデバイスのキャッシュが満杯になるまで、メディアコンテンツをキャッシュ内の対応するファイルに付加する。受信されたコンテンツは、キャッシュにローカルに格納される時には、暗号化されているとしてよい。メディアコンテンツは、ＤＴＣＰ−ＩＰ、特許された（または標準的な）暗号化方法を利用して格納されるとしてもよいし、保護ストレージインフラストラクチャを利用して「クリアに」格納されるとしてもよいし、他の保護技術を用いて格納するとしてもよい。保護コンテンツの残りの部分が格納されると、新たにセキュアに鍵が交換される。この新しい鍵も同様に、キャッシュおよび保護されて、保護メディアコンテンツが視聴される場合、当該保護メディアコンテンツを適切に復号化できるようにする。このように、事前にキャッシュされたコンテンツの再生が終了すると、事前にキャッシュされたコンテンツを復号するべく用いられた鍵はその後利用されない。キャッシュに事前キャッシュされた部分に現在付加されている保護メディアコンテンツをユーザが視聴する場合には、この保護メディアコンテンツを格納するべく用いられた新しい鍵を用いて、この保護メディアコンテンツを復号する。このように、事前キャッシュされたメディアコンテンツの視聴が終わると古い鍵の利用を停止して、新たに取得されたコンテンツの復号には新しい鍵を用いるプロセスは、シームレスに行われる。キャッシュは、移動性バッファとして機能して、ローカルキャッシュからメディアアイテムを再生している間、メディアアイテムの残りの部分をキャッシュに入れ続ける。そして、決定ブロック５１２に進む。
【００５３】
決定ブロック５１２では、選択されたメディアアイテムが全てレンダリングデバイスにキャッシュされたか否かを判断する。選択されたメディアアイテムが全てレンダリングデバイスにキャッシュされていない場合には、ブロック５１０に戻って、メディアアイテムがリアルタイムで再生されている間に、リアルタイムのレートよりも速いレートでメディアアイテムをキャッシュにストリーミングし続ける。
【００５４】
決定ブロック５１２に戻って、選択されたメディアアイテムが全てレンダリングデバイスにキャッシュされていると判断される場合には、ブロック５１４に進む。ブロック５１４において、メディアアイテムのリアルタイムでの再生が、メディアアイテムが終了するまで、または、ユーザがメディアアイテムの再生を停止するまで、継続して行われるとしてよい。
【００５５】
本発明の実施形態では、トリックモードを用いるとしてよい。図６は、本発明の実施形態に応じた、トリックモードの実施を可能とする方法を示すフローチャート６００である。本発明は、フローチャート６００を参照して本明細書で説明する実施形態に限定されるものではない。本発明の範囲内で別の機能的フローチャートが得られることは、本明細書に記載する教示内容を読めば、当業者には明らかである。一実施形態によると、ユーザに対して、キャッシュされたコンテンツの終端部分を越えるトリックモードは許可されない。一実施形態によると、ユーザに対して、キャッシュされたコンテンツの終端部分から１分または２分以内の部分では、トリックモードが許可されないとしてよい。これは、再生品質を良好に保つためである。さらに別の実施形態によると、ユーザに対してキャッシュされたコンテンツの終端部分を越えてトリックモードを利用することを許可するとしてよいが、このような場合には、システムはレガシーストリーミングモードに入り、従来と同様に制御デバイス１１４からリアルタイムストリーミングが実行される。この場合、ユーザは、本発明が解決しようとしている問題のいずれかを抱えることになり、視聴品質は良好ではなくなってしまう。プロセスは、ブロック６０２で開始され、即座に決定ブロック６０４に進む。
【００５６】
決定ブロック６０４では、トリックモード再生を選択するか否かを判断する。トリックモード再生が選択されない場合、トリックモード再生が選択されるまで当該プロセスは決定ブロック６０４に留まる。トリックモード再生が選択されると、決定ブロック６０６に進む。
【００５７】
決定ブロック６０６では、キャッシュされたコンテンツの終端部分を越えるトリックモード再生が許可されるか否かを判断する。キャッシュされたコンテンツの終端部分を越えるトリックモード再生が許可されない場合は、ブロック６０８に進む。
【００５８】
ブロック６０８では、キャッシュされたコンテンツの終端部分までのトリックモードがユーザに許可される。一実施形態によると、再生品質を良好に保つべく、キャッシュされたコンテンツの終端部分から所定時間だけ前までのトリックモードがユーザに許可される。一実施形態によると、キャッシュされたコンテンツの終端部分からの所定時間は、２分であってよい。さらに別の実施形態によると、キャッシュされたコンテンツの終端部分からの所定時間は、１分であってよい。この後、決定ブロック６０４に戻って、次にトリックモードが選択されるまで待機する。
【００５９】
決定ブロック６０６に戻って、キャッシュされたコンテンツの終端部分を越えるトリックモード再生が許可される場合は、ブロック６１０に進む。ブロック６１０では、ユーザに対して、キャッシュされたコンテンツの終端部分を越えるトリックモードが許可される。そして、決定ブロック６１２に進む。
【００６０】
決定ブロック６１２では、キャッシュされたコンテンツの終端部分までユーザがトリックモードを実行したか否かを判断する。キャッシュされたコンテンツの終端部分までユーザがトリックモードを実行しなかった場合、決定ブロック６０４に戻って、次にトリックモードが選択されるまで待機する。
【００６１】
決定ブロック６１２に戻って、キャッシュされたコンテンツの終端部分までユーザがトリックモードを実行したと判断される場合、ブロック６１４に進み、メディアストリーミングプロセスは従来のストリーミング方法に切り替わって、メディアアイテムの再生は、キャッシュからではなく、制御デバイス１１４から直接行われるようになる。そして、ブロック６１６に進み、プロセスは終了する。
【００６２】
本発明の実施形態によると、ユーザに対して良好な視聴品質を実現するという効果を奏することを目的として、メディアアイテムのうち所定量をキャッシュしなければならない。この改善点を実現するべくキャッシュする必要があるメディアアイテムの量は、利用可能なネットワークスループットによって異なるとしてよい。例えば、非常に高速なネットワークが利用可能である場合、キャッシュする必要があるコンテンツの量は、低減され得る。実際、ネットワークによるストリーミングが再生のストリーミングよりもはるかに高速であるので、格納する必要がない場合もある。
【００６３】
本発明の実施形態によれば、メディアアイテムの再生に先立って当該メディアアイテムの一部分をレンダリングデバイスに事前キャッシュしている間に、当該メディアアイテムの残りの部分は、ユーザがキャッシュからメディアコンテンツを同時に視聴している間にキャッシュへとプログレッシブダウンロードされる。図７は、さまざまなネットワークリンクを介して本発明の実施形態に係るハイブリッドストリーミングプロセスを用いて９０分間のビデオをダウンロードする場合にかかる時間のシミュレーション結果を示すダイアグラム７００である。このシミュレーションでは、レンダリングデバイスに１０分間分がキャッシュされていると仮定している。同図のデータポイントは、４つの異なるネットワークインフラストラクチャで、ビットレートが異なるさまざまな動画をダウンロードするために必要な時間を示している。これら４つのネットワークインフラストラクチャは、８０２．１１ａ／ｇ（７０２）、８０２．１１ｎ（７０４）、ＨＰＡＶ（７０６）、およびＭｏＣＡ（Ｍｕｌｔｉｍｅｄｉａ  ｏｖｅｒ  Ｃｏａｘ  Ａｌｌｉａｎｃｅ）（７０８）である。図７に示すように、結果が最も悪いのは、ホップが１つの８０２．１１ａ／ｇネットワーク（７０２）で２０Ｍビット（メガビット）のＭＰＥＧコンテンツをダウンロードする場合である。この場合、従来のストリーミングに比べて結果は大して改善されていない。このため、ユーザに対して望ましい視聴品質を実現するべく、高ビットレートのメディアアイテムについては、より多くのコンテンツを格納できるキャッシュ（１０分間のキャッシュよりも大容量のもの）をシステムに実装するとしてよい。他のネットワークインフラストラクチャ（７０４、７０６、および７０８）については、キャッシュを利用するメディアコンテンツのハイブリッドストリーミングプロセスによって、リアルタイムよりもはるかに高速にコンテンツを提供できており、ネットワークスループットが数分間にわたって劣化したとしても（これはシミュレーションしなかった）、ユーザが視聴することによるコンテンツの消費よりも先を進むことが容易となる。尚、シミュレーションでは、ＨＰＡＶのスループットを４０Ｍビット、８０２．１１ｎのスループットを５０Ｍビット（共に５０％のカバレッジの場合）、ＭｏＣＡのスループットは１００Ｍビット（これは、同軸ケーブルのドロップがある場合のみ）と仮定している。
【００６４】
本発明の実施形態の任意の側面は、ハードウェア、ソフトウェア、または、これらの組み合わせを用いて実装されるとしてよく、１以上のコンピュータシステムまたはその他の処理システムにおいて実装されるとしてよい。実際、一実施形態によると、上述した方法は、プログラム可能な機械において実行されるプログラムとして実装されるとしてよい。プログラム可能な機械とは、携帯型コンピュータまたは固定型コンピュータ、携帯情報端末（ＰＤＡ）、セットトップボックス、携帯電話およびポケットベル（登録商標）、ならびに、少なくとも１つのプロセッサと、このプロセッサによって読み出し可能な記憶媒体（揮発性および不揮発性のメモリおよび／またはストレージ素子を含む）と、少なくとも１つの入力デバイスと、１以上の出力デバイスとを備えるその他の電子デバイス等であってよい。入力デバイスを用いて入力されたデータにプログラムコードを適用して、上述した機能を実行すると共に出力情報を生成する。出力情報は、１以上の出力デバイスに与えられるとしてよい。当業者であれば、本発明の実施形態がさまざまなコンピュータシステム構成、例えば、マルチプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ等で実施され得ることに、想到し得る。
【００６５】
プログラムはそれぞれ、処理システムとの間で通信を実現できるように、高級言語であるプロシージャ言語またはオブジェクト指向型プログラミング言語で実装されるとしてよい。しかし、所望される場合は、アセンブリ言語または機械語でプログラムを実装するとしてよい。いずれの場合も、使用言語は、コンパイラ型でもインタプリタ型でもよい。
【００６６】
本明細書に記載した方法を実行するための命令でプログラミングされた汎用処理システムまたは特定用途向け処理システムを動作させるためには、プログラム命令を用いるとしてよい。これに代えて、本明細書に記載した方法は、当該方法を実行するためのハードワイヤードロジックを備える特定のハードウェア素子によって、または、プログラミングされたコンピュータ素子およびカスタムハードウェア素子の任意の組み合わせによって実行されるとしてよい。本明細書に記載した方法は、当該方法を実行するべく処理システムまたはその他の電子デバイスをプログラミングするために利用される命令を格納している機械読み出し可能媒体を備えるコンピュータプログラム製品として提供されるとしてよい。本明細書において「機械読み出し可能媒体」または「機械アクセス可能媒体」等の用語を用いる場合、機械によって実行されると本明細書に記載されている方法のうちいずれか１つを当該機械に実行させる命令列を格納または符号化することができる任意の媒体を意味するものとする。したがって、「機械読み出し可能媒体」および「機械アクセス可能媒体」等の用語は、これらに限定されないが、固体メモリ、光学ディスクおよび磁気ディスク等を含むものとする。さらに、関連技術分野では通常、ソフトウェアは、いかなる形態であっても（例えば、プログラム、プロシージャ、プロセス、アプリケーション、モジュール、ロジック等）、処理を実行するものか、または、結果を生じさせるものとして扱っている。上述した複数の表現は単に、処理システムでソフトウェアを実行させてプロセッサに処理を実行させること、または、結果を生じさせることを述べるための短い表現である。
【００６７】
本発明のさまざまな実施形態を上述してきたが、それらの実施形態は本発明を例示するために記載されたものであり、本発明を限定するものではないと理解されたい。当業者であれば、本願特許請求の範囲で定義される本発明の精神および範囲から逸脱することなく、本明細書に記載された実施形態の構造および詳細な特徴をさまざまな点で変更することができると理解されたい。このため、本発明の範囲は、上述した実施形態例のいずれによっても限定されるべきではなく、請求の範囲およびそれらの均等物によって定義されるべきである。
【図１】
2010158008.tif 000003
【図２】
2010158008.tif 000004
【図３】
2010158008.tif 000005
【図４】
2010158008.tif 000006
【図５】
2010158008.tif 000007
【図６】
2010158008.tif 000008
【図７】
2010158008.tif 000009
【手続補正書】
【提出日】平成22年2月9日(2010.2.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のマルチメディアアイテムを格納するストレージを有する制御デバイスを備えるホームネットワークシステムであって、
前記制御デバイスは、複数のレンダリングデバイスに結合されており、
前記複数のレンダリングデバイスはそれぞれ、モニタに接続されていて、ストレージを有し、
前記複数のレンダリングデバイスそれぞれの前記ストレージは、マルチメディアアイテムが視聴対象としてユーザによって選択される前に、前記マルチメディアアイテムの一部分を前記制御デバイスから前記複数のレンダリングデバイスのうち少なくとも１つのレンダリングデバイスに事前にキャッシュさせるためのパーティションされたキャッシュを含み、
ユーザが前記メディアアイテムを視聴対象として選択すると、ユーザが同時に前記キャッシュから前記メディアアイテムを視聴している間に、前記メディアアイテムの残りの部分は、前記制御デバイスから前記キャッシュにプログレッシブダウンロードされるホームネットワークシステム。
【請求項２】
前記パーティションされたキャッシュの長さは、事前に決定されている請求項１に記載のシステム。
【請求項３】
前記制御デバイスから前記キャッシュへの前記マルチメディアアイテムの前記残りの部分のダウンロードは、リアルタイムよりも速いレートでのメディアストリーミングを含む請求項１に記載のシステム。
【請求項４】
前記ユーザが視聴対象として前記メディアアイテムを選択すると、選択された前記メディアアイテムのうち事前にキャッシュされた前記一部分のリアルタイムでの再生が開始され、その間に前記選択されたメディアアイテムの前記残りの部分を、リアルタイムよりも速いレートで、前記キャッシュに格納されている前記メディアアイテムの前記事前にキャッシュされた一部分に付加させる請求項１に記載のシステム。
【請求項５】
前記レンダリングデバイスに事前にキャッシュさせるメディアアイテムは、利用履歴および最近取得されたメディアに基づくインテリジェント予測によって決定され、
前記システムはさらに、
前記レンダリングデバイスに設けられているインターフェースであって、前記レンダリングデバイスのユーザに前記制御デバイスに格納されているメディアアイテムを選択および評価させて、前記評価に基づいて、前記レンダリングデバイスにメディアアイテムを事前にキャッシュさせるインターフェース
を備える請求項１に記載のシステム。
【請求項６】
前記メディアアイテムが保護メディアアイテムを含む場合、コンテンツ保護技術を用いて前記メディアアイテムは前記レンダリングデバイスに配信され、
前記キャッシュされたメディアコンテンツは、保護された状態で前記レンダリングデバイスに格納され、
選択された前記メディアアイテムが保護メディアアイテムを含む場合、前記システムはさらに、
前記保護メディアアイテムのうち前記事前にキャッシュされたコンテンツを復号する、前記キャッシュに格納および保護されている第１の鍵と、
前記保護メディアアイテムの前記残りの部分を復号する、前記キャッシュに格納および保護されている第２の鍵と
を備える請求項１に記載のシステム。
【請求項７】
前記メディアアイテムが前記キャッシュに格納されると、セキュアに鍵が交換され、
前記鍵は、キャッシュされ、保護される請求項６に記載のシステム。
【請求項８】
制御デバイスから、レンダリングデバイスのキャッシュに事前にキャッシュされるメディアアイテムの一部分を受信する段階と、
再生対象のメディアアイテムをユーザが選択すると、前記ユーザに対してリアルタイムで前記キャッシュから前記メディアアイテムを即座に再生し、その間に同時に前記制御デバイスと接続して、選択された前記メディアアイテムの残りの部分を、リアルタイムより高速なレートで、前記キャッシュにダウンロードする段階と
を備えるハイブリッド・ストリーミング方法。
【請求項９】
再生対象のメディアアイテムを前記ユーザが選択すると、前記キャッシュは拡大される請求項８に記載の方法または請求項４に記載のシステム。
【請求項１０】
前記制御デバイスは、前記メディアアイテムを事前にキャッシュするべく、前記レンダリングデバイスに接続される請求項８に記載の方法。
【請求項１１】
前記レンダリングデバイスは、前記ユーザに、再生対象の前記メディアアイテムを選択する前に、前記制御デバイス上のメディアアイテムを閲覧させる請求項８に記載の方法。
【請求項１２】
選択された前記メディアアイテムの前記残りの部分のダウンロードは、事前にキャッシュされた前記メディアアイテムの前記一部分の終了箇所に対応するようにオフセットされて開始される請求項８に記載の方法。
【請求項１３】
選択された前記メディアアイテムの前記残りの部分を受信する段階と、
前記キャッシュが満杯になるまで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュに格納されている対応するファイルに付加する段階と
をさらに備える請求項８に記載の方法。
【請求項１４】
前記キャッシュは移動性バッファとして機能し、リアルタイムで前記キャッシュから前記メディアアイテムを再生している間に、リアルタイムよりも高速のレートで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュに入れ続ける請求項１３に記載の方法。
【請求項１５】
前記選択されたメディアアイテムの前記残りの部分のダウンロードを低速または停止させる事象が前記制御デバイスで発生して、前記キャッシュが減少されると、前記事象が終了するとより速いレートで前記キャッシュを充填する請求項１４に記載の方法。
【請求項１６】
前記メディアアイテムのいずれかが保護メディアアイテムである場合、前記方法はさらに、
事前にキャッシュするべく、制御デバイスからレンダリングデバイスのキャッシュへと、保護メディアアイテムの一部分を受信する段階と、
再生対象として保護メディアアイテムをユーザが選択すると、前記ユーザに対してリアルタイムで事前にキャッシュされた前記メディアアイテムを前記キャッシュから即座に再生する間、同時に前記制御デバイスに接続して、選択された前記保護メディアアイテムの残りの部分を前記キャッシュにリアルタイムよりも高速なレートでダウンロードする段階と
を備え、
前記保護メディアアイテムの前記一部分は、セキュアな鍵の交換を実行するコンテンツ保護技術を用いて配信され、事前にキャッシュされた前記メディアアイテムのそれぞれに対する第１の暗号鍵は、キャッシュおよび保護されており、
事前にキャッシュされた前記メディアアイテムのコンテンツは、前記第１の暗号鍵を用いて復号される請求項８に記載の方法。
【請求項１７】
前記選択された保護メディアアイテムの前記残りの部分を受信する段階と、
前記キャッシュが満杯になるまで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュ内の対応するファイルに付加する段階と
をさらに備え、
前記選択された保護メディアアイテムの残りの部分に対する第２の暗号鍵が、キャッシュおよび保護される
請求項１６に記載の方法。
【請求項１８】
前記キャッシュは移動性バッファとして機能し、リアルタイムで前記キャッシュから前記選択された保護メディアアイテムの前記残りの部分を再生している間、リアルタイムよりも高速のレートで、前記選択されたメディアアイテムの前記残りの部分を前記キャッシュに入れ続け、
前記選択された保護メディアアイテムの前記残りの部分は、前記第２の暗号鍵で復号される
請求項１７に記載の方法。
【請求項１９】
請求項８から請求項１８のいずれかに記載の方法をコンピュータに実行させるプログラム。
【外国語明細書】
2010158008.tif 000010
2010158008.tif 000011
2010158008.tif 000012
2010158008.tif 000013
2010158008.tif 000014
2010158008.tif 000015
2010158008.tif 000016
2010158008.tif 000017
2010158008.tif 000018
2010158008.tif 000019
2010158008.tif 000020
2010158008.tif 000021
2010158008.tif 000022
2010158008.tif 000023
2010158008.tif 000024
2010158008.tif 000025
2010158008.tif 000026
2010158008.tif 000027
2010158008.tif 000028
2010158008.tif 000029
2010158008.tif 000030
2010158008.tif 000031
2010158008.tif 000032
2010158008.tif 000033
2010158008.tif 000034
2010158008.tif 000035
2010158008.tif 000036
2010158008.tif 000037