以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
<第1の実施形態>
まず、本発明の第1の実施形態について説明する。図1は、本発明の実施形態に係る画像再生システムの一構成例を示した図である。
100は、画像再生装置であり、TFT LCD等から成る画像表示部28、電池やACアダプタ等から成る電源部86、SD/CF等の内部メディア99、及び、WLAN等の無線通信部33から構成される。画像表示部28には、内部メディア99内に記録された画像データ及び大容量記録媒体17内に記録された画像データを表示する。
101は、画像再生装置100と無線通信接続するストレージ装置であり、電池やACアダプタ等から成る電源部11、HDD等の大容量記録媒体17、WLAN等の無線通信部20から構成される。
図2は、図1で示した画像再生システムの内部構成をより詳細に示したブロック図である。まず最初に、画像再生装置100のブロックから説明を行う。
22はメモリ制御回路であり、画像表示メモリ24、D/A変換器26、メモリ30、圧縮・伸長回路32を制御する。
24は画像表示メモリ、26はD/A変換器、28はTFT LCD等から成る画像表示部であり、画像表示メモリ24に書き込まれた表示用の画像データはD/A変換器26を介して画像表示部28により表示される。また、画像表示部28は、システム制御回路50の指示により任意に表示をON/OFFすることが可能であり、表示をOFFにした場合には画像再生装置100の電力消費を大幅に低減することができる。
30は再生画像データを格納するためのメモリであり、所定枚数の静止画像データや所定時間の動画像データを格納するのに十分な記憶容量を備えている。また複数枚の静止画像データを連続して再生する場合にも、高速かつ大量の画像読み込み・書き込みをメモリ30に対して行うことが可能となる。これにより、画像再生を行うためのキャッシュメモリとして利用可能である。また、メモリ30はシステム制御回路50の作業領域としても使用することが可能である。
32は適応離散コサイン変換(ADCT)、ウェーブレット変換等により画像データを圧縮伸長する圧縮・伸長回路であり、メモリ30に格納された画像を読み込んで圧縮処理或いは伸長処理を行い、処理を終えたデータをメモリ30に書き込む。
50は画像再生装置100全体を制御するシステム制御回路であり、52はシステム制御回路50の動作用の定数、変数、プログラム等を記憶するメモリである。
54はシステム制御回路50でのプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等を表示する液晶表示装置、スピーカ等の表示部である。表示部54は、画像再生装置100の操作部近辺の視認し易い位置に単数或いは複数個所設置され、例えばLCDやLED、発音素子等の組み合わせにより構成されている。
また、表示部54の表示内容のうち、LCD等に表示するものとしては、例えば、時計用電池残量表示、電池残量表示、エラー表示、複数桁の数字による情報表示、記録媒体99の着脱状態表示、通信I/F動作表示、日付・時刻表示等がある。そのほかに、記録媒体に保存されている画像ファイルの表示、記録媒体に保存されている画像ファイル名のリスト表示、外部コンピュータとの接続状態を示す表示、外部ストレージとの接続状態を示す表示等もある。また、外部コンピュータもしくは外部ストレージとの画像ファイル等のデータの送受信の状態を示す表示等もある。
56は電気的に消去・記録可能な不揮発性メモリであり、例えばEEPROM、フラッシュメモリ等が用いられる。
60、70は、システム制御回路50の各種の動作指示を入力するための操作手段であり、スイッチやダイアル、タッチパネル、視線検知によるポインティング、音声認識装置等の単数或いは複数の組み合わせで構成される。
ここで、これらの操作手段の具体的な説明を行う。
60は電源スイッチ(メインスイッチ)で、画像再生装置100の電源オン、電源オフの各モードを切り替え設定することができる。また、画像再生装置100に接続された各種付属装置の電源オン、電源オフの設定も合わせて切り替え設定することができる。
70は各種ボタンやタッチパネル等からなる操作部である。操作部70には、メニューボタン、セットボタン、マクロボタン、マルチ画面再生改ページボタン、メニュー移動+(プラス)ボタン、メニュー移動−(マイナス)ボタン、再生画像移動+(プラス)ボタン、再生画像−(マイナス)ボタンが含まれる。また、日付/時間設定ボタン、画像表示ON/OFFボタン、圧縮モードスイッチ、再生及び或いは通信を実行する際に各種機能の選択及び切り替えを設定する選択/切り替えスイッチ等も含まれる。その他に、再生及び或いは通信を実行する際に各種機能やユーザ設定、画像に対するプロパティ設定などの決定及び実行を行う決定/実行スイッチ等がある。なお、画像に対するプロパティの1つには当該画像に対する圧縮許可属性が含まれている。
80は電源制御手段である。電源制御手段80は、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成される。電源制御手段80は、電池の装着の有無、電池の種類、電池残量の検出を行う。そして、電源制御手段80は、検出結果及びシステム制御回路50の指示に基づいてDC−DCコンバータを制御し、必要な電圧を必要な期間、記録媒体を含む各部へ供給する。システム制御回路50は、電池残量から電池の状態をFull/Half/Low/Emptyと判別し、且つ電池の残余時間を算出することができる。
86はアルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Lo−ion電池等の二次電池、ACアダプタ等からなる電源手段である。
90はメモリカードやハードディスク等の記録媒体とのインタフェースである。99はメモリカードやハードディスク等の記録媒体である。また、記録媒体は現在利用可能な空き容量を取得することができるものとする。更にメディアアクセスに対する消費電力を算出することができシステム制御回路50へ通知する。なお、記録媒体99は本実施形態では画像再生装置100に内蔵される構成として説明している。
33は通信手段である。通信手段33は、WLAN(Wireless Local Area Network)等の無線通信、IrDA(Infrared Data Association)等の赤外線通信、光通信等の各種通信機能を有する。また、それらのうちの一部の組み合わせを備える構成でもよい。さらに、通信手段33は、通信状態及び通信に伴う消費電力の算出を行い、検出結果をシステム制御回路50へ通知する。
次に、ストレージ装置101のブロックの説明を行う。
19は転送画像を格納するためのメモリであり、所定枚数の静止画像を格納するのに十分な記憶容量を備えている。高速且つ大量の画像読み込み・書き込みをメモリ19に対して行うことが可能となる。これにより、画像転送を行うためのキャッシュメモリとして利用可能である。また、メモリ19はシステム制御回路12の作業領域としても使用することが可能である。
12はストレージ装置101全体を制御するシステム制御回路であり、14はシステム制御回路12の動作用の定数、変数、プログラム等を記憶するメモリである。
16はシステム制御回路12でのプログラムの実行に応じて、文字、画像、音声等を用いて動作状態やメッセージ等を表示する液晶表示装置、スピーカ等の表示部である。表示部16は、ストレージ装置101の操作部近辺の視認し易い位置に単数或いは複数個所設置され、例えばLCDやLED、発音素子等の組み合わせにより構成されている。
また、表示部16の表示内容のうち、LCD等に表示するものとしては、例えば、電池残量表示、エラー表示、通信I/F動作表示、外部コンピュータとの接続状態を示す表示、外部画像再生装置との接続状態を示す表示等がある。さらには、外部コンピュータもしくは外部画像再生装置との画像ファイル等のデータの送受信の状態を示す表示等もある。
15は電気的に消去・記録可能な不揮発性メモリであり、例えばEEPROM、フラッシュメモリ等が用いられる。
13は、電源スイッチ(メインスイッチ)で、ストレージ装置101の電源オン、電源オフの各モードを切り替え設定することができる。
10は電源制御手段で、電池検出回路、DC−DCコンバータ、通電するブロックを切り替えるスイッチ回路等により構成されている。電源制御手段10は、電池の装着の有無、電池の種類、電池残量の検出を行う。そして、電源制御手段10は、検出結果及びシステム制御回路12の指示に基づいてDC−DCコンバータを制御し、必要な電圧を必要な期間、記録媒体を含む各部へ供給する。システム制御回路12は、電池残量から電池の状態をFull/Half/Low/Emptyと判別し、且つ電池の残余時間を算出することができる。
11はアルカリ電池やリチウム電池等の一次電池やNiCd電池やNiMH電池、Li−ion電池等の二次電池、ACアダプタ等からなる電源手段である。
18はメモリカードやハードディスク等の記録媒体とのインタフェースである。17はメモリカードやハードディスク等の記録媒体である。また、記録媒体17は、現在利用可能な空き容量を取得することができるものとする。更にメディアアクセスに対する消費電力を算出することができ、システム制御回路12へ通知する。なお、記録媒体17は本実施形態ではストレージ装置101に内蔵される構成として説明している。
20は通信手段である。通信手段33は、WLAN(Wireless Local Area Network)等の無線通信、IrDA(Infrared Data Association)等の赤外線通信、光通信等の各種通信機能を有する。また、それらのうちの一部の組み合わせを備える構成でもよい。また、通信手段20は、通信状態の検出及び通信に伴う消費電力の算出を行い、それらの結果をシステム制御回路12へ通知する。
図3は、画像再生装置100内の画像再生表示処理を示したSDL図(国際電気通信連合の規格に準拠して設計された仕様記述言語[Specification and Description Language]の定義を利用したダイアグラム)である。
まず、図3(a)を参照すると、ステップ301では、画像再生装置100は、電源OFF状態である。電源スイッチ(メインスイッチ)60をユーザが操作することにより電源ONにすると、システム制御回路50は、ステップ303で、電源ONイベントを受信し、アイドル状態(ステップ305)に遷移する。
次に、図3(b)を参照すると、ステップ305で、操作部70をユーザが操作することにより再生モードに切り替えると、システム制御回路50は、ステップ307で、再生モード切替イベントを受信し、ステップ309へ進む。ステップ309で、システム制御回路50は、ストレージ装置101との接続を開始する。図示していないが、接続時に電波状態、画像再生装置及びストレージ装置の電池状態、ストレージ装置101内のメディアアクセスによる電力消費量の情報のやり取りを行う。システム制御回路50は、取得した情報をメモリ52へ記憶する。
ステップ311で、システム制御回路50は、ストレージ装置101と接続できたかを判断する。接続できた場合、システム制御回路50はステップ312へ進む。ステップ312で、システム制御回路50は、キャッシュメモリ割り当ての初期化を行い、ステップ314へ進む。
ステップ314で、システム制御回路50は画像再生装置100及びストレージ装置101内に存在する画像データをソートし、画像再生状態(ステップ315)へ遷移する。一方、接続できなかった場合、システム制御回路50はステップ313へ進む。ステップ313で、システム制御回路50はユーザにストレージ装置101との接続ができなかったことを表示部54へ表示通知する。システム制御回路50は、画像再生装置100内の画像のみを表示する状態(ステップ317)へ遷移する。
次に、図3(d)を参照すると、画像再生状態(ステップ315)で、操作部70をユーザが操作することにより再生画像を選択すると、システム制御回路50はステップ319で画像選択イベントを受信し、ステップ321へ進む。
ステップ321で、システム制御回路50は、選択された画像データを取得する。ステップ323で、システム制御回路50は、取得した画像データを画像表示部28に表示し、画像再生状態(ステップ315)へ遷移する。
画像再生状態(ステップ315)で、電源制御手段80にて電池残量の検出を行い、電池残量の状態が変更したことを検知すると、システム制御回路50は電池状態変更通知イベント325を受信し、ステップ327へ進む。
ステップ327で、システム制御回路50はストレージ装置103に対して電池状態が変わったことを通信手段33を用いて通知する。続くステップ329で、システム制御回路50は、画像再生装置100の電池状態がどのような状態になっているかを判断する。
システム制御回路50は、電池状態がEmpty状態である場合、初期状態(ステップ301)へ遷移する。電池状態がEmpty以外の状態である場合、ステップ331へ進む。ステップ331で、システム制御回路50はキャッシュメモリ制御を行い、画像再生状態(ステップ315)へ遷移する。
画像再生状態(ステップ315)で、通信手段33にてストレージ装置101の電池残量の状態又は残余時間が変更したことを検知すると、システム制御回路50は、ストレージ装置101の電池状態変更通知イベント(ステップ333)を受信する。そして、ステップ335へ進む。ステップ335で、システム制御回路50は、ストレージ装置101の電池状態がどのような状態になっているかを判断する。
システム制御回路50は、ストレージ装置101の電池状態がEmpty状態である場合、ステップ337へ進む。ステップ337で、システム制御回路50は、ストレージ装置101が電源OFFになったことを、表示部54を用いてユーザに通知し、状態(ステップ317)へ遷移する。ストレージ装置101の電池状態がEmpty以外の状態である場合、ステップ331へ進む。ステップ331で、システム制御回路50はキャッシュメモリ制御を行い、画像再生状態(ステップ315)へ遷移する。
画像再生状態(ステップ315)で、通信手段33にて通信電波状態が変更したことを検知すると、システム制御回路50は、通信電波状態変更通知イベント(ステップ339)を受信し、ステップ341へ進む。ステップ341で、システム制御回路50は電波状態がどのような状態になっているかを判断する。
システム制御回路50は、電波状態が切断状態である場合、ステップ343へ進む。ステップ343で、システム制御回路50はストレージ装置101と切断状態になったことを、表示部54を用いてユーザに通知し、状態(ステップ317)へ遷移する。電波状態が良好又は悪い状態である場合、ステップ331へ進む。ステップ331で、システム制御回路50は、キャッシュメモリ制御を行い、画像再生状態(ステップ315)へ遷移する。
状態(ステップ317)で、操作部70をユーザが操作することにより再生画像を選択すると、ステップ319で、システム制御回路50は画像選択イベントを受信し、ステップ345へ進む。ステップ345で、システム制御回路50は、選択された画像データを内部より取得する。ステップ347で、システム制御回路50は、取得した画像データを画像表示部28に表示し、状態(ステップ317)へ遷移する。
状態(ステップ317)で、電源制御手段80にて電池残量の検出を行い、電池残量の状態が変更したことを検知すると、システム制御回路50は電池状態変更通知(ステップイベント325)を受信し、ステップ327へ進む。ステップ329で、システム制御回路50は、電池状態がどのような状態になっているかを判断する。システム制御回路50は、電池状態がEmpty状態である場合、初期状態(ステップ301)へ遷移する。電池状態がEmpty以外の状態である場合、状態(ステップ317)へ遷移する。
図4は、ストレージ装置101内の画像再生表示処理を示したSDL図である。
先ず、図4(a)を参照すると、状態(ステップ401)では、ストレージ装置101は電源OFF状態である。電源スイッチ(メインスイッチ)13をユーザが操作することにより電源ONにすると、ステップ403で、システム制御回路12は、電源ONイベントを受信し、アイドル状態(ステップ405)に遷移する。
次に、図4(b)を参照すると、状態(ステップ405)で、画像再生装置100からの接続要求イベント(ステップ407)を受信すると、システム制御回路12はステップ409へ進む。ステップ409で、システム制御回路12は、画像再生装置100との接続を開始する。ステップ410で、システム制御回路12は、画像再生装置100と接続できたかを判断する。接続できた場合、システム制御回路12は状態(ステップ411)へ遷移する。接続できなかった場合、システム制御回路12は状態(ステップ405)へ遷移する。
次に、図4(c)を参照すると、状態(ステップ411)で、システム制御回路12は画像再生装置100から画像取得要求イベント(ステップ413)を受信すると、ステップ415へ進む。ステップ415で、システム制御回路12は、要求される画像データを画像再生装置100へ転送し、状態(ステップ411)へ遷移する。
状態(ステップ411)で、通信手段20にて画像再生装置100の電池残量の状態が変更したことを検知すると、システム制御回路12は、画像再生装置100の電池状態変更通知イベント(ステップ417)を受信し、ステップ419へ進む。ステップ419で、システム制御回路12は、画像再生装置100の電池残量を表示部16を用いてユーザに通知する。
ステップ421で、システム制御回路12は、画像再生装置100の電池状態がどのような状態になっているかを判断する。システム制御回路12は、画像再生装置100の電池状態がEmpty状態である場合、状態(ステップ405)へ遷移する。一方、画像再生装置の電池状態がEmpty以外の状態である場合、システム制御回路12は、状態(ステップ411)へ遷移する。
状態(ステップ411)で、電源制御手段10にて電池残量の検出を行い、電池残量の状態が変更したことを検知すると、システム制御回路12は、電池状態変更通知イベント(ステップ423)を受信し、ステップ425へ進む。
ステップ425で、システム制御回路12は、画像再生装置100に対してストレージ装置101の電池状態が変わったことを通信手段20を用いて通知する。ステップ427で、システム制御回路12は、表示部16を用いて、ストレージ装置101の電池状態が変わったことをユーザへ通知する。
ステップ429で、システム制御回路12は、ストレージ装置101の電池状態がどのような状態になっているかを判断する。システム制御回路12は、電池状態がEmpty状態である場合、初期状態(ステップ401)へ遷移する。一方、電池状態がEmpty以外の状態である場合、状態(ステップ411)へ遷移する。
状態(ステップ411)で、通信手段20にて通信電波状態が変更したことを検知すると、システム制御回路12は通信電波状態変更通知イベント(ステップ431)を受信し、ステップ435へ進む。ステップ435で、システム制御回路12は表示部54を用いて、通信電波状態が変更したことをユーザに通知する。ステップ437で、システム制御回路12は、電波状態がどのような状態になっているか判断する。システム制御回路12は、電波状態が切断状態である場合、状態(ステップ405)へ遷移する。一方、電波状態が良好又は悪い状態である場合、システム制御回路12は、状態(ステップ411)へ遷移する。
図5は、図3のステップ321の画像取得処理を詳細に示すフローチャートである。
ステップ501で、システム制御回路50は、取得する画像データがキャッシュメモリ(メモリ30)内に存在するか検索する。ステップ503で、システム制御回路50はキャッシュメモリ内に画像データが存在するかどうかを判断する。存在する場合、ステップ505へ進む。存在しない場合、ステップ507へ進む。ステップ505で、システム制御回路50はキャッシュメモリから画像データを取得する。
ステップ507で、システム制御回路50は、取得する画像データの画像情報を取得する。画像再生装置100内の画像データを取得する場合、記録媒体99から該画像情報を取得する。リモートストレージ装置101内の画像データを取得する場合、通信手段33を用いてストレージ装置101との画像情報転送処理を行い、画像情報を取得する。
ステップ509で、システム制御回路50は、電池状態、通信状態、消費電力量等の各種情報を取得する。ステップ511で、システム制御回路50は、ステップ509で取得した電池状態、通信状態、消費電力量等の各種情報を判別し、画像データ及びキャッシュメモリの処理方法を判別する。ステップ513で、システム制御回路50は、ステップ511で判別した画像データ及びキャッシュメモリの処理方法に則り処理を行う。
図6は、図5のステップ509の各種状態取得処理を詳細に示すフローチャートである。
ステップ601で、システム制御回路50は、画像再生装置100の電池状態を取得する。ステップ603で、システム制御回路50は、通信電波状態を取得する。ステップ605で、システム制御回路50は、ストレージ装置101の電池状態を取得する。ステップ607で、システム制御回路50は、画像再生装置100の記録媒体99へのアクセス時の電力消費量を取得する。ステップ609で、システム制御回路50は、ストレージ装置101の記録媒体17へのアクセス時の電力消費量及び画像再生装置100とストレージ装置101との通信時の電力消費量を取得する。
図7は、図5のステップ511の各種状態判別処理を詳細に説明するための表を示す図である。システム制御回路50は、後述するように、画像再生装置の電池状態と通信電波状態とストレージ装置の電池状態とメディアアクセスによる消費電力量と通信による消費電力量の情報から状態判別処理を行う。
まずは、図7−1に示す表を用いて、画像再生装置100内の画像データをユーザが選択した際の各種状態判別処理について説明する。
例えば、画像再生装置100の電池状態がFull、ストレージ装置101の電池状態がFullの場合について説明する。システム制御回路50は、キャッシュメモリから最も使用頻度が低い画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。
次に、画像再生装置100の電池状態がFull、ストレージ装置101の電池状態がHalfの場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、キャッシュメモリから最も使用頻度が低い画像再生装置100の画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリへ追加する。一方、キャッシュメモリに画像再生装置100の画像データが存在しなければ、キャッシュメモリから最も使用頻度が低いストレージ装置101の画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリへ追加する。
次に、画像再生装置100の電池状態がFull、ストレージ装置101の電池状態がLowの場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、キャッシュメモリから最も使用頻度が低い画像再生装置100の画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリへ追加する。一方、キャッシュメモリに画像再生装置100内の画像データが存在しなければ、キャッシュメモリへ画像データを追加しない。
次に、画像再生装置100の電池状態がHalf、ストレージ装置101の電池状態がHighの場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、キャッシュメモリから最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択した画像再生装置100内の画像データと選択した画像データ前後の画像再生装置100の画像データをキャッシュに追加する。一方、キャッシュメモリにストレージ装置101内の画像が存在しなければ、キャッシュメモリから最も使用頻度が低い画像データを削除する。そして、選択した画像再生装置100内の画像データと選択した画像データの前後の画像再生装置100内の画像データをキャッシュメモリに追加する。
次に、画像再生装置100の電池状態がHalf、ストレージ装置101の電池状態がHalfの場合について説明する。先ず、この場合において、画像再生装置100内のメディアアクセスより画像再生装置100とストレージ装置101間の通信とストレージ装置101内のメディアアクセスにおける消費電力量の方が少ない場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択した画像再生装置100内の画像データと選択した画像データの前後の画像再生装置100内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリにストレージ装置101の画像データが存在しなければ、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択した画像再生装置100内の画像データと選択した画像データの前後の画像再生装置100内の画像データをキャッシュメモリに追加する。
同じく、画像再生装置100の電池状態がHalf、ストレージ装置101の電池状態がHalfの場合について説明する。この場合において、画像再生装置100内のメディアアクセスより画像再生装置100とストレージ装置101間の通信とストレージ装置101内のメディアアクセスにおける消費電力量の方が多い場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリに画像再生装置100の画像データが存在しなければ、最も使用頻度が低いストレージ装置101内の画像データを削除する。そして、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。
次に、画像再生装置100の電池状態がHalf、ストレージ装置101の電池状態がLowの場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、キャッシュメモリから最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択した画像再生装置100内の画像データをキャッシュメモリへ追加する。キャッシュメモリに画像再生装置100の画像データが存在しなければ、選択した画像再生装置100内の画像データをキャッシュメモリには追加しない。
次に、画像再生装置100の電池状態がLow、ストレージ装置101の電池状態がHighの場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、最も使用頻度が低いストレージ装置101の画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリにストレージ装置101の画像データが存在しなければ、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。
次に、画像再生装置100の電池状態がLow、ストレージ装置101の電池状態がHalfの場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、最も使用頻度が低いストレージ装置101の画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリにストレージ装置101の画像データが存在しなければ、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。
次に、画像再生装置100の電池状態がLow、ストレージ装置101の電池状態がLowの場合について説明する。この場合、キャッシュメモリから最も使用頻度が低い画像データを削除し、選択した画像再生装置100内の画像データをキャッシュメモリに追加する。
次に、図7−2に示す表を用いて、ストレージ装置101内の画像データをユーザが選択した際の各種状態判別処理について説明する。
先ず、ストレージ装置101の電池状態がFull、画像再生装置100の電池状態がFullの場合について説明する。この場合、キャッシュメモリから最も使用頻度が低い画像データを削除する。選択したストレージ装置101内の画像データをキャッシュメモリに追加する。
次に、ストレージ装置101の電池状態がFull、画像再生装置100の電池状態がHalfの場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、キャッシュメモリから最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリにストレージ装置101の画像データが存在しなければ、キャッシュメモリから最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリへ追加する。
次に、ストレージ装置101の電池状態がFull、画像再生装置100の電池状態がLowの場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、キャッシュメモリから最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリへ追加する。キャッシュメモリにストレージ装置101の画像データが存在しなければ、選択したストレージ装置101内の画像データをキャッシュメモリに追加しない。
次に、ストレージ装置101の電池状態がHalf、画像再生装置100の電池状態がHighの場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、キャッシュメモリから最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択したストレージ装置101内の画像データと選択した画像データの前後のストレージ装置101内の画像データをキャッシュに追加する。一方、キャッシュメモリに画像再生装置100の画像データが存在しなければ、キャッシュメモリから最も使用頻度が低い画像データを削除する。そして、選択したストレージ装置101内の画像データと選択した画像データの前後のストレージ装置101内の画像データをキャッシュメモリに追加する。
次に、ストレージ装置101の電池状態がHalf、画像再生装置100の電池状態がHalfの場合について説明する。先ず、この場合において、画像再生装置100内のメディアアクセスより画像再生装置100とストレージ装置101間の通信とストレージ装置101内のメディアアクセスにおける消費電力量の方が少ない場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリにストレージ装置101の画像データが存在しなければ、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。
同じく、ストレージ装置101の電池状態がHalf、画像再生装置100の電池状態がHalfの場合について説明する。この場合において、画像再生装置100内のメディアアクセスより画像再生装置100とストレージ装置101間の通信とストレージ装置101内のメディアアクセスにおける消費電力量の方が多い場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択したストレージ装置100内の画像データと選択した画像データの前後のストレージ装置101内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリに画像再生装置100の画像データが存在しなければ、最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置100内の画像データと選択した画像データの前後のストレージ装置101内の画像データをキャッシュメモリに追加する。
次に、ストレージ装置101の電池状態がHalf、画像再生装置100の電池状態がLowの場合について説明する。キャッシュメモリにストレージ装置101の画像データが存在すれば、キャッシュメモリから最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置101の画像データをキャッシュメモリへ追加する。キャッシュメモリにストレージ装置101の画像データが存在しなければ、選択したストレージ装置101内の画像データをキャッシュメモリに追加しない。
次に、ストレージ装置101の電池状態がLow、画像再生装置100の電池状態がHighの場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、最も使用頻度が低い画像再生装置100の画像データを削除し、選択したストレージ装置101内の画像データをキャッシュに追加する。一方、キャッシュメモリに画像再生装置100の画像データが存在しなければ、最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。
次に、ストレージ装置101の電池状態がLow、画像再生装置100の電池状態がHalfの場合について説明する。キャッシュメモリに画像再生装置100の画像データが存在すれば、最も使用頻度が低い画像再生装置100の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。一方、キャッシュメモリに画像再生装置100の画像データが存在しなければ、最も使用頻度が低いストレージ装置101の画像データを削除する。そして、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。
次に、ストレージ装置101の電池状態がLow、画像再生装置100の電池状態がLowの場合について説明する。この場合、キャッシュメモリから最も使用頻度が低い画像データを削除し、選択したストレージ装置101内の画像データをキャッシュメモリに追加する。
なお、図示はしていないが、電波状態によって、取得する画像データの種類を変更する。通信状態が良好の場合、本体画像データを取得する。通信状態が悪い場合、サムネイル又はリサイズした画像データを取得する。
また、電池の残余時間によっても処理内容を変化させる。例えば、画像再生装置100
の電池状態がHalfで、ストレージ装置101の電池状態がFullであっても、画像再生装置100の電池残余時間がストレージ装置101の電池残余時間の2倍である条件下を例に挙げる。この例では、画像再生装置100の電池状態Full・ストレージ装置101の電池状態Halfの組み合わせの処理を行うとよい。
更に、通信処理による消費電力やメディアアクセスによる消費電力等の機器の特性に応じ、処理内容を変化させることが可能である。
図8は、図5のステップ513の画像データをキャッシュメモリへ追加する処理を詳細に示すフローチャートである。
ステップ801で、システム制御回路50は、キャッシュメモリへ画像データを追加するかどうかを判断する。キャッシュメモリへ画像データを追加しない場合、ステップ803へ進み、画像データを取得する。キャッシュメモリへ画像データを追加する場合、ステップ805へ進む。
ステップ805で、システム制御回路50は画像サイズを取得する。ステップ807でキャッシュメモリから追い出す(削除する)画像データを検索する。検索した結果、該当する画像データがキャッシュメモリ内に存在しない場合、ステップ803へ進む。一方、該当する画像データがキャッシュメモリ内に存在する場合、ステップ809へ進み、追い出す画像データのサイズの累計を算出する。
ステップ811で、システム制御回路50は、キャッシュメモリに追加する画像データのサイズとキャッシュメモリから追い出す画像データの累計サイズとを比較する。その結果、キャッシュメモリに追加する画像データのサイズの方が大きい場合、ステップ807からの処理を繰り返す。一方、キャッシュメモリに追加する画像データのサイズの方が小さい場合、ステップ813へ進む。ステップ813で、システム制御回路50は、画像データをキャッシュメモリから追い出す。ステップ815で、システム制御回路50は、画像データを取得し、ステップ817で、キャッシュメモリへ取得した画像データを追加する。
図9は、図3のステップ331のキャッシュメモリ制御処理を詳細に示すフローチャートである。ステップ509は、図5にて既に説明しているので割愛する。
ステップ900で、システム制御回路50は、各種情報から処理内容を判断する。ステップ901で、システム制御回路50は、キャッシュメモリから削除する画像データの種類を判別する。ストレージ装置101の画像データの場合、ステップ905へ進む。画像再生装置100の画像データの場合、ステップ903へ進む。それ以外の場合、処理を終了する。
ステップ903で、システム制御装置50は、キャッシュメモリから画像再生装置100の画像データを削除し、ステップ907へ進む。ステップ905で、システム制御装置50は、キャッシュメモリからストレージ装置101の画像データを削除し、ステップ907へ進む。
ステップ907で、システム制御回路50は、キャッシュメモリへ追加する画像データの種類を判別する。ストレージ装置101内の本体画像データの場合、ステップ909へ進み、システム制御回路50は、ストレージ装置101内の本体画像データを取得し、キャッシュメモリへ追加する。
ストレージ装置101内のサムネイル画像データの場合は、ステップ911へ進み、システム制御回路50は、ストレージ装置101内のサムネイル画像データを取得し、キャッシュメモリへ追加する。
画像再生装置100内の本体画像データの場合、ステップ913へ進み、システム制御回路50は、画像再生装置100内の本体画像データを取得し、キャッシュメモリへ追加する。
画像再生装置100内のサムネイル画像データの場合、ステップ915へ進み、画像再生装置100内のサムネイル画像データを取得し、キャッシュメモリへ追加する。
図21は、図9のステップ900の各種状態判別処理を詳細に説明するための表を示す図である。
先ず、画像再生装置100の電池状態がFull、ストレージ装置101の電池状態がHalfの場合について説明する。この場合、キャッシュメモリから画像再生装置100の画像データを削除し、最も使用頻度が高いストレージ装置101内の画像データとその前後の画像データをキャッシュメモリへ追加する。
次に、画像再生装置100の電池状態がFull、ストレージ装置101の電池状態がLowの場合、キャッシュメモリから画像再生装置100の画像データを削除する。
次に、画像再生装置100の電池状態がHalf、ストレージ装置101の電池状態がFullの場合について説明する。この場合、キャッシュメモリからストレージ装置101の画像データを削除し、最も使用頻度の高い画像再生装置100内の画像データとその前後の画像データをキャッシュメモリへ追加する。
次に、画像再生装置100の電池状態がHalf、ストレージ装置101の電池状態がHalfの場合について説明する。先ず、この場合において、画像再生装置100におけるメディアアクセスより画像再生装置100とストレージ装置101との間の通信及びストレージ装置101におけるメディアアクセスの方が消費電力が少ないの場合について説明する。キャッシュメモリからストレージ装置101の画像データを削除し、最も使用頻度の高い画像再生装置100内の画像データとその前後の画像データをキャッシュメモリへ追加する。
同じく、画像再生装置の電池状態がHalf、ストレージ装置101の電池状態がHalfの場合について説明する。ここでは、この場合において、画像再生装置100におけるメディアアクセスより画像再生装置100とストレージ装置101間の通信及びストレージ装置101におけるメディアアクセスの方が消費電力が多い場合について説明する。キャッシュメモリから画像再生装置100内の画像データを削除する。また、最も使用頻度の高いストレージ装置101内の画像データとその前後の画像データをキャッシュメモリへ追加する。
図10は、図9のステップ903、ステップ905のキャッシュメモリからの画像データの削除処理を示すフローチャートである。
ステップ1001で、システム制御回路50は、キャッシュメモリ内で最も使用頻度の低い画像データを選択する。ステップ1003で、システム制御回路50は、当該画像データの画像情報を取得する。ステップ1005で、システム制御回路50は、削除対象となった画像データの画像情報とキャッシュメモリ内の選択画像データの画像情報とが合致したかを判断する。
画像再生装置100の画像データが削除対象となった場合、キャッシュメモリ内の選択画像データが画像再生装置100の画像データであるかを判断する。一方、ストレージ装置101の画像データが削除対象となった場合、キャッシュメモリ内の選択画像データがストレージ装置101の画像データであるかを判断する。例えば、ここでは、ステップ1005において、削除対象となった画像データの画像情報とキャッシュメモリ内の選択画像データの画像情報とが合致した場合、ステップ1009へ進み、システム制御回路50はキャッシュメモリ内の画像データを削除する。
一方、削除対象となった画像データの画像情報とキャッシュメモリ内の選択画像データの画像情報とが合致しない場合、ステップ1007へ進む。1007で、システム制御回路50は、キャッシュメモリ内の画像データ全てをチェックしたかどうかを確認する。チェック済みであれば、処理を終了する。チェック済みでなければ、ステップ1003からの処理を繰り返す。なお、ここでは図示していないが、全ての画像データをチェックするのでなく、ある画像数分のみをチェックするように制御を切り替えてもよい。
図11は、図9のステップ909、ステップ911、ステップ913、ステップ915の画像データのキャッシュメモリ追加処理を詳細に示すフローチャートである。
ステップ1101で、システム制御回路50は、キャッシュメモリへ追加する画像データを選択する。ステップ1103で、システム制御回路50は、当該画像データの画像情報を取得する。ステップ1105で、システム制御回路50は、画像サイズ分のキャッシュメモリ領域を確保する。ステップ1107で、システム制御回路50は、キャッシュメモリ領域を確保できたかを判断する。確保できなかった場合、処理を終了する。確保できた場合、システム制御回路50は、ステップ1109で、画像データを取得し、ステップ1111で、画像データをキャッシュメモリへ追加し、ステップ1101の処理を繰り返す。
図12は、キャッシュメモリデータの構造図である。図12(a)は、画像情報の概略を示す図であり、図12(b)は、キャッシュメモリデータの全体構成を示す図である。キャッシュメモリは双方向リストで画像データを管理する。各リストは、画像データに関する画像情報と画像データとから構成される。リストの先頭が最も使用頻度が高く、リストの最後尾が最も使用頻度が低い。画像データに関する画像情報は、画像データが保存されているメディア、画像データの種類、画像サイズ、ファイル名等が存在する。
画像データが保存されているメディアには、画像再生装置100内の記録メディアとストレージ装置101内の記録メディアが存在する。画像の種類には、本体/サムネイルが存在する。
リスト操作により、使用頻度変更/画像データの追加・削除を行う。画像データを格納する場合、画像サイズの情報を読出し、領域を確保する。画像データを削除する場合は、領域を開放する。
ストレージ装置101の電池状態がHalfで、画像再生装置100の電池状態がFullの場合、キャッシュメモリにはストレージ装置101内の画像データが優先に追加されている状態になる。
図13は、画像再生装置100とストレージ装置101とのユーザインタフェースを示す図である。
画像再生装置100に備えられる表示部54を用いて、画像データに対するアクセス状況をユーザに通知する。画像データを選択すると、キャッシュメモリから画像データを表示する場合、赤色のLED表示を行う。キャッシュメモリ内に存在するストレージ装置の画像データを表示し、且つストレージ装置と接続していない場合、黄色のLED表示する。画像再生装置内の記録メディア(内部メディア99)から画像データを取得した場合、緑色に表示する。ストレージ装置内の記録メディア(大容量記録媒体17)から画像データを取得した場合、青色に表示する。画像データに対してアクセス中のときは各々の色で点滅表示する。
一方、ストレージ装置101に備えられる表示部16の表示を、画像再生装置100及びストレージ装置101の電池状況によって色を変化させる。画像再生装置100の電池状態がLowの場合、黄色に表示する。ストレージ装置101の電池状態がLowの場合、緑色に表示する。どちらの装置もLowの場合、黄緑に表示する。
以上により、画像再生装置100及びストレージ装置101の電池状態、通信状態、メディアアクセス及び通信による電力消費量からキャッシュメモリの制御方法及びキャッシュメモリへ格納する画像データの種類を制御することが可能になる。これにより、画像再生装置100及びストレージ装置101の消費電力を極力抑え、且つ高速に画像データを再生することが可能になる。
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。なお、第1の実施形態と同じ処理を行うステップには同じステップ番号が割り当てられる。
第1の実施形態は、画像再生装置とストレージ装置が1対1の通信形態においてキャッシュメモリ制御を行っている。これに対して、本実施形態では、1台の画像再生装置と複数のストレージ装置の通信形態においてキャッシュメモリ制御を行っていることが第1の実施形態と本実施形態との異なる点である。
図14は、本発明の第2の実施形態における画像再生システムの一構成例を示した図である。図14に示すように、本実施形態においては、複数のストレージ装置101と一つの画像再生装置100とが接続されている。
図15は、第1の実施形態における画像再生装置100内の画像再生処理を示すSDL図である。図3に対して、キャッシュメモリの割当関連の処理のみが異なっており、それ以外の処理は図3と同じである。従って、その部分に相当する状態(ステップ301)からステップ347の説明は省略する。
ステップ1601で、システム制御回路50は、各ストレージ装置101との接続を行う。ステップ1603で、システム制御回路50は、画像再生装置100及び接続できた各ストレージ装置101に対するキャッシュメモリ領域を割り当てる。
画像再生状態(ステップ315)において、システム制御回路50は、画像再生装置100の電池状態変更通知(ステップ325)を受ける。すると、ステップ1605で、システム制御回路50は、画像再生装置100及び接続できた各ストレージ装置101に対するキャッシュメモリ領域の割当を制御する。
画像再生状態(ステップ315)において、システム制御回路50は、リモートストレージ装置101の電池状態変更通知(ステップ333)を受ける。すると、ステップ1605で、システム制御回路50は、画像再生装置100及び接続できた各ストレージ装置101に対するキャッシュメモリ領域の割当を制御する。
図16は、図15のステップ1601の各ストレージ装置101に対するキャッシュメモリ領域の割当初期化処理を示したフローチャートである。
ステップ1701で、システム制御回路50は各装置に割り当てるキャッシュメモリ領域算出する。ステップ1703で、システム制御回路50は、全ストレージ装置101に対するキャッシュメモリ領域を確保する。
図17は、図16のステップ1701の各ストレージ装置101に割り当てるキャッシュメモリ領域算出処理を示すフローチャートである。
ステップ1801で、システム制御回路50は、ストレージ装置101の接続数を取得する。ステップ1803で、システム制御回路50は、キャッシュメモリ領域を取得する。ステップ1805で、システム制御回路50は、全ストレージ装置101のうちのAC電源駆動機器数を算出する。ステップ1807で、システム制御回路50は、全ストレージ装置101のうちのLowBattery状態の機器数を算出する。ステップ1809で、システム制御回路50は、全ストレージ装置101のうちのFullBattery状態の機器数を算出する。
ステップ1811で、システム制御回路50は、各電源状態に応じて各機器に割り当てるキャッシュメモリ領域を算出する。例えば、LowBattery機器のキャッシュメモリ領域の割当率を1とする。FullBattery機器のキャッシュメモリ領域の割当率を0.5とする。AC電源駆動機器のキャッシュメモリ領域の割当率を0.25とする。
例えば、キャッシュメモリ領域:100MByteであり、LowBattery状態の機器が3つ、FullBattery状態の機器が2つ、AC電源駆動機器が4つであるようなシステム構成の場合を例に挙げる。この例では、LowBattery状態の機器へ割り当てるキャッシュメモリ領域は、100M/3*1+0.5*2+0.25*4=25Mとなる。FullBattery状態の機器へ割り当てるキャッシュメモリ領域は、25M*0.5=12.5Mとなる。AC電源駆動機器へ割り当てるキャッシュメモリ領域は、25M*0.25=6.25Mとなる。
図18は、図15のステップ1605の各ストレージ装置101へのキャッシュメモリ割当制御処理を詳細に示すフローチャートである。
ステップ1701で、システム制御回路50は、各ストレージ装置101に割り当てるキャッシュメモリ領域を算出する。ステップ1901で、システム制御回路50は、キャッシュメモリ領域を開放する。ステップ1903で、システム制御回路50は、全ストレージ装置101対してキャッシュメモリ領域の開放処理を行ったかを判断する。開放処理を行っていなければ、ステップ1901からの処理を繰り返す。開放処理を行っていれば、ステップ1905へ進む。
ステップ1905で、システム制御回路50は、キャッシュメモリ領域を確保する。ステップ1907で、システム制御回路50は全ストレージ装置101に対してキャッシュメモリ領域の確保処理を行ったかを判断する。確保処理を行っていなければ、ステップ1905からの処理を繰り返す。確保処理を行っていれば、処理を終了する。
図19は、図18のステップ1901のキャッシュメモリ開放処理を詳細に示すフローチャートである。
ステップ2001で、システム制御回路50は、キャッシュメモリ領域サイズが減少したかどうかを判断する。減少していなければ、処理を終了する。減少していれば、ステップ2003へ進む。ステップ2003で、システム制御回路50は、使用頻度が最も低い画像データを削除する。ステップ2005で、システム制御回路50は、キャッシュメモリ開放サイズと画像サイズを比較する。キャッシュメモリ開放サイズの方が画像サイズより小さい場合、ステップ2007へ進む。一方、キャッシュメモリ開放サイズの方が画像サイズより大きい場合、ステップ2009へ進む。
ステップ2007で、システム制御回路50は、キャッシュメモリ開放サイズ分のキャッシュメモリ領域を開放する。ステップ2009で、システム制御回路50は、画像サイズ分のキャッシュメモリ領域を開放する。ステップ2011で、システム制御回路50は、キャッシュメモリ開放サイズから画像サイズを除算し、ステップ2003からの処理を繰り返す。
図20は、図18のステップ1905の各ストレージ装置101へのキャッシュメモリ割当制御処理を詳細に示すフローチャートである。
ステップ2101で、システム制御回路50は、キャッシュメモリ領域が増加するかどうかを判断する。キャッシュメモリ領域が増加しない場合、処理を終了する。キャッシュメモリ領域が増加する場合、ステップ2103へ進む。ステップ2103で、システム制御回路50は、キャッシュメモリ領域増加分の領域を確保する。
上述したように、複数のストレージ装置が接続したシステム構成において、画像再生装置及びストレージ装置の電池状態、通信状態、メディアアクセス及び通信による電力消費量からキャッシュメモリへ格納する画像データの種類を制御している。これにより、画像再生装置及びストレージ装置の消費電力を極力抑え、且つ高速に画像再生することが可能である。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、そのシステム等のコンピュータが記憶媒体からプログラムコードを読み出し実行することによっても達成される。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているOS等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに接続された機能拡張ユニット等に備わるメモリに書込まれた後、そのプログラムコードの指示に基づきCPU等が実際の処理を行い、前述した実施形態の機能が実現される場合も含まれる。