(57)【要約】【課題】フォルダ内のファイルのデータを指定して再生する。【解決手段】コンピュータ２１は、再生対象のフォルダが指定された場合、再生対象のフォルダを解析対象として、そのファイル番号を取得する。そして、再生対象として指定されたフォルダに含まれているファイルのうち、再生対象として指定されたファイルのファイル番号をメモリ２０のプログラムエリアに記憶する。コンピュータ２１は、このプログラムエリアに記憶されたファイル番号を取得し、このファイル番号に従って光ディスク１からファイルのデータを取得して再生する。【選択図】　図１
2004022109.tif 000002
【特許請求の範囲】
【請求項１】
階層順に連番でフォルダ番号が付与されているフォルダに属し、記録媒体に記録されているファイルデータを、前記フォルダから取り出して再生する再生装置において、
前記記録媒体から、前記フォルダのフォルダ番号とフォルダに属しているファイルの数とを含むフォルダ情報を取得するフォルダ情報取得手段と、
前記フォルダ情報取得手段が取得したフォルダ情報に基づいて、再生対象のフォルダに属しているファイルのファイル番号を取得するファイル番号取得手段と、
前記ファイル番号取得手段が取得したファイル番号に基づいて前記再生対象のフォルダに属しているファイルを指定し、前記記録媒体から指定したファイルのデータを取得して再生する再生手段と、を備えた、
ことを特徴とする再生装置。
【請求項２】
前記ファイル番号取得手段は、
再生対象のフォルダよりもフォルダ番号が小さいフォルダに属しているすべてのファイルのファイル数を、前記フォルダ情報取得手段が取得したフォルダ情報に基づいて取得する第１のファイル数取得手段と、
再生対象のフォルダよりもフォルダ番号が大きいフォルダが、前記再生対象のフォルダよりもフォルダ番号が小さいフォルダの下位の階層のフォルダか否かを、前記フォルダ情報に基づいて判別する判別手段と、
再生対象のフォルダよりもフォルダ番号が小さいフォルダの下位の階層のものであると、前記判別手段によって判別されたフォルダに属しているファイルのファイル数を、前記フォルダ情報に基づいて取得する第２のファイル数取得手段と、
前記第１のファイル数取得手段が取得したファイル数と前記第２のファイル数取得手段が取得したファイル数とを加算するファイル数加算手段と、を備え、
ファイル番号として、前記ファイル数加算手段が加算したファイル数に１を加えた値を、再生対象のフォルダの先頭のファイルに割り当て、順次、１を加算して先頭のファイルに続くファイルに割り当てて、再生対象のフォルダに属しているファイルのファイル番号を取得するように構成されたものである、
ことを特徴とする請求項１に記載の再生装置。
【請求項３】
前記判別手段は、再生対象のフォルダのフォルダ番号よりもフォルダ番号が大きいフォルダを判別対象のフォルダとして指定し、前記フォルダ情報に基づいて、判別対象のフォルダの上位の階層のフォルダであって、再生対象のフォルダよりもフォルダ番号が小さいフォルダのフォルダ番号を取得し、取得したフォルダ番号が、再生対象のフォルダと同じ階層のフォルダのフォルダ番号であって、再生対象のフォルダよりも小さいフォルダ番号である場合に、前記判別対象のフォルダが前記再生対象のフォルダよりもフォルダ番号が小さいフォルダの下位の階層のフォルダであると判別するように構成されたものである、
ことを特徴とする請求項２に記載の再生装置。
【請求項４】
前記フォルダに属しているファイルのうち、再生対象として指定されたファイルに割り当てられたファイル番号を記憶する記憶手段を備え、
前記再生手段は、前記記憶手段に記憶されたファイル番号に従って、再生対象のファイルのデータを記録媒体から取得して再生するように構成されたものである、
ことを特徴とする請求項１乃至３のいずれか１項に記載の再生装置。
【請求項５】
階層順に連番でフォルダ番号が付与されているフォルダに属し、記録媒体に記録されているファイルデータを、前記フォルダから取り出して再生する再生方法において、
前記記録媒体から、前記フォルダのフォルダ番号とフォルダに属しているファイルの数とを含むフォルダ情報を取得するステップと、
前記取得したフォルダ情報に基づいて、再生対象のフォルダに属しているファイルのファイル番号を取得するステップと、
前記取得したファイル番号に基づいて前記再生対象のフォルダに属しているファイルを指定し、前記記録媒体から指定したファイルのデータを取得して再生するステップと、を備えた、
ことを特徴とする再生方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、再生装置及び再生方法に関する。
【０００２】
【従来の技術】
ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｋ　Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）のような光ディスクには、楽曲データのようなファイルデータが圧縮されて記録されている。このような光ディスクでは、大量のデータが記録されるため、ファイルデータは、例えば、アルバムやアーティスト毎に区分けされ、フォルダに纏められて記録されている。
【０００３】
このフォルダは、階層順に連番で登録され、各フォルダには、フォルダ番号が付与されている。光ディスクには、各フォルダを指定するためのフォルダ情報として、パステーブルにパステーブル情報が記録されている。このパステーブル情報には、親フォルダのフォルダ番号とフォルダに属しているファイル数とが含まれている。
光ディスクに、このようなパステーブル情報が記録されているため、ファイルデータを、ファイル番号順に再生したり、ファイル毎にプログラム再生したりするだけでなく、ファイルデータをフォルダ単位で再生することもできる。
【０００４】
【発明が解決しようとする課題】
しかし、ファイルデータをフォルダ単位で再生することはできても、複数のフォルダにまたがってファイルデータを再生することは難しい。これは、光ディスクにおけるファイルの記録順を示すファイル番号がパステーブル情報に含まれていないためである。このため、複数のフォルダにまたがってファイルデータを再生しようとすると、ユーザは、再生対象のファイルデータを１つ１つ指定しなければならない。特に、フォルダに多くのファイルデータが含まれている場合には、再生対象のファイルデータをすべて選択しなければならず、プログラム作業に非常に手間がかかり、作業が繁雑となってしまう。
【０００５】
本発明は、このような従来の問題点に鑑みてなされたもので、フォルダ内のファイルのデータを指定して再生することが可能な再生装置及び再生方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
この目的を達成するため、本発明の第１の観点に係る再生装置は、
階層順に連番でフォルダ番号が付与されているフォルダに属し、記録媒体に記録されているファイルデータを、前記フォルダから取り出して再生する再生装置において、
前記記録媒体から、前記フォルダのフォルダ番号とフォルダに属しているファイルの数とを含むフォルダ情報を取得するフォルダ情報取得手段と、
前記フォルダ情報取得手段が取得したフォルダ情報に基づいて、再生対象のフォルダに属しているファイルのファイル番号を取得するファイル番号取得手段と、
前記ファイル番号取得手段が取得したファイル番号に基づいて前記再生対象のフォルダに属しているファイルを指定し、前記記録媒体から指定したファイルのデータを取得して再生する再生手段と、を備えたものである。
【０００７】
前記ファイル番号取得手段は、
再生対象のフォルダよりもフォルダ番号が小さいフォルダに属しているすべてのファイルのファイル数を、前記フォルダ情報取得手段が取得したフォルダ情報に基づいて取得する第１のファイル数取得手段と、
再生対象のフォルダよりもフォルダ番号が大きいフォルダが、前記再生対象のフォルダよりもフォルダ番号が小さいフォルダの下位の階層のフォルダか否かを、前記フォルダ情報に基づいて判別する判別手段と、
再生対象のフォルダよりもフォルダ番号が小さいフォルダの下位の階層のものであると、前記判別手段によって判別されたフォルダに属しているファイルのファイル数を、前記フォルダ情報に基づいて取得する第２のファイル数取得手段と、
前記第１のファイル数取得手段が取得したファイル数と前記第２のファイル数取得手段が取得したファイル数とを加算するファイル数加算手段と、を備え、
ファイル番号として、前記ファイル数加算手段が加算したファイル数に１を加えた値を、再生対象のフォルダの先頭のファイルに割り当て、順次、１を加算して先頭のファイルに続くファイルに割り当てて、再生対象のフォルダに属しているファイルのファイル番号を取得するように構成されたものであってもよい。
【０００８】
前記判別手段は、再生対象のフォルダのフォルダ番号よりもフォルダ番号が大きいフォルダを判別対象のフォルダとして指定し、前記フォルダ情報に基づいて、判別対象のフォルダの上位の階層のフォルダであって、再生対象のフォルダよりもフォルダ番号が小さいフォルダのフォルダ番号を取得し、取得したフォルダ番号が、再生対象のフォルダと同じ階層のフォルダのフォルダ番号であって、再生対象のフォルダよりも小さいフォルダ番号である場合に、前記判別対象のフォルダが前記再生対象のフォルダよりもフォルダ番号が小さいフォルダの下位の階層のフォルダであると判別するように構成されたものであってもよい。
【０００９】
前記再生装置は、前記フォルダに属しているファイルのうち、再生対象として指定されたファイルに割り当てられたファイル番号を記憶する記憶手段を備え、前記再生手段は、前記記憶手段に記憶されたファイル番号に従って、再生対象のファイルのデータを記録媒体から取得して再生するように構成されたものであってもよい。
【００１０】
本発明の第２の観点に係る再生方法は、
階層順に連番でフォルダ番号が付与されているフォルダに属し、記録媒体に記録されているファイルデータを、前記フォルダから取り出して再生する再生方法において、
前記記録媒体から、前記フォルダのフォルダ番号とフォルダに属しているファイルの数とを含むフォルダ情報を取得するステップと、
前記取得したフォルダ情報に基づいて、再生対象のフォルダに属しているファイルのファイル番号を取得するステップと、
前記取得したファイル番号に基づいて前記再生対象のフォルダに属しているファイルを指定し、前記記録媒体から指定したファイルのデータを取得して再生するステップと、を備えたものである。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態に係る再生装置を図面を参照して説明する。
尚、本発明の実施の形態では、再生装置を、ＣＤ−ＲＯＭ等の光ディスクに記録されたデータを再生する光ディスク装置として説明する。
【００１２】
本実施の形態に係る光ディスク装置の構成を図１に示す。
光ディスク装置は、スピンドルモータ１１と、光ピックアップ１２と、スレッドモータ１３と、サーボ回路１４と、ドライバ１５，１６と、ＲＦ（Ｒａｄｉｏ　Ｆｒｅｑｕｅｎｃｙ）マトリクスアンプ１７と、デコーダ１８と、ＴＯＣメモリ１９と、メモリ２０と、コンピュータ２１と、コントローラ２２と、を備えて構成されている。
【００１３】
光ディスク１は、例えば、ＣＤ−ＲＯＭのようなディスク状記録媒体である。光ディスク１には、図２に示すように、内周側から、リードイン領域と、ＰＶＤ（Ｐｒｉｍａｒｙ　Ｖｏｌｕｍｅ　Ｄｅｓｃｒｉｐｔｏｒ）領域と、パステーブルと、データ領域と、リードアウト領域と、が設けられている。
【００１４】
楽曲データ等のファイルデータは、データ領域に圧縮されて記録されている。リードイン領域は、データの読み出しを開始する領域であり、リードイン領域には、ＴＯＣ（Ｔａｂｌｅ　Ｏｆ　Ｃｏｎｔｅｎｔｓ）領域が設けられている。このＴＯＣ領域には、ファイル番号等が記録されている。このファイル番号を指定すると、このファイル番号に基づいてファイルデータのデータ領域における記録位置を特定することができる。
【００１５】
リードアウト領域は、データの読み出しを終了させるための領域である。ＰＶＤ領域は、ディスク（ボリューム）に関する情報として、ボリュームのサイズ、ボリュームの属性等が記録された領域である。パステーブルは、フォルダ情報としてのパステーブル情報が記録される領域である。パステーブル情報は、階層化されたフォルダの親フォルダとフォルダに属しているファイルの数とからなる。
【００１６】
スピンドルモータ１１は、光ディスク１を回転させるためのモータである。光ピックアップ１２は、光ディスク１に記録されたデータを読み出すためのものであり、発光素子（図示せず）と、アクチュエータ（図示せず）と、フォトディテクタ（図示せず）と、を備えている。
【００１７】
発光素子は、レーザダイオード等によって構成され、レーザ光を出射する。アクチュエータは、対物レンズを支持するとともに対物レンズの姿勢を調整する。フォトディテクタは、発光素子から出射されたレーザ光が光ディスク１にて反射した戻り光を検出し、検出した戻り光を、その強度に応じた信号レベルの電気信号に変換する。光ピックアップ１２は、この変換された電気信号の信号処理を行い、トラッキングエラー（ＴＥ）信号、フォーカスエラー（ＦＥ）信号、ＲＦ信号等を出力する。
【００１８】
スレッドモータ１３は、光ピックアップ１２を光ディスク１の半径方向に移送するためのモータである。
【００１９】
サーボ回路１４は、光ピックアップ１２から出力されたＴＥ、ＦＥ信号に基づいて、それぞれの信号の信号レベルを０に近づけるようなトラッキング制御信号、フォーカス制御信号を生成する。また、サーボ回路１４は、ＲＦ信号の周波数が適正な値となるように、スピンドルモータ１１の回転を制御するための回転制御信号を生成する。
【００２０】
ドライバ１５は、サーボ回路１４が生成したスレッド制御信号の信号レベルに基づいて設定された電圧レベルの制御電圧を、スレッドモータ１３に印加し、これによりスレッドモータ１３を制御する。
【００２１】
ドライバ１６は、サーボ回路１４が生成した回転制御信号に基づいてスピンドルモータ１１の回転を制御する。
【００２２】
ＲＦマトリクスアンプ１７は、サーボ回路１４が生成したトラッキング制御信号、フォーカス制御信号を増幅して光ピックアップ１２内のアクチュエータを介して対物レンズの姿勢を制御する。また、ＲＦマトリクスアンプ１７は、曲データの絶対（経過）時間、曲毎の経過時間及び曲番号を示す情報を取得する。
【００２３】
デコーダ１８は、楽曲データをデコードして再生するものである。
ＴＯＣメモリ１９は、光ディスク１のＴＯＣ領域から読み出したファイル番号等を記憶するためのメモリであり、ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）のような半導体等で構成されている。
【００２４】
メモリ２０は、光ディスク１から読み出したパステーブル情報を記憶したり、コンピュータ２１が種々の処理を実行するために必要なデータを記憶したりするためのものであり、ＤＲＡＭ（Ｄｙｎａｍｉｃ　Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）等で構成されている。また、メモリ２０には、プログラム再生するためのプログラム番号と、プログラム再生する開始ファイルと終了ファイルとのファイル番号と、を記憶するためのメモリエリアが設けられている。
【００２５】
コンピュータ２１は、ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）等を備え、サーボ回路１４と、ＲＦマトリクスアンプ１７と、を制御し、ＴＯＣメモリ１９、メモリ２０に、データを記憶する。
【００２６】
尚、ファイルデータを再生する場合、ファイルデータをファイル単位で再生したり、フォルダ単位で再生したりすることができる。
【００２７】
ファイルデータをファイル単位で再生する場合、コンピュータ２１は、ＴＯＣメモリ１９に記憶されているファイル番号に基づいてファイルデータの光ディスク１における記録位置を特定する。
【００２８】
一方、ファイルデータをフォルダ単位で再生する場合、コンピュータ２１は、パステーブルに記録されているパステーブル情報に基づいてフォルダの記録位置を特定する。
【００２９】
また、再生対象のフォルダを複数指定して、ファイルデータを複数のフォルダにまたがって再生する場合、コンピュータ２１は、パステーブルに記録されているパステーブル情報を読み出し、このパステーブル情報を解析して、この解析結果に基づいて、再生対象のデータのファイル番号を取得する。そして、コンピュータ２１は、取得したファイル番号をメモリ２０に設けられたメモリエリアにファイル番号を記憶する。
【００３０】
コントローラ２２は、光ディスク装置全体を制御する。また、コントローラ２２は、デコーダ１８がデコードした楽曲データを、デジタル−アナログ変換した後、スピーカ（図示せず）に出力する。
【００３１】
次に本実施の形態に係る光ディスク装置の動作を説明する。
光ディスク１がターンテーブル（図示せず）にセットされると、コンピュータ２１は、サーボをオフし、ドライバ１６を介してスピンドルモータ１１を回転させる。
【００３２】
コンピュータ２１は、スレッドモータ１３を介して、光ピックアップ１２を初期位置（光ディスク１の最内周）へ移動させてサーボをオンする。
【００３３】
光ピックアップ１２に備えられている発光素子は、光ディスク１に光ビームを照射し、フォトディテクタは、発光素子から出射されたレーザ光が光ディスク１にて反射した戻り光を検出し、検出した戻り光を、その強度に応じた信号レベルの電気信号に変換する。そして、光ピックアップ１２は、この変換された電気信号に基づいて生成されたＴＥ、ＦＥ、ＲＦ信号を出力する。
【００３４】
サーボがオンすると、サーボ回路１４は、光ピックアップ１２から出力されたＴＥ信号、ＦＥ信号に基づいてトラッキング制御信号、フォーカス制御信号を生成し、生成したトラッキング制御信号、フォーカス制御信号をＲＦマトリクスアンプ１７に出力する。
【００３５】
ＲＦマトリクスアンプ１７は、サーボ回路１４から出力されたトラッキング制御信号、フォーカス制御信号に基づいて、光ピックアップ１２内のアクチュエータを介して対物レンズの姿勢を制御する。これによりトラッキング制御とフォーカス制御とが行われる。
【００３６】
また、サーボ回路１４は、光ピックアップ１２から出力されたＲＦ信号に基づいて生成した回転制御信号をドライバ１６に供給する。ドライバ１６は供給された回転制御信号に基づいてスピンドルモータ１１を制御し、スピンドルモータ１１は光ディスク１の各トラックの線速度が一定になるように光ディスク１を回転させる。
【００３７】
また、サーボ回路１４は、ＴＥ信号に基づいてスレッド制御信号を生成する。ドライバ１５は、スレッド制御信号に基づいてスレッドモータ１３を制御し、スレッドモータ１３は、光ディスク１の半径方向に、データの読み出し位置まで光ピックアップ１２を移送する。
【００３８】
光ピックアップ１２は光ディスク１のＴＯＣ領域に記録されているファイル番号等を読み出し、コンピュータ２１は、光ピックアップ１２が読み出したファイル番号等をＴＯＣメモリ１９に記憶する。
【００３９】
ファイルデータをファイル単位で再生する場合、コンピュータ２１は、ＴＯＣメモリ１９からファイル番号を取得し、取得したファイル番号に基づいてファイルデータを光ディスク１から取り出す。
【００４０】
コンピュータ２１が光ディスク１からファイルデータを取り出すと、デコーダ１８は、光ディスク１から取り出したファイルデータをデコードし、コントローラ２２は、デコーダ１８がデコードしたファイルデータをデジタル−アナログ変換した後、スピーカに出力する。
【００４１】
一方、フォルダを指定してフォルダ単位でファイルデータを再生することができる。各ファイルデータは、例えば、アルバム、あるいはアーティスト毎に区分けされ、フォルダに纏められている。各フォルダは分類され、例えば、図３に示すように階層化されている。
【００４２】
図３に示すように、各フォルダは、階層順に連番でフォルダ番号Ａ〜Ｈが付与されている。この例では、Ｆｏｌｄｅｒ＿Ａが最初のフォルダであって、Ｆｏｌｄｅｒ＿Ａから順に並んでＦｏｌｄｅｒ＿Ｈが最後のフォルダとなる。第１階層のフォルダはＦｏｌｄｅｒ＿Ａ，Ｆｏｌｄｅｒ＿Ｂ，Ｆｏｌｄｅｒ＿Ｃであり、第２階層のフォルダはＦｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅ，Ｆｏｌｄｅｒ＿Ｆ，Ｆｏｌｄｅｒ＿Ｇ，Ｆｏｌｄｅｒ＿Ｈである。
【００４３】
このような情報は、図４に示すようなパステーブル情報として、光ディスク１のパステーブルに記録されている。図４に示すパステーブル情報は、そのフォルダの親フォルダのフォルダ名（又はフォルダ番号）と、そのフォルダに含まれているファイルのファイル数と、からなる。
【００４４】
例えば、Ｆｏｌｄｅｒ＿Ａにおいて、親フォルダはＲ００Ｔ（￥）であって、Ｆｏｌｄｅｒ＿Ａには、Ａ−１〜Ａ−８の８曲のファイルが属している。このように、パステーブル情報からは、このような情報が得られる。
【００４５】
しかし、パステーブル情報には、フォルダに属しているファイルのファイル番号は含まれていない。このため、コンピュータ２１は、読み出したパステーブル情報に基づいて、フォルダに属しているファイルデータを再生することはできても、複数のフォルダにまたがってファイルデータを再生することはできない。
【００４６】
従って、複数のフォルダにまたがってファイルデータを再生する場合、コンピュータ２１は、パステーブル情報を解析し、解析結果に基づいて、各フォルダに属しているファイルのファイル番号を取得する。その解析処理を図５及び図６のフローチャートに基づいて説明する。
【００４７】
まず、コンピュータ２１は、光ディスク１のパステーブルからパステーブル情報を読み出し、この情報に基づいてフォルダのフォルダ番号を階層毎に区分けし、フォルダ番号とその親フォルダのフォルダ番号とをメモリ２０に記憶する（ステップＳ１１）。
【００４８】
コンピュータ２１は、最大フォルダ番号をメモリ２０に記憶する（ステップＳ１２）。
コンピュータ２１は、再生対象のフォルダを解析対象のフォルダとして、そのフォルダ番号と親フォルダのフォルダ番号とをメモリ２０に記憶する（ステップＳ１３）。
【００４９】
コンピュータ２１は、メモリ２０に記憶している情報に基づいて再生対象のフォルダの階層を判別し、この階層のフォルダであって、解析対象のフォルダよりもフォルダ番号が小さいフォルダを判別する。そして、コンピュータ２１は、解析対象のフォルダよりもフォルダ番号が小さいすべてのフォルダに属しているファイルの数を加算する。（ステップＳ１４）。
【００５０】
コンピュータ２１は、加算した値を総ファイル数としてメモリ２０に記憶する（ステップＳ１５）。
コンピュータ２１は、１つ上の階層を指定する（ステップＳ１６）。
【００５１】
コンピュータ２１は、この階層における解析対象の上位のフォルダ（親フォルダ）と同じ階層のフォルダであって、フォルダ番号が小さいすべてのフォルダに属するファイルの数と、メモリ２０に記憶している総ファイル数と、を加算する（ステップＳ１７）。
コンピュータ２１は、加算した値を総ファイル数としてメモリ２０に記憶する（ステップＳ１８）。
【００５２】
コンピュータ２１は、現階層がルートか否かを判定する（ステップＳ１９）。現階層がルートではないと判定した場合（ステップＳ１９においてＮｏ）、コンピュータ２１は、さらに上の階層を指定し（ステップＳ１６）、ステップＳ１７、Ｓ１８の処理を実行する。
【００５３】
階層が順次、上へと上がり、現階層がルートと判定した場合（ステップＳ１９においてＹｅｓ）、コンピュータ２１は、解析対象のフォルダより前のすべてのフォルダの総ファイル数を算出したと判定する。
【００５４】
このように判定すると、コンピュータ２１は、次に、解析対象のフォルダと同じ階層のフォルダであって、解析対象のフォルダよりもフォルダ番号が小さいフォルダの下位に、フォルダがあるか否かを判別する。このため、コンピュータ２１は、フォルダ番号が解析対象のフォルダの次のフォルダを判別対象のフォルダとして指定し、そのフォルダ番号をメモリ２０に記憶する（ステップＳ２０）。
【００５５】
コンピュータ２１は、判別対象のフォルダの上位（直上）のフォルダのフォルダ番号をメモリ２０から読み出す（ステップＳ２１）。
コンピュータ２１は、メモリ２０から読み出したフォルダ番号が解析対象のフォルダのフォルダ番号よりも小さいか否かを判定する（ステップＳ２２）。
【００５６】
判別対象のフォルダの上位フォルダのフォルダ番号が再生対象のフォルダのフォルダ番号よりも大きいと判定した場合（ステップＳ２２においてＮｏ）、コンピュータ２１は、さらに、その上位フォルダのフォルダ番号をメモリ２０から読み出す（ステップＳ２１）。
【００５７】
そして、メモリ２０から読み出したフォルダ番号が再生対象のフォルダのフォルダ番号よりも小さいと判定した場合（ステップＳ２２においてＹｅｓ）、コンピュータ２１は、メモリ２０から読み出したフォルダ番号（フォルダ番号Ｘとする。）と、解析対象のフォルダと同じ階層のフォルダであって、解析対象のフォルダよりも前のフォルダのフォルダ番号（フォルダ番号Ｙ１〜Ｙｎとする。）と、を比較する（ステップＳ２３）。
【００５８】
コンピュータ２１は、比較の結果、フォルダ番号Ｘが、フォルダ番号Ｙ１〜Ｙｎの範囲内のものであるか否かを判定する（ステップＳ２４）。
【００５９】
フォルダ番号Ｘが、フォルダ番号Ｙ１〜Ｙｎの範囲内のものではない場合（ステップＳ２４においてＮｏ）、コンピュータ２１は、判別対象のフォルダが解析対象のフォルダよりも前のフォルダの下位のフォルダではないと判定する。この場合、コンピュータ２１は、ステップＳ２８に進む。
【００６０】
一方、比較の結果、フォルダ番号Ｘが、フォルダ番号Ｙ１〜Ｙｎの範囲内のものであれば（ステップＳ２４においてＹｅｓ）、コンピュータ２１は、判別対象のフォルダは解析対象のフォルダよりも前のフォルダの下位にあると判定する。この場合、コンピュータ２１は、メモリ２０から総ファイル数を読み出す（ステップＳ２５）。
【００６１】
コンピュータ２１は、判別対象として指定したフォルダに属するファイルの数と総ファイル数とを加算する（ステップＳ２６）。
コンピュータ２１は、加算した値を新たな総ファイル数として、この総ファイル数をメモリ２０に記憶する（ステップＳ２７）。
【００６２】
次に、コンピュータ２１は、判別対象のフォルダのフォルダ番号が最大フォルダ番号か否かを判定する（ステップＳ２８）。
判別対象のフォルダのフォルダ番号が最大フォルダ番号ではないと判定した場合（ステップＳ２８においてＮｏ）、コンピュータ２１は、次のフォルダを判定対象として指定し、そのフォルダ番号をメモリ２０に記憶する（ステップＳ２９）。
そして、コンピュータ２１は、ステップＳ２１〜Ｓ２７の処理を実行する。
【００６３】
一方、判別対象のフォルダのフォルダ番号が最大フォルダ番号と判定した場合（ステップＳ２８においてＹｅｓ）、コンピュータ２１は、メモリ２０に記憶した総ファイル数に基づいて解析対象のフォルダに属するファイルにファイル番号を割り当てる（ステップＳ３０）。
【００６４】
即ち、コンピュータ２１は、メモリ２０に記憶した総ファイル数に１を加算した値を、解析対象のフォルダに属しているファイルの先頭のファイルのファイル番号とする。また、コンピュータ２１は、総ファイル数に、解析対象のフォルダに属しているファイルの数を加算した値を、解析対象のフォルダに属しているファイルの末尾のファイルのファイル番号とする。このようにファイル番号を割り当てると、コンピュータ２１は、この処理を終了させる。
【００６５】
次に、コンピュータ２１が実行するこの解析処理を、さらに具体的に説明する。まず、この解析処理を図７を用いて説明する。この図７は、フォルダが図３に示すように階層化されている場合を示す。
【００６６】
図３及び図７に示すように、フォルダはＦｏｌｄｅｒ＿Ａ〜Ｆｏｌｄｅｒ＿Ｈまでの８フォルダである。Ｆｏｌｄｅｒ＿Ａのフォルダ番号Ａが最小フォルダ番号となり、Ｆｏｌｄｅｒ＿Ｈのフォルダ番号Ｈが最大フォルダ番号となる。尚、再生対象としてＦｏｌｄｅｒ＿Ｆが指定されたものとし、このＦｏｌｄｅｒ＿Ｆを解析対象のフォルダとする。
【００６７】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｈのフォルダ番号Ｈを最大フォルダ番号としてメモリ２０に記憶する（ステップＳ１２の処理）。
コンピュータ２１は、再生対象のＦｏｌｄｅｒ＿Ｆのフォルダ番号Ｆとその親フォルダ（Ｆｏｌｄｅｒ＿Ｂ）のフォルダ番号Ｂとをメモリ２０に記憶する（ステップＳ１３の処理）。
【００６８】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆと同じ第２階層のフォルダであって、Ｆｏｌｄｅｒ＿Ｆより前のすべてのフォルダに属するファイルの数を加算する（ステップＳ１４の処理）。第２階層には、Ｆｏｌｄｅｒ＿Ｄ〜Ｆｏｌｄｅｒ＿Ｈがある。第２階層において、Ｆｏｌｄｅｒ＿Ｆよりもフォルダ番号が小さいフォルダは、Ｆｏｌｄｅｒ＿ＤとＦｏｌｄｅｒ＿Ｅとである。コンピュータ２１は、Ｆｏｌｄｅｒ＿ＤとＦｏｌｄｅｒ＿Ｅとに属するファイルの数を加算する。加算すると、総ファイル数は、１９になる。コンピュータ２１は、総ファイル数１９をメモリ２０に記憶する（ステップＳ１５の処理）。
【００６９】
次に、コンピュータ２１は、第２階層の上の階層を指定する（ステップＳ１６の処理）。第２階層の上の階層は第１階層である。第１階層において、フォルダ番号がＦｏｌｄｅｒ＿Ｂのフォルダ番号Ｂ以下のフォルダは、Ｆｏｌｄｅｒ＿ＡとＦｏｌｄｅｒ＿Ｂとである。また、Ｆｏｌｄｅｒ＿Ａ，Ｆｏｌｄｅｒ＿Ｂに属しているファイルの数は、ともに８である。コンピュータ２１は、Ｆｏｌｄｅｒ＿ＢとＦｏｌｄｅｒ＿Ａとに属しているすべてのファイルの数１６とメモリ２０に記憶した総ファイル数１９とを加算する（ステップＳ１７の処理）。加算した結果、総ファイル数は３５となる。コンピュータ２１は、加算したファイル数３５をメモリ２０に記憶する（ステップＳ１８の処理）。
【００７０】
コンピュータ２１は、さらに、第１階層の上の階層を指定する（ステップＳ１６の処理）。第１階層の上の階層はルートであり、ルートには、ファイルはない。階層がルートになると、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆよりもフォルダ番号が小さいフォルダ、即ち、ルートからＦｏｌｄｅｒ＿Ｅまでフォルダに属するファイルの総ファイル数を算出できたと判定する。
【００７１】
このように判定すると、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆと同じ階層であって、Ｆｏｌｄｅｒ＿Ｆよりもフォルダ番号が小さいＦｏｌｄｅｒ＿ＤとＦｏｌｄｅｒ＿Ｅの下位にフォルダがあるか否かを調べる。このため、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆの次のＦｏｌｄｅｒ＿Ｇを判別対象のフォルダとして指定し、Ｆｏｌｄｅｒ＿Ｇのフォルダ番号をメモリ２０に記憶する（ステップＳ２０の処理）。
【００７２】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｇの親フォルダを読み出す（ステップＳ２１の処理）。
Ｆｏｌｄｅｒ＿Ｇの親フォルダはＦｏｌｄｅｒ＿Ｃである。Ｆｏｌｄｅｒ＿Ｃのフォルダ番号は、Ｆｏｌｄｅｒ＿Ｆのフォルダ番号よりも小さい。
フォルダ番号Ｃがフォルダ番号Ｆよりも小さいと、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｃのフォルダ番号ＣとＦｏｌｄｅｒ＿Ｄのフォルダ番号ＤとＦｏｌｄｅｒ＿Ｅのフォルダ番号Ｅとを比較する（ステップＳ２３の処理）。比較すると、フォルダ番号Ｃは、フォルダ番号Ｄとフォルダ番号Ｅとの間の番号ではない。
従って、Ｆｏｌｄｅｒ＿ＧはＦｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅの下位のフォルダではないことが判別される（ステップＳ２４においてＮｏ）。
【００７３】
コンピュータ２１は、このように判別すると、Ｆｏｌｄｅｒ＿Ｇの次のＦｏｌｄｅｒ＿Ｈを判別対象のフォルダとして指定し、Ｆｏｌｄｅｒ＿Ｈのフォルダ番号Ｈをメモリ２０に記憶する（ステップＳ２９の処理）。
【００７４】
このＦｏｌｄｅｒ＿Ｈの親フォルダは、Ｆｏｌｄｅｒ＿Ｃである。従って、Ｆｏｌｄｅｒ＿ＨもＦｏｌｄｅｒ＿Ｇと同様に、Ｆｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅの下位のフォルダではないことが判別される。また、このＦｏｌｄｅｒ＿Ｈのフォルダ番号Ｈは、最大フォルダ番号である。従って、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆよりも前、即ち、ルートからＦｏｌｄｅｒ＿Ｅまでのすべてのフォルダについて、総ファイル数を算出したと判定する（ステップＳ２８の処理）。
【００７５】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆに属しているファイルにファイル番号を割り当てる（ステップＳ３０の処理）。
メモリ２０に記憶した総フォルダ数は、３５であり、総フォルダ数３５に１を加算した値０３６がＦｏｌｄｅｒ＿Ｆに属する先頭のファイルのファイル番号となり、総フォルダ数３５にＦｏｌｄｅｒ＿Ｆに属しているファイルの数４を加算した値は、０３９となり、この０３９がＦｏｌｄｅｒ＿Ｆに属している末尾のファイルのファイル番号となる。従って、Ｆｏｌｄｅｒ＿Ｆに属しているファイル番号として０３６から４曲分、即ち、０３６〜０３９が割り当てられる。
【００７６】
尚、すべてのファイルのファイル番号を取得すると、解析結果は図８に示すようになる。コンピュータ２１は、この解析結果を図９に示すような形式でメモリ２０に記憶する。
【００７７】
次に、フォルダが図１０に示すように階層化されている場合の解析処理を図１１に基づいて説明する。
図１０及び図１１に示すように、ルートの下位に位置するフォルダは、Ｆｏｌｄｅｒ＿Ａ〜Ｆｏｌｄｅｒ＿Ｌまでの１２フォルダであり、Ｆｏｌｄｅｒ＿Ａのフォルダ番号が最小フォルダ番号となり、Ｆｏｌｄｅｒ＿Ｌのフォルダ番号が最大フォルダ番号となる。この例においても、再生対象のフォルダはＦｏｌｄｅｒ＿Ｆであって、このＦｏｌｄｅｒ＿Ｆを解析対象とする。
【００７８】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｌのフォルダ番号Ｌを最大フォルダ番号としてメモリ２０に記憶する（ステップＳ１２の処理）。
コンピュータ２１は、再生対象のＦｏｌｄｅｒ＿Ｆのフォルダ番号Ｆとその親フォルダ（Ｆｏｌｄｅｒ＿Ｂ）のフォルダ番号Ｂとをメモリ２０に記憶する（ステップＳ１３の処理）。
【００７９】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆと同じ第２階層のフォルダであって、Ｆｏｌｄｅｒ＿Ｆより前のすべてのフォルダに属するファイルの数を加算する（ステップＳ１４の処理）。第２階層には、Ｆｏｌｄｅｒ＿Ｄ〜Ｆｏｌｄｅｒ＿Ｉがある。第２階層において、Ｆｏｌｄｅｒ＿Ｆよりもフォルダ番号が小さくて前にあるフォルダは、Ｆｏｌｄｅｒ＿ＤとＦｏｌｄｅｒ＿Ｅとである。
【００８０】
Ｆｏｌｄｅｒ＿ＤとＦｏｌｄｅｒ＿Ｅとに属するファイル数は、それぞれ、９，７であり、コンピュータ２１は、ファイル数９と７とを加算する。加算すると、総ファイル数は１６になる。コンピュータ２１は、総ファイル数１６をメモリ２０に記憶する（ステップＳ１５の処理）。
【００８１】
次に、コンピュータ２１は、第２階層の上の階層を指定する（ステップＳ１６の処理）。第２階層の上の階層は第１階層である。
第１階層において、フォルダ番号がＦｏｌｄｅｒ＿Ｂのフォルダ番号以下のフォルダは、Ｆｏｌｄｅｒ＿ＡとＦｏｌｄｅｒ＿Ｂとである。また、Ｆｏｌｄｅｒ＿Ａ，Ｆｏｌｄｅｒ＿Ｂに属しているファイルの数は、ともに８である。コンピュータ２１は、Ｆｏｌｄｅｒ＿ＢとＦｏｌｄｅｒ＿Ａとに属しているすべてのファイルの数１６とメモリ２０に記憶した総ファイル数１６とを加算する（ステップＳ１７の処理）。加算した結果、総ファイル数は３２となる。コンピュータ２１は、総ファイル数３２をメモリ２０に記憶する（ステップＳ１８の処理）。
【００８２】
コンピュータ２１は、さらに、第１階層の上の階層を指定する（ステップＳ１６の処理）。第１階層の上の階層はルートである。ルートフォルダには、５つのファイルが属している。従って、コンピュータ２１は、この５つのファイル数と、メモリ２０に記憶した総ファイル数３２とを加算する（ステップＳ１７の処理）。加算した結果、総ファイル数は３７となる。コンピュータ２１は、総ファイル数３７をメモリ２０に記憶する（ステップＳ１８の処理）。
【００８３】
階層がルートになると、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆよりもフォルダ番号が小さいすべてのフォルダ、即ち、ルートからＦｏｌｄｅｒ＿Ｅまでの総ファイル数を算出できたと判定する。
このように判定すると、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆと同じ階層であって、Ｆｏｌｄｅｒ＿Ｆよりもフォルダ番号が小さいＦｏｌｄｅｒ＿ＤとＦｏｌｄｅｒ＿Ｅとの下位にフォルダがあるか否かを判別する。このため、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｆの次のＦｏｌｄｅｒ＿Ｇを判別対象のフォルダとして指定し、Ｆｏｌｄｅｒ＿Ｇのフォルダ番号をメモリ２０に記憶する（ステップＳ２０の処理）。
【００８４】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｇの親フォルダを読み出す（ステップＳ２１の処理）。
Ｆｏｌｄｅｒ＿Ｇの親フォルダはＦｏｌｄｅｒ＿Ｂである。Ｆｏｌｄｅｒ＿Ｂのフォルダ番号Ｂは、Ｆｏｌｄｅｒ＿Ｆのフォルダ番号Ｆよりも小さい。
フォルダ番号Ｂがフォルダ番号Ｆよりも小さいと、コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｂのフォルダ番号ＢとＦｏｌｄｅｒ＿Ｄのフォルダ番号ＤとＦｏｌｄｅｒ＿Ｅのフォルダ番号Ｅとを比較する（ステップＳ２３の処理）。比較すると、フォルダ番号Ｂは、フォルダ番号Ｄとフォルダ番号Ｅとの間の番号ではない。
従って、Ｆｏｌｄｅｒ＿ＧはＦｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅの下位のフォルダではないことが判別される（ステップＳ２４においてＮｏ）。
【００８５】
コンピュータ２１は、このように判別すると、Ｆｏｌｄｅｒ＿Ｇの次のＦｏｌｄｅｒ＿Ｈを判別対象のフォルダとして指定し、このＦｏｌｄｅｒ＿Ｈのフォルダ番号Ｈをメモリ２０に記憶する（ステップＳ２９の処理）。
【００８６】
このＦｏｌｄｅｒ＿Ｈの親フォルダは、Ｆｏｌｄｅｒ＿Ｃである。Ｆｏｌｄｅｒ＿Ｃのフォルダ番号Ｃは、フォルダ番号Ｆよりも小さい。しかし、フォルダ番号Ｃは、フォルダ番号Ｄとフォルダ番号Ｅとの間の番号ではない。従って、Ｆｏｌｄｅｒ＿Ｈは、Ｆｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅの下位のフォルダではないことが判別される（ステップＳ２４においてＮｏ）。
【００８７】
コンピュータ２１は、このように判別すると、Ｆｏｌｄｅｒ＿Ｈの次のＦｏｌｄｅｒ＿Ｉを判別対象のフォルダとして指定し、このＦｏｌｄｅｒ＿Ｉのフォルダ番号Ｉをメモリ２０に記憶する（ステップＳ２９の処理）。
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｉの親フォルダのフォルダ番号を読み出す（ステップＳ２１の処理）。
【００８８】
Ｆｏｌｄｅｒ＿Ｉの親フォルダは、Ｆｏｌｄｅｒ＿Ｃであり、Ｆｏｌｄｅｒ＿Ｈの親フォルダでもある。従って、Ｆｏｌｄｅｒ＿ＩもＦｏｌｄｅｒ＿Ｈと同様に、Ｆｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅの下位のフォルダではないことが判別される（ステップＳ２４においてＮｏ）。
【００８９】
コンピュータ２１は、このように判別すると、Ｆｏｌｄｅｒ＿Ｉの次のＦｏｌｄｅｒ＿Ｊを検索対象として指定し、このＦｏｌｄｅｒ＿Ｊのフォルダ番号Ｊをメモリ２０に記憶する（ステップＳ２９の処理）。
【００９０】
Ｆｏｌｄｅｒ＿Ｊの親フォルダは、Ｆｏｌｄｅｒ＿Ｄである。Ｆｏｌｄｅｒ＿Ｄのフォルダ番号Ｄは、Ｆｏｌｄｅｒ＿Ｆのフォルダ番号Ｆよりも小さく、かつ、フォルダ番号Ｄとフォルダ番号Ｅとの間の番号である。従って、コンピュータ２１は、Ｆｏｌｄｅｒ＿ＪがＦｏｌｄｅｒ＿Ｄの下位のフォルダであると判別し（ステップＳ２４においてＹｅｓ）、総ファイル数３７をメモリ２０から読み出す（ステップＳ２５の処理）。コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｊのファイル数５と、総ファイル数３７とを加算する（ステップＳ２６の処理）。加算の結果、総ファイル数は４２となる。
コンピュータ２１は、総ファイル数４２をメモリ２０に記憶する（ステップＳ２７の処理）。
【００９１】
次に、Ｆｏｌｄｅｒ＿Ｊの次のＦｏｌｄｅｒ＿Ｋを判別対象のフォルダとして指定して、そのフォルダ番号Ｋをメモリ２０に記憶する（ステップＳ２９の処理）。
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｋの親フォルダとして、Ｆｏｌｄｅｒ＿Ｇのフォルダ番号Ｇをメモリ２０から読み出す（ステップＳ２１の処理）。
【００９２】
フォルダ番号Ｇは、Ｆｏｌｄｅｒ＿Ｆのフォルダ番号Ｆよりも大きい。このため、コンピュータ２１は、さらに、Ｆｏｌｄｅｒ＿Ｇの親フォルダとして、Ｆｏｌｄｅｒ＿Ｂのフォルダ番号Ｂを読み出す（ステップＳ２１の処理）。
【００９３】
フォルダ番号Ｂは、フォルダ番号Ｆよりも小さく、フォルダ番号Ｄとフォルダ番号Ｅとの間の番号ではない。
従って、Ｆｏｌｄｅｒ＿Ｋは、Ｆｏｌｄｅｒ＿Ｄ，Ｆｏｌｄｅｒ＿Ｅの下位のフォルダではないことが判別される（ステップＳ２４においてＮｏ）。
【００９４】
コンピュータ２１は、このように判別すると、Ｆｏｌｄｅｒ＿Ｋの次のＦｏｌｄｅｒ＿Ｌを検索対象として指定し、このＦｏｌｄｅｒ＿Ｌのフォルダ番号をメモリ２０に記憶する（ステップＳ２９の処理）。
【００９５】
コンピュータ２１は、Ｆｏｌｄｅｒ＿Ｌの親フォルダとして、Ｆｏｌｄｅｒ＿Ｊのフォルダ番号Ｊをメモリ２０から読み出す（ステップＳ２１の処理）。
フォルダ番号Ｊは、フォルダ番号Ｆよりも大きい。コンピュータ２１は、さらに、Ｆｏｌｄｅｒ＿Ｊの親フォルダとしてＦｏｌｄｅｒ＿Ｄのフォルダ番号Ｄをメモリ２０から読み出す（ステップＳ２１の処理）。
【００９６】
フォルダ番号Ｄは、フォルダ番号Ｆよりも小さく、かつ、フォルダ番号Ｄとフォルダ番号Ｅとの間の番号になる。従って、コンピュータ２１は、Ｆｏｌｄｅｒ＿ＬがＦｏｌｄｅｒ＿Ｄに属していると判別し（ステップＳ２４においてＹｅｓ）、コンピュータ２１は、総ファイル数４２をメモリ２０から読み出す（ステップＳ２５の処理）。コンピュータ２１は、ファイル数２と総ファイル数４２とを加算する（ステップＳ２６の処理）。
【００９７】
フォルダ番号Ｌは、最大フォルダ番号である。従って、コンピュータ２１は、ルートからＦｏｌｄｅｒ＿Ｅまでのすべてのフォルダについて、その下位のフォルダも含めて総ファイル数を算出できたと判定し（ステップＳ２８の処理）、Ｆｏｌｄｅｒ＿Ｆに属しているファイルに、ファイル番号として０４５から９曲分、即ち、０４５〜０５３を割り当てる（ステップＳ３０の処理）。
【００９８】
このように処理すると、コンピュータ２１は、解析対象フォルダに属しているファイルのファイル番号を取得することができる。
【００９９】
また、ファイルデータを複数のフォルダにまたがって再生する場合、コンピュータ２１は、再生対象のフォルダのファイルにプログラム番号に割り当てる。
【０１００】
この処理を図１２のフローチャートに基づいて説明する。
コンピュータ２１は、プログラム番号に初期値をセットする（ステップＳ３１）。
【０１０１】
コンピュータ２１は、再生対象のファイルのファイル番号を、メモリ２０のプログラムエリアに記憶する（ステップＳ３２）。
【０１０２】
コンピュータ２１は、プログラム番号をインクリメントする（ステップＳ３３）。
コンピュータ２１は、再生対象としてプログラムするファイルがあるか否かを判定する（ステップＳ３４）。
【０１０３】
プログラムするファイルがあると判定した場合（ステップＳ３４においてＹｅｓ）、コンピュータ２１は、ステップＳ３２、Ｓ３３の処理を実行する。
プログラムするファイルがないと判定した場合（ステップＳ３４においてＮｏ）、コンピュータ２１は、この処理を終了させる。
【０１０４】
このプログラム再生の処理内容を、さらに具体的に説明する。
図８に示す解析結果に基づいて、再生対象のファイルとして、Ｆｏｌｄｅｒ＿０２とＦｏｌｄｅｒ＿０４とに属するすべてのファイルと、ファイル番号「０２２」のファイルと、ファイル番号「０２５」のファイルと、が指定された場合、コンピュータ２１は、図１３に示すように、プログラム番号に初期値「１」をセットする。このプログラム番号をＰ−０１とする。
【０１０５】
コンピュータ２１は、メモリ２０から、Ｆｏｌｄｅｒ＿０２の先頭のファイルのファイル番号「００９」と、末尾のファイルのファイル番号「０１８」と、を読み出す。そして、コンピュータ２１は、読み出した「００９」、「０１８」を、それぞれ、メモリ２０のＰ−０１の開始ファイル、終了ファイルのエリアに記憶する。
【０１０６】
Ｆｏｌｄｅｒ＿０２に属するファイルのファイル番号を記憶すると、コンピュータ２１は、Ｐ番号をインクリメントして「２」とし、メモリ２０から、Ｆｏｌｄｅｒ＿０４の先頭のファイルのファイル番号「０２７」と、末尾のファイルのファイル番号「０３５」と、を読み出す。コンピュータ２１は、読み出したファイル番号「０２７」、「０３５」を、それぞれ、メモリ２０のＰ−０２の開始ファイル、終了ファイルのエリアに記憶する。
【０１０７】
Ｆｏｌｄｅｒ＿０２に属するファイルのファイル番号を記憶すると、コンピュータ２１は、プログラム番号をＰ−０３にして、ファイル番号「０２２」をメモリ２０から読み出す。コンピュータ２１は、メモリ２０のＰ−０３の開始ファイル、終了ファイルのエリアに、それぞれ、ファイル番号「０２２」を記憶する。
【０１０８】
ファイル番号「０２２」をメモリ２０に記憶すると、コンピュータ２１は、プログラム番号をＰ−０４にして、ファイル番号「０２５」をメモリ２０から読み出す。コンピュータ２１は、メモリ２０のＰ−０４の開始ファイル、終了ファイルのエリアに、それぞれ、ファイル番号「０２５」を記憶する。
【０１０９】
このように、開始ファイルのエリアと終了ファイルのエリアとに、同じファイル番号を記憶すれば、ファイルのデータを１曲だけプログラム再生することができる。
【０１１０】
このようにプログラムすると、コンピュータ２１は、メモリ２０に記憶されたプログラム番号に従って、最初に、Ｆｏｌｄｅｒ＿０２に属するファイル番号「００９」〜「０１８」のファイルのデータを光ディスク１から取得して再生する。続いて、コンピュータ２１は、Ｆｏｌｄｅｒ＿０４に属するファイル番号「０２７」〜「０３５」のファイルのデータ、ファイル番号「０２２」、「０２５」のファイルのデータを光ディスク１から取得して再生する。
【０１１１】
また、下位のフォルダも含めてフォルダ単位でファイルをプログラム再生することもできる。例えば、図８に示す解析結果に基づいて、再生対象のファイルとして、Ｆｏｌｄｅｒ＿０３とＦｏｌｄｅｒ＿０３の下位のすべてのフォルダ（Ｆｏｌｄｅｒ＿０４，Ｆｏｌｄｅｒ＿０５）とに属しているファイルが指定された場合、コンピュータ２１は、図１４に示すように、メモリ２０のＰ−０１の開始ファイル、終了ファイルのエリアに、それぞれ、ファイル番号「０１９」、「０３９」を記憶する。
【０１１２】
続いて、再生対象のファイルとして、Ｆｏｌｄｅｒ＿０６とＦｏｌｄｅｒ＿０６の下位のフォルダ（Ｆｏｌｄｅｒ＿０７とＦｏｌｄｅｒ＿０８）とに属しているファイルのデータとが指定された場合、コンピュータ２１は、メモリ２０のＰ−０２の開始ファイル、終了ファイルのエリアに、それぞれ、ファイル番号「０４０」、「０４８」を記憶する。
【０１１３】
このようにプログラムすると、Ｆｏｌｄｅｒ＿０３とＦｏｌｄｅｒ＿０３の下位のフォルダ（Ｆｏｌｄｅｒ＿０４とＦｏｌｄｅｒ＿０５）とに属しているファイルのデータと、Ｆｏｌｄｅｒ＿０６とＦｏｌｄｅｒ＿０６の下位のフォルダ（Ｆｏｌｄｅｒ＿０７とＦｏｌｄｅｒ＿０８）とに属しているファイルのデータと、がプログラム再生される。
【０１１４】
以上説明したように、本実施の形態によれば、パステーブル情報に基づいて再生対象のフォルダに属しているファイルのファイル番号を取得し、取得したファイル番号に基づいてメモリ２０のプログラムエリアに、再生対象として指定されたファイルのファイル番号を記憶するようにした。
【０１１５】
このため、記憶したプログラム番号に従って、フォルダ内のファイルのデータを指定してプログラム再生することができ、ファイルのデータを複数のフォルダにまたがってプログラム再生することができる。このため、フォルダに含まれているファイルを１つ１つ指定しなくてもよくなり、プログラム作業が容易となり、使い勝手もよくなる。
【０１１６】
尚、本発明を実施するにあたっては、種々の形態が考えられ、上記実施の形態に限られるものではない。
例えば、上記実施の形態では、記録媒体として、ＣＤ−ＲＯＭのような光ディスクを用いた。しかし、記録媒体は、ＣＤ−ＲＯＭに限られるものではなく、ＭＤ（ＭＤ：Ｍｉｎｉ　Ｄｉｓｃ（登録商標））に限られるものではなく、ＤＶＤ（ＤｉｇｉｔａｌＶｅｒｓａｔｉｌｅ　Ｄｉｓｋ）、ＭＯ（Ｍａｇｎｅｔｏ　Ｏｐｔｉｃａｌ　ｄｉｓｋ）であってもよい。
また、記録媒体は、半導体メモリを用いたＭＰ−３（ＭＰＥＧ　Ａｕｄｉｏ　Ｌａｙｅｒ−３　）であってもよい。
【０１１７】
また、本実施の形態では、再生対象のフォルダを解析対象として、総ファイル数を取得するようにした。しかし、解析方法は、このようなものに限られるものではなく、例えば、ルートに属しているフォルダとファイルとをすべて解析して、総ファイル数を取得することもできる。ただし、ルートに属しているフォルダとファイルとをすべて解析するようにすると、再生対象のフォルダ以外のフォルダに属するフォルダのファイルの数も算出してしまうことになり、再生対象のフォルダを解析対象として、総ファイル数を取得した方が効率は良い。
【０１１８】
再生方法は、フォルダの先頭から末尾まで、順次再生するようなプログラム再生だけではなく、例えば、乱数を発生し、発生した乱数を登録したランダムテーブルを用いることにより、フォルダ内でランダム再生であってもよい。
【０１１９】
【発明の効果】
以上説明したように、本発明によれば、フォルダ内のファイルのデータを指定して再生することができる。
【図面の簡単な説明】
【図１】本発明の本実施の形態に係る光ディスク装置の構成を示すブロック図である。
【図２】光ディスクの区分けされた領域を示す説明図である。
【図３】図２の光ディスクのパステーブル情報の一例を示す説明図である。
【図４】図３のパステーブル情報に基づいて各フォルダの階層関係の一例を示す説明図である。
【図５】図１のコンピュータが実行するフォルダ解析処理の内容を示すフローチャートである。
【図６】同上コンピュータが実行するフォルダ解析処理の内容を示すフローチャートである。
【図７】図３に示す各フォルダの階層関係に従ってコンピュータがフォルダ解析処理を実行した場合の動作を説明するための説明図である。
【図８】図７のフォルダ解析処理に従って解析された各フォルダの階層関係を示す説明図である。
【図９】図７のフォルダ解析処理に従って解析された解析結果を示す説明図である。
【図１０】各フォルダの階層関係のもう１つの例を示す説明図である。
【図１１】図１０に示す各フォルダの階層関係に従ってフォルダを解析した場合の動作を説明するための説明図である。
【図１２】図１のコンピュータが実行するプログラム再生処理の内容を示すフローチャートである。
【図１３】図１２のプログラム再生処理によってメモリに記憶されているファイル番号の一例を示す説明図である。
【図１４】図１２のプログラム再生処理によってメモリに記憶されているファイル番号の別の例を示す説明図である。
【符号の説明】
１　光ディスク
１９　ＴＯＣメモリ
２０　メモリ
２１　コンピュータ
【図１】
2004022109.tif 000003
【図２】
2004022109.tif 000004
【図３】
2004022109.tif 000005
【図４】
2004022109.tif 000006
【図５】
2004022109.tif 000007
【図６】
2004022109.tif 000008
【図７】
2004022109.tif 000009
【図８】
2004022109.tif 000010
【図９】
2004022109.tif 000011
【図１０】
2004022109.tif 000012
【図１１】
2004022109.tif 000013
【図１２】
2004022109.tif 000014
【図１３】
2004022109.tif 000015
【図１４】
2004022109.tif 000016