JP2005252402A - コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム - Google Patents

コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP2005252402A
JP2005252402A JP2004056778A JP2004056778A JP2005252402A JP 2005252402 A JP2005252402 A JP 2005252402A JP 2004056778 A JP2004056778 A JP 2004056778A JP 2004056778 A JP2004056778 A JP 2004056778A JP 2005252402 A JP2005252402 A JP 2005252402A
Authority
JP
Japan
Prior art keywords
recording
program
content
reservation
recording reservation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004056778A
Other languages
English (en)
Inventor
Makoto Ishii
誠 石井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2004056778A priority Critical patent/JP2005252402A/ja
Publication of JP2005252402A publication Critical patent/JP2005252402A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】 1台の記録装置の同時記録可能な能力以上の映像の記録を行なう。
【解決手段】 多数の映像記録装置がブロードバンド化したネットワークに常時接続され、連携作用により、お互いに非稼動の資源を提供し、録画操作と記録領域を共有する。個々のAV記録装置は、通常は内蔵された記憶装置に記録を行なう。但し、同時記録可能な能力以上の映像記録要求が発生した場合には、ネットワーク上で連携する他の映像記録装置の非稼働資源を活用し、映像記録を行なう。したがって、1台の映像記録装置の負担を必要とせずに、多チャンネル大容量映像記録装置を実現することができる。
【選択図】 図17

Description

本発明は、放送局から提供される番組コンテンツを記録するコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムに係り、特に、同一時間帯に提供される複数の同時映像を記録するコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムに関する。
さらに詳しくは、本発明は、1台の記録装置の同時記録可能な能力以上の映像の記録を行なうコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムに係り、特に、非稼動状態の機器の資源を利用して同時記録可能な能力以上の映像に応じるコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムに関する。
現代の情報文明社会において、放送の役割は計り知れない。とりわけ、音響とともに映像情報を視聴者の元に直接届けるテレビ放送の影響は大きい。放送技術は、信号処理やその送受信、音声や映像の情報処理など、幅広い技術を包含する。また、番組コンテンツをユーザに提供する伝送形態は、地上波や衛星波などの電波による放送方式やケーブル・テレビ方式、さらにはコンピュータ通信を利用して提供されるネット番組などさまざまである。
テレビの普及率は極めて高く、ほとんどすべての家庭内に設置されており、各放送局から配信される放送コンテンツは不特定多数の人々によって視聴されている。また、放送コンテンツを視聴する他の形態として、受信したコンテンツを視聴者側で一旦録画しておき、好きな時間に再生するということが挙げられる。
最近ではデジタル技術の発達により、映像や音声からなるAVデータを大量に蓄積することが可能になってきた。例えば、数十GBあるいはそれ以上の容量を持つHDD(ハードディスク・ドライブ)が比較的安価に入手することが可能となり、HDDベースの録画機や、テレビ番組の録画/視聴機能を持ったパーソナル・コンピュータ(PC)などが登場してきている。
HDDは、記録データへのランダム・アクセスが可能な装置である。したがって、録画コンテンツを再生するときは、従来のビデオ・テープの場合のように、録画しておいた番組を単に先頭から順に再生する必要はなく、好きな番組(あるいは、番組中の特定のシーンや特定のコーナー)から直接再生を開始することができる。ハードディスク装置などの大容量ストレージを搭載した受信機(テレビやビデオ録画再生装置)を使用し、受信した放送コンテンツ一旦受信機内に蓄積してから再生するという視聴形態のことを、「サーバ型放送」と呼ぶ。
サーバ型放送システムによれば、通常のテレビ受像のようなリアルタイムで視聴するだけでなく、あらかじめ映像や音声を配信しておき、指定した時刻から視聴できるようにしたり、同時に配信される情報などを利用してシーン検索やダイジェスト視聴を行なったりすることが可能となる。
ところで、これまでビデオ録画装置では同一時間に1つの映像しか記録できなかったが、最近では、記憶容量の大容量化や多重チューナ化によって複数チャンネルの映像を同時記録できるようになっている。
今後、BS放送、CS放送、地上波デジタル放送など、放送事業の発展とともに、複数の映像提供者による多チャンネル化がますます進むと考えられている。これと相俟って、ユーザの好みを学習し自動的にテレビ番組を収集するような仕組みを始めとして、番組コンテンツの視聴支援システムが充実してきている。この結果、同一時間に録画しなければならない映像は増えていく。
しかしながら、この要求を満たそうと映像記録装置側で複数の同時映像記録の能力を限りなく追求して実現させようとすることはコスト的に非現実的である。
例えば、ユーザに代わって録画の代行を行なうシステムについて幾つか提案がなされている。この場合、録画代行サーバが多重チューナや巨大容量のディスクを備えることで、ユーザ側の記録機器の能力を超えて同時記録機能を実現することができる(例えば、特許文献1、特許文献2、特許文献3を参照のこと)。
しかしながら、この場合、録画代行サーバの負荷が高く、運用コストの面で問題があるとともに、録画代行したコンテンツをサーバからユーザへ配布する行為がコンテンツ提供者側に著作権やその他コンテンツの利用に関する権限の取扱い上問題となりかねない。また、一部のユーザにおいて記録機器が同時記録機能を超えた映像記録要求が発生する一方、他のユーザにおいては記録機器が非稼動状態であるという資源利用の不均一性の問題がある。
特開2002−112234号公報 特開2002−344860号公報 特開2002−290882号公報
本発明の目的は、同一時間帯に提供される複数の同時映像を好適に記録することができる、優れたコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムを提供することにある。
本発明のさらなる目的は、1台の記録装置の同時記録可能な能力以上の映像の記録を行なうことができる、優れたコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムを提供することにある。
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、番組コンテンツの録画予約機能を備えた複数の機器をネットワーク上で連携させ、前記ネットワーク上の非稼動資源を利用して同一時間帯に提供される複数の同時映像を記録するコンテンツ記録システムであって、
前記ネットワーク経由で連携するいずれかの機器上で、録画予約に関するユーザからの要求を入力するユーザ入力手段と、
前記ユーザ入力手段を介して番組コンテンツの録画予約要求が入力されたことに応答して、該録画予約要求された時間帯において録画予約可能な非稼動資源を持つ機器を前記ネットワーク上で探索する非稼動資源探索手段と、
前記非稼動資源探索手段により発見された機器において要求されている録画予約を設定する録画予約設定手段と、
を具備することを特徴とするコンテンツ記録システムである。
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
本発明は、録画予約機能を備えた2以上のCE機器間における動作をネットワーク経由で好適に連携させ、分散型の大容量AV記録システムを構築する。このような記録システムによれば、例えば、録画操作と記録領域の共有を実現することができ、別々の場所に設定されている非稼動状態の機器の資源を利用して同時記録可能な能力以上の映像に応じることができる。
例えば、ある家庭のAV記録機器において同時記録可能な能力以上の映像記録要求が発生した場合、代行予約サーバの仲介により、ネットワーク上で連携する他の映像記録装置の非稼働資源を探索し、他の家庭のAV記録機器のチューナと記録領域などのハードウェア資源を利用して超過の同時映像記録を行なうことができる。但し、代行予約サーバは、代行録画のためにチューナや記憶領域などの資源は提供しないので、サービス加入者数が増えても、処理上の負担増加は少なく、ハードウェアの拡張を必要としない。
ここで、前記非稼動資源探索手段は、録画予約要求された時間帯において、番組コンテンツを受信可能なチューナ、番組コンテンツを記録可能な空き記憶容量、又はプロセッサの余剰の処理負荷を非稼動資源として持つ機器を探索する。
前記非稼動資源探索手段は、まず番組コンテンツの録画予約要求が入力された機器上で非稼動資源を探索し、当該機器の同時録画能力を超える場合には、当該機器と同一地域において録画予約可能な非稼動資源を持つ他の機器を前記ネットワーク上でさらに探索する。
すなわち、個々のAV記録装置は、通常は内蔵された記憶装置に記録を行なう。但し、同時記録可能な能力以上の映像記録要求が発生した場合には、録画依頼者側のAV記録装置に代わってネットワーク上で連携する他の映像記録装置の非稼働資源を探索し、録画代行者側のAV記録機器において映像記録すなわち録画の代行を行なう。この録画代行の際、録画依頼者と録画代行者の間で取り交わされる録画代行の照会作業を行なうため、各家庭のホームネットワークに接続されているAV記録機器で設定されている録画予約に関する録画予約情報を収集する。
そして、前記非稼動資源探索手段は、録画代行を行なう場合には、録画予約要求されたものと同一番組を録画予約設定している機器を探索する。このような機器に録画代行を行なわせることにより、ネットワーク上のチューナ・リソースを共有することができ、より多くの録画予約を設定することが可能となる。
また、前記非稼動資源探索手段は、前記ネットワーク上の録画予約可能な各機器における視聴可能なチャンネル、空き録画予約時間、録画予約状況を管理する資源管理手段を備えてもよい。このような場合、録画予約可能な非稼動資源を持つ他の機器を前記ネットワーク上で探索する際に、録画予約要求元の機器において視聴可能なチャンネルの録画予約要求であるかどうかを管理データベースで照合することができる。
録画代行の照会作業の際、録画依頼者がローカルで録画可能なチャンネル以上の能力を使用できてはならない。何故ならば、例えば録画依頼者が加入していない放送受信サービスを、当該サービスに加入している録画代行者に録画代行を依頼する、不正な放送受信に相当する行為を禁じる必要があるからである。
このようにして前記非稼動資源探索手段が前記ネットワーク上の他の機器に非稼動資源を見つけた場合、前記録画予約設定手段は、当該他の機器に番組コンテンツの代行記録を要求する。
そして、前記ネットワーク上で連携する各機器は、自機上で録画予約設定された番組並びに代行記録要求に応じて録画予約設定された番組の放送時間の到来に応答して番組コンテンツの記録処理を行なう。
ここで、前記ネットワーク上で連携する各機器は、自機上で録画予約設定されたものと同一番組を代行記録する場合、別のファイルにして保存するようにする。この仕組みのことを「冗長化録画」と呼ぶ。冗長化録画の1つの目的は、録画依頼者と録画代行者とで、映像記録されたコンテンツの著作権やその他使用に関する権利問題を別々に取り扱えるようにすることにある。例えば、録画代行者側のAV記録装置は、代行録画用のファイルを録画依頼者の公開暗号鍵で暗号化し、録画代行者自身はコンテンツを記録するものの視聴できないようにする。
代行録画が完了した後、代行録画した番組コンテンツを代行録画した機器から録画予約要求元の機器へ移動する。例えば、代行録画した機器と録画予約要求元の機器間で一対一の通信方式によりコンテンツファイルの転送を行なう。
そして、前記コンテンツ移動手段により代行記録した番組コンテンツを移動した後、代行記録した機器上に保存されている当該番組コンテンツを削除し、代行記録に使用したリソースを解放する。
また、本発明の第2の側面は、番組コンテンツの録画予約機能を備えた複数の機器をネットワーク上で連携させ、前記ネットワーク上の非稼動資源を利用して同一時間帯に提供される複数の同時映像を記録するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、
前記ネットワーク経由で連携するいずれかの機器上で、録画予約に関するユーザからの要求を入力するユーザ入力ステップと、
番組コンテンツの録画予約要求が入力されたことに応答して、該録画予約要求された時間帯において録画予約可能な非稼動資源を持つ機器を前記ネットワーク上で探索する非稼動資源探索ステップと、
前記非稼動資源探索ステップにおいて発見された機器において要求されている録画予約を設定する録画予約設定ステップと、
を具備することを特徴とするコンピュータ・プログラムである。
本発明の第2の側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第2の側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1の側面に係るコンテンツ記録システムと同様の作用効果を得ることができる。
本発明によれば、同一時間帯に提供される複数の同時映像を好適に記録することができる、優れたコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムを提供することができる。
また、本発明によれば、1台の記録装置の同時記録可能な能力以上の映像の記録を行なうことができる、優れたコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムを提供することができる。
また、本発明によれば、非稼動状態の機器の資源を利用して同時記録可能な能力以上の映像に応じることができる、優れたコンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラムを提供することができる。
本発明によれば、ユーザの見たい番組をすべて録画するという仕組みを、ハードウェアを拡張することなく実現できる。これにより、放送という番組垂れ流しの概念から、番組のタイムテーブルを自分のスタイルに合わせて組み合わせて自分だけの専用テレビ局にしてしまうことが可能である。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
以下、図面を参照しながら本発明の実施形態について詳解する。
本発明は、1台の記録装置の同時記録可能な能力以上の映像の記録を行なうものである。具体的には、録画予約機能を備えた2以上のCE機器間における動作をネットワーク経由で好適に連携させ、別々の場所に設定されている非稼動状態の機器の資源を利用して同時記録可能な能力以上の映像に応じるものである。ネットワーク上の機器同士を連携させるために、機器の協調動作により高い演算性能を実現するためのグリッドコンピューティング技術を活用する。
本発明では、映像を受信するチューナとこれを保存する記録領域を備えた多数の映像記録装置がブロードバンド化したネットワークに常時接続され、連携作用により、お互いに非稼動の資源を提供し、録画操作と記録領域を共有することができる。個々のAV記録装置は、自動又はユーザの手動で録画したい番組を選別し、通常は内蔵された記憶装置に記録を行なう。但し、同時記録可能な能力以上の映像記録要求が発生した場合には、ネットワーク上で連携する他の映像記録装置の非稼働資源を活用し、映像記録を行なう。したがって、1台の映像記録装置の負担(ハードウェアの拡張)を必要とせずに、多チャンネル大容量映像記録装置を実現することができる。
A.システム構成
本発明は、録画予約機能を備えた2以上の情報処理装置間における動作をホームネットワーク経由で好適に連携させることにより、別々の場所に設定されている各機器における録画予約操作を簡易且つ効率的にするものである。ホームネットワーク上の機器同士を連携させるために、機器の協調動作により高い演算性能を実現するためのグリッドコンピューティング技術を活用する。
図1には、グリッドコンピューティングを適用して構成される、ネットワークシステムの構成を模式的に示している。
ネットワークは、インターネットやその他の広域ネットワーク、並びに、広域ネットワークとはゲートウェイなどを介して接続されるLAN(Local Area Network)やホームネットワークなどのプライベートなネットワークで構成される。ホームネットワークは、物理的には、10BaseTや100BaseTX、Giga eatherなどの標準的なネットワークインターフェースで構成することができる。また、ホームネットワーク上で他の機器を発見する仕組みとしてUpnp(Universal Plug and Play)を利用することができる。Upnpによれば、ネットワーク接続された機器間で、XML(eXtended Markup Language)形式で記述された定義ファイルを交換し、アドレッシング処理、ディスカバリ処理、サービス要求処理を経て相互認証を行なう。あるいは同一セグメント内での規定の機器情報を記述したパケットのブロードキャストすることによっても実現可能である。
ネットワーク上には、複数の情報処理装置が接続されている。情報処理装置の例として、DVDレコーダやHDレコーダのような、記録メディアを搭載し録画予約機能を備えたAV機器、あるいはコンパクト・ディスクなどの記録機能を持たない再生専用のAV機器、その他の情報処理装置が挙げられる。また、情報処理装置の他の例は、PDAやパーソナル・コンピュータなどの計算機処理システムを挙げることができる。図1に示す例では、ネットワーク9を介して複数の情報処理装置1、2、3、4が接続されている。
A−1.情報処理装置及び情報処理コントローラ
情報処理装置1、2、3、4は、例えば各種のAV(Audio and Visual)機器やポータブル機器である(後述)。
図示の通り、情報処理装置1は、コンピュータ機能部として情報処理コントローラ11を備える。情報処理コントローラ11は、メインプロセッサ21−1、サブプロセッサ23−1、23−2、23−3、DMAC(ダイレクトメモリアクセスコントローラ)25−1、及びDC(ディスクコントローラ)27−1を備えている。情報処理コントローラ11は、ワンチップIC(集積回路)として構成することが望ましい。
メインプロセッサ21−1は、サブプロセッサ23−1、23−2、23−3によるプログラム実行(データ処理)のスケジュール管理と、情報処理コントローラ11(情報処理装置1)の全般的な管理とを行なう。但し、メインプロセッサ21−1内で管理を行なうためのプログラム以外のプログラムが動作するように構成することもできる。この場合、メインプロセッサ21−1はサブプロセッサとしても機能することになる。メインプロセッサ21−1は、LS(ローカル・ストレージ)22−1を備えている。
1台の情報処理装置に備わるサブプロセッサは1つでもよいが、望ましくは複数とする。図示の例では、複数の場合である。各サブプロセッサ23−1、23−2、23−3は、メインプロセッサ21−1の制御下で、並列的且つ独立にプログラムを実行し、データを処理する。さらに、場合によってメインプロセッサ21−1内のプログラムがサブプロセッサ23−1、23−2、23−3内のプログラムと連携して動作することもできる。各サブプロセッサ23−1、23−2、23−3も、それぞれLS(ローカルストレージ)24−1、24−2、24−3を備えている。
DMAC(直接メモリアクセスコントローラ)25−1は、情報処理コントローラ11に接続されたDRAM(ダイナミックRAM)などからなるメインメモリ26−1に格納されているプログラム及びデータにプロセッサの介在なしにアクセスするものである。また、DC(ディスクコントローラ)27−1は、情報処理コントローラ11に接続された外部記録部28−1、28−2へのアクセス動作を制御する。
外部記録部28−1、28−2は、固定ディスク(ハードディスク)、あるいはリムーバブル・ディスクのいずれの形態でもよい。また、リムーバブル・ディスクとして、MO(磁気ディスク)、CD±RW、DVD±RWなどの光ディスク、メモリ・ディスク、SRAM(スタティックRAM)、ROMなど各種の記録メディアを用いることができる。DC27−1は、ディスクコントローラと称するが、要するに外部記録部コントローラである。図1に示すように、外部記録部28を複数接続できるように、情報処理コントローラ11を構成することができる。
メインプロセッサ21−1、各サブプロセッサ23−1、23−2、23−3、DMAC25−1、及びDC27−1は、バス29−1によって相互接続されている。
情報処理コントローラ11には、当該情報処理コントローラ11を搭載する情報処理装置1をネットワーク全体を通して一意に識別できる識別子が、情報処理装置IDとして割り当てられている。また、メインプロセッサ21−1及び各サブプロセッサ23−1、23−2、23−3に対しても同様に、それぞれを特定できる識別子が、メインプロセッサID及びサブプロセッサIDとして割り当てられる。
他の情報処理装置2、3、4も同様に構成されるので、説明を省略する。ここで、親番号が同一であるユニットは枝番号が異なっていても、特に断りがない限り同じ働きをするものとする。また、以下の説明において枝番号が省略されている場合には、枝番号の違いにいる差異を生じないものとする。
A−2.各サブプロセッサからメインメモリへのアクセス
上述したように、1つの情報処理コントローラ内の各サブプロセッサ23は、独立にプログラムを実行し、データを処理するが、異なるサブプロセッサがメインメモリ26内の同一領域に対して同時に読み出し又は書き込みを行なった場合には、データの不整合を生じ得る。そこで、サブプロセッサ23からメインメモリ26へのアクセスは、以下のような手順によって行なう。
図2(A)には、メインメモリ26内のロケーションを示している。同図に示すように、メインメモリ26は複数のアドレスを指定できるメモリロケーションによって構成され、各メモリロケーションに対してデータの状態を示す情報を格納するための追加セグメントが割り振られる。追加セグメントは、F/Eビット、サブプロセッサID及びLSアドレス(ローカル・ストレージアドレス)を含むものとされる。また、各メモリロケーションには、後述のアクセス・キーも割り振られる。F/Eビットは、以下のように定義される。
F/Eビット=0は、サブプロセッサ23によって読み出されている処理中のデータ、又は空き状態であるため最新データではない無効データであり、読み出し不可であることを示す。また、F/Eビット=0は、当該メモリ・ロケーションにデータ書き込み可能であることを示し、書き込み後に1に設定される。
F/Eビット=1は、当該メモリロケーションのデータがサブプロセッサ23によって読み出されておらず、未処理の最新データであることを示す。当該メモリ・ロケーションのデータは読み出し可能であり、サブプロセッサ23によって読み出された後に0に設定される。また、F/Eビット=1は、当該メモリ・ロケーションがデータ書き込み不可であることを示す。
さらに、上記F/Eビット=0(読み出し不可/書き込み可)の状態において、当該メモリ・ロケーションについて読み出し予約を設定することは可能である。F/Eビット=0のメモリロケーションに対して読み出し予約を行なう場合には、サブプロセッサ23は、読み出し予約を行なうメモリロケーションの追加セグメントに、読み出し予約情報として当該サブプロセッサ23のサブプロセッサID及びLSアドレスを書き込む。
その後、データ書き込み側のサブプロセッサ23により、読み出し予約されたメモリ・ロケーションにデータが書き込まれ、F/Eビット=1(読み出し可/書き込み不可)に設定されたとき、あらかじめ読み出し予約情報として追加セグメントに書き込まれたサブプロセッサID及びLSアドレスに読み出される。
複数のサブプロセッサによってデータを多段階に処理する必要がある場合、このように各メモリロケーションのデータの読み出し/書き込みを制御することにより、前段階の処理を行なうサブプロセッサ23が処理済みのデータをメインメモリ26上の所定のアドレスに書き込んだ後に即座に、後段階の処理を行なう別のサブプロセッサ23が前処理後のデータを読み出すことが可能となる。
また、図2(B)には、各サブプロセッサ23内のLS24におけるメモリロケーションを示している。同図に示すように、各サブプロセッサ23内のLS24も、複数のアドレスを指定できるメモリロケーションによって構成される。各メモリロケーションに対しては、同様に追加セグメントが割り振られる。追加セグメントは、ビジービットを含むものとされる。
サブプロセッサ23がメインメモリ26内のデータを自身のLS24のメモリロケーションに読み出すときには、対応するビジービットを1に設定して予約する。ビジービットが1であるメモリロケーションには、他のデータは格納することができない。LS24のメモリロケーションに読み出し後、ビジービットは0になり、任意の目的に使用できるようになる。
図2(A)に示すように、さらに、各情報処理コントローラと接続されたメインメモリ26には、メインメモリ26内の領域を画定する複数のサンドボックスが含まれる。メインメモリ26は、複数のメモリロケーションから構成されるが、サンドボックスは、これらのメモリロケーションの集合である。各サンドボックスは、サブプロセッサ23毎に割り当てられ、該当するサブプロセッサが排他的に使用することができる。すなわち、各々のサブプロセッサ23は、自身に割り当てられたサンドボックスを使用できるが、この領域を超えてデータのアクセスを行なうことはできない。
さらに、メインメモリ26の排他的な制御を実現するために、図2(C)に示すようなキー管理テーブルが用いられる。キー管理テーブルは、情報処理コントローラ内のSRAMのような比較的高速のメモリに格納され、DMAC25と関連付けられる。キー管理テーブル内の各エントリには、サブプロセッサID、サブプロセッサ・キー及びキーマスクが含まれる。
サブプロセッサ23がメインメモリ26を使用する際のプロセスは、以下の通りである。まず、サブプロセッサ23はDMAC25に、読み出しまたは書き込みのコマンドを出力する。このコマンドには、自身のサブプロセッサIDと、使用要求先であるメインメモリ26のアドレスが含まれる。
DMAC25は、このコマンドを実行する前にキー管理テーブルを参照し、使用要求元のサブプロセッサのサブプロセッサキーを調べる。次に、DMAC25は、調べた使用要求元のサブプロセッサキーと、使用要求先であるメインメモリ26内の図2(A)に示したメモリロケーションに割り振られたアクセスキーとを比較して、2つのキーが一致した場合にのみ、上記のコマンドを実行する。
図2(C)に示したキー管理テーブル上のキーマスクは、その任意のビットが1になることによって、そのキーマスクに関連付けられたサブプロセッサキーの対応するビットが0又は1になることができる。
例えば、サブプロセッサキーが1010であるとする。通常、このサブプロセッサキーによって1010のアクセスキーを持つサンドボックスへのアクセスだけが可能になる。しかし、このサブプロセッサキーと関連付けられたキーマスクが0001に設定されている場合には、キーマスクのビットが1に設定された桁のみにつき、サブプロセッサキーとアクセスキーとの一致判定がマスクされ、このサブプロセッサキー1010によってアクセスキーが1010又は1011のいずれかであるアクセスキーを持つサンドボックスへのアクセスが可能となる。
以上のようにして、メインメモリ26のサンドボックスの排他性が実現される。すなわち、1つの情報処理コントローラ内の複数のサブプロセッサによってデータを多段階に処理する必要がある場合、前段階の処理を行なうサブプロセッサと、後段階の処理を行なうサブプロセッサのみが、メインメモリ26の所定アドレスにアクセスできるようになり、データを保護することができる。
このようなメモリの排他制御は、例えば以下のように使用することができる。まず、情報処理装置の起動直後においては、キーマスクの値はすべてゼロである。メインプロセッサ内のプログラムが実行され、サブプロセッサ内のプログラムと連携動作するものとする。第1のサブプロセッサにより出力された処理結果データを一旦メインメモリに格納し、第2のサブプロセッサに入力したいときには、該当するメインメモリ領域は、当然どちらのサブプロセッサからもアクセス可能である必要がある。このような場合に、メインプロセッサ内のプログラムは、キーマスクの値を適切に変更し、複数のサブプロセッサからアクセスできるメインメモリ領域を設けることにより、サブプロセッサによる多段階的の処理を可能にする。
より具体的には、他の情報処理装置からのデータ→第1のサブプロセッサによる処理→第1のメインメモリ領域→第2のサブプロセッサによる処理→第2のメインメモリ領域、という手順で多段階処理が行なわれるときには、以下のような設定のままでは、第2のサブプロセッサは第1のメインメモリ領域にアクセスすることができない。
第1のサブプロセッサのサブプロセッサ・キー:0100、
第1のメインメモリ領域のアクセス・キー :0100、
第2のサブプロセッサのサブプロセッサ・キー:0101、
第2のメインメモリ領域のアクセス・キー :0101
そこで、第2のサブプロセッサのキーマスクを0001にすることにより、第2のサブプロセッサによる第1のメインメモリ領域へのアクセスを可能にすることができる。
A−3.ソフトウェアセルの生成及び構成
図1のネットワークシステムでは、情報処理装置1、2、3、4間での分散処理のために、情報処理装置1、2、3、4間でソフトウェアセルが伝送される。すなわち、ある情報処理装置内の情報処理コントローラに含まれるメインプロセッサ21は、コマンド、プログラム及びデータを含むソフトウェアセルを生成し、ネットワーク9を介して他の情報処理装置に送信することによって、処理を分散することができる。
図3には、ソフトウェアセルの構成の一例を示している。図示のソフトウェアセルは、送信元ID、送信先ID、応答先ID、セルインターフェース、DMAコマンド、プログラム、及びデータによって構成される。
送信元IDには、ソフトウェアセルの送信元である情報処理装置のネットワーク・アドレス及び当該情報処理装置内の情報処理コントローラの情報処理装置ID、さらに、当該情報処理装置内の情報処理コントローラが備えるメインプロセッサ21及び各サブプロセッサ23の識別子(メインプロセッサID及びサブプロセッサID)が含まれる。
送信先ID及び応答先IDには、ソフトウェアセルの送信先である情報処理装置、及びソフトウェアセルの実行結果の応答先である情報処理装置についての同じ情報がそれぞれ含まれる。
セルインターフェースは、ソフトウェアセルの利用に必要な情報であり、グローバルID、必要なサブプロセッサの情報、サンドボックスサイズ、及び前回のソフトウェアセルIDで構成される。
グローバルIDは、ネットワーク全体を通して当該のソフトウェアセルを一意的に識別できるものであり、送信元IDと、ソフトウェアセルの作成又は送信の日時(日付及び時刻)に基づいて作成される。
必要なサブプロセッサの情報は、当該ソフトウェアセルの実行に必要なサブプロセッサの数が設定される。サンドボックス・サイズは、当該ソフトウェアセルの実行に必要なメインメモリ26内及びサブプロセッサ23のLS24内のメモリ量が設定される。
前回のソフトウェアセルIDは、ストリーミングデータなどのシーケンシャルな実行を要求する1グループのソフトウェアセル内の、前回のソフトウェアセルの識別子である。
ソフトウェアセルの実行セクションは、DMAコマンド、プログラム及びデータで構成される。DMAコマンドには、プログラムの起動に必要な一連のDMAコマンドが含まれ、プログラムには、サブプロセッサ23によって実行されるサブプロセッサプログラムが含まれる。ここでのデータは、このサブプロセッサプログラムを含むプログラムによって処理されるデータである。
さらに、DMAコマンドには、ロードコマンド、キックコマンド、機能プログラム実行コマンド、ステータス要求コマンド、及びステータス返信コマンドが含まれる。
ロードコマンドは、メインメモリ26内の情報をサブプロセッサ23内のLS24にロードするコマンドであり、ロード・コマンド自体の他に、メインメモリアドレス、サブプロセッサID及びLSアドレスを含む。メインメモリアドレスは、情報のロード元であるメインメモリ26内の所定領域のアドレスを示す。サブプロセッサID及びLSアドレスは、情報のロード先であるサブプロセッサ23の識別子及びLS24のアドレスを示す。
キックコマンドは、プログラムの実行を開始するコマンドであり、キックコマンド自体の他に、サブプロセッサID及びプログラム・カウンタを含む。サブプロセッサIDは、キック対象のサブプロセッサ23を識別し、プログラムカウンタは、プログラム実行用プログラムカウンタのためのアドレスを与える。
機能プログラム実行コマンドは、ある情報処理装置が他の情報処理装置に対して、機能プログラムの実行を要求するコマンドである(後述)。機能プログラム実行コマンドを受信した情報処理装置内の情報処理コントローラは、機能プログラムID(後述)によって、起動すべき機能プログラムを識別する。
ステータス要求コマンドは、送信先IDで示される情報処理装置の現在の動作状態(状況)に関する装置情報を、応答先IDで示される情報処理装置宛に送信要求するコマンドである。機能プログラムについては後述するが、図6に示す情報処理コントローラのメインメモリ26が記憶するソフトウェアの構成図において機能プログラムにカテゴライズされるプログラムである。機能プログラムは、メインメモリ26にロードされ、メインプロセッサ21により実行される。
ステータス返信コマンドは、上記のステータス要求コマンドを受信した情報処理装置が、自身の装置情報を当該ステータス要求コマンドに含まれる応答先IDで示される情報処理装置に応答するコマンドである。ステータス返信コマンドは、実行セクションのデータ領域に装置情報を格納する。
図4には、DMAコマンドがステータス返信コマンドである場合におけるソフトウェアセルのデータ領域の構造を示している。
情報処理装置IDは、情報処理コントローラを備える情報処理装置を識別するための識別子であり、ステータス返信コマンドを送信する情報処理装置のIDを示す。情報処理装置IDは、電源投入時に、その情報処理装置内の情報処理コントローラに含まれるメインプロセッサ21によって、電源投入時の日時、情報処理装置のネットワークアドレス及び情報処理装置内の情報処理コントローラに含まれるサブプロセッサ23の数などに基づいて生成される。
情報処理装置種別IDには、当該情報処理装置の特徴を表す値が含まれる。ここで言う情報処理装置の特徴とは、例えば、ハードディスクレコーダ(後述)、PDA(Personal Digital Assistants)、ポータブルCD(Compact Disc)プレーヤなどである。また、情報処理装置種別IDは、映像音声記録、映像音声再生など、情報処理装置が持つ機能を表すものであってもよい、情報処理装置の特徴や機能を表す値はあらかじめ決められているものとし、情報処理装置種別IDを呼び出すことにより当該情報処理装置の特徴や機能を把握することが可能である。
MS(マスター/スレーブ)ステータスは、後述のように情報処理装置がマスター装置またはスレーブ装置のいずれで動作しているかを表すもので、これが0に設定されている場合にはマスター装置として動作していることを示し、1に設定されている場合にはスレーブ装置として動作していることを示す。
メインプロセッサ動作周波数は、情報処理コントローラ内のメインプロセッサ21の動作周波数を表す。メインプロセッサ使用率は、メインプロセッサ21で現在動作しているすべてのプログラムについての、メインプロセッサ21での使用率を表す。メインプロセッサ使用率は、対象メインプロセッサの全処理能力に対する使用中の処理能力の比率を表した値で、例えばプロセッサ処理能力評価のための単位であるMIPSを単位として算出され、又は単位時間当りのプロセッサ使用時間に基づいて算出される。後述のサブプロセッサ使用率についても同様である。
サブプロセッサ数は、当該の情報処理コントローラが備えるサブプロセッサ23の数を表す。サブプロセッサIDは、当該の情報処理コントローラ内の各サブプロセッサ23を識別するための識別子である。
サブプロセッサステータスは、各サブプロセッサ23の状態を表すものであり、unused、reserved,busyなどの状態がある。unusedは、当該サブプロセッサが現在使用されてなく、使用の予約もされていないことを示す。reservedは、現在は使用されていないが、予約されている状態を示す。busyは、現在使用中であることを示す。
サブプロセッサ使用率は、当該のサブプロセッサで現在実行している、又は当該のサブプロセッサに実行が予約されているプログラムについての、当該サブプロセッサでの使用率を表す。すなわち、サブプロセッサ使用率は、サブプロセッサステータスがbusyである場合には、現在の使用率を示し、サブプロセッサステータスがreservedである場合には、後に使用される予定の推定使用率を示す。
サブプロセッサID、サブプロセッサステータス及びサブプロセッサ使用率は、1つのサブプロセッサ23に対して一組設定され、1つの情報処理コントローラ内のサブプロセッサ23に対応する組数が設定される。
メインメモリ総容量及びメインメモリ使用量は、それぞれ、当該の情報処理コントローラに接続されているメインメモリ26の総容量及び現在使用中の容量を表す。
外部記録部数は、当該の情報処理コントローラに接続されている外部記録部28の数を表す。外部記録部IDは、当該の情報処理コントローラに接続されている外部記録部28を一意的に識別する情報である。外部記録部種別IDは、当該の外部記録部の種類(例えば、ハードディスク、CD±RW、DVD±RW、メモリディスク、SRAM、ROMなど)を表す。
外部記録部総容量及び外部記録部使用量は、それぞれ外部記録部IDによって識別される外部記録部28の総容量及び現在使用中の容量を表す。
外部記録部ID、外部記録部種別ID、外部記録部総容量及び外部記録部使用量は、1つの外部記録部28に対して1組設定されるものであり、当該情報処理コントローラに接続されている外部記録部28の数の組数だけ設定される。すなわち、1つの情報処理コントローラに複数の外部記録部が接続されている場合、それぞれの外部記録部には異なる外部記録部IDが割り当てられ、外部記録部種別ID、外部記録部総容量及び外部記録部使用量も別々に管理される。
A−4ソフトウェアセルの実行
ある情報処理装置内の情報処理コントローラに含まれるメインプロセッサ21は、上述したような構成のソフトウェアセルを生成し、ネットワーク9を介して他の情報処理装置及び当該装置内の情報処理コントローラに送信する。送信元の情報処理装置、送信先の情報処理装置、応答先の情報処理装置、及び各装置内の情報処理コントローラは、それぞれ、上記の送信元ID、送信先ID及び応答先IDによって識別される。
ソフトウェアセルを受信した情報処理装置内の情報処理コントローラに含まれるメインプロセッサ21は、そのソフトウェアセルをメインメモリ26に格納する。さらに、送信先のメインプロセッサ21は、ソフトウェアセルを読み出し、それに含まれるDMAコマンドを処理する。
具体的には、送信先のメインプロセッサ21は、まず、ロードコマンドを実行する。これによって、ロードコマンドで指示されたメインメモリアドレスから、ロードコマンドに含まれるサブプロセッサID及びLSアドレスで特定されるサブプロセッサ内のLS24の所定領域に情報がロードされる。ここでロードされる情報は、受信したソフトウェアセルに含まれるサブプロセッサプログラム又はデータ、あるいはその他の指示されたデータである。
次に、メインプロセッサ21は、キックコマンドを、これに含まれるサブプロセッサIDで指示されたサブプロセッサに、同様にキックコマンドに含まれるプログラムカウンタとともに出力する。
指示されたサブプロセッサは、そのキックコマンド及びプログラムカウンタに従って、サブプロセッサプログラムを実行する。そして、実行結果をメインメモリ26に格納した後、実行を完了したことをメインプロセッサ21に通知する。
なお、送信先の情報処理装置内の情報処理コントローラにおいてソフトウェアセルを実行するプロセッサはサブプロセッサ23に限定されるものではなく、メインプロセッサ21がソフトウェアセルに含まれる機能プログラムなどのメインメモリ用プログラムを実行するように指定することも可能である。
この場合には、送信元の情報処理装置は、送信先の情報処理装置宛に、サブプロセッサプログラムの代わりに、メインメモリ用プログラム及びそのメインメモリ用プログラムによって処理されるデータを含み、DMAコマンドがロードコマンドであるソフトウェアセルを送信し、メインメモリ26にメインメモリ用プログラム及びそれによって処理されるデータを記憶させる。
次に、送信元の情報処理装置は、送信先の情報処理装置宛に、送信先の情報処理装置内の情報処理コントローラについてのメインプロセッサID、メインメモリ・アドレス、メインメモリ用プログラムを識別するための後述の機能プログラムIDなどの識別子、及びプログラムカウンタを含み、DMAコマンドがキックコマンド又は機能プログラム実行コマンドであるソフトウェアセルを送信し、メインプロセッサ21に当該メインメモリ用プログラムを実行させる。
以上のように、本実施形態に係るネットワークシステムでは、送信元の情報処理装置は、サブプロセッサプログラム又はメインメモリ用プログラムをソフトウェアセルによって送信先の情報処理装置に送信するとともに、当該サブプロセッサプログラムを送信先の情報処理装置内の情報処理コントローラに含まれるサブプロセッサ23にロードさせ、当該サブプロセッサプログラム又は当該メインメモリ用プログラムを送信先の情報処理装置に実行させることができる。
送信先の情報処理装置内の情報処理コントローラでは、受信したソフトウェアセルに含まれるプログラムがサブプロセッサプログラムである場合には、当該サブプロセッサプログラムを指定されたサブプロセッサにロードさせる。そして、ソフトウェアセルに含まれるサブプロセッサプログラム又はメインメモリ用プログラムを実行させる。
したがって、ユーザが送信先の情報処理装置を操作しなくても、当該サブプロセッサプログラム又は当該メインメモリ用プログラムを送信先の情報処理装置内の情報処理コントローラにおいて自動的に実行させることができる。
このようにして情報処理装置は、自装置内の情報処理コントローラがサブプロセッサプログラム又は機能プログラムなどのメインメモリ用プログラムを備えていない場合には、ネットワークに接続された他の情報処理装置からそれらを取得することができる。さらに、各サブプロセッサ間ではDMA方式によりデータ転送を行い、また上述したサンドボックスを使用することにより、1つの情報処理コントローラ内でデータを多段階に処理する必要がある場合でも、高速且つ高セキュリティに処理を実行することができる。
A−5.ネットワークシステムとしての分散処理
図5には、複数の情報処理装置が仮想的な1台の情報処理装置として動作している様子を示している。ソフトウェアセルの使用による分散処理の結果、同図の上段に示すように、ネットワーク9に接続されている複数の情報処理装置1、2、3、4は、同図の下段に示すように、仮想的な1台の情報処理装置7として動作する。但し、このような仮想的な動作を実現するためには、以下のような構成によって、以下のような処理が実行される必要がある。
A−6.システムのソフトウェア構成とプログラムのロード
図6には、個々の情報処理コントローラのメインメモリ26が記憶するソフトウェアの構成を示している。これらのソフトウェア(プログラム)は、情報処理装置に電源が投入される前に、当該の情報処理コントローラに接続される外部記録部28に記録されているものである。各プログラムは、機能又は特徴により、制御プログラム、機能プログラム及びデバイスドライバに分類される。
制御プログラムは、各情報処理コントローラが同じものを備え、各情報処理コントローラのメインプロセッサ21が実行するもので、後述のMS(マスター/スレーブ)マネージャ及び能力交換プログラムを含む。
機能プログラムは、メインプロセッサ21が実行するもので、記録用、再生用、素材検索用など、情報処理コントローラ毎に情報処理装置に応じたものが備えられる。
デバイスドライバは、情報処理コントローラ(情報処理装置)の入出力(送受信)用で、放送受信、モニタ出力、ビットストリーム入出力、ネットワーク入出力など、情報処理コントローラ毎に情報処理装置に応じたものが備えられる。
ケーブルの差し込みなどによって情報処理装置が物理的にネットワーク9に接続された状態で、情報処理装置に主電源が投入され、情報処理装置が電気的・機能的にもネットワーク9に接続されると、その情報処理装置の情報処理コントローラのメインプロセッサ21は、制御プログラムに属する各プログラム、及びデバイスドライバに属する各プログラムを、メインメモリ26にロードする。
プログラムのロード手順としては、メインプロセッサ21は、まず、DC27に読み出し命令を実行させることによって、外部記録部28からプログラムを読み出し、次に、DMAC25に書き込み命令を実行させることによって、そのプログラムをメインメモリ26に書き込む。
機能プログラムに属する各プログラムについては、必要なときに必要なプログラムだけをメモリにロードするように構成してもよく、あるいは他のカテゴリに属するプログラムと同様に、主電源投入直後に各プログラムをロードするように構成してもよい。
機能プログラムに属する各プログラムは、ネットワークに接続されたすべての情報処理装置の外部記録部28に記録されている必要はなく、いずれか1つの情報処理装置の外部記録部28に記録されていれば、前述の方法によって他の情報処理装置からロードすることができるので、結果的に図5の下段に示すように、仮想的な1台の情報処理装置7として機能プログラムを実行することができる。
ここで、前述したようにメインプロセッサ21によって処理される機能プログラムは、サブプロセッサ23によって処理されるサブプロセッサプログラムと連携動作する場合がある。そこでメインプロセッサ21が外部記録部28から機能プログラムを読み出し、メインメモリ26に書き込む際に対象となる機能プログラムと連携動作するサブプロセッサプログラムが存在する場合には、当該サブプロセッサプログラムも併せて同じメインメモリ26に書き込むものとする。この場合、連携動作するサブプロセッサプログラムは1個である場合もあるし、複数個であることもあり得る。複数個である場合には、すべての連携動作するサブプロセッサプログラムをメインメモリ26に書き込むことになる。メインメモリ26に書き込まれたサブプロセッサプログラムはその後、サブプロセッサ23内のLS24に書き込まれ、メインプロセッサ21によって処理される機能プログラムと連携動作する。
そして、サブプロセッサプログラムにもサブプロセッサプログラムIDが割り当てられ、これによりサブプロセッサプログラムを一意的に識別可能である。割り当てられるサブプロセッサプログラムIDは、連携動作する相手となる機能プログラムの機能プログラムIDと関連性のある識別子、例えば機能プログラムIDを親番号とした上で最後尾に枝番号を付加させたものなどであることもあり得るし、連携動作する相手となる機能プログラムの機能プログラムIDとは関連性のない識別子であってもよい。いずれにしても機能プログラムとサブプロセッサプログラムが連携動作する場合には、両者とも相手の識別子であるプログラムIDを自プログラム内に互いに記憶しておく必要がある。機能プログラムが複数個のサブプロセッサプログラムと連携動作する場合にも、当該機能プログラムは複数個あるすべてのサブプロセッサプログラムのサブプロセッサプログラムIDを記憶しておくことになる。
図3のソフトウェアセルに示したように、機能プログラムには、プログラム毎にプログラムを一意的に識別できる識別子が機能プログラムIDとして割り当てられる。機能プログラムIDは、機能プログラムの作成の段階で、作成日時や情報処理装置IDなどから決定される。
メインプロセッサ21は、自身が動作する情報処理装置の装置情報(動作状態に関する情報)を格納するための領域をメインメモリ26に確保し、当該情報を自装置の装置情報テーブルとして記録する。ここで言う装置情報は、図4に示したステータス返信コマンドのデータ領域における情報処理装置ID以下の各情報である。
A−7.システムにおけるマスター/スレーブの決定
上述したネットワークシステムでは、ある情報処理装置への主電源投入時、その情報処理装置の情報処理コントローラのメインプロセッサ21は、マスター/スレーブマネージャ(以下、MSマネージャ)をメインメモリ26にロードし、実行する。
MSマネージャは、自身が動作する情報処理装置がネットワーク9に接続されていることを検知すると、同じネットワーク9に接続されている他の情報処理装置の存在を確認する。ここでの「接続」又は「存在」は、上述したように、情報処理装置が物理的にネットワーク9に接続されているだけでなく、電気的・機能的にもネットワーク9に接続されていることを示す。
また、自身が動作する情報処理装置を自装置、他の情報処理装置を他装置と称する。当該装置も、当該情報処理装置を示すものとする。
MSマネージャが同じネットワーク9に接続されている他の情報処理装置の存在を確認する方法について以下に説明する。
MSマネージャは、DMAコマンドがステータス要求コマンドであり、送信元ID及び応答先IDが当該情報処理装置で、送信先IDを特定しないソフトウェアセルを生成し、当該情報処理装置が接続されたネットワーク上に送信し、ネットワーク接続確認用のタイマーを設定する。タイマーのタイムアウト時間は、例えば10分である。
当該ネットワークシステム上に他の情報処理装置が接続されている場合、その他装置は、上記ステータス要求コマンドのソフトウェアセルを受信し、上記応答先IDで特定されるステータス要求コマンドを発行した情報処理装置に対して、DMAコマンドがステータス返信コマンドで、且つデータとして自身(その他装置)の装置情報を含むソフトウェアセルを送信する。このステータス返信コマンドのソフトウェアセルには、少なくとも当該他装置を特定する情報(情報処理装置ID、メインプロセッサに関する情報、サブプロセッサに関する情報など)、及び当該他装置のMSステータスが含まれる。
ステータス要求コマンドを発行した情報処理装置のMSマネージャは、上記ネットワーク接続確認用のタイマーがタイムアウトするまで、当該ネットワーク上の他装置から送信されるステータス返信コマンドのソフトウェアセルの受信を監視する。その結果、MSステータス=0(マスター装置)を示すステータス返信コマンドが受信された場合には、自装置の装置情報テーブルにおけるMSステータスを1に設定する。これによって、当該装置はスレーブ装置となる。
一方、上記ネットワーク接続確認用のタイマーがタイムアウトするまでの間にステータス返信コマンドがまったく受信されなかった場合、又はMSステータス=0(マスター装置)を示すステータス返信コマンドが受信されなかった場合には、自装置の装置情報テーブルにおけるMSステータスを0に設定する。これによって、当該装置はマスター装置となる。
すなわち、いずれの装置もネットワーク9に接続されていない状態、又はネットワーク9上にマスター装置が存在しない状態において、新たな情報処理装置がネットワーク9に接続されると、当該装置は自動的にマスター装置として設定される。一方、ネットワーク9上に既にマスター装置が存在する状態において、新たな情報処理装置がネットワーク9に接続されると、当該装置は自動的にスレーブ装置として設定される。
マスター装置及びスレーブ装置のいずれについても、MSマネージャは、定期的にステータス要求コマンドをネットワーク9上の他装置に送信してステータス情報を照会することにより、他装置の状況を監視する。この結果、ネットワーク9に接続されている情報処理装置の主電源が遮断され、又はネットワーク9から情報処理装置が切り離されることにより、あらかじめ判定用に設定された所定期間内に特定の他装置からステータス返信コマンドが返信されなかった場合や、ネットワーク9に新たな情報処理装置が接続された場合など、ネットワーク9の接続状態に変化があった場合には、その情報を後述の能力交換プログラムに通知する。
A−8.マスター装置及びスレーブ装置における装置情報の取得
メインプロセッサ21は、MSマネージャから、ネットワーク9に接続された他の情報処理装置の照会及び自装置のMSステータスの設定完了の通知を受けると、能力交換プログラムを実行する。
能力交換プログラムは、自装置がマスター装置である場合には、ネットワーク9に接続されている他のすべての情報処理装置についての装置情報、すなわち各スレーブ装置の装置情報を取得する。
他装置の装置情報の取得は、上述したように、DMAコマンドがステータス要求コマンドであるソフトウェアセルを生成して他装置に送信し、その後、DMAコマンドがステータス返信コマンドで、且つデータとして他装置の装置情報を含むソフトウェアセルを他装置から受信することによって可能である。
能力交換プログラムは、マスター装置である自装置の装置情報テーブルと同様に、ネットワーク9に接続されている他のすべての装置(各スレーブ装置)についての装置情報を格納するための領域を自装置のメインメモリ26に確保し、これら情報を他装置(スレーブ装置)の装置情報テーブルとして記録する。すなわち、マスター装置のメインメモリ26には、自装置を含むネットワーク9に接続されているすべての情報処理装置の装置情報が装置情報テーブルとして記録される。
一方、能力交換プログラムは、自装置がスレーブ装置である場合には、ネットワーク9に接続されている他のすべての装置についての装置情報、すなわちマスター装置及び自装置以外の各スレーブ装置の装置情報を取得し、これら装置情報に含まれる情報処理装置ID及びMSステータスを、自装置のメインメモリ26に記録する。すなわち、スレーブ装置のメインメモリ26には、自装置の装置情報が、装置情報テーブルとして記録されるとともに、自装置以外のネットワーク9に接続されているマスター装置及び各スレーブ装置についての情報処理装置ID及びMSステータスが、別の装置情報テーブルとして記録される。
また、マスター装置及びスレーブ装置のいずれについても、能力交換プログラムは、上記のようにMSマネージャから、新たにネットワーク9に情報処理装置が接続されたことが通知されたときには、その情報処理装置の装置情報を取得し、上述したようにメインメモリ26に記録する。
なお、MSマネージャ及び能力交換プログラムは、メインプロセッサ21で実行されることに限らず、いずれかのサブプロセッサ23で実行されてもよい。また、MSマネージャ及び能力交換プログラムは、情報処理装置の主電源が投入されている間は常時動作する常駐プログラムであることが望ましい。
A−9.情報処理装置がネットワークから切断された場合
マスター装置及びスレーブ装置のいずれについても、能力交換プログラムは、上記のようにMSマネージャから、ネットワーク9に接続されている情報処理装置の主電源が遮断され、又はネットワーク9から情報処理装置が切り離されたことが通知されたときには、その情報処理装置の装置情報テーブルを自装置のメインメモリ26から削除する。
さらに、このようにネットワーク9から切断された情報処理装置がマスター装置である場合には、以下のような方法によって、新たにマスター装置が決定される。
例えば、ネットワーク9から切断されていない情報処理装置は、それぞれ、自装置及び他装置の情報処理装置IDを数値に置き換え、自装置の情報処理装置IDを他装置の情報処理装置IDと比較し、自装置の情報処理装置IDがネットワーク9から切断されていない情報処理装置中で最小である場合、そのスレーブ装置は、マスター装置に移行し、MSステータスを0に設定し、マスター装置として、上述したように、ネットワーク9に接続されている他のすべての情報処理装置(各スレーブ装置)から装置情報を取得して、メインメモリ26に記録する。
A−10.装置情報に基づく分散処理
図5の下段に示したようにネットワーク9に接続されている複数の情報処理装置1、2、3、4を仮想的な1台の情報処理装置7として動作させるためには、マスター装置がユーザの操作及びスレーブ装置の動作状態を把握する必要がある。
図7には、4台の情報処理装置が仮想的な1台の情報処理装置7として動作する様子を示している。図示の例では、情報処理装置1がマスター装置、情報処理装置2、3、4がスレーブ装置A、B、Cとしてそれぞれ動作しているものとする。
ユーザがネットワーク9に接続されている情報処理装置を操作した場合、操作対象がマスター装置1であれば、その操作情報はマスター装置1において直接把握される。また、操作対象がスレーブ装置であれば、その操作情報は操作されたスレーブ装置からマスター装置1に送信される。すなわち、ユーザの操作対象がマスター装置1とスレーブ装置のいずれであるかにかかわらず、その操作情報は常にマスター装置1において把握される。操作情報の送信は、例えば、DMAコマンドが操作情報送信コマンドであるソフトウェアセルによって行なわれる。
そして、マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、その操作情報に従って、実行する機能プログラムを選択する。その際、必要であれば、マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、上記の方法によって自装置の外部記録部28−1、28−2からメインメモリ26−1に機能プログラムをロードするが、他の情報処理装置(スレーブ装置)がマスター装置1に機能プログラムを送信してもよい。
機能プログラムには、その実行単位毎に必要となる、情報処理装置種別ID、メインプロセッサ又はサブプロセッサの処理能力、メインメモリ使用量、外部記録部に関する条件などの装置に関する要求スペック(図4を参照のこと)が規定されている。
マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、各機能プログラムについて必要となる上記の要求スペックを読み出す。また、あらかじめ能力交換プログラムによってメインメモリ26−1に記録された装置情報テーブルを参照し、各情報処理装置の装置情報を読み出す。ここでの装置情報は、図4に示した情報処理装置ID以下の各情報を示し、メインプロセッサ、サブプロセッサ、メインメモリ及び外部記録部に関する情報である。
マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、ネットワーク9上に接続された各情報処理装置の上記装置情報と、機能プログラム実行に必要となる上記要求スペックとを順次比較する。
例えば、機能プログラムが録画機能を必要とする場合には、情報処理装置種別IDに基づいて、録画機能を有する情報処理装置のみを特定して抽出する。さらに、機能プログラムを実行するために必要なメインプロセッサ又はサブプロセッサの処理能力、メインメモリ使用量、外部記録部に関する条件を確保できるスレーブ装置を、実行要求候補装置として特定する。ここで、複数の実行要求候補装置が特定された場合には、当該候補装置から1つの実行要求候補装置を特定して選択する。
実行要求するスレーブ装置が特定されたら、マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、その特定されたスレーブ装置について、自装置内の情報処理コントローラ11に含まれるメインメモリ26−1に記録されている当該スレーブ装置の装置情報テーブルを更新する。
さらに、マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、DMAコマンドが機能プログラム実行コマンドであるソフトウェアセルを生成し、当該ソフトウェアセルのセルインターフェースに、当該機能プログラムに関する必要なサブプロセッサの情報及びサンドボックスサイズ(図3を参照のこと)を設定し、上記実行要求されるスレーブ装置に対して送信する。
機能プログラムの実行を要求されたスレーブ装置は、その機能プログラムを実行するとともに、自装置の装置情報テーブルを更新する。その際、必要であれば、スレーブ装置内の情報処理コントローラに含まれるメインプロセッサ21は、上記の方法によって自装置の外部記録部28からメインメモリ26に機能プログラム及び当該機能プログラムと連携動作するサブプロセッサプログラムをロードする。
機能プログラムの実行を要求されたスレーブ装置の外部記録部28に必要な機能プログラム又は当該機能プログラムと連携動作するサブプロセッサプログラムが記録されていない場合には、他の情報処理装置が当該機能プログラム又はサブプロセッサプログラムをその機能プログラム実行要求先スレーブ装置に送信するように、システムを構成すればよい。
サブプロセッサプログラムについては、前述のロードコマンド及びキックコマンドを利用して他の情報処理装置に実行させることもできる。
機能プログラムの実行終了後、機能プログラムを実行したスレーブ装置内の情報処理コントローラに含まれるメインプロセッサ21は、終了通知をマスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1に送信するとともに、自装置の装置情報テーブルを更新する。マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、その終了通知を受信して、機能プログラムを実行したスレーブ装置の装置情報テーブルを更新する。
マスター装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、自装置及び他装置の装置情報テーブルの参照結果から、当該の機能プログラムを実行することができる情報処理装置として、自身を選択する場合もあり得る。その場合には、マスター装置1が当該の機能プログラムを実行する。
図7に示した例で、ユーザがスレーブ装置A(情報処理装置2)を操作し、当該操作に応じた機能プログラムを別のスレーブ装置B(情報処理装置3)が実行する場合の分散処理について、図8を参照しながら説明する。
図8に示す例では、ユーザがスレーブ装置Aを操作することにより、スレーブ装置Aを含むネットワークシステム全体の分散処理が開始し、まず、スレーブ装置Aは、その操作情報をマスター装置1に送信する(ステップ81)。
マスター装置1は、その操作情報を受信し(ステップ72)、さらに自装置のメインメモリ26−1に記録されている自装置及び他装置の装置情報テーブルから各情報処理装置の動作状態を調べ、受信した操作情報に応じた機能プログラムを実行することができる情報処理装置を選択する(ステップ73)。図示の例では、スレーブ装置Bが選択される場合を示している。
次に、マスター装置1は、その選択したスレーブ装置Bに対して機能プログラムの実行を要求する(ステップ74)。
スレーブ装置Bは、その実行要求を受信し(ステップ95)、さらに、実行要求された機能プログラムを実行する(ステップ96)。
以上のように、ユーザは、1台の情報処理装置のみを操作することによって、他の情報処理装置を操作することなく、複数の情報処理装置1、2、3、4を仮想的な1台の情報処理装置7として動作させることができる。
A−11.各情報処理装置及びシステムの具体例
ネットワーク9を介して互いに接続される情報処理装置1、2、3、4は、上記のような情報処理コントローラ11、12、13、14によって情報処理を行なうものであれば、基本的にはどのような構成でもよい。図9には、情報処理装置の一構成例を示している。
情報処理コントローラ11を備える情報処理装置1の一例は、ハードディスクレコーダである。図10並びに図11には、同図中のハードディスクレコーダのハードウェア構成及びソフトウェア構成をそれぞれ示している。ハードディスクレコーダのハードウェア構成としては、図1に示した外部記録部28−1としてハードディスクを内蔵し、図1に示した外部記録部28−2としてDVD±R/RW、CD±R/RW、Bluray−Disc(登録商標)などの光ディスクを装着できるように構成されるとともに、情報処理コントローラ11のバス29−1に接続されたバス31−1に、放送受信部32−1、映像入力部33−1、音声入力部34−1、映像出力部35−1、音声出力部36−1、操作パネル部37−1、リモコン受光部38−1及びネットワーク接続部39−1が接続されている。
放送受信部32−1、映像入力部33−1及び音声入力部34−1は、放送信号を受信し、又は情報処理装置1の外部から映像信号及び音声信号を入力し、それぞれ所定フォーマットのデジタルデータに変換し、情報処理コントローラ11での処理のためにバス31−1に送出する。映像出力部35−1及び音声出力部36−1は、情報処理コントローラ11からバス31−1に送出された映像データ及び音声データを処理して、デジタルデータのまま、又はアナログ信号に変換して、情報処理装置1の外部に送出するものであり、リモコン受光部38−1は、リモコン送信器43−1からのリモコン(遠隔操作)赤外線信号を受信する。
図9及び図10に示すように、情報処理装置(ハードディスクレコーダ)1の映像出力部35−1及び音声出力部36−1には、モニタ表示装置41及びスピーカ装置42が接続される。
図9に例示した情報処理コントローラ12を備える情報処理装置2も、ハードディスクレコーダで、図10において括弧内に参照番号を付して示すように、情報処理装置1と同様に構成される。但し、図9に示すように、情報処理装置(ハードディスクレコーダ)2には、モニタ表示装置及びスピーカ装置は接続されない。
情報処理装置(ハードディスクレコーダ)1及び2、すなわち情報処理コントローラ11及び12のソフトウェア構成としては、図11に示すように、制御プログラムとして、MSマネージャ及び能力交換プログラムを備え、機能プログラムとして、映像音声記録、映像音声再生、素材検索及び番組録画予約のためのプログラムを備え、デバイスドライバとして、放送受信、映像出力、音声出力、外部記録部入出力及びネットワーク入出力のためのプログラムを備える。
また、情報処理コントローラ13を備える情報処理装置3の他の例は、PDA(Personal Digital Assistants)である。図12には、PDAとして構成される情報処理装置3のハードウェア構成を示している。同図に示す例では、図1に示した外部記録部28−5として、メモリカードディスクを装着できるように構成され、情報処理コントローラ13のバス29−3に接続されたバス51に、液晶表示部52、音声出力部53、カメラ部54、音声入力部55、キーボード部56及びネットワーク接続部57が接続されている。
なお、図1では内部を省略した情報処理コントローラ13は、メインプロセッサ21−3、サブプロセッサ23−7、23−8、23−9、DMAC(ダイレクトメモリアクセスコントローラ)25−3、DC(ディスクコントローラ)27−3及びバス29−3を備え、そのメインプロセッサ21−3は、LS(ローカル・ストレージ)22−3を有し、各サブプロセッサ23−7、23−8、23−9は、LS(ローカル・ストレージ)24−7、24−8、24−9を備えている。
また、図13には、情報処理装置(PDA)3、すなわち情報処理コントローラ13のソフトウェア構成を示している。同図に示すように、制御プログラムとして、MSマネージャ及び能力交換プログラムを備え、機能プログラムとして、映像音声記録、映像音声再生、電話帳、ワープロ及び表計算のためのプログラム、及びWebブラウザを備え、デバイスドライバとして、映像出力、音声出力、カメラ映像入力、マイク音声入力及びネットワーク入出力のためのプログラムを備えている。
また、情報処理コントローラ14を備える情報処理装置4は、ポータブルCDプレーヤである。図14には、ポータブルCDプレーヤのハードウェア構成を示している。図示の例では、ポータブルCDプレーヤは、図1に示した外部記録部28−6として、CD(Compact Disc)を装着できるように構成され、情報処理コントローラ14のバス29−4に接続されたバス61に、液晶表示部62、音声出力部63、操作ボタン部64及びネットワーク接続部65が接続されている。
なお、図1では内部を省略した情報処理コントローラ14は、メインプロセッサ21−4、サブプロセッサ23−10、23−11、23−12、DMAC25−4、DC27−4及びバス29−4を備え、そのメインプロセッサ21−4は、LS22−4を有し、各サブプロセッサ23−10、23−11、23−12は、LS24−10、24−11、24−12を有する。
図15には、情報処理装置(ポータブルCDプレーヤ)4、すなわち情報処理コントローラ14のソフトウェア構成を示している。図示のように、制御プログラムとして、MSマネージャ及び能力交換プログラムを備え、機能プログラムとして、音楽再生のためのプログラムを備え、デバイスドライバとして、音声出力、CD制御及びネットワーク入出力のためのプログラムを備える。
図9に例示したネットワークシステムでは、情報処理装置1、3及び4がネットワーク9上に接続されており、情報処理装置1がマスター装置(MSステータス=0)として、情報処理装置3及び4がスレーブ装置(MSステータス=1)として、設定されているものとする。
この状態で、新たに情報処理装置2がネットワーク9に接続されると、上述した方法によって、情報処理装置2内の情報処理コントローラ12に含まれるメインプロセッサ21−2で実行されているMSマネージャは、他の情報処理装置1、3及び4にMSステータスを照会して、情報処理装置1が既にマスター装置として存在することを認識し、自装置(情報処理装置2)をスレーブ装置(MSステータス=1)に設定する。また、マスター装置に設定されている情報処理装置1は、新たに追加された情報処理装置2を含む各装置の装置情報を収集して、メインメモリ26−1内の装置情報テーブルを更新する。
このような状態で、ユーザによってスレーブ装置である情報処理装置(PDA)3で2時間の放送番組を録画予約するための操作が行なわれた場合について、以下に説明する。
この場合、スレーブ装置である情報処理装置(PDA)3は、ユーザから録画開始時刻、録画終了時刻、録画対象放送チャネル、録画品質などの情報を含む録画予約情報の入力を受け付け、当該録画予約情報及びDMAコマンドとしての録画予約コマンドを含むソフトウェアセルを生成して、マスター装置である情報処理装置1に送信する。
DMAコマンドが録画予約コマンドであるソフトウェアセルを受信した情報処理装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、録画予約コマンドを読み出すとともに、メインメモリ26−1内の装置情報テーブルを参照し、当該録画予約コマンドを実行可能な情報処理装置を特定する。
まず、メインプロセッサ21−1は、装置情報テーブルに含まれる各情報処理装置1、2、3、4の情報処理装置種別IDを読み出して、録画予約コマンドに対応する機能プログラムを実行可能な情報処理装置を抽出する。ここでは、録画機能を示す情報処理装置種別IDを有する情報処理装置1、2が候補装置として特定され、情報処理装置3、4は候補装置から除外される。
次に、マスター装置である情報処理装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、装置情報テーブルを参照して、情報処理装置1、2のメインプロセッサ又はサブプロセッサの処理能力、メインメモリに関する情報などの装置に関する情報を読み出し、情報処理装置1、2が録画予約コマンドに対応する機能プログラムの実行に必要な要求スペックを満足するか否かを判断する。ここでは、情報処理装置1、2とも、録画予約コマンドに対応する機能プログラムの実行に必要な要求スペックを満足するものとする。
さらに、メインプロセッサ21−1は、装置情報テーブルを参照して、情報処理装置1、2の外部記録部に関する情報を読み出し、外部記録部の空き容量が当該録画予約コマンドの実行に必要な容量を満足するか否かを判断する。情報処理装置1、2はハードディスクレコーダであるので、それぞれハードディスク28−1、28−3の、総容量と使用量との差分が、それぞれの空き容量に相当する。
この場合、情報処理装置1のハードディスク28−1の空き容量が、録画時間に換算して10分であり、情報処理装置2のハードディスク28−3の空き容量が、録画時間に換算して20時間であるとする。
このとき、マスター装置である情報処理装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、当該録画予約コマンドの実行に必要な2時間分の空き容量を確保できる情報処理装置を、実行要求先スレーブ装置として特定する。
その結果、情報処理装置2のみが実行要求先スレーブ装置として選択され、マスター装置である情報処理装置1内の情報処理コントローラ11に含まれるメインプロセッサ21−1は、ユーザにより操作された情報処理装置3から送信された録画予約情報を含む当該録画予約コマンドを情報処理装置2に送信して、上記2時間の放送番組の録画予約の実行を要求する。
そして、情報処理装置2内の情報処理コントローラ12に含まれるメインプロセッサ21−2は、当該録画予約コマンドを解析して、録画に必要な機能プログラムを外部記録部であるハードディスク28−3からメインメモリ26−2にロードし、録画予約情報に従って録画を実行する。その結果、録画予約された2時間の放送番組の映像音声データが情報処理装置2のハードディスク28−3に記録される。
このように、図9の例のネットワークシステムにおいても、ユーザは、1台の情報処理装置のみを操作することによって、他の情報処理装置を操作することなく、複数の情報処理装置1、2、3、4を仮想的な1台の情報処理装置7として動作させることができる。
B.分散型大容量AV記録システム
本発明のさらなる実施形態として、録画予約機能を備えた2以上のCE機器間における動作をネットワーク経由で好適に連携させ、分散型の大容量AV記録システムを構築することができる。このような記録システムによれば、別々の場所に設定されている非稼動状態の機器の資源を利用して同時記録可能な能力以上の映像に応じることができる。ここで言う資源は、具体的には、放送波を受信するチューナや、受信したコンテンツを格納するハードディスクなどの記憶領域を指す。
図16には、本発明の一実施形態に係る分散型大容量AV記録システムの構成を模式的に示している。
機器間を接続する通信媒体は、例えばインターネットのような広域且つ広帯域のネットワークや、ホームネットワークやその他のLAN(Local Area Network)の組み合わせで構成される。
また、ネットワーク上で他の機器を発見する仕組みとしてUpnp(Universal Plug and Play)を利用することができる。Upnpによれば、ネットワーク接続された機器間で、XML(eXtended Markup Language)形式で記述された定義ファイルを交換し、アドレッシング処理、ディスカバリ処理、サービス要求処理を経て相互認証を行なう。あるいは同一セグメント内での規定の機器情報を記述したパケットのブロードキャストすることによっても実現可能である。
ネットワークに対しては、上述したグリッドコンピューティング技術が適用されており、情報処理装置間では、ソフトウェアセルの形式でコマンドやデータのやり取りを行なう。ユーザは、ある情報処理装置上で操作を行なうとき、ソフトウェアセルを送信することで、送信先となる他の情報処理で所望のプログラムのロードと実行を行なうことができ、送信先の装置を直接操作する必要はない。すなわち、ソフトウェアセルの往来により、装置間の連携動作が実現され、複数の情報処理装置が仮想的には1台の装置として動作することができる。
ホームネットワークは、各家庭に装備され、インターネットなどの外部ネットワークとは例えばゲートウェイ経由で相互接続されている。ホームネットワーク上には、HDレコーダなどのAV記録機器やSTB、その他のCE機器が接続されている。ホームネットワークは、物理的には、10BaseTや100BaseTX、Giga eatherなどの標準的なネットワークインターフェースで構成することができる。
インターネット上には、WWW(World Wide Web)サーバを始めとして、情報提供サーバやデータベース・サーバ、アプリケーション・サーバなど無数のホスト装置が配設されている。
代行予約サーバは、各家庭内に設置されているAV記録装置における録画予約機能の連携を支援し、録画操作と記録領域の共有を実現する。ある家庭のAV記録機器において同時記録可能な能力以上の映像記録要求が発生した場合、代行予約サーバの仲介により、ネットワーク上で連携する他の映像記録装置の非稼働資源を探索し、他の家庭に設置されているAV記録機器のチューナと記録領域などのハードウェア資源を利用し、自機の録画能力では超過となる同時映像記録を行なうことができる。
代行予約サーバは、資源管理データベースを備え、各家庭のホームネットワークに接続されているAV記録機器の資源を一元的に管理する。
資源管理データベースでは、録画依頼者と録画代行者の間で取り交わされる録画代行の照会作業を行なう。録画代行の照会作業を行なうため、代行予約サーバは、各家庭のホームネットワークに接続されているAV記録機器での録画予約に関する録画予約情報を収集する。録画予約情報は、録画予約情報のリクエスト・コマンドの発行により要求し、これに対する各AV記録装置側からのレスポンス・コマンドにより収集される。これらのコマンドは、ソフトウェアセル(前述)として構成される。録画予約情報の収集が実施されるタイミングとしては、例えば以下の場合が考えられる。
(1)機器の電源を投入したとき、又はリセット後の起動時
(2)機器がネットワークに新規接続されたとき
(3)機器上で予約設定情報が更新されたとき
(4)一定周期(10分毎など)
(5)相手の機器からリクエストがあったとき
また、録画代行の照会作業の際、録画依頼者がローカルで録画可能なチャンネル以上の能力を使用できてはならない。何故ならば、例えば録画依頼者が加入していない放送受信サービスを、当該サービスに加入している録画代行者に録画代行を依頼する、不正な放送受信に相当する行為を禁じる必要があるからである。このため、代行予約サーバでは、以下に示すような管理データをAV記録装置毎に用意し、すべてのユーザの視聴可能な能力(視聴(録画)可能なチャンネル・空き時間・録画予約状況)をデータベースとして管理する。
Figure 2005252402
なお、逆に、上述したような制限を無くすことにより、国境を越えた録画予約のボーダーレスも可能となる。
個々のAV記録装置は、通常は内蔵された記憶装置に記録を行なう。但し、同時記録可能な能力以上の映像記録要求が発生した場合には、代行予約サーバがネットワーク上で連携する他の映像記録装置の非稼働資源を探索し、録画依頼者側のAV記録装置に代わって、録画代行者側のAV記録機器において映像記録すなわち代理予約を行なう。
この代行録画を行なう際に、同じ番組を録画予約中の映像記録装置を検索し、見つかった場合は、その装置に代行録画を依頼する。このとき、録画代行者側のAV記録装置では、本来録画代行者自身のために録画予約されているものとは別の録画依頼用の記録領域に別のファイルとして記録する。この仕組みのことを「冗長化録画」と呼ぶことにする。冗長化録画の1つの目的は、録画依頼者と録画代行者とで、映像記録されたコンテンツの著作権やその他使用に関する権利問題を別々に取り扱えるようにすることにある。例えば、録画代行者側のAV記録装置は、代行録画用のファイルを録画依頼者の公開暗号鍵で暗号化し、録画代行者自身はコンテンツを記録するものの視聴できないようにする。
また、録画代行者側のAV記録装置において、資源利用の制限のために冗長化録画を行なうことができない場合には、さらに、代行録画時間に非稼働状態の機器を探索し、代行録画を行なうようにしてもよい。この場合、録画依頼者の公開暗号鍵で代行録画の記録を行なう。
代行録画が終了すると、代行録画されたコンテンツファイルが録画代行者から録画依頼者側へ移動する。この際、代行予約サーバを介さず、録画依頼者と録画代行者間でピアツーピア(Peer−to−Peer)若しくはその対1対1の通信方式によりファイル転送を行なう。
ファイル転送が完了すると、録画代行者側のAV記録装置からファイルを消去する。これにより新たな録画又は代行録画のために資源を解放できるとともに、代行録画したコンテンツの使用に関する取り扱いの問題からも解放される。
代行予約サーバは、あるAV記録装置上で同時記録可能な能力以上の映像記録要求が発生した場合に介在し、ネットワーク上で連携する他の映像記録装置の中から非稼動資源を探索し、映像の代行録画に割り当てる。但し、代行予約サーバは、代行録画のためにチューナや記憶領域などの資源は提供しないので、サービス加入者数が増えても、処理上の負担増加は少なく、ハードウェアの拡張を必要としない。
図17には、録画依頼者又は録画代行者として稼動するAV記録装置が家庭内に設置されている様子を模式的に示している。このAV記録装置は、本実施形態に係る分散型大容量AV記録システムにおける録画機能の一部を構成する。
図示のように、AV記録装置は、放送波を受信するチューナと、受信した番組コンテンツを符号化するエンコーダと、さらに暗号化する暗号化装置と、番組コンテンツをファイルとして記録するハードディスクなどの記憶装置と、記憶装置から取り出されたコンテンツファイルを復号してテレビ画面に表示出力するデコーダと、チューナにおける放送波の受信(選局)動作や記憶装置への番組コンテンツの録画の予定を管理する録画予約スケジューラと、ホームネットワークやインターネットなどに接続するためのネットワークインターフェースを備えている。
チューナは、地上波やCS放送、CSデジタル放送、BSアナログ/デジタル放送、あるいはCATVなどから選局して所望の放送局の番組コンテンツを受信する。図示の例では、AV記録装置は多重チューナ機能を装備し、1台で同時に2つの放送番組を受信し同時録画することができる。但し、同時記録可能な能力を超える3以上の映像記録要求が発生した場合には、録画依頼者側のAV記録装置に代わって代行予約サーバがネットワーク上で連携する他の映像記録装置の非稼働資源を探索し、録画代行者側のAV記録機器において映像記録すなわち代理予約を行なう。
録画予約スケジューラは、自動又はユーザの手動で録画したい番組を選別し、録画予約に関する録画予約情報を作成する。図18には、縦軸を時間軸とし横軸を放送局に割り当てたラテ欄形式の番組表上に録画予約情報を重畳表示して示している。
録画予約スケジューラは録画予約情報と実時間を監視し、録画予約されている録画予約時間が到来すると、必要なチューナを録画したいチャンネルに選局し、番組コンテンツの記録処理を起動する。この結果、所望の放送局より受信されたコンテンツは、エンコーダにより符号化され、ハードディスクなどの記憶装置にファイルとして格納される。
一旦格納されたコンテンツファイルは、ディスクから取り出し、デコーダにより復号した後、テレビ受像機で映像及び音響出力され、ユーザの視聴に供される。
受信した番組コンテンツを、当該AV記録装置上で再生するためではなく、他の装置からの録画依頼に応じて代行録画する場合には、暗号化装置は、エンコーダにより符号化した後のコンテンツをさらに録画依頼者の公開暗号鍵で暗号化を施してから記憶装置に格納する。この場合、録画代行者としての当該AV記録装置上では暗号化ファイルを利用(視聴)できなくなる。
図17に示したAV記録装置は、自動又はユーザの手動で録画したい番組を選別し、通常は内蔵された記憶装置に記録を行なう。但し、同時記録可能な能力以上の映像記録要求が発生した場合には、代行予約サーバの介在により、ネットワーク上で連携する他の映像記録装置の非稼働資源を活用し、映像記録を行なう。
代行予約サーバは、まず最寄の地域に存在する代行録画のAV記録装置を探索し、さらに録画依頼者の希望する番組と同一の番組を予約しているAV記録装置を絞り込み、検索する。代行予約サーバは、ネットワーク上で連携するすべてのAV記録装置に関するデータベースが存在し、照合が行なわれる。すべてのそして、条件に合致するAV記録装置が見つかった場合には、その装置が録画代行者として当該番組を録画する。
一方、代行予約サーバが、上記の条件に合致するAV記録装置を発見することができない場合には、依頼された録画予約に関する時間帯においてアイドルになっているAV記録装置を同一地域内で探索する。そして、見つけ出されたAV記録装置に代行録画要求を発行する。
代行録画を依頼されたAV記録装置は、通常の録画予約を行なう場合と同様に、録画予約スケジューラのキューに代行録画の依頼内容を登録する。そして、予約時間が到来すると、指定されたチャンネルにおける録画を開始する。
また、AV記録装置が代行録画を行なう際、録画依頼者側の公開鍵で暗号化した別のファイルとして保存(冗長化録画)してもらう。これにより、録画依頼者用に保存した別ファイルは、録画代行者並びに第3者は視聴することができなくなる。したがって、録画依頼者は記録メディアを録画代行者に渡して録画してもらうという機器の資源を借りることに準ずる行為において、録画したコンテンツの無断・無制限の複製を制限することができる。
録画依頼者側のAV記録装置は、依頼した録画終了時間が経過すると、録画代行者側のAV記録装置に接続し、目的とする番組コンテンツのファイルをダウンロードする。そして、ダウンロードが終了したら、録画代行者側のAV記録装置の記憶領域から当該ファイルを消去し、資源を解放する。
図19には、本実施形態に係る分散型大容量AV記録システムにおける代行予約を行なうための処理手順をフローチャートの形式で示している。但し、同図では、録画依頼者並びに録画代行者としての各AV記録装置と代行予約サーバの3者間で代行予約処理が実現する例を示している。
録画依頼者側のAV記録装置上で、ユーザが録画予約の設定処理を行なうことで、本処理ルーチンが起動する。ここで、録画依頼者側のAV記録装置では、同時録画の能力を超えたかどうかをチェックする(ステップS1)。
同時録画の能力は、同じ時間帯で録画予約された番組コンテンツを受信できるチューナの空きがあるか、録画予約された番組コンテンツを記録できる空き記憶容量が当該装置上にあるかどうか、などによって判定される。
録画依頼者側のAV記録装置上で同時録画の能力があると判定された場合は、当該装置の録画予約スケジューラのキューに録画予約のスケジュールを追加登録する(ステップS2)。この場合、録画予約のスケジュールが到来まで待機し(ステップS3)、録画予約スケジュールの到来とともに録画予約した番組コンテンツの録画処理を開始し(ステップS4)、録画予約スケジュールの終了時刻になると、録画処理を終了する(ステップS6)。
一方、録画依頼者側のAV記録装置上で同時録画の能力がないと判定された場合には(ステップS1)、録画依頼者側のAV記録装置から代行予約サーバに対し代行録画要求を発行する。
代行予約サーバ側では、この代行録画要求を受信すると、まず録画依頼者側のAV記録装置のユーザ認証を行なう(ステップS11)。
このユーザ認証処理では、代行予約サーバに事前に登録されている認証用ユーザ名と認証用ユーザ・パスワードが使用される。さらに、録画依頼者がローカルで録画可能なチャンネル以上の能力を使用できてはならないことから、録画依頼者側において視聴可能なチャンネルの照合も行なわれる(表1を参照のこと)。
次いで、代行予約サーバでは、録画依頼者と同一の視聴地域で録画代行者が存在するかどうか、すなわちネットワーク上で連携する他のAV記録装置が存在するかどうかをチェックする(ステップS12)。
ここで、適当な録画代行者が存在しなかった場合には、録画代行ができない旨を要求元すなわち録画依頼者側のAV機器に通知し(ステップS16)、本処理ルーチン全体を終了する。
一方、適当な録画代行者が同一の視聴地域内に存在する場合には、さらに依頼された録画予約番組を自分用に録画予約している録画代行者が存在するかどうかをチェックする(ステップS13)。
そして、依頼された録画予約番組を自分用に録画予約している録画代行者が存在する場合には、当該録画代行者宛に録画代行要求を発行する(ステップS14)。依頼された録画予約番組を自分用に録画予約している録画代行者に録画を依頼することにより、チューナのリソースを共有することができる。
ここで、本来録画代行者自身のために録画予約されているものとは別のファイルとして記録するために、録画依頼者の公開暗号鍵を録画代行要求に添付する。
また、適当な録画代行者が同一の視聴地域内に存在しない場合には、録画代行依頼されている番組コンテンツを録画予約可能な録画代行者が同一の視聴地域内で存在するかどうかをさらにチェックする(ステップS15)。
そして、録画代行依頼されている番組コンテンツを録画予約可能な録画代行者が同一の視聴地域内で存在する場合には、当該録画代行者宛てに録画代行要求を発行する(ステップS14)。録画代行要求には、録画依頼者の公開暗号鍵を添付する(同上)。
録画代行者側のAV記録装置では、録画代行要求が到来すると、当該装置の録画予約スケジューラのキューに録画予約のスケジュールを追加登録する(ステップS21)。この場合、録画予約のスケジュールが到来とともに録画予約した番組コンテンツの録画処理を開始する。録画処理においては、録画依頼者の公開暗号鍵を用いて暗号化したコンテンツファイルとして保存される。
このように録画代行が行なわれる場合、録画依頼者側のAV記録装置では、外部に録画予約したものが完了している場合には(ステップS5)、録画代行者の機器から録画されたコンテンツファイルをダウンロードして(ステップS7)、本処理ルーチン全体を終了する。
図20には、録画依頼者としてのAV記録装置Aと、録画代行者としてのAV記録装置Bと、予約代行サーバの3者間における代行予約及び代行録画されたファイルの転送に関する動作シーケンスを示している。但し、各AV記録装置が予約代行サーバにアクセスするときには、自装置のパスワードも送信するようにし、予約代行サーバは毎回そのパスワードをチェックするものとする。また、機器間ではソフトウェアセルの形態でコマンドの転送が行なわれるものとする。
予約代行サーバ側では、ネットワーク経由で連携している各AV記録装置についての装置ID、パスワード、設置地域、視聴可能チャンネル、予約情報を管理している。設置地域は例えば郵便番号で識別するようにしてもよい。
各AV記録装置は、自機上で行なわれた録画予約情報を予約代行サーバに登録する。録画予約情報は、録画予約を行なう日付、開始時刻及び終了時刻、チャンネルなどの組み合わせで構成される。AV記録装置は、自機上で録画予約が行なわれる度に、録画予約情報を予約代行サーバへ送信する。そして、予約代行サーバは、受信した録画予約情報をデータベースへ登録する。
ここで、AV記録装置A側において、同一時刻での予約が自機上では処理不可能な録画予約操作がユーザにより行なわれたとする。この場合、AV記録装置Aは、代行録画要求コマンドを予約代行サーバへ発行し、録画不可能な処理を代行できるAV記録装置が存在するかどうかを問い合わせる。この代行録画要求コマンドには、録画予約情報が含まれる。録画予約情報は、要求元AV記録装置の設置地域(郵便番号)、録画予約する日時、チャンネル、画質モード、要求元AV記録装置の公開暗号鍵などで構成される。
予約代行サーバ側では、代行録画要求コマンドを受信すると、そして、要求基のAV記録装置のユーザ認証を行ない、許可されたユーザID及びパスワードを所有していることを確認する。そして、録画記録情報を基に、該当する条件に合致するAV記録装置を検索する。
予約代行サーバは、依頼された録画予約番組を自分用に録画予約しているAV記録装置を探索する。依頼された録画予約番組を自分用に録画予約している録画代行者に録画を依頼することにより、チューナのリソースを共有することができる。
そして、複数のAV記録装置が見つけ出された場合には、さらに以下の条件を基に、その中から最適な装置を検索する。
(a)メインプロセッサ、サブプロセッサのリソースの負荷が低いこと(すなわち、1ソース・マルチエンコーディングを実行できること)。依頼側のサブプロセッサがネットワークで拡張されている場合もある
(b)ハードディスクなどの記憶領域の空きがあること。
(c)受信環境のレコーディング(ゴーストの度合い)
依頼されたAV記録装置がホームネットワーク上で複数のサブプロセッサを利用可能な場合、単一機器で同時に処理できる圧縮処理よりも多くの処理が実行可能であるとともに、単一機器で同時に処理できるパッケージ化(代行録画した番組コンテンツのパッケージ化)よりも多くの処理が実行可能である。
図示の例では、代行予約サーバは、条件に合致する機器としてAV記録装置Bを特定する。そして、AV記録装置Bに代行録画要求コマンドを転送する。この代行録画要求コマンドには、録画予約情報が含まれる。録画予約情報は、要求元AV記録装置の設置地域(郵便番号)、録画予約する日時、チャンネル、画質モード、AV記録装置Aの公開暗号鍵などで構成される。
AV記録装置Bでは、録画代行要求が到来すると、当該装置の録画予約スケジューラのキューに録画予約のスケジュールを追加登録する。そして、代行予約サーバに対し、代行録画応答コマンドを返信する。この代行録画応答コマンドには、AV記録装置Bにおいて代行録画した番組コンテンツを識別可能な固有録画予約IDを添付する。
代行予約サーバは、代行録画応答コマンドを受信すると、AV記録装置Bの予約情報に代行録画予約情報と依頼装置IDを登録する。そして、依頼元であるAV記録装置Aに、代行録画応答コマンドを転送する。この代行録画応答コマンドには、サーバ固有の予約ID又はエラー情報が含まれる。
AV記録装置A側では、代行予約サーバから代行録画応答コマンドを受信したことにより、予約を完了する。
AV記録装置Bは、代行録画に係る予約時刻が到来すると、録画を開始する。番組コンテンツの代行録画時には、AV記録装置Aの公開暗号鍵で暗号化して保存する。そして、録画が完了すると、予約代行サーバに対し、代行録画完了通知コマンドを発行する。この代行録画完了通知コマンドには、代行録画した番組コンテンツを識別可能な固有録画予約IDとステータスを添付する。
代行予約サーバは、代行録画完了通知コマンドを受信すると、録画予約情報のステータスを更新する。
依頼元のAV記録装置Aは、代行依頼した予約終了時刻が経過した以降、予約代行サーバに対し定期的に代行録画照会コマンドを発行し、録画予約情報の照会を行なう。この代行録画照会コマンドには、代行録画応答コマンドに含んで受信したサーバ固有の予約IDを添付する。
代行予約サーバは、代行録画照会コマンドに応答して、録画予約情報を通知する。この録画予約情報には、録画予約の結果と、AV記録装置Bにおいて代行録画した番組コンテンツを識別可能な固有録画予約IDと、AV記録装置BのIPアドレス(又は、ネットワーク上で識別可能なアドレス情報)が含まれている。
AV記録装置Aは、録画予約情報の通知を受信すると、AV記録装置BのIPアドレス宛てにファイル・ダウンロード・コマンドを送信し、AV記録装置Bに対し、代行録画された番組コンテンツのダウンロードを要求する。
このファイル・ダウンロード・コマンドには、AV記録装置Bにおいて代行録画した番組コンテンツを識別可能な固有録画予約IDが含まれている。AV記録装置Bは、固有録画予約IDを基に代行録画した番組コンテンツの暗号化ファイルを自機のディスクから取り出し、AV記録装置Aへのダウンロードを行なう。
AV記録装置Aは、代行録画ファイルのダウンロードが完了すると、代行予約サーバに対し、録画予約完了通知コマンドを送信する。この録画予約完了通知コマンドには、サーバ固有の予約IDが含まれている。AV記録装置A上では、自機の秘密暗号鍵を用いて代行録画ファイルを解読し、代行録画された番組コンテンツの視聴が可能となる。
代行予約サーバは、録画予約完了通知コマンドを受信すると、この予約に該当する代行機器と録画ファイルを検索する。図示の例ではAV記録装置Bに相当する。そして、代行予約サーバは、代行録画したAV記録装置Bに対し、代行録画ファイルの削除要求コマンドを送信する。この代行録画ファイルの削除要求コマンドには、AV記録装置Bにおいて代行録画した番組コンテンツを識別可能な固有録画予約IDが含まれている。
AV記録装置Bは、代行録画ファイルの削除要求コマンドを受信すると、該当するファイルを自機上のディスクから削除し、リソースを解放する。そして、代行予約サーバに対し、録画ファイル削除完了通知コマンドを送信する。この録画ファイル削除完了通知コマンドには、代行録画した番組コンテンツを識別可能な固有録画予約IDとステータスを添付する。
代行予約サーバは、録画ファイル削除完了通知コマンドを受信すると、自身のデータベースから該当する予約情報を削除する。
図20に示したような、代行予約サーバを介在させた3者間で代行録画を行なう動作シーケンスの変形例として、代行予約サーバの介在なしに録画依頼者としてのAV記録装置Aと録画代行者としてのAV記録装置B間でピアツーピア(Peer−to−Peer)若しくはその対1対1の通信方式により代行予約及び代行録画されたファイルのダウンロード手続きを行なうことができる。前者の方式では、各AV記録装置は録画予約可能な機器の検索と録画代行依頼をサーバとだけで行なうことができる。これに対し後者の方式では、依頼者側のAV記録装置は、登録された依頼者(コミュニティ)リストを基に、他のAV記録装置に代行予約の問い合わせを繰り返す必要がある。
図21には、録画依頼者としてのAV記録装置Aと、録画代行者としてのAV記録装置Bの2者間における代行予約及び代行録画されたファイルの転送に関する動作シーケンスを示している。但し、各AV記録装置が予約代行サーバにアクセスするときには、自装置のパスワードも送信するようにし、予約代行サーバは毎回そのパスワードをチェックするものとする。また、機器間ではソフトウェアセルの形態でコマンドの転送が行なわれるものとする。
各AV記録装置A及びBには、代行予約受付リストに代行予約を受け付ける装置IDとIPアドレスとアカウント、パスワードが登録されているとする。
ここで、AV記録装置A側において、同一時刻での予約が自機上では処理不可能な録画予約操作がユーザにより行なわれたとする。
この場合、AV記録装置Aは、代行予約受付リストを参照し、当該リストの順にネットワーク上で連携する各機器に対し代行録画要求コマンドを発行し、自機上で録画不可能な処理を代行できるかどうかを問い合わせる。この代行録画要求コマンドには、録画予約情報が含まれる。録画予約情報は、要求元AV記録装置の設置地域(郵便番号)、録画予約する日時、チャンネル、画質モード、要求元AV記録装置の公開暗号鍵などで構成される。
問い合わせを受けたAV記録装置側では、自機上での録画予約状況を確認し、以下の条件に適合するかどうかを照合する。
(a)要求元のAV記録装置Aと同一地域であること
(b)代行記録要求されているものと同じ番組を自機うえでも録画予約設定していること
(c)メインプロセッサ、サブプロセッサのリソースの負荷が低いこと(すなわち、1ソースマルチエンコーディングを実行できること)。依頼側のサブプロセッサがネットワークで拡張されている場合もある
(d)ハードディスクなどの記憶領域の空きがあること。
(e)受信環境のレコーディング(ゴーストの度合い)
図示の例では、AV記録装置Bがこれらの条件に適合するものとして、AV記録装置Aからの問い合わせに応答して、録画代行要求受理コマンドを送信する。この録画代行要求受理コマンドには、AV記録装置Bにおいて代行録画した番組コンテンツを識別可能な固有録画予約IDを添付する。AV記録装置A側では、録画代行要求受理コマンドを受信したことにより、予約を完了する。また、AV記録装置B側では、録画予約スケジューラのキューに録画予約のスケジュールを追加登録する。
AV記録装置Bは、代行録画に係る予約時刻が到来すると、録画を開始する。番組コンテンツの代行録画時には、AV記録装置Aの公開暗号鍵で暗号化して保存する。
依頼元のAV記録装置Aは、代行依頼した予約終了時刻が経過した以降、AV記録装置Bに対し定期的に代行録画照会コマンドを発行し、録画予約情報の照会を行なう。この代行録画照会コマンドには、AV記録装置Bにおいて代行録画した番組コンテンツを識別可能な固有録画予約IDを添付する。
AV記録装置Bは、代行録画照会コマンドに応答して、録画予約情報を通知する。この録画予約情報には、録画予約の結果が含まれている。
AV記録装置Aは、録画予約情報の通知を受信すると、AV記録装置B宛てにファイルダウンロードコマンドを送信し、AV記録装置Bに対し、代行録画された番組コンテンツのダウンロードを要求する。
AV記録装置Bは、代行録画した番組コンテンツの暗号化ファイルを自機のディスクから取り出し、AV記録装置Aへのダウンロードを行なう。
AV記録装置Aは、代行録画ファイルのダウンロードが完了すると、自機の秘密暗号鍵を用いて代行録画ファイルを解読し、代行録画された番組コンテンツの視聴が可能となる。
また、AV記録装置Bは、代行録画ファイルのダウンロードが完了すると、該当する録画予約情報並びに代行録画ファイルを自機上のディスクから削除し、リソースを解放する。
最後に、本実施形態に係る分散型大容量AV記録システムにおいて、あるAV記録装置上で入力された録画予約要求に応答して、ネットワーク上で連携する他のAV記録装置において代行録画する動作の具体例について説明する。但し、以下の説明では代行予約サーバが介在するものとする。
図22には、分散型大容量AV記録システムの構成例を示している。同図に示す例では、ネットワーク上には連携する4台のAV記録装置A〜Dが同一地域において接続されている。そして、代行予約サーバは、これらAV記録装置A〜Dにおける録画予約情報を所定のタイミング(前述)で逐次収集している。また、代行予約サーバは、表1に示したような管理データをAV記録装置毎に用意し、すべてのユーザの視聴可能な能力(視聴(録画)可能なチャンネル・空き時間・録画予約状況)をデータベースとして管理している。なお、各AV記録装置はそれぞれ2重チューナを備え、同時に2局まで番組を受信並びに録画予約が可能であるとする。
ここで、AV記録装置Dにおいて新たな録画予約要求がユーザにより入力されたとする。図23には、AV記録装置Dにおける録画予約情報を示している。同図に示すように、AV記録装置D上では、既に録画予約情報D−1、D−2、D−3が設定されており、新規の録画予約要求D−4は、このうちD−1およびD−3と記録時間が重複するため、AV記録装置Dの同時記録可能な能力以上の録画予約要求となる。
そこで、AV記録装置Dは、代行予約サーバに対し、録画代行依頼を発行する。代行予約サーバは、この録画代行依頼に応答して、最寄の地域に存在する代行録画のAV記録装置を探索し、3台のAV記録装置A〜Cを検出する。
次いで、代行予約サーバは、これら3台のAV記録装置A〜Cが、録画予約要求D−4を録画予約設定可能な非稼動資源、すなわち同時記録可能な能力を備えているかどうかを照会する。
図24〜図26には、録画予約要求されている時間帯における各AV記録装置A〜Cの録画予約情報を示している。
図20に示すように、AV記録装置Aでは、AV記録装置Dにおいて新規に録画予約要求された時間帯において、録画予約情報A−1及びA−3が既に設定されている。すなわち、既にすべての録画能力を使用しているので、代行録画依頼を拒否する。
また、図25に示すように、AV記録装置Bでは、AV記録装置Dにおいて新規に録画予約要求された時間帯において、AV記録装置Dで新規に録画予約要求された時間帯において、録画予約B−1、並びに同一の番組についての録画予約B−2が設定されている。したがって、AV記録装置Bは、代行録画依頼を拒否しない。
また、図26に示すように、AV記録装置Cでは、AV記録装置Dにおいて新規に録画予約要求された時間帯において、AV記録装置Dで新規に録画予約要求された時間帯において、録画予約C−1のみが設定されており、非稼動資源を有し、同時録画能力があることから、代行録画依頼を拒否しない。
このような場合、代行予約サーバは、AV記録装置Bに代行録画を要求する。AV記録装置Bは、録画予約要求D−1と同じ番組を既に録画予約設定しているので、チューナ・リソースを共有することができる。
そして、AV記録装置Bは、自機の録画予約スケジューラのキューに録画予約のスケジュールを追加登録する。そして、録画予約のスケジュールが到来まで待機し、録画予約スケジュールの到来とともに録画予約した番組コンテンツの録画処理を開始する。
録画が完了すると、録画代行者としてのAV記録装置Bから録画依頼者としてのAV記録装置Dヘ、録画した番組コンテンツのダウンロードが行なわれる(図23を参照のこと)。このダウンロードが完了したら、AV記録装置B側では、代行録画したコンテンツファイルや録画予約情報を削除し資源を解放する。
なお、図22に示した分散型大容量AV記録システムでは、代行予約サーバにおいて、AV記録装置毎に視聴可能な能力(視聴(録画)可能なチャンネル・空き時間・録画予約状況)をデータベースとして管理し、録画依頼者がローカルで録画可能なチャンネル以上の能力を使用できないようにしている。これに対し、このような制限を無くすことにより、国境を越えた録画予約のボーダーレス化も可能となる。勿論、国境をまたぐに際し、放送方式の変換(NTSC/PAL)やHDの相違などを吸収する仕組みが必要である。
図28には、ボーダーレス化した分散型大容量AV記録システムの構成例を示している。同図に示す例では、日本に設置されているAV記録装置Cにおいて、アメリカで放映されるCNNの「ShowBix Today」22:00〜23:00の録画予約要求が発行される。
この場合、代行予約サーバは、上述と同様に手順によりネットワーク経由で連携する機器の中から録画代行に適合するAV記録装置を探索する。そして、アメリカに設置されているAV記録装置Bが見つけ出され、代行予約サーバはこれに録画依頼要求を発行する。そして、AV記録装置Bにおいて代行録画が完了したら、インターネット経由で録画依頼者であるAV記録装置Cへ当該番組のコンテンツファイルがダウンロードされる。
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
図1は、本発明の一実施形態に係るネットワーク・システムの構成を示した図である。 図2は、サブプロセッサ23からメインメモリ24へのアクセス手順を説明するための図である。 図3は、ソフトウェアセルの構成例を示した図である。 図4は、DMAコマンドがステータス返信コマンドである場合のソフトウェアセルのデータ領域を示した図である。 図5は、複数の情報処理装置が仮想的な1台の情報処理装置として動作する様子を示した図である。 図6は、情報処理コントローラのソフトウェア構成の一例を示した図である。 図7は、4台の情報処理装置が仮想的な1台の情報処理装置として動作する様子を示した図である。 図8は、図7に示したシステムにおける分散処理の例を示した図である。 図9は、各情報処理装置及びシステムの具体例を示した図である。 図10は、図9中のハードディスク・レコーダのハードウェア構成を示した図である。 図11は、図9中のハードディスク・レコーダのソフトウェア構成を示した図である。 図12は、図9中のPDAのハードウェア構成を示した図である。 図13は、図9中のPDAのソフトウェア構成を示した図である。 図14は、図9中のポータブルCDプレーヤのハードウェア構成を示した図である。 図15は、図9中のポータブルCDプレーヤのソフトウェア構成を示した図である。 図16は、本発明の一実施形態に係る分散型大容量AV記録システムの構成を模式的に示した図である。 図17は、録画依頼者又は録画代行者として稼動するAV記録装置が家庭内に設置されている様子を模式的に示した図である。 図18は、縦軸を時間軸とし横軸を放送局に割り当てたラテ欄形式の番組表上に録画予約情報を重畳表示して示した図である。 図19は、分散型大容量AV記録システムにおける代行予約を行なうための処理手順を示したフローチャートである。 図20は、録画依頼者としてのAV記録装置Aと、録画代行者としてのAV記録装置Bと、予約代行者の3者間における代行予約及び代行録画されたファイルの転送に関する動作シーケンスを示した図である。 図21は、録画依頼者としてのAV記録装置Aと、録画代行者としてのAV記録装置Bの2者間における代行予約及び代行録画されたファイルの転送に関する動作シーケンスを示した図である。 図22は、分散型大容量AV記録システムの具体的な構成例を示した図である。 図23は、AV記録装置Dにおける録画予約情報を示した図である。 図24は、AV記録装置Aにおける録画予約情報を示した図である。 図25は、AV記録装置Bにおける録画予約情報を示した図である。 図26は、AV記録装置Cにおける録画予約情報を示した図である。 図27は、分散型大容量AV記録システムにおいて、代行予約サーバの介在により録画代行者が代行録画し、且つ録画された番組コンテンツを録画依頼者にダウンロードする様子を示した図である。 図28は、ボーダーレス化した分散型大容量AV記録システムの構成例を示した図である。

Claims (27)

  1. 番組コンテンツの録画予約機能を備えた複数の機器をネットワーク上で連携させ、前記ネットワーク上の非稼動資源を利用して同一時間帯に提供される複数の同時映像を記録するコンテンツ記録システムであって、
    前記ネットワーク経由で連携するいずれかの機器上で、録画予約に関するユーザからの要求を入力するユーザ入力手段と、
    前記ユーザ入力手段を介して番組コンテンツの録画予約要求が入力されたことに応答して、該録画予約要求された時間帯において録画予約可能な非稼動資源を持つ機器を前記ネットワーク上で探索する非稼動資源探索手段と、
    前記非稼動資源探索手段により発見された機器において要求されている録画予約を設定する録画予約設定手段と、
    を具備することを特徴とするコンテンツ記録システム。
  2. 前記非稼動資源探索手段は、録画予約要求された時間帯において、番組コンテンツを受信可能なチューナ、番組コンテンツを記録可能な空き記憶容量、又はプロセッサの余剰の処理負荷を非稼動資源として持つ機器を探索する、
    ことを特徴とする請求項1に記載のコンテンツ記録システム。
  3. 前記非稼動資源探索手段は、まず番組コンテンツの録画予約要求が入力された機器上で非稼動資源を探索する、
    ことを特徴とする請求項1に記載のコンテンツ記録システム。
  4. 前記非稼動資源探索手段は、番組コンテンツの録画予約要求が入力された機器上で非稼動資源がない場合に、当該機器と同一地域において録画予約可能な非稼動資源を持つ他の機器を前記ネットワーク上で探索する、
    ことを特徴とする請求項3に記載のコンテンツ記録システム。
  5. 前記非稼動資源探索手段は、録画予約要求されたものと同一番組を録画予約設定している機器を探索する、
    ことを特徴とする請求項4に記載のコンテンツ記録システム。
  6. 前記非稼動資源探索手段は、前記ネットワーク上の録画予約可能な各機器における視聴可能なチャンネル、空き録画予約時間、録画予約状況を管理する資源管理手段を備える、
    ことを特徴とする請求項3に記載のコンテンツ記録システム。
  7. 前記非稼動資源探索手段は、録画予約可能な非稼動資源を持つ他の機器を前記ネットワーク上で探索する際、録画予約要求元の機器において視聴可能なチャンネルについての録画予約要求であるかどうかを照合する、
    ことを特徴とする請求項6に記載のコンテンツ記録システム。
  8. 前記非稼動資源探索手段が前記ネットワーク上の他の機器に非稼動資源を見つけた場合、前記録画予約設定手段は、当該他の機器に番組コンテンツの代行記録を要求する、
    ことを特徴とする請求項3に記載のコンテンツ記録システム。
  9. 前記ネットワーク上で連携する各機器は、自機上で録画予約設定された番組並びに代行記録要求に応じて録画予約設定された番組の放送時間の到来に応答して番組コンテンツの記録処理を行なう、
    ことを特徴とする請求項8に記載のコンテンツ記録システム。
  10. 前記ネットワーク上で連携する各機器は、自機上で録画予約設定されたものと同一番組を代行記録する場合、別のファイルにして保存する、
    ことを特徴とする請求項8に記載のコンテンツ記録システム。
  11. 代行録画が完了した後、代行録画した番組コンテンツを代行録画した機器から録画予約要求元の機器へ移動するコンテンツ移動手段をさらに備える、
    ことを特徴とする請求項9に記載のコンテンツ記録システム。
  12. 前記コンテンツ移動手段は、代行録画した機器と録画予約要求元の機器間で一対一の通信方式によりコンテンツ・ファイルの転送を行なう、
    ことを特徴とする請求項11に記載のコンテンツ記録システム。
  13. 前記コンテンツ移動手段により代行記録した番組コンテンツを移動した後、代行記録した機器上に保存されている当該番組コンテンツを削除する、
    ことを特徴とする請求項11に記載のコンテンツ記録システム。
  14. 番組コンテンツの録画予約機能を備えた複数の機器をネットワーク上で連携させ、前記ネットワーク上の非稼動資源を利用して同一時間帯に提供される複数の同時映像を記録するコンテンツ記録方法であって、
    前記ネットワーク経由で連携するいずれかの機器上で、録画予約に関するユーザからの要求を入力するユーザ入力ステップと、
    番組コンテンツの録画予約要求が入力されたことに応答して、該録画予約要求された時間帯において録画予約可能な非稼動資源を持つ機器を前記ネットワーク上で探索する非稼動資源探索ステップと、
    前記非稼動資源探索ステップにおいて発見された機器において要求されている録画予約を設定する録画予約設定ステップと、
    を具備することを特徴とするコンテンツ記録方法。
  15. 前記非稼動資源探索ステップでは、録画予約要求された時間帯において、番組コンテンツを受信可能なチューナ、番組コンテンツを記録可能な空き記憶容量、又はプロセッサの余剰の処理負荷を非稼動資源として持つ機器を探索する、
    ことを特徴とする請求項14に記載のコンテンツ記録方法。
  16. 前記非稼動資源探索ステップでは、まず番組コンテンツの録画予約要求が入力された機器上で非稼動資源を探索する、
    ことを特徴とする請求項14に記載のコンテンツ記録方法。
  17. 前記非稼動資源探索ステップでは、番組コンテンツの録画予約要求が入力された機器上で非稼動資源がない場合に、当該機器と同一地域において録画予約可能な非稼動資源を持つ他の機器を前記ネットワーク上で探索する、
    ことを特徴とする請求項16に記載のコンテンツ記録方法。
  18. 前記非稼動資源探索ステップでは、録画予約要求されたものと同一番組を録画予約設定している機器を探索する、
    ことを特徴とする請求項17に記載のコンテンツ記録方法。
  19. 前記非稼動資源探索ステップは、前記ネットワーク上の録画予約可能な各機器における視聴可能なチャンネル、空き録画予約時間、録画予約状況を管理する資源管理ステップを備える、
    ことを特徴とする請求項16に記載のコンテンツ記録方法。
  20. 前記非稼動資源探索ステップでは、録画予約可能な非稼動資源を持つ他の機器を前記ネットワーク上で探索する際、録画予約要求元の機器において視聴可能なチャンネルの録画予約要求であるかどうかを照合する、
    ことを特徴とする請求項19に記載のコンテンツ記録方法。
  21. 前記非稼動資源探索ステップにおいて前記ネットワーク上の他の機器に非稼動資源を見つけた場合、前記録画予約設定ステップでは、当該他の機器に番組コンテンツの代行記録を要求する、
    ことを特徴とする請求項16に記載のコンテンツ記録方法。
  22. 前記ネットワーク上で連携する各機器が、自機上で録画予約設定された番組並びに代行記録要求に応じて録画予約設定された番組の放送時間の到来に応答して番組コンテンツの記録処理を行なうステップをさらに備える、
    ことを特徴とする請求項21に記載のコンテンツ記録方法。
  23. 前記の番組コンテンツの記録処理を行なうステップでは、前記ネットワーク上で連携する各機器は、自機上で録画予約設定されたものと同一番組を代行記録する場合、別のファイルにして保存する、
    ことを特徴とする請求項21に記載のコンテンツ記録方法。
  24. 代行録画が完了した後、代行録画した番組コンテンツを代行録画した機器から録画予約要求元の機器へ移動するコンテンツ移動ステップをさらに備える、
    ことを特徴とする請求項22に記載のコンテンツ記録方法。
  25. 前記コンテンツ移動ステップでは、代行録画した機器と録画予約要求元の機器間で一対一の通信方式によりコンテンツ・ファイルの転送を行なう、
    ことを特徴とする請求項24に記載のコンテンツ記録方法。
  26. 前記コンテンツ移動ステップにより代行記録した番組コンテンツを移動した後、代行記録した機器上に保存されている当該番組コンテンツを削除するステップをさらに備える、
    ことを特徴とする請求項24に記載のコンテンツ記録方法。
  27. 番組コンテンツの録画予約機能を備えた複数の機器をネットワーク上で連携させ、前記ネットワーク上の非稼動資源を利用して同一時間帯に提供される複数の同時映像を記録するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、
    前記ネットワーク経由で連携するいずれかの機器上で、録画予約に関するユーザからの要求を入力するユーザ入力ステップと、
    番組コンテンツの録画予約要求が入力されたことに応答して、該録画予約要求された時間帯において録画予約可能な非稼動資源を持つ機器を前記ネットワーク上で探索する非稼動資源探索ステップと、
    前記非稼動資源探索ステップにおいて発見された機器において要求されている録画予約を設定する録画予約設定ステップと、
    を具備することを特徴とするコンピュータ・プログラム。
JP2004056778A 2004-03-01 2004-03-01 コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム Pending JP2005252402A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004056778A JP2005252402A (ja) 2004-03-01 2004-03-01 コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004056778A JP2005252402A (ja) 2004-03-01 2004-03-01 コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム

Publications (1)

Publication Number Publication Date
JP2005252402A true JP2005252402A (ja) 2005-09-15

Family

ID=35032518

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004056778A Pending JP2005252402A (ja) 2004-03-01 2004-03-01 コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP2005252402A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007208331A (ja) * 2006-01-30 2007-08-16 Kyocera Corp 情報受信装置および情報受信処理方法
EP2012536A2 (en) 2007-07-02 2009-01-07 Sony Corporation Recording control apparatus and recording system
JP2009527971A (ja) * 2006-02-24 2009-07-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ピアのネットワークでリソースを共有する装置及び方法
JP2011091830A (ja) * 2010-11-26 2011-05-06 Hitachi Consumer Electronics Co Ltd 録画コンテンツの管理方法および録画装置
JP2012015926A (ja) * 2010-07-02 2012-01-19 Pfu Ltd レコーダ管理システム、レコーダ管理装置、レコーダ管理方法、及びプログラム
US8161300B2 (en) 2006-07-11 2012-04-17 Panasonic Corporation Instructing device configured to selects a cooperating device based on a predetermined power supply reliability
US8229282B2 (en) 2006-11-16 2012-07-24 Fujitsu Limited Video-recording reservation management apparatus, method, program and system
JP2014082796A (ja) * 2005-11-04 2014-05-08 United Video Properties Inc ネットワーク記録デバイスを補助ストレージとして用いた番組を録画するシステムおよび方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014082796A (ja) * 2005-11-04 2014-05-08 United Video Properties Inc ネットワーク記録デバイスを補助ストレージとして用いた番組を録画するシステムおよび方法
JP2007208331A (ja) * 2006-01-30 2007-08-16 Kyocera Corp 情報受信装置および情報受信処理方法
JP2009527971A (ja) * 2006-02-24 2009-07-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ピアのネットワークでリソースを共有する装置及び方法
US8161300B2 (en) 2006-07-11 2012-04-17 Panasonic Corporation Instructing device configured to selects a cooperating device based on a predetermined power supply reliability
US8229282B2 (en) 2006-11-16 2012-07-24 Fujitsu Limited Video-recording reservation management apparatus, method, program and system
US8712213B2 (en) 2006-11-16 2014-04-29 Fujitsu Limited Video-recording reservation management apparatus, method, program, and system
EP2012536A2 (en) 2007-07-02 2009-01-07 Sony Corporation Recording control apparatus and recording system
US8538245B2 (en) 2007-07-02 2013-09-17 Sony Corporation Recording control apparatus and recording system
JP2012015926A (ja) * 2010-07-02 2012-01-19 Pfu Ltd レコーダ管理システム、レコーダ管理装置、レコーダ管理方法、及びプログラム
JP2011091830A (ja) * 2010-11-26 2011-05-06 Hitachi Consumer Electronics Co Ltd 録画コンテンツの管理方法および録画装置

Similar Documents

Publication Publication Date Title
US8270811B2 (en) Information management method, information playback apparatus, and information management apparatus
KR20060042399A (ko) 콘텐츠 처리 시스템 및 콘텐츠 처리 방법과, 컴퓨터 프로그램
US20060013566A1 (en) Content recording apparatus, content playback apparatus, content recording method, content playback method, and computer program
KR20060043201A (ko) 정보 처리 시스템 및 정보 처리 방법과, 컴퓨터 프로그램
CN100534159C (zh) 信息处理系统以及信息处理方法
JP2008176644A (ja) ネットワークシステム、ダイレクトアクセス管理サーバ、イベント通知方法、ネットワーク家電機器、及びコンピュータプログラム
JP4599923B2 (ja) 情報処理システム及び情報処理方法、並びにコンピュータプログラム
KR20070035037A (ko) 정보 처리 시스템 및 정보 처리 방법과 컴퓨터 프로그램
US20060271934A1 (en) Computer-readable recording medium recording a service control program, and service control device and method
KR101089857B1 (ko) 콘텐츠 재생 장치, 콘텐츠 기록 장치, 네트워크 시스템, 및콘텐츠 기록·재생 방법
JP2005252402A (ja) コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム
US20050172323A1 (en) Television web services
JP4346670B1 (ja) 電子装置およびコンテンツデータ提供方法
CN1905670A (zh) 基于网格技术的视频点播直播的实现方法和设备
JP2003046958A (ja) ビデオデータ格納装置及びビデオデータ取得装置
JP2006033646A (ja) 情報処理システム及び情報処理方法、並びにコンピュータプログラム
JP2005339174A (ja) 情報処理システム及び情報処理方法、並びにコンピュータプログラム
JP2005252403A (ja) コンテンツ記録システム及びコンテンツ記録方法、並びにコンピュータ・プログラム
JP2005339401A (ja) 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム
JP2005244577A (ja) 情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP2005267150A (ja) 情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP4329647B2 (ja) 情報処理システム及び情報処理方法、並びにコンピュータプログラム
JP2005235246A (ja) サーバ装置
JP2005301678A (ja) ネットワークシステム、代理表示方法、情報処理装置
JP2006018343A (ja) 情報処理装置、ネットワークシステム、および情報処理装置の機能拡張方法