図1は、本発明に係るコンテンツ管理システムの一実施の形態の構成を示す図である。コンテンツ管理システムには、情報処理装置の一例である、パーソナルコンピュータ1、ポータブルプレーヤ2、およびポータブルプレーヤ3が含まれる。
パーソナルコンピュータ1は、コンテンツを記録し、記録しているコンテンツに関係する情報を表示装置に表示させる。例えば、パーソナルコンピュータ1は、記録しているコンテンツに関係する情報を、リストとして、または木構造で、表示装置に表示させる。
コンテンツとは、使用者にとって有用な情報であればよく、例えば、音声データ、静止画像または動画像などの画像データ、数値データ、またはプログラムなどとすることができる。コンテンツに関係する情報とは、そのコンテンツに所定の関係があれば足り、例えば、コンテンツの名前または題名(タイトル)、コンテンツの制作者の名前、コンテンツの提供者の名前、コンテンツの長さ(再生時間など)、コンテンツの出演している実演者の名前、原作者の名前などとすることができる。
パーソナルコンピュータ1は、記録しているコンテンツをポータブルプレーヤ2またはポータブルプレーヤ3にチェックアウトするか、ポータブルプレーヤ2またはポータブルプレーヤ3からコンテンツをチェックインする。また、パーソナルコンピュータ1は、記録しているコンテンツをポータブルプレーヤ2またはポータブルプレーヤ3に移動するか、またはコピーする。
コンテンツがパーソナルコンピュータ1から、ポータブルプレーヤ2またはポータブルプレーヤ3にチェックアウトされるか、移動されるか、またはコピーされた場合、パーソナルコンピュータ1に記録されている、コンテンツに関係する情報の表示に必要なデータが、パーソナルコンピュータ1から、ポータブルプレーヤ2またはポータブルプレーヤ3にコピーされる。コンテンツに関係する情報の表示に必要なデータの詳細は後述する。
ポータブルプレーヤ2は、コンテンツを記憶し、記憶しているコンテンツに関係する情報を本体またはリモートコントローラに設けられている表示装置に表示させる。例えば、ポータブルプレーヤ2は、記憶しているコンテンツに関係する情報を、リストとして表示装置に表示させる。
ポータブルプレーヤ2は、記憶しているコンテンツを再生する。
例えば、ポータブルプレーヤ2は、パーソナルコンピュータ1からチェックアウト、移動、またはコピーされたコンテンツを記憶する。ポータブルプレーヤ2は、記憶している、音声データであるコンテンツを再生して、音声を出力する。
ポータブルプレーヤ3は、コンテンツを記憶し、記憶しているコンテンツに関係する情報を本体に設けられている表示装置に表示させる。例えば、ポータブルプレーヤ3は、記録しているコンテンツに関係する情報を、リストとして、または木構造で、表示装置に表示させる。
ポータブルプレーヤ3は、記憶しているコンテンツを再生する。
例えば、ポータブルプレーヤ3は、パーソナルコンピュータ1からチェックアウト、移動、またはコピーされたコンテンツを記憶する。ポータブルプレーヤ3は、記憶している、音声データであるコンテンツを再生して、音声を出力する。また、例えば、ポータブルプレーヤ3は、記憶している、画像データであるコンテンツを再生して、画像を出力する。
パーソナルコンピュータ1、ポータブルプレーヤ2、およびポータブルプレーヤ3は、共通する処理で、コンテンツに関係する情報を表示装置に表示させる。
パーソナルコンピュータ1は、例えば、図2で示されるように構成される。CPU(Central Processing Unit)21は、ROM(Read Only Memory)22、または記録部28に記録されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)23には、CPU21が実行するプログラムやデータなどが適宜記憶される。これらのCPU21、ROM22、およびRAM23は、バス24により相互に接続されている。
CPU21にはまた、バス24を介して入出力インタフェース25が接続されている。入出力インタフェース25には、キーボード、マウス、マイクロホンなどよりなる入力部26、ディスプレイ、スピーカなどよりなる出力部27が接続されている。CPU21は、入力部26から入力される指令に対応して各種の処理を実行する。そして、CPU21は、処理の結果得られた画像や音声等を出力部27に出力する。
入出力インタフェース25に接続されている記録部28は、例えばハードディスクなどで構成され、CPU21が実行するプログラムや各種のデータ(コンテンツを含む)を記録する。通信部29は、インターネット、その他のネットワーク、または通信媒体を介して、ポータブルプレーヤ2またはポータブルプレーヤ3などの外部の装置と通信する。
また、通信部29を介してプログラムを取得し、記録部28に記録してもよい。
入出力インタフェース25に接続されているドライブ30は、磁気ディスク51、光ディスク52、光磁気ディスク53、或いは半導体メモリ54などが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部28に転送され、記録される。
ポータブルプレーヤ2は、例えば、図3で示されるように構成される。CPU71は、ROM72、または記憶部78に記憶されているプログラムに従って各種の処理を実行する。RAM73には、CPU71が実行するプログラムやデータなどが適宜記憶される。これらのCPU71、ROM72、およびRAM73は、バス74により相互に接続されている。
CPU71にはまた、バス74を介して入出力インタフェース75が接続されている。入出力インタフェース75には、リモートコントローラ、スイッチ、マイクロホンなどよりなる入力部76、ディスプレイ、イヤホンなどよりなる出力部77が接続されている。CPU71は、入力部76から入力される指令に対応して各種の処理を実行する。そして、CPU71は、処理の結果得られた画像や音声等を出力部77に出力する。
入出力インタフェース75に接続されている記憶部78は、例えば、フラッシュメモリなどの半導体メモリなどで構成され、CPU71が実行するプログラムや各種のデータ(コンテンツを含む)を記憶する。通信部79は、インターネット、その他のネットワーク、または通信媒体を介して、パーソナルコンピュータ1などの外部の装置と通信する。
また、通信部79を介してプログラムを取得し、記憶部78に記憶してもよい。
入出力インタフェース75に接続されているドライブ80は、磁気ディスク91、光ディスク92、光磁気ディスク93、或いは半導体メモリ94などが装着されたとき、それらを駆動し、そこに記憶されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部78に転送され、記憶される。
ポータブルプレーヤ3は、ポータブルプレーヤ2と同様に構成されるので、その説明は省略する。
パーソナルコンピュータ1、ポータブルプレーヤ2、およびポータブルプレーヤ3は、共通する機能および共通する処理で、コンテンツに関係する情報を表示装置に表示させる。以下、パーソナルコンピュータ1を例に、表示の機能および処理について説明する。
すなわち、これから説明するパーソナルコンピュータ1が有する表示のための機能と同じ機能を、ポータブルプレーヤ2、およびポータブルプレーヤ3も有する。また、パーソナルコンピュータ1が実行する表示のための処理は、ポータブルプレーヤ2、およびポータブルプレーヤ3においても実行される。
図4は、パーソナルコンピュータ1の機能を示すブロック図である。
パーソナルコンピュータ1のCPU21は、ファイル管理プログラム101を実行する。ファイル管理プログラム101は、コンテンツが格納されているファイルを管理するための種々の処理をCPU21に実行させるプログラムである。
例えば、ファイル管理プログラム101は、パーソナルコンピュータ1で実行される、記録されている音楽コンテンツを管理して、音楽コンテンツを選択して、選択された音楽コンテンツを再生するプログラムとすることができる。また、例えば、ファイル管理プログラム101は、パーソナルコンピュータ1で実行される、記録されている動画像コンテンツを管理して、動画像コンテンツを選択して、選択された動画像コンテンツを再生するプログラムとすることができる。
ファイル管理プログラム101には、表示制御プログラム111、管理情報設定プログラム112、および再生プログラム113が含まれる。
表示制御プログラム111は、コンテンツに関係する情報の表示を制御するプログラムである。管理情報設定プログラム112は、コンテンツの管理に必要な情報を設定するプログラムである。再生プログラム113は、コンテンツを再生するプログラムである。
パーソナルコンピュータ1の記録部28には、コンテンツ、コンテンツに関係する情報、およびコンテンツに関係する情報の表示に必要なデータが記録される。
すなわち、記録部28には、コンテンツ情報ファイル114−1乃至コンテンツファイル117−Lが記録される。
コンテンツ情報ファイル114−1およびコンテンツ情報ファイル114−2は、それぞれ、コンテンツに関係する情報を格納すると共に、コンテンツに関係する情報の表示に必要なデータを格納する。
グループ情報ファイル115−1およびグループ情報ファイル115−2およびグループツリーデータファイル116−1およびグループツリーデータファイル116−2は、コンテンツに関係する情報の表示に必要なデータを格納する。
グループ情報ファイル115−1およびグループ情報ファイル115−2は、それぞれ、コンテンツを分類するグループに関係する情報を格納する。ここでグループは、コンテンツ(またはコンテンツファイル)の集合である。
例えば、グループは、再生順に並んだコンテンツファイルの区切りの位置で表すことができる。または、例えば、グループは、グループに属するコンテンツ(またはコンテンツファイル)で表すことができる。
グループツリーデータファイル116−1およびグループツリーデータファイル116−2は、それぞれ、コンテンツを分類するグループのツリー構造を示すデータ(グループツリーデータ)を格納する。
グループのツリーは、コンテンツまたはグループの管理に利用される。ここで、管理とは、コンテンツの名前などのコンテンツに関係する情報、若しくはグループの名前などのグループに関係する情報の表示、設定、若しくは変更などの編集、またはコンテンツの移動などの操作をいう。
パーソナルコンピュータ1は、グループツリーデータファイル116−1またはグループツリーデータファイル116−2に格納されている、グループのツリー構造を示すデータを利用することで、グループを階層構造で管理することができる。
コンテンツファイル117−1乃至コンテンツファイル117−Lは、それぞれ、コンテンツを格納する。
例えば、管理情報設定プログラム112は、コンテンツ情報ファイル114−1乃至グループ情報ファイル115−2に、各種のデータを格納させることにより、コンテンツに関係する情報の表示に必要なデータを設定する。
例えば、表示制御プログラム111は、コンテンツ情報ファイル114−1乃至グループ情報ファイル115−2に格納されている情報を基に、コンテンツを分類するグループのツリー構造を示すデータを生成して、グループツリーデータファイル116−1またはグループツリーデータファイル116−2に格納する。そして、表示制御プログラム111は、コンテンツ情報ファイル114−1乃至グループ情報ファイル115−2に格納されている情報、およびグループツリーデータファイル116−1またはグループツリーデータファイル116−2に格納されているデータを基に、コンテンツに関係する情報の表示を制御する。
ここで、2つのコンテンツ情報ファイル114−1およびコンテンツ情報ファイル114−2、2つのグループ情報ファイル115−1およびグループ情報ファイル115−2、並びに2つのグループツリーデータファイル116−1およびグループツリーデータファイル116−2を設けたのは、コンテンツ情報ファイル114−1、グループ情報ファイル115−1、およびグループツリーデータファイル116−1からなる組と、コンテンツ情報ファイル114−2、グループ情報ファイル115−2、およびグループツリーデータファイル116−2からなる組とで、それぞれ別個にコンテンツファイル117−1乃至117−Lを管理することができるようにするためである。
より詳細には、例えば、管理情報設定プログラム112は、コンテンツ情報ファイル114−1およびグループ情報ファイル115−1に、第1の各種の情報を格納させることにより、コンテンツの管理に必要な情報を設定する。例えば、管理情報設定プログラム112は、コンテンツ情報ファイル114−2およびグループ情報ファイル115−2に、第1の各種の情報と異なる第2の各種の情報を格納させることにより、コンテンツの管理に必要な情報を設定する。
例えば、表示制御プログラム111は、コンテンツ情報ファイル114−1およびグループ情報ファイル115−1に格納されている、コンテンツに関係する情報を基に、コンテンツを分類するグループのツリー構造を示すデータを生成して、グループツリーデータファイル116−1に格納する。そして、表示制御プログラム111は、コンテンツ情報ファイル114−1およびグループ情報ファイル115−1に格納されている情報、およびグループツリーデータファイル116−1に格納されているデータを基に、コンテンツに関係する情報の表示を制御する。
また、例えば、表示制御プログラム111は、コンテンツ情報ファイル114−2およびグループ情報ファイル115−2に格納されている、コンテンツに関係する情報を基に、コンテンツを分類するグループのツリー構造を示すデータを生成して、グループツリーデータファイル116−2に格納する。
ここで、コンテンツ情報ファイル114−2およびグループ情報ファイル115−2には、コンテンツ情報ファイル114−1およびグループ情報ファイル115−1に格納されている情報と異なる情報が格納されているので、表示制御プログラム111は、グループツリーデータファイル116−1に格納されているデータとは異なる、グループのツリー構造を示すデータを生成して、グループツリーデータファイル116−2に格納する。
そして、表示制御プログラム111は、コンテンツ情報ファイル114−2およびグループ情報ファイル115−2に格納されている情報、およびグループツリーデータファイル116−2に格納されているデータを基に、コンテンツに関係する情報の表示を制御する。この場合、表示制御プログラム111は、コンテンツ情報ファイル114−1およびグループ情報ファイル115−1に格納されている情報、およびグループツリーデータファイル116−1に格納されているデータを用いた、コンテンツに関係する情報の表示とは異なる表示をさせることができる。
このように、ファイル管理プログラム101は、1つのコンテンツの集合(例えば、コンテンツファイル117−1乃至117−L)に対して、同じ方式のコンテンツに関係する情報であって、複数の情報をそれぞれ格納することによって、1つのコンテンツの集合に対して、複数の形態で、コンテンツに関係する情報を表示させることができる。また、ファイル管理プログラム101は、1つのコンテンツの集合(例えば、コンテンツファイル117−1乃至117−L)に対して、同じ方式の表示に必要なデータであって、複数のデータをそれぞれ格納することによって、1つのコンテンツの集合に対して、複数の形態で、コンテンツに関係する情報を表示させることができる。
例えば、コンテンツ情報ファイル114−1、グループ情報ファイル115−1、およびグループツリーデータファイル116−1に、コンテンツファイル117−1乃至117−Lの全てに関係する情報を格納すれば、ファイル管理プログラム101は、コンテンツ情報ファイル114−1、グループ情報ファイル115−1、およびグループツリーデータファイル116−1を基に、コンテンツファイル117−1乃至117−Lの全てに対して、関係する情報を表示できるようになり、使用者は、その表示を基に、コンテンツそのものを取り扱う、コンテンツファイル117−1乃至117−Lの移動や消去、またはコピーなどの操作を行うことができるようになる。
また、一方、コンテンツ情報ファイル114−2、グループ情報ファイル115−2、およびグループツリーデータファイル116−2に、コンテンツファイル117−1乃至117−Lのうちの所望するコンテンツ(より好みのコンテンツ)のファイルに関係する情報を格納すれば、ファイル管理プログラム101は、コンテンツ情報ファイル114−2、グループ情報ファイル115−2、およびグループツリーデータファイル116−2を基に、所望のコンテンツのファイルに関係する情報のみを表示できるようになり、使用者は、その表示を基に、より迅速に所望するコンテンツを再生するなどの操作を行うことができるようになる。
以上のように、コンテンツの取り扱いの内容に合わせて、コンテンツ情報ファイル114−1、グループ情報ファイル115−1、およびグループツリーデータファイル116−1のファイルの組、またはコンテンツ情報ファイル114−2、グループ情報ファイル115−2、およびグループツリーデータファイル116−2のファイルの組を記録させることができる。
なお、コンテンツ情報ファイル114−1およびコンテンツ情報ファイル114−2、グループ情報ファイル115−1およびグループ情報ファイル115−2、並びにグループツリーデータファイル116−1およびグループツリーデータファイル116−2は、それぞれ2つに限られず、1つまたは3つ以上の所望の数のファイルとすることができる。
以下、コンテンツ情報ファイル114−1およびコンテンツ情報ファイル114−2、グループ情報ファイル115−1およびグループ情報ファイル115−2、並びにグループツリーデータファイル116−1およびグループツリーデータファイル116−2をそれぞれ個々に区別する必要がないとき、単に、それぞれ、コンテンツ情報ファイル114、グループ情報ファイル115、またはグループツリーデータファイル116と称する。
図5は、コンテンツ情報ファイル114の例を示す図である。コンテンツ情報ファイル114には、コンテンツファイル番号に対応させて、コンテンツファイルの名前およびコンテンツの名前が格納される。
コンテンツファイル番号は、コンテンツファイル(またはコンテンツ)の再生順序を示す。コンテンツファイル番号は、1以上の正の整数、すなわち自然数であり、昇順に、コンテンツファイルの名前に対応して設定される。コンテンツファイル番号は、コンテンツに関係する情報の表示に必要なデータの一例である。
例えば、1つのコンテンツファイル番号が、1つのコンテンツファイルの名前に対応し、1つのコンテンツファイルの名前が、1つのコンテンツファイル番号に対応するように、コンテンツファイル番号が付される。すなわち、この場合、コンテンツファイル番号は、全てのコンテンツファイルに固有に割り当てられる。
または、例えば、1つのコンテンツファイルの名前が、複数のコンテンツファイル番号に対応するように、コンテンツファイル番号が付される。
コンテンツ情報ファイル114のコンテンツファイルの名前は、コンテンツファイル117−1乃至117−Lのいずれかのファイル名を示し、コンテンツファイル117−1乃至117−Lのいずれかの特定に使用される。
コンテンツ情報ファイル114のコンテンツの名前は、コンテンツに関係する情報の一例であり、コンテンツファイル117−1乃至117−Lのいずれかに格納されているコンテンツの名前を示し、コンテンツの内容の表示に使用される。
例えば、コンテンツファイル117−iのファイル名が”undoukai.jpg”あり、コンテンツファイル117−iに運動会の画像が格納されている場合、コンテンツ情報ファイル114のコンテンツファイルの名前の1つは、”undoukai.jpg”とされ、これに対応するコンテンツの名前は、”運動会”とされる。
例えば、コンテンツが音声データ(楽曲)である場合、コンテンツの名前は、曲名とすることもでき、単純に、トラックナンバーとすることもできる。
図5で示されるコンテンツ情報ファイル114の例において、1であるコンテンツファイル番号に対応して、”aaa”であるコンテンツファイルの名前および”甲”であるコンテンツの名前が格納され、2であるコンテンツファイル番号に対応して、”bbb”であるコンテンツファイルの名前および”乙”であるコンテンツの名前が格納されている。
この場合、例えば、コンテンツファイル117−1の名前は、”aaa”である。コンテンツファイル117−2の名前は、”bbb”である。
また、図5で示されるコンテンツ情報ファイル114の例において、3であるコンテンツファイル番号に対応して、”ccc”であるコンテンツファイルの名前および”丙”であるコンテンツの名前が格納され、4であるコンテンツファイル番号に対応して、”ddd”であるコンテンツファイルの名前および”丁”であるコンテンツの名前が格納されている。
この場合、例えば、コンテンツファイル117−3の名前は、”ccc”である。コンテンツファイル117−4の名前は、”ddd”である。
このように、コンテンツ情報ファイル114に、コンテンツファイル番号に対応させて、コンテンツファイルの名前およびコンテンツの名前が格納されるので、コンテンツファイル117−1乃至117−Lのそれぞれに対する、コンテンツファイル番号と、コンテンツの名前とを特定することができる。すなわち、ファイル管理プログラム101は、コンテンツファイル番号が特定されれば、コンテンツファイル番号に対応するコンテンツファイル117−1乃至117−Lのいずれかを読み出すことができ、所望のコンテンツを再生することができる。
図6は、グループ情報ファイル115の例を示す図である。グループ情報ファイル115には、グループ番号に対応させて、コンテンツファイル番号の範囲、グループの名前、およびグループの深さ情報であるグループの深さが格納される。
グループ番号は、グループの再生順序を示す。言い換えれば、グループ番号は、グループに属するコンテンツの再生順序をグループ単位で示す。
グループ番号は、1以上の正の整数、すなわち自然数であり、昇順に、コンテンツファイル番号の範囲に対応して設定される。例えば、グループ番号は、全てのグループに固有に割り当てられる。
1つのコンテンツファイル番号の範囲は、1つのグループに属するコンテンツファイル番号、すなわち、1つのグループに属するコンテンツを示す。
コンテンツファイル番号の範囲には、自然数であるコンテンツファイル番号が昇順に配置される。
コンテンツファイル番号の順序に従って、グループ番号が昇順に設定されるとも言える。
グループ情報ファイル115のグループ番号に対応するコンテンツファイル番号の範囲、およびコンテンツ情報ファイル114によって、グループ番号で特定されるグループに属するコンテンツファイル117−1乃至117−Lを特定することができる。
例えば、1つのコンテンツファイル番号が、1つのグループ番号に対応するように、グループ番号に対してコンテンツファイル番号の範囲が設定される。
または、例えば、1つのコンテンツファイル番号が、複数のグループ番号に対応するように、グループ番号に対してコンテンツファイル番号の範囲が設定される。
グループ情報ファイル115のグループの名前は、対応するグループの名前を示し、グループの特定に使用される。
例えば、コンテンツが音楽である場合、グループの名前は、アーティスト名またはアルバム名などとし、コンテンツの名前は、曲名とすることができる。
例えば、コンテンツが放送された番組の動画像である場合、グループの名前は、放送局名、出演者、脚本家、または原作者などとし、コンテンツの名前は、番組名またはタイトルとすることができる。
グループ情報ファイル115の深さは、深さ情報の一例であり、グループのツリー(構造)を生成する場合に、ツリーにおけるルートからのグループまでの距離を示す。すなわち、グループ情報ファイル115の深さは、グループの、ノード(節点)としてのグループのツリーにおける深さを示す。
換言すれば、グループの深さは、グループツリーの階層構造を構成する、そのグループが属する階層の深さを示す。ルート直下の階層の深さは1とされ、階層が深くなるごとに、深さは1ずつ増える。
ここで、ルートは、いわゆる、グラフ理論における根付き木の根である。
図6で示されるグループ情報ファイル115の例において、1であるグループ番号に対応して、1であるコンテンツファイル番号の範囲、”α”であるグループの名前、および1である深さ情報が格納され、2であるグループ番号に対応して、2であるコンテンツファイル番号の範囲、”β”であるグループの名前、および1である深さ情報が格納されている。
図6で示されるグループ情報ファイル115の例において、3であるグループ番号に対応して、空(図6中の”−”は、空であることを示す)であるコンテンツファイル番号の範囲、”γ”であるグループの名前、および2である深さ情報が格納されている。
図6で示されるグループ情報ファイル115の例において、4であるグループ番号に対応して、3から4を示すコンテンツファイル番号の範囲、”δ”であるグループの名前、および2である深さ情報が格納され、5であるグループ番号に対応して、5から6であるコンテンツファイル番号の範囲、”ε”であるグループの名前、および1である深さ情報が格納されている。
例えば、コンテンツが音楽である場合、深さ情報が1のグループの名前は、アーティスト名とされ、深さ情報が2のグループの名前は、アルバム名などとされる。このようにした場合、ファイル管理プログラム101は、深さ1の階層において、アーティスト名を表示し、深さ2の階層において、アルバム名を表示するので、使用者は、容易に、アーティスト名およびアルバム名から、所望するコンテンツである曲を検索して、再生させることができる。
例えば、コンテンツが放送された番組の動画像である場合、深さ情報が1のグループの名前は、放送局名とされ、深さ情報が2のグループの名前は、番組のジャンルなどとされる。このようにした場合、ファイル管理プログラム101は、深さ1の階層において、放送局名を表示し、深さ2の階層において、番組のジャンルを表示するので、使用者は、放送局名とジャンルから、容易に、所望するコンテンツである番組の動画像を検索して、再生させることができる。
図7は、図6で示されるグループ情報ファイル115の例によって示される、グループ番号と、コンテンツファイル番号の範囲との対応の例を示す図である。
図7において、コンテンツファイル番号が1であるコンテンツファイル117の名前は、”コンテンツファイル1”と表され、同様に、コンテンツファイル番号がそれぞれ2乃至6であるコンテンツファイル117の名前は、それぞれ”コンテンツファイル2”乃至”コンテンツファイル6”と表されている。
また、図7において、グループ番号が1であるグループの名前は、”グループ1”と表され、同様に、グループ番号がそれぞれ2乃至5であるグループの名前は、”グループ2”乃至”グループ5”とそれぞれ表されている。
すなわち、名前が”コンテンツファイル1”であるコンテンツファイル117は、グループ番号が1であるグループに属し、名前が”コンテンツファイル2”であるコンテンツファイル117は、グループ番号が2であるグループに属する。グループ番号が3であるグループには、コンテンツファイル117が1つも属さず、グループ番号が3であるグループは空である。
名前が”コンテンツファイル3”であるコンテンツファイル117および名前が”コンテンツファイル4”であるコンテンツファイル117は、グループ番号が4であるグループに属し、名前が”コンテンツファイル5”であるコンテンツファイル117および名前が”コンテンツファイル6”であるコンテンツファイル117は、グループ番号が5であるグループに属する。
なお、ポータブルプレーヤ2およびポータブルプレーヤ3において、コンテンツ情報ファイル114乃至コンテンツファイル117は、記憶部78に記憶される。
図8は、ファイル管理プログラム101を実行するパーソナルコンピュータ1による、深さ情報付加の処理を説明するフローチャートである。
ステップS11において、ファイル管理プログラム101の管理情報設定プログラム112は、グループにグループ番号を付加する。すなわち、管理情報設定プログラム112は、グループに1から連続する自然数のグループ番号を付加する。
より詳細には、例えば、図6で示されるグループ情報ファイル115のコンテンツファイル番号の範囲が、1つのグループに属するコンテンツを示し、コンテンツファイル番号が昇順に設定されているので、管理情報設定プログラム112は、グループ情報ファイル115に、コンテンツファイル番号の範囲に対応させて、1から連続する自然数のグループ番号を格納させることにより、グループに1から連続する自然数のグループ番号を付加する。
このようにグループ番号の順番は、コンテンツファイル番号の順番に対応する。
ステップS12において、管理情報設定プログラム112は、グループ番号が1であるグループの深さ情報aである深さ情報a1に深さ1を設定する。
以下、グループ番号がnであるグループを”グループn”と表す。また、グループnの深さ情報aを深さ情報aNと称する。
例えば、ステップS12において、管理情報設定プログラム112は、グループ情報ファイル115に、1であるグループ番号に対応させて、深さに1を設定することにより、グループ番号が1であるグループの深さ情報a1に深さ1を設定する。
ステップS13において、管理情報設定プログラム112は、変数Nに、初期値である2を設定する。
ステップS14において、管理情報設定プログラム112は、グループ情報ファイル115のコンテンツファイル番号の範囲の数、およびステップS11の処理でグループに付加したグループ番号を基に、グループNがあるか否かを判定する。ステップS14において、グループNがあると判定された場合、ステップS15に進み、管理情報設定プログラム112は、グループ(N−1)の深さ情報a(N-1)を読み出す。例えば、ステップS15において、管理情報設定プログラム112は、グループ情報ファイル115から、(N−1)であるグループ番号に対応して格納されている深さを読み出すことにより、グループ(N−1)の深さ情報a(N-1)を読み出す。
例えば、最初に実行されるステップS15において、Nは2なので、グループ1の、1である深さ情報a1が読み出される。
ステップS16において、管理情報設定プログラム112は、グループNの深さ情報に設定しようとする、深さbを取得する。例えば、ステップS16において、管理情報設定プログラム112は、使用者の操作に対応した入力部26からの信号を基に、深さbを取得する。または、例えば、ステップS16において、管理情報設定プログラム112は、予め設定されている深さを取得することにより、深さbを取得する。
例えば、デフォルトの深さbとして、管理情報設定プログラム112に、深さ1を予め設定しておくことができる。
ステップS17において、管理情報設定プログラム112は、深さbが1以上で、かつa(N-1)+1以下であるか否かを判定し、深さbが1以上で、かつa(N-1)+1以下であると判定された場合、ステップS18に進み、グループ番号がNであるグループの深さ情報aNに深さbを設定する。
ステップS17における、深さbが1以上で、かつa(N-1)+1以下であるか否かの判定は、グループNを、グループ(N−1)またはグループ(N−1)の祖先のいずれかの子供とするための判定である。すなわち、この判定により、グループNの階層は、グループ(N−1)およびグループ(N−1)の祖先の階層から、2以上深くなることがない。
例えば、グループ1の深さが1なので、グループ2の深さは、1または2とされる。グループ2の深さが3以上になることが回避される。
例えば、ステップS18において、管理情報設定プログラム112は、グループ情報ファイル115に、Nであるグループ番号に対応させて、深さにbを設定することにより、グループ番号がNであるグループの深さ情報aNに深さbを設定する。
ステップS19において、管理情報設定プログラム112は、Nをインクリメントし、ステップS14に戻り、インクリメントされたNを基に、上述した処理を繰り返す。
ステップS17において、深さbが1未満であるか、またはa(N-1)+1を超えていると判定された場合、ツリーの構成に適さない深さbが取得されたので、ステップS20に進み、管理情報設定プログラム112は、出力部27にエラーメッセージを表示させて、ステップS16に戻り、適切な深さbを取得するまで判定の処理を繰り返す。
ステップS14において、グループNがないと判定された場合、グループNに深さ情報を付加する必要はなく、存在している全てのグループに深さ情報が付加されたので、処理は終了する。
このように、各グループに対して、深さを示す深さ情報が付加される。
次に、グループに付加された深さ情報を基にした、グループのツリーの生成について説明する。グループは、生成されるツリーのノードとされる。
図9は、ファイル管理プログラム101を実行するパーソナルコンピュータ1による、グループのツリーの生成の処理を説明するフローチャートである。
ステップS31において、ファイル管理プログラム101の表示制御プログラム111は、グループ1をルートの下に配置する。すなわち、グループ1は、ルートの子供とされる。
ここで、第1のノードに接続される他の第2のノードであって、第2のノードの深さが第1のノードの深さより1深い場合、換言すれば、第1のノードと第2のノードが直接接続され、第2のノードの深さが第1のノードの深さより1深い場合、第2のノードは、第1のノードの子供と称し、第1のノードは、第2のノードの親と称する。また、第1のノードに直接接続されるか、または第1のノードに複数のノードを介して接続される第2のノードであって、第2のノードの深さが第1のノードの深さより深い場合、第2のノードは、第1のノードの子孫と称し、第1のノードは、第2のノードの祖先と称する。
なお、この子供、親、子孫、および祖先の定義は、グラフ理論の木構造における定義と同じである。
例えば、表示制御プログラム111は、グループツリーデータファイル116に、グループ1がルートの子供であることを示す情報をグループツリーデータファイル116に格納することにより、グループ1をルートの下に配置する。
なお、親子関係を示す情報は、例えば、ポインタとすることができる。より詳細には、グループNがルートの子供であることを示す情報は、ルートから、グループNを指示するポインタとすることができる。
ステップS32において、表示制御プログラム111は、変数Nに初期値2を設定する。ステップS33において、表示制御プログラム111は、グループNの深さ情報aNを読み出す。例えば、ステップS33において、表示制御プログラム111は、グループ情報ファイル115から、Nであるグループ番号に対応して格納されている深さaNを読み出す。
ステップS34において、表示制御プログラム111は、グループNの深さ情報aNが1であるか否かを判定し、深さ情報aNが1であると判定された場合、グループNは、ルートの子供なので、ステップS35に進み、図10で示されるように、グループNをルートの下に配置し、ステップS36に進む。例えば、ステップS35において、表示制御プログラム111は、グループツリーデータファイル116に、グループNがルートの子供であることを示す情報をグループツリーデータファイル116に格納することにより、グループNをルートの下に配置する。
ステップS36において、表示制御プログラム111は、変数Nをインクリメントする。ステップS37において、表示制御プログラム111は、グループの数と変数Nの値とを基に、全てのグループを配置したか否かを判定し、全てのグループを配置していないと判定された場合、ステップS33に戻り、次のグループの配置の処理を繰り返す。
ステップS34において、深さ情報aNが1でないと判定された場合、ステップS38に進み、表示制御プログラム111は、グループNの1つ前のグループであるグループ(N−1)の深さ情報a(N-1)を読み出す。例えば、ステップS38において、表示制御プログラム111は、グループ情報ファイル115から、(N−1)であるグループ番号に対応して格納されている深さa(N-1)を読み出す。
ステップS39において、表示制御プログラム111は、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)+1とが等しいか否かを判定し、深さ情報aNと深さ情報a(N-1)+1とが等しいと判定された場合、グループ(N−1)がグループNより1階層浅く、グループNは、グループ(N−1)の子供なので、ステップS40に進み、グループNをグループ(N−1)の下に配置し、ステップS36に進み、変数Nをインクリメントして上述した処理を繰り返す。例えば、ステップS40において、表示制御プログラム111は、グループツリーデータファイル116に、グループNがグループ(N−1)の子供であることを示す情報をグループツリーデータファイル116に格納することにより、グループNをグループ(N−1)の下に配置する。
すなわち、図11で示されるように、深さ情報がaであるグループNは、深さ情報がa+1であるグループN+1の親なので、深さ情報がa+1であるグループN+1は、深さ情報がaであるグループNの下に配置される。
ステップS39において、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)+1とが等しくないと判定された場合、ステップS41に進み、表示制御プログラム111は、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)とが等しいか否かを判定し、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)とが等しいと判定された場合、グループNは、グループ(N−1)と同じ深さの階層にあり、グループNの親は、グループ(N−1)の親と同じなので、ステップS42に進む。
ステップS42において、表示制御プログラム111は、グループ(N−1)の親であるグループMの下にグループNを配置して、ステップS36に進み、変数Nをインクリメントして上述した処理を繰り返す。例えば、ステップS42において、表示制御プログラム111は、グループ情報ファイル115から、(N−2)であるグループ番号に対応する深さから、1であるグループ番号に対応する深さまで、順に、aN−1である深さを検索して、aN−1である深さが設定されているグループをグループMとする。すなわち、グループMは、aN−1である深さが設定されているグループのうち、グループ番号が(N−1)に最も近いグループである。
そして、表示制御プログラム111は、グループツリーデータファイル116に、グループNがグループMの子供であることを示す情報をグループツリーデータファイル116に格納することにより、グループNをグループMの下に配置する。
すなわち、図12で示されるように、深さ情報がa−1であるグループMは、深さ情報がaであるグループNの親であると共に、深さ情報がaであるグループN+1の親であるので、深さ情報がaであるグループN+1は、深さ情報がa−1であるグループMの下に配置される。
一方、ステップS41において、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)とが等しくないと判定された場合、aNが、a(N-1)未満であり、グループNは、グループ(N−1)より浅いので、ステップS43に進み、表示制御プログラム111は、グループ(N−1)の祖先から、深さ情報aN−1であるグループMを検索する。例えば、表示制御プログラム111は、グループ情報ファイル115から、(N−2)であるグループ番号に対応する深さから、1であるグループ番号に対応する深さまで、順に、aN−1である深さを検索して、aN−1である深さが設定されているグループをグループMとする。すなわち、グループMは、aN−1である深さが設定されているグループのうち、グループ番号が(N−1)に最も近いグループである。
ステップS44において、表示制御プログラム111は、検索されたグループMの下にグループNを配置して、ステップS36に進み、変数Nをインクリメントして上述した処理を繰り返す。例えば、ステップS44において、表示制御プログラム111は、グループツリーデータファイル116に、グループNがグループMの子供であることを示す情報をグループツリーデータファイル116に格納して、グループNをグループMの下に配置する。
すなわち、図13で示されるように、グループN+1の深さ情報がbである場合、深さ情報がaであるグループNの祖先である、深さ情報がb−1であるグループMが、深さ情報がbであるグループN+1の親なので、深さ情報がbであるグループN+1は、深さ情報がb−1であるグループMの下に配置される。
このように、ファイル管理プログラム101を実行するパーソナルコンピュータ1は、グループに設定されている深さ情報から、グループのツリーの生成することができる。
例えば、グループ1の深さ情報が1であり、グループ2の深さ情報が1であり、グループ3の深さ情報が2であり、グループ4の深さ情報が2であり、グループ5の深さ情報が3であり、グループ6の深さ情報が1である場合、図14で示されるように、グループ1、グループ2、およびグループ6は、ルート下に配置され、グループ3およびグループ4は、グループ2の下に配置され、グループ5は、グループ4の下に配置される。
パーソナルコンピュータ1によって生成されるグループのツリーにおいて、親の深さと子供の深さの差は、常に1であり、2以上になることはない。例えば、図15で示されるように、グループ1の深さが、2以上となることはなく、深さが1であるグループ2の子供であるグループ3の深さが3以上となることはない。
このように、所定のルールの基に、グループに付加された深さ情報を基に、簡単に、グループのツリーを生成することができる。生成したツリーを用いることでグループを効率良く管理することができるようになる。
グループの数に対してツリーの最大の深さが小さければ、グループの数に対して処理量はほぼリニアに増加するので、グループの数が多くなっても、処理の負荷の増加を最小限として、グループのツリーを生成することができる。
そして、コンテンツファイル番号とコンテンツの名前とを利用すれば、コンテンツの名前を1列に表示することができるので、トラックの名前だけを表示する既存のフォーマットと高い互換性を持たせることができる。
図16は、ファイル管理プログラム101を実行するパーソナルコンピュータ1による、グループのツリーの表示の処理を説明するフローチャートである。
ステップS71において、ファイル管理プログラム101の表示制御プログラム111は、グループ1をルートの下に配置する。ステップS72において、表示制御プログラム111は、ルートおよびグループ1を表示する。例えば、ステップS72において、表示制御プログラム111は、出力部77のディスプレイに、ルートを示す画像を表示して、ルートの子供としてグループ1の名前を表示する。
ステップS73において、表示制御プログラム111は、変数Nに初期値2を設定する。ステップS74において、表示制御プログラム111は、グループNの深さ情報aNを読み出す。例えば、ステップS74において、表示制御プログラム111は、グループ情報ファイル115から、Nであるグループ番号に対応して格納されている深さaNを読み出す。
ステップS75において、表示制御プログラム111は、グループNの深さ情報aNが1であるか否かを判定し、深さ情報aNが1であると判定された場合、グループNは、ルートの子供なので、ステップS76に進み、グループNをルートの下に配置し、ステップS77に進む。
ステップS77において、表示制御プログラム111は、グループNを表示する。例えば、ステップS77において、表示制御プログラム111は、出力部77のディスプレイに、親(ノード)との関係が使用者にわかるようにグループNの名前を表示する。例えば、ステップS76の処理を実行した後のステップS77において、表示制御プログラム111は、出力部77のディスプレイに、グループNがルートの子供であることがわかるようにグループNの名前を表示する。より詳しい例をあげれば、表示制御プログラム111は、出力部77のディスプレイに、ディスプレイの左上に表示されたルートの画像に対して、右下に、ルートの画像と線で結ばれたグループNの名前を表示する。
ステップS78において、表示制御プログラム111は、変数Nをインクリメントする。ステップS79において、表示制御プログラム111は、グループの数と変数Nの値とを基に、全てのグループを配置したか否かを判定し、全てのグループを配置していないと判定された場合、ステップS74に戻り、次のグループの配置の処理を繰り返す。
ステップS75において、深さ情報aNが1でないと判定された場合、ステップS80に進み、表示制御プログラム111は、グループNの1つ前のグループであるグループ(N−1)の深さ情報a(N-1)を読み出す。例えば、ステップS80において、表示制御プログラム111は、グループ情報ファイル115から、(N−1)であるグループ番号に対応して格納されている深さa(N-1)を読み出す。
ステップS81において、表示制御プログラム111は、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)+1とが等しいか否かを判定し、深さ情報aNと深さ情報a(N-1)+1とが等しいと判定された場合、グループNは、グループ(N−1)の子供なので、ステップS82に進み、グループNをグループ(N−1)の下に配置し、ステップS77に進み、グループNを表示して上述した処理を繰り返す。例えば、ステップS82の処理を実行した後のステップS77において、表示制御プログラム111は、出力部77のディスプレイに、グループNがグループ(N−1)の子供であることがわかるようにグループNを表示する。
ステップS81において、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)+1とが等しくないと判定された場合、ステップS83に進み、表示制御プログラム111は、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)とが等しいか否かを判定する。ステップS83において、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)とが等しいと判定された場合、グループNは、グループ(N−1)と同じ深さの階層にあり、グループNの親は、グループ(N−1)の親と同じなので、手続きは、ステップS84に進む。
ステップS84において、表示制御プログラム111は、グループ(N−1)の親であるグループMの下にグループNを配置して、ステップS77に進み、グループNを表示して上述した処理を繰り返す。例えば、ステップS84において、表示制御プログラム111は、グループ情報ファイル115から、(N−2)であるグループ番号に対応する深さから、1であるグループ番号に対応する深さまで、順に、aN−1である深さを検索して、aN−1である深さが設定されているグループをグループMとする。すなわち、グループMは、aN−1である深さが設定されているグループのうち、グループ番号が(N−1)に最も近いグループである。
ステップS84の処理を実行した後のステップS77において、表示制御プログラム111は、出力部77のディスプレイに、グループNがグループMの子供であることがわかるようにグループNを表示する。
一方、ステップS83において、グループNの深さ情報aNとグループ(N−1)の深さ情報a(N-1)とが等しくないと判定された場合、aNが、a(N-1)未満なので、グループNは、グループ(N−1)より浅い(よりルートに近い)ので、ステップS85に進み、表示制御プログラム111は、グループ(N−1)の祖先から、深さ情報aN−1であるグループMを検索する。例えば、表示制御プログラム111は、グループ情報ファイル115から、(N−2)であるグループ番号に対応する深さから、1であるグループ番号に対応する深さまで、順に、aN−1である深さを検索して、aN−1である深さが設定されているグループをグループMとする。すなわち、グループMは、aN−1である深さが設定されているグループのうち、グループ番号が(N−1)に最も近いグループである。
ステップS86において、表示制御プログラム111は、検索されたグループMの下にグループNを配置して、ステップS77に進み、グループNを表示して上述した処理を繰り返す。
ステップS86の処理を実行した後のステップS77において、表示制御プログラム111は、出力部77のディスプレイに、グループNがグループMの子供であることがわかるようにグループNを表示する。
このように、ファイル管理プログラム101を実行するパーソナルコンピュータ1は、グループに設定されている深さ情報から、グループのツリーを表示することができる。この場合、グループツリーデータファイル116は、必ずしも生成されない。
図16を参照して説明した処理によれば、自然数の連続するグループ番号と、グループ番号に対応する深さ情報だけから、グループのツリーが表示される。すなわち、従来のように、木構造を示すポインタなどの比較的データ量の大きいデータを使用することなく、グループのツリーを表示できるようになる。
従って、携帯型の装置など、記憶領域が狭く、処理能力の低い装置であっても、グループのツリーを表示できるようになる。
次に、パーソナルコンピュータ1、ポータブルプレーヤ2、およびポータブルプレーヤ3は、処理能力または表示能力に合わせて、表示の形態を変更して、コンテンツとグループとに関係する情報を表示させることができる。処理能力または表示能力に合わせて、表示の形態を変更する場合、グループのツリーを予め生成し、生成されたツリーを示すデータをグループツリーデータファイル116に格納しておく必要がある。
次に、パーソナルコンピュータ1は、使用者からの指示または表示装置の能力に応じて、コンテンツに関係する情報の表示の方式(表示モード)を変更することができる。
このような場合における、ファイル管理プログラム101を実行するパーソナルコンピュータ1による表示の処理を図17のフローチャートを参照して説明する。
ステップS101において、表示制御プログラム111は、表示モードの指示を取得する。例えば、ステップS101において、表示制御プログラム111は、使用者の操作に対応する入力部26からの信号を取得することにより、表示モードの指示を取得する。または、例えば、ステップS101において、表示制御プログラム111は、予め設定されたモードを読み出すことにより、表示モードの指示を取得する。この予め設定されているモードは、例えば、出力部27または出力部77のディスプレイの能力に応じたものとすることができる。
ステップS102において、表示制御プログラム111は、取得された表示モードの指示を基に、トラック表示モードが指示されたか否かを判定し、トラック表示モードが指示されたと判定された場合、ステップS103に進み、トラック表示の処理を実行して、処理は終了する。
図18で示されるように、グループ1、グループ2、およびグループ5が、ルート下に配置され、グループ3およびグループ4が、グループ2の下に配置され、コンテンツファイル1が、グループ1に属し、コンテンツファイル2が、グループ2に属し、コンテンツファイル3およびコンテンツファイル4が、グループ4に属し、コンテンツファイル5およびコンテンツファイル6が、グループ5に属するようにグループのツリーが構成される場合、図19で示されるように、トラック表示においては、コンテンツファイル117に対応するコンテンツの名前の全ては、1つの階層に、コンテンツファイル番号順に表示される。コンテンツファイル番号は、例えば、再生順を示す。トラック表示においては、グループの名前などの、グループに関係する情報は、表示されない。
トラック表示の処理の詳細は、後述する。
ステップS102において、トラック表示モードが指示されていないと判定された場合、ステップS104に進み、表示制御プログラム111は、取得された表示モードの指示を基に、グループ表示モードが指示されたか否かを判定し、グループ表示モードが指示されたと判定された場合、ステップS105に進み、グループ表示の処理を実行して、処理は終了する。
図18で示されるようにグループのツリーが構成される場合、図20で示されるように、グループ表示においては、グループの名前の全てが、1つの階層にグループ番号順に表示されるとともに、グループの名前に対応させて配置されたコンテンツの名前が、コンテンツファイル番号順に表示される。グループ番号は、例えば、再生順を示す。グループ表示においては、グループの深さに関係する表示はされない。
グループ表示の処理の詳細は、後述する。
ステップS104において、グループ表示モードが指示されていないと判定された場合、グループツリー表示モードが指示されたので、ステップS106に進み、グループツリー表示の処理を実行して、処理は終了する。
グループツリー表示においては、グループの階層構造が表示され、グループに属するコンテンツの名前が、グループに対応して表示される。例えば、図18で示されるようにグループのツリーが構成される場合、図21で示されるように、グループツリー表示において、グループ1、グループ2、およびグループ5のそれぞれの名前が、ルート下に配置されて表示され、グループ3およびグループ4のそれぞれの名前が、グループ2の下に配置されて表示される。
そして、コンテンツファイル1がグループ1に属するので、コンテンツファイル1の名前が、グループ1の名前に対応して表示され、コンテンツファイル2がグループ2に属するので、コンテンツファイル2の名前が、グループ2の名前に対応して表示される。同様に、コンテンツファイル3およびコンテンツファイル4が、グループ4に属するので、コンテンツファイル3およびコンテンツファイル4のそれぞれの名前が、グループ4の名前に対応して表示され、コンテンツファイル5およびコンテンツファイル6が、グループ5に属するので、コンテンツファイル5およびコンテンツファイル6のそれぞれの名前が、グループ5の名前に対応して表示される。
グループツリー表示の処理の詳細は、後述する。
次に、トラック表示の処理、グループ表示の処理、およびグループツリー表示の処理のそれぞれを説明する。
図22は、ステップS103に対応するトラック表示の処理の詳細を説明するフローチャートである。ステップS121において、表示制御プログラム111は、変数Nに初期値1を設定する。
ステップS122において、表示制御プログラム111は、Nであるコンテンツファイル番号のコンテンツファイル、すなわちコンテンツファイルNに対応するコンテンツの名前を取得する。例えば、ステップS122において、表示制御プログラム111は、コンテンツ情報ファイル114から、Nであるコンテンツファイル番号に対応して格納されているコンテンツの名前を読み出すことにより、Nであるコンテンツファイル番号のコンテンツファイルに対応するコンテンツの名前を取得する。
ステップS123において、表示制御プログラム111は、コンテンツファイル番号の順に、コンテンツの名前を表示する。例えば、ステップS123において、表示制御プログラム111は、出力部27のディスプレイに、Nであるコンテンツファイル番号のコンテンツファイルに対応するコンテンツの名前を、(N−1)であるコンテンツファイル番号のコンテンツファイルに対応するコンテンツの名前の下に1列に表示させる。
ステップS124において、表示制御プログラム111は、変数Nをインクリメントする。ステップS125において、表示制御プログラム111は、コンテンツファイル117の数と変数Nの値とを基に、全てのコンテンツの名前を表示したか否かを判定し、全てのコンテンツの名前を表示していないと判定された場合、ステップS122に戻り、次のコンテンツの名前の表示の処理を繰り返す。
ステップS125において、全てのコンテンツの名前を表示したと判定された場合、処理は終了する。
このように、トラック表示の処理において、コンテンツファイル番号の順に、コンテンツの名前が1列に表示されるので、コンテンツファイル117に対応するコンテンツの名前の全てが、1つの階層に、コンテンツファイル番号順に表示される。
図23は、ステップS105に対応するグループ表示の処理の詳細を説明するフローチャートである。ステップS141において、表示制御プログラム111は、変数Nに初期値1を設定する。
ステップS142において、表示制御プログラム111は、Nであるグループ番号のグループ、すなわちグループNに対応するグループの名前を取得する。例えば、ステップS142において、表示制御プログラム111は、グループ情報ファイル115から、Nであるグループ番号に対応して格納されているグループの名前を読み出すことにより、Nであるグループ番号のグループに対応するグループの名前を取得する。
ステップS143において、表示制御プログラム111は、グループ番号の順に、グループNのグループの名前を表示する。例えば、ステップS143において、表示制御プログラム111は、出力部27のディスプレイに、Nであるグループ番号のグループに対応するグループの名前を、(N−1)であるグループ番号のグループに対応するグループの名前の下に1列に表示させる。
ステップS144において、表示制御プログラム111は、Nであるグループ番号のグループ、すなわちグループNに属するコンテンツファイルに対応するコンテンツの名前を取得する。例えば、ステップS144において、表示制御プログラム111は、グループ情報ファイル115から、Nであるグループ番号に対応して格納されているコンテンツファイル番号の範囲を読み出す。そして、表示制御プログラム111は、コンテンツ情報ファイル114から、コンテンツファイル番号の範囲に属するコンテンツファイル番号に対応して格納されているコンテンツの名前を読み出すことにより、Nであるグループ番号のグループに属するコンテンツファイルに対応するコンテンツの名前を取得する。
ステップS145において、表示制御プログラム111は、グループNの名前に対応させると共に、コンテンツファイル番号の順に、コンテンツの名前を表示する。例えば、ステップS145において、表示制御プログラム111は、出力部27のディスプレイに、Nであるグループ番号のグループに対応するグループの名前の右下に、グループNに属するコンテンツファイルに対応するコンテンツの名前を、コンテンツファイル番号の順に1列に表示させる。
コンテンツファイル番号の順序に従って、グループ番号が昇順に設定されているので、ステップS143およびステップS145の処理において、グループの名前およびコンテンツの名前が、コンテンツファイル番号順に表示されることになる。
ステップS146において、表示制御プログラム111は、変数Nをインクリメントする。ステップS147において、表示制御プログラム111は、グループ情報ファイル115に格納されているグループ番号の最大値と変数Nの値とを基に、全てのグループの名前を表示したか否かを判定し、全てのグループの名前を表示していないと判定された場合、ステップS142に戻り、次のグループの名前およびコンテンツの名前の表示の処理を繰り返す。
ステップS147において、全てのグループの名前を表示したと判定された場合、処理は終了する。
このように、グループ表示の処理において、グループ番号の順に、グループの名前が1列に表示され、グループに対応させて、コンテンツファイル番号の順に、コンテンツの名前が1列に表示されるので、グループの名前の全てが、1つの階層にグループ番号順に表示されるとともに、グループの名前に対応させて配置された、コンテンツファイル117に対応するコンテンツの名前が、コンテンツファイル番号順に表示される。
図24は、ステップS106に対応するグループツリー表示の処理の詳細を説明するフローチャートである。ステップS161において、表示制御プログラム111は、グループのツリー構造を示すグループツリーデータを取得する。例えば、ステップS161において、表示制御プログラム111は、グループツリーデータファイル116から、格納されているグループツリーデータを読み出すことにより、グループツリーデータを取得する。
グループツリーデータファイル116には、例えば、図9のグループのツリーの生成の処理によって生成された、グループのツリー構造を示すグループツリーデータが格納されている。
グループツリーデータファイル116には、他の処理によって生成された、グループのツリー構造を示すグループツリーデータを格納しておくようにしてもよい。
ステップS162において、表示制御プログラム111は、各グループの名前を取得する。例えば、ステップS162において、表示制御プログラム111は、グループ情報ファイル115から、格納されているグループの名前を読み出すことにより、各グループの名前を取得する。
ステップS163において、表示制御プログラム111は、各コンテンツの名前を取得する。例えば、ステップS163において、表示制御プログラム111は、コンテンツ情報ファイル114から、格納されているコンテンツの名前を読み出すことにより、各コンテンツの名前を取得する。
ステップS164において、表示制御プログラム111は、グループツリーデータに基づいて、グループの名前およびコンテンツの名前をツリー状に表示して、処理は終了する。例えば、ステップS164において、表示制御プログラム111は、グループの親子関係を示すグループツリーデータに従って、グループの名前を配置するとともに、グループの名前に対応するグループに属するコンテンツの名前を、グループの名前に対応するように配置して、グループの名前およびコンテンツの名前を出力部27のディスプレイに表示させる。
このように、グループ表示の処理において、グループの名前が階層構造で表示され、グループに属するコンテンツの名前が、グループの名前に対応して表示される。
なお、図16のフローチャートを参照して説明した処理によって、グループツリーの表示を行うようにしてもよい。この場合、表示の処理の前に、図8の深さ情報付加の処理を実行しておく必要がある。
以上のように、表示モードを選択することにより、処理能力または表示能力が異なっていても、装置やプログラムなどを変更することなく、コンテンツに関係する情報を表示することができるようになる。
例えば、ポータブルプレーヤ2のCPU71の処理能力(演算能力)が低く、ポータブルプレーヤ2の出力部77として、リモートコントローラの1列のディスプレイしか備えていない場合、ポータブルプレーヤ2においては、予め設定されているトラック表示モードが選択されて、コンテンツの名前が1つの階層(1列)に表示される。例えば、ポータブルプレーヤ3のCPU71の処理能力(演算能力)が高く、ポータブルプレーヤ3の出力部77として、2.5インチの液晶表示装置を備えている場合、ポータブルプレーヤ2においては、使用者が、トラック表示モード、グループ表示モード、またはグループツリー表示モードの何れかを選択することができ、グループツリー表示モードが選択された場合、グループの名前とコンテンツの名前とがツリー構造で表示される。
なお、音声のコンテンツを操作するポータブルプレーヤ2またはポータブルプレーヤ3の記憶部78は、半導体メモリに限らず、ハードディスク、MD(Mini-Disc)(商標)などの光磁気ディスク、または光ディスクなどで構成することができる。
また、コンテンツは、音声に限らず、画像(静止画像または動画像)などとすることができる。この場合、画像のコンテンツを操作するポータブルプレーヤ2またはポータブルプレーヤ3の記憶部78は、半導体メモリに限らず、ハードディスク、MD(Mini-Disc)(商標)などの光磁気ディスク、または光ディスクなどで構成することができる。
パーソナルコンピュータ1の記録部28は、内蔵型の記録媒体または着脱可能な記録媒体とすることができる。同様に、ポータブルプレーヤ2またはポータブルプレーヤ3の記憶部78は、内蔵型の記憶媒体または着脱可能な記憶媒体とすることができる。記憶部78は、より高密度に情報を記憶するものとすることができ、記憶部78の記録密度は、本発明を限定するものではない。
なお、パーソナルコンピュータ1、ポータブルプレーヤ2、またはポータブルプレーヤ3は、コンテンツファイル117が記録(記憶)されている記録媒体(記憶媒体)が装着された場合、コンテンツ情報ファイル114、グループ情報ファイル115、およびグループツリーデータファイル116を装着された記録媒体(記憶媒体)に書き込んで、上述した表示の処理を実行することができる。
さらに、パーソナルコンピュータ1、ポータブルプレーヤ2、およびポータブルプレーヤ3が、共通する方式のコンテンツ情報ファイル114、グループ情報ファイル115、およびグループツリーデータファイル116を利用することができるように構成すれば、パーソナルコンピュータ1、ポータブルプレーヤ2、およびポータブルプレーヤ3のそれぞれに、コンテンツ情報ファイル114、グループ情報ファイル115、およびグループツリーデータファイル116が記録されている1つの記録媒体が装着されたとき、同様に、コンテンツの名前およびグループの名前などのコンテンツまたはグループに関係する情報を表示させることができるようになる。使用者にとっては、異なる機器であっても、コンテンツ情報ファイル114、グループ情報ファイル115、およびグループツリーデータファイル116が同じならば、同じ表示がされるので、機器毎に異なる操作を習得する必要がなく、簡単に操作することができるようになる。
コンテンツ情報ファイル114、グループ情報ファイル115、およびグループツリーデータファイル116をコピーしたり、移動したりした場合も、同様の効果が得られる。
本発明は、据え置き形の装置、例えば、再生装置、記録装置、画像サーバなどに適用することができるのは勿論である。
なお、パーソナルコンピュータ1、ポータブルプレーヤ2、またはポータブルプレーヤ3の各機能をハードウェアで実現するか、ソフトウェアで実現するかは問わない。つまり、本明細書の各ブロック図は、ハードウェアのブロック図と考えても、ソフトウェアによる機能ブロック図と考えても良い。
また、情報処理装置の一例として、パーソナルコンピュータ1、ポータブルプレーヤ2、またはポータブルプレーヤ3をあげたが、これに限らず、情報処理装置は、コンテンツの名前の表示を制御できれば足り、PDA、携帯電話機、据え置き形記録再生装置、または据え置き形記録再生装置のリモートコントローラなどとすることができる。
このように、コンテンツの名前を表示するようにした場合には、所望のコンテンツを操作することができる。また、第1の表示モード乃至第3の表示モードのうちのいずれか1つの表示モードの指示を取得し、第1の表示モードが指示された場合、コンテンツの順序に基づいて、コンテンツに関係するコンテンツ関係情報を1つの階層で表示し、第2の表示モードが指示された場合、コンテンツの順序に基づいて、グループに関係するグループ関係情報を1つの階層で表示すると共に、グループに分類されているコンテンツに関係するコンテンツ関係情報を、コンテンツが属するグループのグループ関係情報に対応させて表示し、第3の表示モードが指示された場合、ツリー構造に基づく階層でグループ関係情報またはコンテンツ関係情報を表示するように表示を制御するするようにした場合には、処理能力または表示能力が異なっていても、表示装置やプログラムなどを変更することなく、コンテンツに関係する情報を表示することができる。
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
この記録媒体は、図2または図3に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク51若しくは磁気ディスク91(フレキシブルディスクを含む)、光ディスク52若しくは光ディスク92(CD-ROM(Compact Disc-Read Only Memory)、DVA(Digital Versatile Disc)を含む)、光磁気ディスク53若しくは光磁気ディスク93(MD(Mini-Disc)(商標)を含む)、若しくは半導体メモリ54若しくは半導体メモリ94などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM22またはROM72や、記録部28に含まれるハードディスク若しくは記憶部78に含まれる半導体メモリなどで構成される。
なお、上述した一連の処理を実行させるプログラムは、必要に応じてルータ、モデムなどのインタフェースを介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を介してコンピュータにインストールされるようにしてもよい。
また、本明細書において、記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
1 パーソナルコンピュータ, 2,3 ポータブルプレーヤ, 21 CPU, 22 ROM, 23 RAM, 26 入力部, 27 出力部, 28 記録部, 29 通信部, 51 磁気ディスク, 52 光ディスク, 53 光磁気ディスク, 54 半導体メモリ, 71 CPU, 72 ROM, 73 RAM, 76 入力部, 77 出力部, 78 記憶部, 79 通信部, 91 磁気ディスク, 92 光ディスク, 93 光磁気ディスク, 94 半導体メモリ, 101 ファイル管理プログラム, 111 表示制御プログラム, 112 管理情報設定プログラム, 113 再生プログラム, 114,114−1,114−2 コンテンツ情報ファイル, 115,115−1,115−2 グループ情報ファイル, 116,116−1,116−2 グループツリーデータファイル, 117,117−1乃至117−L コンテンツファイル