以下、本発明の実施の形態について、図面に基づき詳細に説明する。
本発明の一実施形態に係る情報処理装置1は、図1に示すように、制御部11と、記憶部12と、操作部13と、表示部14と、通信部15と、テレビジョン放送受信部16と、電源制御モジュール17と、を含んで構成されている。
制御部11は、例えばCPU等であって、記憶部12に記憶されているプログラムに従って各種の情報処理を実行する。本実施形態において制御部11が実行する処理の具体例については、後述する。
記憶部12は、制御部11によって実行されるプログラムや各種のデータを記憶する。本実施形態において、記憶部12は、少なくとも不揮発性メモリ12a及びDRAM12bを含んで構成される。また、ハードディスクなどの他のコンピュータ読み取り可能な情報記憶媒体を含んで構成されてもよい。不揮発性メモリ12aに記憶された情報は、情報処理装置1本体の電源が切断された状態においても保持され、DRAM12bに記憶された情報は、情報処理装置1本体の電源が完全に切断され、電力が供給されない状態になると、消去される。なお、DRAM12bは、制御部11のワークメモリとしても動作する。
操作部13は、例えば各種の操作ボタン等であって、ユーザからの操作入力を受け付けて、その操作内容を制御部11に対して出力する。表示部14は、例えば液晶表示パネル等であって、制御部11からの指示に従って、各種の情報を画面上に表示する。
通信部15は、例えば無線LAN等の通信インタフェースであって、通信ネットワークを介して他の通信機器との間で情報の送受信を行う。テレビジョン放送受信部16は、例えばワンセグチューナー等であって、テレビジョン放送の映像信号を受信して、制御部11に対して出力する。
電源制御モジュール17は、現在日時を計時するリアルタイムクロックなどの計時部17aと、日時情報を保持する日時レジスタ17bと、制御信号出力部17cと、を含んで構成される。電源制御モジュール17は、日時レジスタ17bに設定された日時が到来すると、後述する待機モードから通常モードへと動作モードを切り替えるための制御信号を出力する。具体的に、日時レジスタ17bは、制御部11から入力されるアラーム日時の情報を記憶しておく。そして、制御信号出力部17cは、計時部17aが計時している日時と、日時レジスタ17bに設定されたアラーム日時と、を比較し、計時部17aが計時している日時がアラーム日時になったと判定したタイミングで、情報処理装置1各部への電力供給を制御するための所定の制御信号を出力する。なお、日時レジスタ17bに記憶されるアラーム日時の情報は、情報処理装置1の電源が切断された状態においても、保持されるようになっている。
ここで、本実施形態に係る情報処理装置1の動作モードについて、説明する。本実施形態では、情報処理装置1は、待機モード及び通常モードの少なくとも2種類の動作モードで動作することとする。通常モードにおいては、情報処理装置1の各部に電力が供給され、それぞれの動作は特に制限されない。そして、ユーザの操作部13に対する指示操作などによって通常モードから待機モードへ移行する際には、制御部11内においてプログラムカウンタなどのレジスタに格納されているデータがDRAM12bに待避される。待機モード中は、DRAM12bに対しては、その内部に格納されたデータが消去されないよう、リフレッシュ動作に必要な電力が供給されるが、制御部11への電力供給は制限される。これによって、通常モードの場合と比較して、待機モード中の情報処理装置1の消費電力は低く抑えられる。
待機モード中においても、電源制御モジュール17は動作しており、日時レジスタ17bに設定されたアラーム日時の到来を制御信号出力部17cが検知すると、待機モードから通常モードへと移行するための制御信号が出力される。この制御信号によって、制御部11などへの電力供給が再開されるとともに、DRAM12bに待避されていたデータが制御部11内のレジスタに復元され、制御部11は待機モード移行時の状態に復帰して動作を再開する。さらに制御信号出力部17cは、動作を再開した制御部11に対して、アラーム日時が到来したことを通知する制御信号を出力する。
以下、本実施形態において情報処理装置1が実現する機能について、説明する。情報処理装置1は、図2に示すように、機能的に、第1機能実行部21と、第2機能実行部22と、予約情報記憶部23と、優先度記憶部24と、機能制御部25と、を含んで構成される。また、機能制御部25は、予約情報管理部25aと、機能開始/終了処理部25bと、を含んで構成される。これらの機能のうち、第1機能実行部21、第2機能実行部22、及び機能制御部25は、制御部11がそれぞれ対応するアプリケーションプログラムやシステムプログラムを実行することにより、実現される。これらのプログラムは、例えば光ディスクやメモリカード等の各種のコンピュータ読み取り可能な情報記憶媒体に格納されて提供されてもよいし、インターネット等の通信ネットワークを介して提供されてもよい。また、予約情報記憶部23及び優先度記憶部24は、記憶部12によって実現される。
第1機能実行部21及び第2機能実行部22は、それぞれ所定の機能を実行する。これらの機能はいずれも、ユーザの指示操作があった場合だけでなく、予め定められた開始時期が到来した場合にも、その実行が開始される。具体的に、本実施形態では、第1機能実行部21は、予め定められた開始日時が到来すると、予め定められた実行期間が経過するまでの間、テレビジョン放送受信部16によって受信したテレビジョン放送の映像データをハードディスクやメモリカードなどの情報記憶媒体に記録する放送録画機能を実行する。
また、第2機能実行部22は、予め定められた開始日時が到来すると、通信部15経由で予め指定された配信サーバに対してアクセスして、当該配信サーバ内に前回アクセス時より後に追加されたコンテンツがあるか否かを判定し、前回アクセス時より後に新たに追加された、または更新されたコンテンツが存在する場合に、そのコンテンツのデータをダウンロードするダウンロード機能を実行する。この第2機能実行部22が実行する機能の終了時期は、機能の実行開始時には確定されておらず、第2機能実行部22は、予め定められた処理が完了することによって機能の実行を終了する。
予約情報記憶部23は、それぞれ開始時期の情報を含む複数の予約情報を記憶する。これらの予約情報は、それぞれ、当該予約情報に含まれる開始時期から、当該予約情報に関連付けられた機能を情報処理装置1に実行させるための実行予定を示す情報である。なお、この予約情報記憶部23は、不揮発性メモリ12aによって構成されてよい。こうすれば、情報処理装置1の電源が切断された状態でも、各予約情報の内容が保持される。
予約情報記憶部23が記憶する予約情報のそれぞれは、情報処理装置1が実行可能な複数の機能のいずれかに関連付けられる。本実施形態では、予約情報記憶部23は、予め所定数の予約情報を格納するための所定数のフィールドを含んで構成されることとし、この各フィールドが放送録画機能又はダウンロード機能のいずれかに関連付けられている。具体的に、例えば予約情報記憶部23は、最大で9個の予約情報P0〜P8を記憶することとし、このうち予約情報P0が第2機能実行部22により実行されるダウンロード機能に関連付けられ、それ以外の予約情報P1〜P8が第1機能実行部21により実行される放送録画機能に関連付けられる。
図3は、この予約情報記憶部23が記憶する予約情報の具体例を示す図である。同図の例では、複数の予約情報は、それぞれ、設定日時と、実行期間と、実行曜日フラグと、有効フラグと、を含んだ情報になっている。ここで、有効フラグは、予約情報が有効か無効かを示すフラグであり、このフラグがオフになっている場合、その予約情報は一時的に無効化されていることを示している。すなわち、この有効フラグがオフになっている予約情報については、後述する機能制御部25による処理の対象から除外される。
この図3の例では、各予約情報に応じた処理の開始時期は、設定日時と、実行曜日フラグと、によって規定される。具体的に、実行曜日フラグは、全部で7個のビットによって構成されており、それぞれ毎週日曜日から毎週土曜日までのいずれかの曜日に関連付けられている。そして、設定日時により示される日以降で、7個のビットのうち、オンになっているビットに関連付けられた曜日の、設定日時により示される時刻が、開始時期となる。例えば図3の予約情報P0においては、設定日時が2008年1月1日 6:50で、月曜日から金曜日までに対応する5個のビットがオンになっている。この場合、2008年1月1日以降の、毎週月〜金曜日の6:50が、開始時期となる。また、7個のビットの全てがオフの場合、その予約情報に応じた処理は設定日時を開始時期として一度だけ実行されることを示している。例えば図3の予約情報P2においては、設定日時が2008年1月10日19:00で、実行曜日フラグの全てのビットがオフになっている。この場合、当該予約情報P2に応じた処理は、2008年1月10日の19:00を開始時期として1回だけ実行される。
また、予約情報の実行期間は、例えば分を単位とした数値によって、当該予約情報に応じた処理が実行される期間を示している。前述した開始時期に対してこの実行期間を加算することによって、各予約情報に応じた機能の実行が終了する終了時期が算出される。
なお、予約情報の中には、実行期間が予め定められないものも存在しうる。本実施形態では、前述したように、第2機能実行部22が実行する機能の終了時期は予め定められていない。そこで、このような終了時期が不定の予約情報についても、終了時期が予め確定された予約情報とともに一元的に管理し、互いに競合するか否かを判定可能とするため、このような終了時期不定の予約情報については、実行期間として所定値が設定されることとしてもよい。本実施形態では、この所定値は「0」であることとしている。すなわち、図3において実行期間の値が「0」になっている予約情報P0は、その終了時期が不定であることを示している。
優先度記憶部24は、予約情報記憶部23が記憶する複数の予約情報のそれぞれに関連付けて、当該予約情報の優先度を示す情報(優先度情報)を記憶する。本実施形態では、予約情報記憶部23が記憶する複数の予約情報の間で、どの予約情報に応じた処理を優先して実行するかに関する優先順位が定められており、優先度記憶部24は、この優先順位を規定する情報を記憶している。優先度記憶部24は、不揮発性メモリ12aによって構成されてもよいし、あるいは書き換え不能なROM(不図示)によって構成されてもよい。前述したように予約情報記憶部23が所定数のフィールドによって構成される場合、優先度記憶部24は、このフィールドのそれぞれに関連付けて優先度情報を記憶することとすれば、優先度記憶部24が記憶する優先度情報を予約情報が追加や削除されるごとに書き換えなくともよくなる。
図4は、優先度記憶部24が記憶する優先度情報の一例を示す図である。この図の例では、予約情報P0に優先度1が関連付けられており、その他の予約情報P1〜P8に優先度0が関連付けられている。そのため、予約情報P1〜P8の優先順位は、互いに同じであり、かつ、予約情報P0の優先順位より高いことになる。なお、この図の例では、優先順位は、各予約情報が関連付けられる機能の種類に対応して定められている。すなわち、同じ種類の機能に関連付けられている予約情報の優先順位は、同じになっている。
機能制御部25は、予約情報記憶部23が記憶する予約情報を管理し、この予約情報に従って第1機能実行部21及び第2機能実行部22による機能の実行を制御する。機能制御部25は、例えばシステム常駐型のプログラムを制御部11が実行することによって、情報処理装置1が通常モードで動作している間、常に実行されてもよい。
予約情報管理部25aは、ユーザにより入力される予約情報を受け入れて、その内容を予約情報記憶部23に格納する。具体例として、第1機能実行部21及び第2機能実行部22は、それぞれ、ユーザの操作部13に対する指示操作に応じて、自分自身が実行すべき機能に関する予約情報の入力を受け付け、入力された予約情報を予約情報管理部25aに対して出力する。予約情報管理部25aは、この新たに入力された予約情報と、予約情報記憶部23に既に記憶されている予約情報と、が競合するか否かを判定し、判定結果を予約情報の入力を受け付けた機能実行部(第1機能実行部21又は第2機能実行部22)に通知する。また、予約情報が競合しないと判定した場合には、この予約情報を、予約情報記憶部23に新たに登録する。なお、この予約情報の競合判定処理の具体例については、後述する。
さらに、予約情報管理部25aは、予約情報記憶部23に新たに予約情報を追加登録した場合や、第1機能実行部21又は第2機能実行部22の要求に応じて予約情報記憶部23に記憶された予約情報の変更や削除を行った場合に、予約情報記憶部23に記憶されている予約情報のそれぞれに含まれる開始時期のうち、現在日時に対して直近の未来の日時の情報を、アラーム日時の情報として電源制御モジュール17の日時レジスタ17bに入力する。また、日時レジスタ17bに設定されたアラーム日時の到来が電源制御モジュール17の制御信号出力部17cから通知された場合、予約情報管理部25aは、さらにその次に到来する開始時期の情報を、アラーム日時の情報として日時レジスタ17bに入力する。このような予約情報管理部25aの制御により、日時レジスタ17bには、予約情報記憶部23に記憶されている複数の予約情報に含まれる複数の開始時期のうち、常に、最も近い未来に到来する開始時期がアラーム日時として設定されることとなる。
機能開始/終了処理部25bは、電源制御モジュール17の制御信号出力部17cからアラーム日時の到来が通知された場合に、当該通知が、予約情報記憶部23に記憶された予約情報のうちのどの予約情報に含まれる開始時期の到来によるものかを特定する。具体的には、機能開始/終了処理部25bは、予約情報記憶部23に記憶されている各予約情報を参照して、現在日時に対して、最も近い過去の開始時期を含んだ予約情報を、制御信号出力部17cからの通知の対象となったアラーム日時を含んだ予約情報(以下、アラーム対象予約情報という)として特定する。そして、特定されたアラーム対象予約情報に関連付けられた機能の実行を、第1機能実行部21又は第2機能実行部22に開始させる。例えばアラーム対象予約情報に関連付けられた機能が放送録画機能の場合、機能開始/終了処理部25bは、第1機能実行部21に対応するアプリケーションプログラムを起動することにより、第1機能実行部21に放送録画機能の実行を開始させる。このような機能開始/終了処理部25bの処理によって、第1機能実行部21及び第2機能実行部22は、予約情報記憶部23に記憶された予約情報に含まれる開始時期が到来した場合に、当該予約情報に関連付けられた機能の実行を開始することになる。
さらに、本実施形態では、機能開始/終了処理部25bは、複数の機能のいずれかの実行を開始させる際に、複数の予約情報の間の優先順位に応じて、既に実行中の他の機能の実行を制限する。具体的に、機能開始/終了処理部25bは、アラーム日時の到来が制御信号出力部17cから通知された際に、当該通知の対象となったアラーム対象予約情報以外の他の予約情報に応じて他の機能が実行中の場合、優先度記憶部24に記憶された、アラーム対象予約情報及び現在実行中の機能に関連付けられた予約情報それぞれの優先度に応じて、現在実行中の機能の実行を中断させる。
一例として、優先度1の予約情報P0に応じた機能が第2機能実行部22によって実行されている間にアラーム日時の到来が通知され、かつ、当該通知の対象となったアラーム対象予約情報が優先度0の予約情報であった場合、機能開始/終了処理部25bは、第2機能実行部22に対して既に実行中の機能を中断させる指示を出力する。そして、第1機能実行部21にアラーム対象予約情報に応じた機能の実行を開始させる。
本実施形態では、前述したように、優先度1の予約情報P0に関連付けられた機能はコンテンツのダウンロード機能であって、この機能は、同じ内容の処理が何度も繰り返される機能である。したがって、必ずしも指定された時間に実行されなければならないものではなく、例えば一度実行中に中断されても、その後に再び実行されれば、ユーザの希望するコンテンツをダウンロードできる可能性が高い。一方、優先度0の予約情報に関連付けられた機能は放送録画機能であって、この機能は、指定された時間にリアルタイムで実行される必要があると考えられる。そこで、情報処理装置1は、このように優先度の高い予約情報に関連付けられた機能の実行を開始する際に、既に実行中の優先度の低い他の機能の実行を制限することによって、予約情報同士が競合する場合に、より優先度の高い予約情報に応じた機能の実行を優先させることができる。
なお、既に実行中の機能を中断させるか否かを判定するために、機能開始/終了処理部25bは、第1機能実行部21又は第2機能実行部22のいずれかに対して予約情報に応じた機能の実行を開始させた場合、どの予約情報に対して機能の実行が開始されたかに関する情報を保持しておく。そして、第1機能実行部21及び第2機能実行部22は、機能開始/終了処理部25bの制御によって予約された機能を実行したときには、当該機能の実行が正常に終了したり、ユーザの指示等によって途中で中断されたりした時点で、機能の実行の終了を示す情報を機能開始/終了処理部25bに通知する。なお、第1機能実行部21及び第2機能実行部22は、機能の実行が正常終了したか途中で中断されたかを示す情報を機能開始/終了処理部25bに通知してもよい。これにより、機能開始/終了処理部25bは、電源制御モジュール17の制御信号出力部17cからアラーム日時の到来が通知された場合に、その時点で実行中の機能があるか、また複数の機能のうちどの機能が実行中か、を特定し、現在実行中の機能を中断させるか否か判定することができる。
次に、予約情報管理部25aが実行する予約情報の競合判定処理の具体例について、説明する。
新たに入力された予約情報と、既に予約情報記憶部23に記憶されている予約情報と、の間の競合の判定は、それぞれの予約情報に関連付けられた機能の実行時期が互いに重複するか否かによって行われる。すなわち、新たに入力された予約情報について、当該予約情報の開始時期及び実行期間に応じて決まる実行時期が、他の予約情報に関連付けられる機能の実行時期と重複するか否かを判定する。具体的に、新たに入力された予約情報の開始時期が、既に登録済みの別の予約情報の開始時期より後で、かつ、当該別の予約情報の終了時期よりは前であるという条件(条件1)を満たす場合、新たに入力された予約情報は既に登録済みの予約情報と競合すると判定される。また、新たに入力された予約情報の開始時期が既に登録済みの別の予約情報の開始時期より前で、かつ、新たに入力された予約情報の終了時期が当該別の予約情報の開始時期より後であるという条件(条件2)を満たす場合も、新たに入力された予約情報は既に登録済みの予約情報と競合すると判定される。
ただし、前述したように、予約情報記憶部23に記憶されている予約情報の中には、実行期間が予め定められておらず、従って終了時期が不定のものが存在する場合がある。このような終了時期不定の予約情報については、所定の条件に基づいて他の予約情報との間で実行時期が重複するか否か判定される。例えば予約情報管理部25aは、終了時期不定の予約情報については、開始時期より以後、終了せずに継続して機能が実行されると仮定して競合判定処理が行われることとしてもよい。しかしながら、このような条件で判定を行うこととすると、終了時期不定の予約情報の開始時期より後の開始時期が設定された予約情報は、全て終了時期不定の予約情報と競合してしまうこととなる。そこで、予約情報管理部25aは、終了時期不定の予約情報については、前述した各予約情報の間の優先順位に応じて、他の予約情報と競合する場合にも登録を許容することとしてもよい。
具体例として、第2機能実行部22によって、終了時期不定の予約情報の入力が新たに受け付けられた場合、この予約情報は、他の予約情報との競合がなければ、実行期間の値が「0」の予約情報P0として予約情報記憶部24に記憶されることとなる。この予約情報P0の開始時期としてユーザが指定する日時が、第1機能実行部21と関連付けて既に記憶されている予約情報のうち、いずれかの予約情報における開始時期と終了時期との間に含まれる場合(すなわち、前述した条件1を満たす場合)には、第1機能実行部21と関連付けられる予約情報P1〜P8の優先順位が予約情報P0の優先順位より高いため、このような予約情報P0を登録しても、予約情報P0に関連付けられた機能は実行されないことになる。そこで、予約情報管理部25aは、この予約情報P0は他の予約情報と完全に競合するため、受け入れられないと判定する。なお、前述したように、一つの予約情報には、例えば毎週月曜日の7:00、毎週火曜日の7:00、・・・、というように、複数の開始時期が含まれる場合がある。このような場合には、予約情報P0に含まれる複数の開始時期の全てが、他の予約情報のいずれかの開始時期と終了時期との間に含まれる場合に、新たに入力された予約情報P0を受け入れられないと判定する。
図5(a)は、このような完全な競合が生じ、予約情報P0の入力が受け入れられない場合の例を示している。この図の例では、新たに入力された予約情報P0において指定されている開始時期は、毎週月〜金曜日の7:10である。これに対して、予約情報P1では、開始時期が毎日(すなわち、全ての曜日)の7:00、実行期間が60分と指定されており、終了時期は毎日8:00と算出される。すなわち、予約情報P0の全ての開始時期は、予約情報P0より優先順位の高い予約情報P1の開始時期と終了時期との間に含まれることとなる。そのため、この予約情報P0の登録は受け入れられないと判定される。
一方、予約情報P0に含まれるいずれかの開始時期が、前述した条件1を満たさない場合、少なくとも週1回は予約情報P0に応じた機能の実行が開始されることになる。そこで、このような場合には、予約情報管理部25aは、新たに入力された予約情報P0は、他の予約情報と完全には競合しないと判定する。しかしながら、予約情報P0に含まれる少なくとも一つの開始時期が前述した条件2を満たす場合には、予約情報P0に応じた機能の実行に要する時間によっては、他の予約情報と競合することがあり得る。この場合、前述したように、機能開始/終了処理部25bは、競合する他の予約情報に設定された開始時期が到来した時点で、予約情報P0に応じた機能の実行がまだ終了していない場合、この機能の実行を中断することとなる。そこで、予約情報管理部25aは、このような条件に該当する予約情報の入力を新たに受け付けた場合、競合する可能性があることを示す判定結果を第2機能実行部22に対して出力する。こうすれば、第2機能実行部22は、例えば表示部14に所定の警告メッセージを表示させるなど、新たに入力された予約情報が他の予約情報とは全く競合しない場合とは異なるメッセージを出力して、ユーザに競合の可能性があることを知らせることができる。
図5(b)は、このように競合の可能性があり、入力された予約情報P0の登録は許容されるが、ユーザへの警告を実施すべき場合の例を示している。この図の例では、予約情報P1は、図5(a)と同様に、毎日7:00から8:00まで放送録画機能を実行することを指定する内容となっている。一方、新たに入力された予約情報P0については、開始時期が毎週月〜金曜日の6:50となっている。そのため、予約情報P0に応じた処理を第2機能実行部22が実際に実行した際に、10分以内に終了しなかった場合、予約情報P1との間で競合が生じ、この処理が途中で中断されることになるが、10分以内に終了すれば、予約情報P1と競合せずにこの処理は正常に終了することとなる。そのため、第2機能実行部22は、予約情報管理部25aによる判定結果に応じて、実行が中断される可能性があることを知らせる警告メッセージをユーザに提示する。これに対して、ユーザがそれでも予約情報P0を登録すべき旨を指示する操作を行った場合には、予約情報管理部25aは、当該予約情報P0を予約情報記憶部23に記憶する。
また、第1機能実行部21が新たな予約情報の入力を受け付けた場合、予約情報管理部25aは、新たに入力された予約情報と同順位の他の予約情報についてのみ、新たに入力された予約情報と競合するか否かを判定することとしてもよい。また、第2機能実行部22に関連付けられた予約情報P0との間の競合についても判定し、前述したように完全に競合するか、又は競合の可能性がある場合には、その判定結果を出力して、ユーザに対して警告メッセージを提示することとしてもよい。
以下、本実施形態に係る情報処理装置1が実行する処理の流れのいくつかの具体例について、説明する。
まず、複数の予約情報の入力を受け付ける場合の処理の流れの一例について、図6のフロー図に基づいて説明する。
この図の例では、まず第1機能実行部21が、ユーザから新たな予約情報の入力を受け付け(S1)、入力された予約情報が既に登録されている他の予約情報と競合するか否かを、予約情報管理部25aに問い合わせる(S2)。ここでは具体例として、図3において予約情報P1として示した内容の予約情報が入力されるものとする。予約情報管理部25aは、予約情報記憶部23に記憶されている予約情報を参照して、予約情報の競合の有無を判定し(S3)、その結果を第1機能実行部21に通知する。
S1で入力された予約情報が、優先度の同じ、あるいは優先度のより高い他の予約情報と競合すると判定された場合には、第1機能実行部21は、競合する他の予約情報をキャンセルして新たに入力された予約情報を登録するか否かをユーザに問い合わせる。図7は、このような場合に表示部14に表示される表示画面の一例を示している。この図の例に示す表示画面には、S3で競合すると判定された他の予約情報が含まれている。さらにこの図の例では、第1機能実行部21は、予約情報記憶部23に記憶された予約情報の内容だけでなく、第1機能実行部21が別途記録している、各予約情報に応じて実行すべき機能に関するパラメタ情報(例えば録画対象とするチャネルなど)を併せて表示部14に表示している。この表示画面が表示された状態で、ユーザが操作部13に対する指示操作によって予約情報の登録中止を指示した場合、第1機能実行部21は予約情報の登録を中止する。また、ユーザが予約情報の登録を指示した場合、第1機能実行部21はその旨を予約情報管理部25aに通知する。これに応じて予約情報管理部25aは、S3で競合すると判定された他の予約情報を無効化又は削除するとともに、S1で入力された予約情報を予約情報記憶部24に新たに登録する。
また、S1で入力された予約情報が、優先度のより低い他の予約情報と競合する可能性があると判定された場合には、第1機能実行部21は、競合する他の予約情報の実行が中断される可能性があることを示す警告メッセージを出力する。図8は、このような場合に表示部14に表示される表示画面の一例を示している。この図の例でも、ユーザが予約情報の登録を中止する指示を行った場合、第1機能実行部21は予約情報の登録を中止する。一方、ユーザが予約情報の登録を指示した場合には、その指示に応じて予約情報管理部25aは他の予約情報を無効化したり削除したりすることなく、S1で入力された予約情報を予約情報記憶部24に登録する。なお、S3において優先度の低い他の予約情報が新たに入力された予約情報と完全に競合すると判定される場合には、予約情報管理部25aは、新たな予約情報の登録とともに競合する他の予約情報を無効化又は削除することとしてもよい。
また、S3において、S1で入力された予約情報が他の予約情報と競合しないと判定された場合、第1機能実行部21は予約処理を実行する(S4)。図6では、この場合のフローが示されている。具体的に、第1機能実行部21は、ユーザによって指定された、予約情報に応じて実行すべき放送録画機能に関するパラメタ情報を不揮発性メモリ12aに格納するとともに、予約情報記憶部23への予約情報の登録を予約情報管理部25aに指示する。これに応じて、予約情報管理部25aは予約情報の登録を行う(S5)。
予約情報の登録を行った場合、続いて予約情報管理部25aは、アラーム日時の設定を行う(S6)。すなわち、S5で新たに登録された予約情報も含めて、予約情報記憶部23に記憶されている予約情報に含まれる開始時期の中から、直近の未来の開始時期を選択し、アラーム日時の情報として日時レジスタ17bに入力する。ここで具体例として、S6の処理が実行される時点が7:00より前であり、S5で登録された予約情報P1以外の予約情報がなかったとすると、予約情報管理部25aは、予約情報P1において指定された次の開始時期である当日の7:00を、アラーム日時として設定する。
図6のフローの例では、この後、第2機能実行部22が新たな予約情報の入力を受け付けている(S7)。ここでは具体例として、図3において予約情報P0として示した内容の予約情報が入力されるものとする。これに応じて、第2機能実行部22は、入力された予約情報が既に登録されている他の予約情報と競合するか否かを、予約情報管理部25aに問い合わせる(S8)。予約情報管理部25aは、予約情報記憶部23に記憶されている予約情報を参照して、予約情報の競合の有無を判定し(S9)、その結果を第2機能実行部22に通知する。ここでは、S7で入力された予約情報は、予約情報P1と競合する可能性があるが、完全に競合しているわけではない。そのため、その旨の判定結果が第2機能実行部22に通知される。
これに応じて、第2機能実行部22は、S7で入力された予約情報が中断される可能性がある旨の警告表示を行う(S10)。図9は、このような警告表示画面の一例を示している。この表示に対して、ユーザが予約情報の登録を実行する旨の指示を行った場合、第2機能実行部22は予約処理を実行する(S11)。具体的に、第2機能実行部21は、ユーザによって指定された、予約情報に応じて実行すべきダウンロード機能に関するパラメタ情報(例えばダウンロードの対象配信サーバ等)を不揮発性メモリ12aに格納するとともに、予約情報の登録を予約情報管理部25aに指示する。これに応じて、予約情報管理部25aは予約情報の登録を行う(S12)。ユーザが予約情報の登録を中断する旨の指示を行った場合には、第2機能実行部22は、予約情報の登録を中断する。
さらに、予約情報管理部25aは、S6と同様にアラーム日時の設定を行う(S13)。例えばこの処理が行われる時点が月〜金曜日の6:50より前だった場合、予約情報管理部25aは、新たなアラーム日時として当日の6:50を設定する。
その後、情報処理装置1が待機モードに移行し、待機モード中にアラーム日時として設定された6:50になると、予約情報P0に応じた機能の実行が開始される。このときの処理については、後述する。
次に、情報処理装置1が複数の予約情報の入力を受け付ける場合の処理の流れの別の例について、図10のフロー図に基づいて説明する。
この図のフローにおいて、S21〜S26までは、前述した図6のフローにおけるS1〜S6までの処理と同様である。これによって、予約情報記憶部23には図3において予約情報P1として示される内容の予約情報が登録され、日時レジスタ17には当日の7:00がアラーム日時として設定される。
その後、図6のフローの例と同様に、第2機能実行部22が、新たな予約情報の入力を受け付ける(S27)。ただし、ここで入力される予約情報は、図3の予約情報P0と異なり、開始時期が6:50ではなく7:10であるものとする。この場合、第2機能実行部22の問い合わせ(S28)に応じて、予約情報管理部25aは、S27で入力された予約情報が既に登録済みの予約情報P1と完全に競合し、実行される可能性がないと判定する(S29)。この判定結果に応じて、第2機能実行部22は、例えば図11に例示するような、予約情報の登録を受け付けられない旨を示すエラー表示画面を表示し(S30)、予約情報の登録を中止する。その結果、日時レジスタ17bには、そのままS26で設定された当日の7:00というアラーム日時が残ることになる。
その後、情報処理装置1が待機モードに移行したとする(S31)。待機モード中に、計時部17aが計時する時刻がアラーム日時として設定された7:00になると、電源制御モジュール17の制御信号出力部17cは、待機モードから通常モードに移行させる制御信号を出力し、さらに機能制御部25に対してアラーム日時の到来を通知する(S32)。この通知を受けた機能開始/終了処理部25bは、S32の通知の対象となったアラーム対象予約情報を特定する(S33)。ここでは、予約情報P1がアラーム対象予約情報として特定される。そこで機能開始/終了処理部25bは、特定された予約情報P1に関連付けられた第1機能実行部21に対して、放送録画機能の実行開始を指示し(S34)、これに応じて第1機能実行部21が放送録画機能を開始する(S35)。
次に、図6のフローに示した処理によって予約情報P0及びP1の2つの予約情報が登録されている状態における、アラーム日時が到来したときに実行される処理の具体例について、図12及び図13のフロー図に基づいて説明する。
まず、予約情報P0と予約情報P1とが実行時に競合する場合の例について、図12のフロー図に基づいて説明する。
この図の例では、図6のフローにおける処理が実行された後、情報処理装置1は待機モードに移行している。この状態において、アラーム日時として設定された6:50になると、図10のフローの例と同様に、制御信号出力部17cは、待機モードから通常モードに移行させる制御信号を出力し、さらに機能制御部25に対してアラーム日時の到来を通知する(S41)。この通知を受けた機能開始/終了処理部25bは、通知の対象となったアラーム対象予約情報を特定する(S42)。ここでは、予約情報P0がアラーム対象予約情報として特定される。そこで機能開始/終了処理部25bは、特定された予約情報P0に関連付けられた第2機能実行部22に対して、ダウンロード機能の実行を開始させる(S43)。これにより、第2機能実行部22は、予め設定されたサーバから新たに登録されたコンテンツをダウンロードするダウンロード機能の実行を開始する(S44)。一方、予約情報管理部25aは、S43の処理に続いて、予約情報記憶部23に記憶される予約情報に含まれる開始時期の中から、現在日時に最も近い未来の開始時期を選択し、その開始時期をアラーム日時として日時レジスタ17bに設定する(S45)。ここでは、予約情報P1に含まれる当日の7:00が、アラーム日時として設定される。
この図12のフローの例では、その後、アラーム日時として設定された7:00になった時点においても、S44のダウンロード機能の実行が終了せずに継続しているものとする。この場合、制御信号出力部17cは、S45で設定されたアラーム日時の到来を通知する(S46)。これに応じて、機能開始/終了処理部25bは、アラーム対象予約情報を特定する(S47)。ここでは、予約情報P1がアラーム対象予約情報として特定される。この予約情報P1に関連付けて優先度記憶部24に記憶された優先度は、S43で機能の実行を開始させた予約情報P0の優先度より高くなっている。そのため、機能開始/終了処理部25bは、現在実行中の第2実行機能部22によるダウンロード機能より、予約情報P1に応じた放送録画機能の実行を優先させると判断する。すなわち、機能開始/終了処理部25bは、第2機能実行部22に対して、現在実行中の機能の実行を中断させる指示を行う(S48)。これに応じて、第2機能実行部22は、実行中の機能を中断する(S49)。その後、機能開始/終了処理部25bは、S47で特定された予約情報P1に応じた機能を実行させる指示を、第1機能実行部21に対して行う(S50)。これにより、第1機能実行部21は、予約情報P1に応じた機能の実行を開始する(S51)。
次に、予約情報に応じた機能の実行がユーザの操作によって中断された場合の処理の一例について、図13のフロー図に基づいて説明する。
この図のフローにおいて、S61〜S65までは、前述した図12のフローにおけるS41〜S45までの処理と同様である。これによって、第2機能実行部22は予約情報P0に応じたダウンロード機能の実行を開始し、日時レジスタ17には当日の7:00がアラーム日時として設定される。
その後、この図13のフローの例では、ダウンロード機能を実行中の第2機能実行部22に対して、ユーザが機能の実行を中断させる操作を行ったものとする(S66)。この操作に応じて、第2機能実行部22は実行中の機能を中断し、ユーザ操作によって機能の実行が中断したことを機能開始/終了処理部25bに対して通知する(S67)。この通知を受け付けた機能開始/終了処理部25bは、予約情報に応じた処理を実行する状態から、ユーザの操作に応じた処理を実行する状態に移行したと判断する。
その後、計時部17aが計時する現在日時が7:00になると、制御信号出力部17cがアラーム日時の到来を機能制御部25に対して通知する(S68)。しかし、このとき機能開始/終了処理部25bは、アラーム日時が到来した際に待機モードになっておらず、S67の通知後はユーザの操作に応じた処理が継続していると判断するため、アラーム対象予約情報に応じた機能の実行を制限する。すなわち、第1機能実行部21に対して予約情報P1に応じた機能の実行を開始させる指示は行わないと判定する(S69)。そして、予約情報管理部25aが、新たなアラーム日時の設定だけを行う(S70)。
これにより、機能開始/終了処理部25bは、アラーム日時の到来に応じて自動的に実行される処理ではなく、ユーザとの間の情報の授受を伴う対話型の処理が実行されていると推定される状態においては、予約情報に応じた機能の実行を制限して、アラーム日時の到来によって対話型の処理が中断されてしまうことを避けることができる。なお、機能開始/終了処理部25bは、このような制御を行わず、アラーム日時が到来した時には強制的に予約情報に応じた機能の実行を開始させることとしてもよい。
以上説明した本実施の形態に係る情報処理装置1によれば、予約情報に関連付けられた機能の実行を開始する際に、予約情報の間の優先順位に応じて既に実行中の他の機能の実行を制限することにより、予め定められた優先順位に従って予約情報に応じた機能の実行を制御することができ、予約情報に関連付けられた機能を望ましい条件で実行することができる。
なお、本発明の実施の形態は、以上説明したものに限られない。
例えば以上の説明においては、複数の予約情報同士が競合する場合、機能制御部25が優先度情報に応じて、実行中の機能を中断させることとしている。しかしながら、これに限らず、各機能実行部がそれぞれ自分自身に関連付けられた予約情報に応じた機能の実行を開始する際に、自分自身の優先順位に応じて、他の実行中の機能を中断させて自分自身の機能の実行を開始することとしてもよい。また、以上の説明においては、優先度は機能の種類毎に予め定められており、同じ種類の機能に関連付けられた予約情報同士の優先順位は同じであることとしている。しかしながら、同じ種類の機能に関連付けられた予約情報の間で、優先順位が互いに異なってもよい。この場合、情報処理装置1は、同じ種類の機能に関連付けられた予約情報同士でその実行時期が重複する場合であっても、その登録を受け付けることとし、実行時に予約情報の優先度に応じてどちらの予約情報に対する処理を優先するかを判定してもよい。また、各予約情報に対して関連付けられる優先度情報は、ユーザの指定などに応じて変更可能であってもよい。
また、以上の説明においては、情報処理装置1が実行する機能は放送録画機能とダウンロード機能の2種類であることとしたが、予め定められた予約情報に含まれる開始時期の到来によって、自動的に実行されるべき他の種類の機能も、優先順位に応じた制御の対象としてよい。例えば情報処理装置1は、アラーム日時が到来するとスピーカ(不図示)から音声を出力してアラーム日時の到来を報知するアラーム報知機能を実行してもよい。なお、このようなアラーム報知機能は、例えばユーザの停止操作によって終了する場合、終了時期が予め確定していないこととなるが、それでも放送録画機能などの他の機能に優先して実行されることとしてもよい。さらにこの場合、ダウンロード機能と同様にアラーム報知機能の実行が終了せずに継続すると仮定して予約情報同士の競合を判定することとすると、優先順位の低い他の予約情報がアラーム報知機能と完全に競合すると判定され、登録できなくなってしまうおそれがある。そこで、例えばアラーム報知機能に関する予約情報が他の予約情報と競合する場合には、警告メッセージを出力するだけで他の予約情報の登録を許容するなど、予約情報に関連付けられた機能の種類や優先度情報などに応じて競合判定の条件を変化させてもよい。
ここで、予約情報に関連付けられた機能の種類や優先度情報に応じて、予約情報同士が競合するか否かの判断条件や、アラーム日時が到来したときに既に実行中の他の機能を中断させるか否かの判断条件を変化させる別の例について、説明する。例えば情報処理装置1が3種類以上の機能を実行可能な場合、機能の種類毎に、他の種類の機能と競合するか否か、また他の種類の機能に対して予約情報に応じた機能の実行が優先されるか否かが定められてもよい。具体例として、情報処理装置1が機能A、B及びCの3種類の機能を実行可能であって、このうち機能Cは他の種類の機能と同時期に実行可能な場合、機能Cに関する予約情報については他の予約情報と常に競合しないと判定され、機能Aに関する予約情報と機能Bに関する予約情報との間の競合の有無だけが判定されてもよい。また、例えば複数種類の機能のうち2種類の機能まで同時期に実行することを許可する場合や、2チャネルの放送を同時に録画可能な場合など、同時期に実行可能な機能の数の上限が定められている場合、各予約情報の優先順位に応じて、優先順位の高い順に所定数の予約情報について、重複して機能の実行又は予約情報の登録を可能としてもよい。この場合、所定数を超える数の予約情報が互いに重複する場合には、優先順位の低い予約情報の登録を拒否したり、あるいはアラーム日時が到来したときに、既に実行中であって、優先順位の低い予約情報に関連づけられた機能を中断させたりする。
また、本実施形態では、予約情報と優先度情報とは、互いに独立して記憶されることとしている。しかしながら、これらの情報は、例えば一つのテーブルとして記憶されてもよい。また、これらの情報は、不揮発性メモリ12aに限らず、例えばハードディスクなど、他の情報記憶媒体に格納されることとしてもよい。
また、以上の説明においては、情報処理装置1は、待機モード中、又は他の予約情報に応じた機能の実行中にアラーム日時が到来した場合に、予約情報に応じた機能の実行を開始することとしているが、このような場合以外にも、予約情報に応じた機能の実行を開始することとしてもよい。例えば電源制御モジュール17は、情報処理装置1の主電源が切断された状態においてもバックアップ電源からの電力供給によって動作可能であることとし、待機モードだけでなく、情報処理装置1の主電源が切断された状態であっても、アラーム日時が到来したタイミングで情報処理装置1の主電源をオンにし、予約情報に応じた機能の実行を開始することとしてもよい。
1 情報処理装置、11 制御部、12 記憶部、12a 不揮発性メモリ、12b DRAM、13 操作部、14 表示部、15 通信部、16 テレビジョン放送受信部、17 電源制御モジュール、17a 計時部、17b 日時レジスタ、17c 制御信号出力部、21 第1機能実行部、22 第2機能実行部、23 予約情報記憶部、24 優先度記憶部、25 機能制御部、25a 予約情報管理部、25b 機能開始/終了処理部。