(57)【要約】【課題】複数のファイルデータをショックプルーフ機能を伴う状態で同時に再生対象にすることができるファイル再生装置を提供する。【解決手段】データを一時的に蓄積するメモリバッファ３０と、メモリバッファ３０を制御するメモリコントローラ２０と、複数の出力部４１，４２，４３とを有する。メモリバッファ３０は複数のトラックバッファ３１，３２，３３に分割可能に構成されている。メモリコントローラ２０は、メモリバッファ３０を複数のトラックバッファに分割する機能をもつメモリ制御部２１と、メモリデバイス１０にある複数のファイル１１，１２，１３のデータを個別に取り込んで複数のトラックバッファのうちの対応するものに転送し順次に蓄積させるデータ転送蓄積部２２と、複数のトラックバッファにあるデータを個別に複数の出力部４１，４２，４３のうち対応するものへ出力させるデータ出力部２３とを備えている。【選択図】図１
2011198405.tif 000002
【特許請求の範囲】
【請求項１】
データを一時的に蓄積するメモリバッファと、前記メモリバッファを制御するメモリコントローラと、複数の出力部とを有し、
前記メモリバッファは、複数のトラックバッファに分割可能に構成され、
前記メモリコントローラは、
前記メモリバッファを前記複数のトラックバッファに分割する機能をもつメモリ制御部と、
メモリデバイスにある複数のファイルのデータを個別に取り込んで前記複数のトラックバッファのうちの対応するものに転送し順次に蓄積させるデータ転送蓄積部と、
前記複数のトラックバッファにあるデータを個別に前記複数の出力部のうち対応するものへ出力させるデータ出力部とを備えた構成とされているファイル再生装置。
【請求項２】
前記メモリ制御部は、前記メモリバッファを前記複数のトラックバッファに分割するに際して、前記複数のファイルのファイル情報を基に複数に分割するように構成されている請求項１に記載のファイル再生装置。
【請求項３】
前記ファイル情報は、ファイルサイズである請求項２に記載のファイル再生装置。
【請求項４】
前記ファイル情報は、ファイルが映像情報か音声情報かの区別を表す情報である請求項２に記載のファイル再生装置。
【請求項５】
前記ファイル情報は、ファイルのビットレート情報である請求項２に記載のファイル再生装置。
【請求項６】
前記メモリデバイスとして半導体メモリを対象とし、前記メモリコントローラは、前記複数のファイルでファイルオープン処理を行うように構成されている請求項１から請求項５までのいずれか１項に記載のファイル再生装置。
【請求項７】
前記メモリデバイスとして光ディスクを対象とし、前記メモリコントローラは、光ディスク上におけるファイルの物理的な位置を検出し、ピックアップ装置の基準位置から遠くに離れているファイルほどその蓄積を優先する機能を有する請求項１から請求項５までのいずれか１項に記載のファイル再生装置。
【請求項８】
複数の端末装置からの各再生要求に対して個別に各端末装置にデータを配信するデータ配信装置であって、前記複数の端末装置の各々は請求項１に記載の前記出力部を具備するものであり、前記データ配信装置は、請求項１に記載の前記メモリコントローラと、前記メモリバッファとを備えているデータ配信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、読み出したファイルデータをショックプルーフ機能のために一時的に蓄積しておくメモリバッファを備えたファイル再生装置にかかわり、詳しくは、複数ファイルのショックプルーフ機能を伴う同時再生を可能にするための技術に関する。ショックプルーフ機能というのは、再生中に装置にかかる物理的衝撃に対して音飛びを防止する機能である。本発明はまた、データ配信装置に関する。
【背景技術】
【０００２】
図６は従来技術におけるＣＤ（Compact Disc）システムでのファイル再生装置の構成を示すブロック図である。ＣＤサーボ６１から出力される音楽や映像などのファイルデータは、ショックプルーフ機能のため、マイコン６４の制御によりメモリコントローラ６２を介して一時的にメモリバッファ６３に蓄積される。メモリバッファ６３に蓄積されたファイルデータは、メモリコントローラ６２を介してディジタル信号処理部６５で復号化され、Ｄ／Ａコンバータ６６でアナログ化された音声データが音となって出力される（例えば特許文献１参照）。
【０００３】
図７は上記従来技術におけるＣＤシステムでのファイル再生装置のメモリバッファ６３の入出力制御を説明するための波形図である。メモリコントローラ６２は、ＣＤサーボ６１からのファイルデータをその出力レートより高いレートでメモリバッファ６３に入力する。その結果、メモリバッファ６３にはファイルデータが蓄積されていく。ファイルデータがメモリバッファ６３の容量上限まで蓄積されると、データ入力動作を一時停止する。上記の過程において、メモリコントローラ６２は、データ入力動作と並行してメモリバッファ６３からファイルデータをその入力レートより低いレートで出力する。さらにデータ入力動作の停止後においても引き続き、先と同じ一定の出力レートでファイルデータを出力し、メモリバッファ６３内のデータ蓄積量が入力再開レベルまで減少すると、ファイルデータを上記の入力レートで再度メモリバッファ６３に入力する。結果、メモリコントローラ６２は、メモリバッファ６３のデータを枯渇させることなく、常にファイルデータが蓄積されているように制御する。
【０００４】
上記のようにファイルデータの入力と出力とを繰り返しながら、ファイルの最後に到達するまでファイルデータをメモリバッファ６３へ入力する。ファイルの最後まで到達した後は入力を停止する。以降は、ファイル再生装置が新たなファイルを決定すれば、その新たなファイルについてメモリバッファ６３へ入力する。この際にも、メモリコントローラ６２は、先と同じ一定の出力レートでファイルデータを出力し続け、このデータ出力動作をメモリバッファ６３内のファイルデータがすべてなくなるまで連続して継続する。新たなファイルのデータの入力は、１つ前のファイルのデータの再生が完了した後に行われる。
【０００５】
データ入力動作中に外部より加えられた物理的衝撃等のために、ＣＤからの再生にエラーが生じることがある。メモリバッファ６３にデータを蓄積しながら読み出すことは、このＣＤの再生エラーに際して、再生データの修復を行う時間的ゆとりを与えることになる。これがメモリバッファによるショックプルーフ機能であり、音声出力のためのメモリバッファ６３からのデータ出力動作とは別動作として実行される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−１８４１０８号公報（第４頁、第１図）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の従来の技術においては、メモリバッファに蓄積するのは単一のファイルであることを前提にしている。そのため、メモリバッファから出力できるのはただ１つのファイルのデータのみであり、これでは当然のことながら、複数のファイルは同時に再生することができない。
【０００８】
本発明は、このような事情に鑑みて創作したものであり、複数のファイルデータをショックプルーフ機能を伴う状態で同時に再生対象にすることができるファイル再生装置を提供することを目的としている。
【課題を解決するための手段】
【０００９】
《１》ファイル再生装置についての本発明は、上記の課題を解決するために次の手段を講じる。理解を容易にするため、後述する実施例１で用いる図１を参照しながら説明することとする（ただし、本発明は同図によって制限を受けるものではない）。
【００１０】
基本的な構成要素は、ショックプルーフ機能のためデータを一時的に蓄積するメモリバッファ３０と、このメモリバッファ３０を制御するメモリコントローラ２０と、複数の出力部４１，４２，４３である。複数のファイルのデータを同時に取り扱えるようにするために、メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割可能に構成する。メモリコントローラ２０には、メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割する機能をもたせる。その機能部をメモリ制御部２１とする。ファイルのデータを格納するのがメモリデバイス１０であるが、ここではメモリデバイス１０に複数のファイル１１，１２，１３が格納されているとする。メモリデバイス１０自体は必ずしも必須要件とする必要はなくて、外部の構成要素であってもよい。メモリデバイス１０の複数のファイル１１，１２，１３を個別にメモリバッファ３０の個々のトラックバッファ３１，３２，３３に転送するため、メモリコントローラ２０にデータ転送蓄積部２２を設ける。すなわち、このデータ転送蓄積部２２は、メモリデバイス１０の複数のファイル１１，１２，１３のデータを、メモリバッファ３０において対応するトラックバッファ３１，３２，３３に転送し順次に蓄積させる機能を有するものとして構成する。また、メモリバッファ３０の複数のトラックバッファ３１，３２，３３にあるファイル１１，１２，１３のデータを個別的に取り出すことができるようにするため、複数の出力部４１，４２，４３を設ける。それとともに、メモリコントローラ２０にはさらに、複数のトラックバッファ３１，３２，３３と複数の出力部４１，４２，４３とを中継するデータ出力部２３を設ける。データ出力部２３は、トラックバッファ３１におけるファイルデータの出力部４１への出力と、トラックバッファ３２におけるファイルデータの出力部４２への出力と、トラックバッファ３３におけるファイルデータの出力部４３への出力とを個別独立的に実行するように構成されている。メモリコントローラ２０は、メモリ制御部２１とデータ転送蓄積部２２とデータ出力部２３とを備えていることになる。
【００１１】
上記構成のファイル再生装置においては、メモリコントローラ２０のメモリ制御部２１は、同時に再生要求のあるファイル数に応じてメモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割する。再生要求のファイル数が２であればメモリバッファ３０は２分割し、ファイル数が３であればメモリバッファ３０は３分割する。一般に、ｎを２以上の自然数として、再生要求のファイル数がｎであればメモリバッファ３０はｎ分割する。メモリコントローラ２０のデータ転送蓄積部２２は、メモリデバイス１０にある複数のファイル１１，１２，１３の適宜のものを、メモリバッファ３０の複数のトラックバッファ３１，３２，３３の対応するものに転送し、順次に蓄積させる。蓄積が進むと、メモリコントローラ２０のデータ出力部２３は、転送蓄積と並行して複数のトラックバッファ３１，３２，３３の適宜のものからデータを読み出し、複数の出力部４１，４２，４３のうちの対応するものへと出力する。以上の結果として、複数ファイルのショックプルーフ機能を伴う同時再生が可能となる。
【００１２】
以上を要するに、本発明のファイル再生装置は、
データを一時的に蓄積するメモリバッファ３０と、メモリバッファ３０を制御するメモリコントローラ２０と、複数の出力部４１，４２，４３とを有し、
メモリバッファ３０は、複数のトラックバッファ３１，３２，３３に分割可能に構成され、
メモリコントローラ２０は、
メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割する機能をもつメモリ制御部２１と、
メモリデバイス１０にある複数のファイル１１，１２，１３のデータを個別に取り込んで複数のトラックバッファ３１，３２，３３のうちの対応するものに転送し順次に蓄積させるデータ転送蓄積部２２と、
複数のトラックバッファ３１，３２，３３にあるデータを個別に複数の出力部４１，４２，４３のうち対応するものへ出力させるデータ出力部２３とを備えた構成となっている。
【００１３】
この構成においては、メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割することにより、分割したそれぞれのトラックバッファにファイルデータを蓄積し、かつメモリバッファ３０にある複数のファイルデータを同時に複数の出力部４１，４２，４３に出力することが可能となる。すなわち、複数のファイル１１，１２，１３の各ファイルデータについて、メモリバッファ３０における複数のトラックバッファ３１，３２，３３への転送と順次的な蓄積および個別独立的な出力を、各ファイルデータごとに独立して個別的に遂行することが可能である。ゆえに、複数ファイルのショックプルーフ機能を伴う同時再生が可能となる。
【００１４】
上記《１》のファイル再生装置にかかわる発明をデータ配信装置において、次のように展開することが可能である。理解を容易にするため、後述する実施例２で用いる図３を参照しながら説明する（ただし、本発明はこの図によって限定されるものではない）。
【００１５】
本発明によるデータ配信装置２００は、上記《１》の構成におけるメモリコントローラ２０とメモリバッファ３０とを備えている。メモリコントローラ２０におけるデータ出力部２３は、外部にある複数の端末装置４０１，４０２，４０３に接続可能に構成されている。端末装置４０１，４０２，４０３は、上記《１》にいう出力部４１，４２，４３を具備しているものとする。
【００１６】
複数の端末装置４０１，４０２，４０３のいずれか２つ以上からメモリコントローラ２０に対して再生要求がなされたとき、メモリコントローラ２０におけるメモリ制御部２１がメモリバッファ３０を分割して複数のトラックバッファ３１，３２，３３を形成させ、データ転送蓄積部２２とデータ出力部２３との協働により、上記の動作を行う。
【００１７】
この構成によれば、データ配信システム全体におけるメモリバッファ３０の資源をデータ配信装置２００に一元化しており、端末装置側ではメモリバッファが不要になるため、システム全体で構成要素を削減することが可能となる（従来図８参照）。
【発明の効果】
【００１８】
本発明によれば、複数のファイルデータについて、メモリバッファを分割した複数のトラックバッファへの転送と順次的な蓄積および複数の出力部への個別独立的な出力を各ファイルデータごとに独立して個別的に遂行するので、メモリデバイスにおける複数のファイルデータについてショックプルーフ機能を伴う同時再生を実行することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施例１におけるファイル再生装置の構成を示すブロック図
【図２】本発明の実施例１におけるファイル再生装置のメモリバッファの入出力制御を説明する波形図
【図３】本発明の実施例２おけるデータ配信装置を含むデータ配信システムの構成を示すブロック図
【図４】本発明の実施例３におけるファイル再生装置でファイルを読み出すときの手順を示すフローチャート
【図５】本発明の実施例４における光ディスク上のファイル位置とピックアップ装置の関係を示す模式図
【図６】従来技術におけるＣＤシステムでのファイル再生装置の構成を示すブロック図
【図７】従来技術におけるＣＤシステムでのファイル再生装置のメモリバッファの入出力制御を説明する波形図
【図８】従来技術におけるデータ配信システムの構成を示すブロック図
【発明を実施するための形態】
【００２０】
上記《１》の構成の本発明のファイル再生装置は、次のような実施の形態においてさらに有利に展開することが可能である。
【００２１】
《２》上記《１》の構成においては、メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割するとしたが、どのように分割するかについては、特別には言及していない。等分に分割する態様であってもよいし、適宜の比率で分割するのでもよい。本項は、等分ではない適宜比率での分割について規定するものである。
【００２２】
メモリデバイス１０にある複数のファイル１１，１２，１３は、そのデータ量が互いに相違するのが一般的である。したがって、メモリバッファ３０を等分に分割して複数のトラックバッファ３１，３２，３３の容量を互いに等しく設定しておくと、複数のファイル１１，１２，１３を複数のトラックバッファ３１，３２，３３に同時的に格納し、同時的に読み出す過程において、あるトラックバッファではデータが残っているのに、別のトラックバッファではデータが枯渇してしまうといった事態が生じないとも限らない。これでは、複数ファイルのショックプルーフ機能を伴う同時再生に支障となる。
【００２３】
そこで、メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割するに際して、複数のファイル１１，１２，１３のファイル情報を基に分割することとする。すなわち、メモリコントローラ２０におけるメモリ制御部２１は、メモリバッファ３０を複数のトラックバッファ３１，３２，３３に分割するに際して、複数のファイル１１，１２，１３のファイル情報を基に複数に分割するように構成されているということである。
【００２４】
このように構成すれば、メモリバッファ３０を分割して形成される複数のトラックバッファ３１，３２，３３のサイズをファイル情報に応じた最適な値にすることが可能となり、トラックバッファにおいてデータが枯渇してしまうことを防止し、複数ファイルのショックプルーフ機能を伴う同時再生の動作品質を保つことが可能になる。
【００２５】
《３》上記《２》の構成において、ファイル情報についてはファイルサイズを用いることが可能である。ファイル情報としてファイルサイズを用いることで、トラックバッファ３１，３２，３３のサイズをファイルサイズに応じた大きさにするので、過不足の少ない割り当てとなり、合理的な運用が可能となる。
【００２６】
《４》上記《２》の構成において、ファイル情報として映像情報か音声情報かの区別を表す情報を用いることが可能である。一般的に、映像情報は音声情報より１単位の再生時間当たりに占めるデータ量が大きい。ファイル情報が映像情報を指示している場合は、分割で得られる複数のトラックバッファ３１，３２，３３のうち対応するトラックバッファの容量を多くすることで、映像情報の再生品質を保てる。一方、ファイル情報が音声情報を指示している場合は、対応するトラックバッファの容量を少なくすることで、残りのトラックバッファを他のファイルのための領域として活用することが可能となる。
【００２７】
《５》上記《２》の構成において、ファイル情報としてビットレート情報を用いることが可能である。ビットレートが高いファイルの場合は、メモリバッファ３０の分割で得られるトラックバッファの容量を多くすることで、ビットレートが高いファイルの再生品質を保つことが可能となる。一方、ビットレートが低いファイルの場合は、トラックバッファの容量を少なくする。ビットレートが低いと消費するデータ量も少ないことから、トラックバッファの容量を少なくしても、ファイル再生は可能である。また、残りのトラックバッファを他のファイルのための領域として活用することが可能となる。
【００２８】
《６》上記《１》〜《５》の構成において、メモリデバイス１０について、これをＵＳＢ（Universal Serial Bus）メモリ、ＳＤ（Secure Digital）メモリカードなどの半導体メモリとすることが可能である。この場合に、メモリコントローラ２０は、複数のファイル１１，１２，１３に対してファイルオープン処理を行うものとする。
【００２９】
ファイルオープン処理は、半導体メモリ内に記録されているＦＡＴ（File Allocation Table）情報を基に、ファイルの実体がある物理的な位置を探索し、その探索結果を一時的に保持しておく処理である。ファイルオープン処理を行った後に、ファイルオープンしたファイルに対してデータの読み出しが可能になる。データの読み出しが完了した後は、ファイルクローズ処理を行い、一時的に保持しておいたファイルの実体のある物理的な位置の情報を破棄する。ファイルクローズ処理を行わなければ、データの読み出しを一時的に停止していても、読み出しが再開されれば、再度のファイルオープン処理を行わなくても直ちに読み出しすることが可能である。
【００３０】
複数のファイル１１，１２，１３のデータを順次にトラックバッファ３１，３２，３３に蓄積する動作を行う場合、まず第１のファイルに対してファイルオープン処理を行い、データを読み出す。次に第２のファイルを蓄積するときは、データを途中まで読み取った第１のファイルに対するファイルクローズ処理を行わず、第２のファイルに対してファイルオープン処理を行い、第２のファイルからデータを読み出す。ファイル内のすべてのデータを読み取ったファイルに対してファイルクローズ処理を行う。この手順を行うことで、ファイルオープン処理にかかる時間的な損失を軽減することが可能となる。
【００３１】
《７》上記《１》の構成において、メモリデバイス１０について、これをＣＤ、ＤＶＤなどの光ディスクとすることが可能である。この場合に、メモリコントローラ２０は、光ディスク上におけるファイルの物理的な位置を検出し、ピックアップ装置の基準位置から遠くに離れているファイルほどその蓄積を優先するものとする。
【００３２】
光ディスクにおいては、ピックアップ装置から光ディスクに対してレーザーを出射し、その反射光を入力することでデータを読み取っている。ピックアップ装置は可動式になっており、光ディスクの半径方向に沿って内周から外周まで移動する。光ディスクから読み取る情報には半径方向に対する物理的な位置の情報が含まれており、ピックアップ装置が読み取っている物理的な位置を確認することができる。
【００３３】
このような構成により、複数のファイル１１，１２，１３のデータをトラックバッファ３１，３２，３３に蓄積する動作を行う場合、ファイル解析処理で蓄積するファイルの物理的な位置を取得しておく。この各ファイルの物理的な位置の相関関係より、基準位置から最も離れているファイルを特定する。また、次に離れているファイルを対象としてもよい。メモリコントローラ２０が特定した最も離れているファイルに対するデータの蓄積を優先する。具体的には、トラックバッファでの蓄積データ量が入力再開レベルまで下がるとデータの転送蓄積を再開するが、優先するファイルについては、入力再開レベルを他のファイルより高く設定することで、トラックバッファにより多くのデータが蓄積される状態を維持する。このため、ピックアップ装置の移動量が大きく時間的にゆとりの少ないファイルに対するトラックバッファでデータが枯渇してしまうことを回避することが可能になる。
【実施例】
【００３４】
以下、本発明のファイル再生装置の実施例について図面を参照しながら説明する。
【００３５】
（実施例１）
図１は本発明の実施例１におけるファイル再生装置の構成を示すブロック図である。
【００３６】
メモリデバイス１０には、ＵＳＢ（Universal Serial Bus）メモリ、ＳＤ（Secure Digital）メモリカードなどの半導体メモリやＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）などの光ディスクが用いられる。ファイル再生装置１００は、メモリデバイス１０にある複数のファイル１１，１２，１３を読み出して再生するものである。ファイル再生装置１００は、メモリデバイス１０から１または２以上のファイルデータを取り込むメモリコントローラ２０と、メモリコントローラ２０からデータを入力して蓄積した上で出力するメモリバッファ３０と、メモリコントローラ２０からのデータの出力先である複数の出力部４１，４２，４３とを備えている。第１、第２および第３の３つのファイル１１，１２，１３および第１、第２および第３の３つのトラックバッファ３１，３２，３３は一例であり、それぞれの数は任意である。ファイル数が１のときは、メモリバッファ３０の分割は不要である。
【００３７】
メモリコントローラ２０は、メモリバッファ３０を複数に分割する機能を持つメモリ制御部２１と、メモリデバイス１０からデータを入力し、蓄積するためにメモリバッファ３０に転送するデータ転送蓄積部２２と、メモリバッファ３０からデータを受け取って外部に出力するデータ出力部２３とを備えている。
【００３８】
メモリ制御部２１は、メモリデバイス１０内の複数のファイル１１，１２，１３のファイル数に応じてメモリバッファ３０を複数に分割するようになっている。例えば、ファイル数が２であればメモリバッファ３０を２分割し、ファイル数が３であればメモリバッファ３０を３分割する。一般に、ｎを２以上の自然数として、ファイル数がｎであればメモリバッファ３０をｎ分割する。
【００３９】
データ転送蓄積部２２は、メモリデバイス１０における第ｎのファイルのデータをメモリバッファ３０におけるｎ番目のトラックバッファに転送して蓄積するものとして構成されている。
【００４０】
データ出力部２３は、複数のトラックバッファ３１，３２，３３のうちの第ｎのトラックバッファのデータを、複数の出力部４１，４２，４３のうちの第ｎの出力部に出力するように構成されている。
【００４１】
以上のように構成されたファイル再生装置１００について、以下にその動作を説明する。
【００４２】
メモリコントローラ２０におけるデータ転送蓄積部２２は、メモリデバイス１０にある任意のファイルについて、ファイルデータを１セクタ単位で入力し、メモリバッファ３０内の複数のトラックバッファ３１，３２，３３のうちの対応するものに転送して蓄積させる。つまり、メモリデバイス１０にある第１のファイル１１については第１のトラックバッファ３１へデータ転送蓄積処理を行い、第２のファイル１２については第２のトラックバッファ３２へデータ転送蓄積処理を行い、第３のファイル１３については第３のトラックバッファ３３へデータ転送蓄積処理を行う。メモリデバイス１０におけるファイル数が２つのときは、メモリデバイス１０にある第１のファイル１１については第１のトラックバッファ３１へデータ転送蓄積処理を行い、第２のファイル１２については第２のトラックバッファ３２へデータ転送蓄積処理を行う。ファイル数が１つのときは、その単一のファイルについて単にメモリバッファ３０へデータ転送蓄積処理を行う。
【００４３】
メモリコントローラ２０におけるデータ出力部２３は、複数の出力部４１，４２，４３のうちのいずれかからの再生要求があったときに、複数のトラックバッファ３１，３２，３３のうち対応するものに蓄積されたデータを該当の出力部４１，４２，４３に出力する（データ出力処理）。
【００４４】
データ出力部２３は、複数の出力部４１，４２，４３からの再生要求受け付け処理について、出力部ごとに個別の受け付けが可能であり、また、複数のトラックバッファ３１，３２，３３からのデータ出力処理について、トラックバッファごとに個別の出力が可能となっている。そして、再生要求受け付け処理とデータ出力処理の組み合わせのいずれにおいても、複数組のものを時間的に同じタイミングで並行処理することが可能である。
【００４５】
出力部４１，４２，４３の各々は、音声情報や映像情報が含まれているファイルデータのデコードを行うディジタル信号処理部や、ファイルデータの解析を行う解析処理部などを備えている。
【００４６】
図２はメモリバッファ３０の入出力制御を説明するための波形図である。横軸に時間をとり、縦軸にバッファの使用容量をとっている。この図２は、第１のファイル１１ただ１つのファイルについてのデータ転送蓄積処理・データ出力処理の状態から、第１のファイル１１と第２のファイル１２との２つのファイルについてのデータ転送蓄積処理・データ出力処理の状態への推移を示している。それぞれの状態を第１の期間、第２の期間とする。
【００４７】
第１の期間においては、再生要求対象のファイルが第１のファイル１１の１つのみとなっている。１つのみであるから、メモリコントローラ２０におけるメモリ制御部２１は、メモリバッファ３０に対する分割処理は行わない。したがって、トラックバッファのベースでみると、メモリバッファ３０は単一のトラックバッファの状態となっている。この状態で、データ転送蓄積部２２は、メモリデバイス１０から第１のファイル１１のデータをその出力レートより高いレートで読み出し、メモリバッファ３０へ転送し、蓄積させる。第１のファイル１１のデータがメモリバッファ３０における容量上限まで蓄積されると、そのデータ入力動作を一時停止する。すると、データ出力処理のみが有効となり、メモリバッファ３０内のデータ量が減少し始める。
【００４８】
上記の過程において、メモリコントローラ２０のデータ出力部２３は、データ入力動作と並行して、メモリバッファ３０のデータをその入力レートより低いレートで出力する。さらには、データ入力動作の停止後においても引き続き、同じ出力レートでデータを出力する。図２での上昇過程では、データ転送蓄積処理・データ出力処理とが並行している。並行処理でも上昇するのは、レートの差による。下降過程では、データ転送蓄積処理は停止で、データ出力処理のみが行われている。
【００４９】
データ入力動作の一時停止中のデータ出力処理に伴ってメモリバッファ３０内のデータ量が所定の入力再開レベルまで減少すると、データ転送蓄積部２２の動作が再開され、引き続いてメモリデバイス１０から第１のファイル１１の続きの部分が上記と同じ入力レートで再度、メモリバッファ３０に転送蓄積される。再び第１のファイル１１のデータがメモリバッファ３０における容量上限まで入力されると、そのデータ入力動作が一時停止され、メモリバッファ３０内のデータ量の減少が起きる。
【００５０】
上記のように、第１の期間で第１のファイル１１のみについてデータ転送蓄積処理・データ出力処理を行っている最中に、ユーザ操作などによって、第２のファイル１２についても再生要求があったとする。このときの動作は次のとおりである。
【００５１】
メモリ制御部２１は、メモリバッファ３０を第１のトラックバッファ３１と第２のトラックバッファ３２の２つに分割する。これで、第２の期間に移行する。
【００５２】
メモリバッファ３０を分割する際には、それまでに蓄積されていた第１のファイル１１のデータの一部を破棄する。破棄されるデータ量がＱで示されている。破棄するのは、時刻的に現在に最も近い時点で蓄積されたデータから優先するものとする。このデータの一部破棄の結果、メモリバッファ３０には、第１のファイル１１のための第１のトラックバッファ３１以外に、第２のファイル１２のための第２のトラックバッファ３２の領域が確保されることになる。すなわち、メモリ制御部２１によるメモリバッファ３０の、第１のトラックバッファ３１および第２のトラックバッファ３２への分割が可能となる。この分割処理に伴って、メモリ制御部２１は、第１のトラックバッファ３１に対して第１のファイル１１用の容量上限値を設定するとともに、第２のトラックバッファ３２に対して第２のファイル１２用の容量上限値を設定する。
【００５３】
メモリバッファ３０を２つに分割した後も、第１のファイル１１についてのデータ転送蓄積処理・データ出力処理は継続して行う。加えて、第２のファイル１２についてのデータ転送蓄積処理・データ出力処理が並行して実行される。
【００５４】
第２のファイル１２については、分割で新たに確保された第２のトラックバッファ３２についてデータ転送蓄積処理・データ出力処理が行われる。すなわち、第２のファイル１２のデータ転送蓄積処理により、第２のトラックバッファ３２の容量上限に達するまでデータを蓄積する。以降、第１のファイル１１のデータ転送蓄積処理・データ出力処理と同様に、第２のファイル１２に対しても同じ処理を継続して行う。
【００５５】
より詳しくは、次のとおりである。
【００５６】
蓄積していた第１のファイル１１のデータを一部破棄した第１のトラックバッファ３１においては、引き続きデータ転送蓄積処理が停止されており、蓄積のデータ量は減少を続ける。一方、新たに再生要求のあった第２のファイル１２に対応する第２のトラックバッファ３２においては、データ転送蓄積部２２は、メモリデバイス１０から第２のファイル１２のデータをその出力レートより高いレートで読み出し、第２のトラックバッファ３２へ転送し、蓄積させる。第２のファイル１２のデータが第２のトラックバッファ３２における容量上限まで入力されると、そのデータ入力動作を一時停止する。すると、データ出力処理のみが有効となり、第２のトラックバッファ３２内のデータ量が減少し始める。
【００５７】
この間に、第１のトラックバッファ３１において第１のファイル１１のデータ量が入力再開レベルまで減少すると、データ転送蓄積部２２の動作が再開され、引き続いてメモリデバイス１０から第１のファイル１１の続きの部分（破棄された部分が優先される）が第１のトラックバッファ３１に転送蓄積される。再び第１のファイル１１のデータが第１のトラックバッファ３１における容量上限まで入力されると、そのデータ入力動作が一時停止され、第１のトラックバッファ３１内のデータ量の減少が起きる。
【００５８】
第２のトラックバッファ３２においても、第２のファイル１２のデータ量が入力再開レベルまで減少すると、データ転送蓄積部２２の動作が再開され、引き続いてメモリデバイス１０から第２のファイル１２の続きの部分が第２のトラックバッファ３２に転送蓄積される。再び第２のファイル１２のデータが第２のトラックバッファ３２における容量上限まで入力されると、そのデータ入力動作が一時停止され、第２のトラックバッファ３２内のデータ量の減少が起きる。
【００５９】
以上の結果、メモリコントローラ２０は、メモリバッファ３０における第１のトラックバッファ３１および第２のトラックバッファ３２の両方でデータを枯渇させることなく、常にファイルデータが蓄積しているように制御する。
【００６０】
もし、再度、ユーザ操作などで第３のファイル１３の再生要求があった場合には、上記と同様の論理のもと、今度はメモリバッファ３０を第１のトラックバッファ３１と第２のトラックバッファ３２と第３のトラックバッファ３３の３つに分割し、３つのデータ転送蓄積処理・データ出力処理を並行する（波形図は図示省略）。
【００６１】
以上のように、本実施例１は再生要求対象のファイル数に応じてメモリバッファ３０の分割数を調整しながらメモリバッファ３０を複数に分割する処理を動的に適応しながら実行する。
【００６２】
本実施例１では、メモリを３つに分割することを説明したが、ｎを２以上の任意の自然数として、最大ｎ個まで分割することができる。
【００６３】
本実施例１によれば、１つのファイルについてデータ転送蓄積処理を行う場合は、メモリバッファ３０の全領域を使用することができる。しかも、複数のファイルについてデータ転送蓄積処理を行う場合は、メモリバッファ３０を複数に分割し、得られた複数のトラックバッファ３１，３２，３３を全体として効率良く利用することができる。
【００６４】
また、分割機能があるためメモリバッファ３０は１つだけでよく、システム全体の回路規模をあまり増大させることなく、複数ファイルのショックプルーフ機能を伴う同時再生の機能を付加することができる。
【００６５】
また、複数のファイルを同時に出力し、各ファイルデータを出力部４１，４２，４３にあるディジタル信号処理部でデコードする場合、再生システム構成として１つのメモリバッファ３０でよいため、再生システム全体の回路規模をあまり増大させなくてすむ。また、同じシステム構成で、従来技術と同様の単一ファイルの再生装置としての機能も確保している。
【００６６】
また、従来の再生装置に本発明を用いたメモリコントローラ２０を使用することで、第１のファイルを第１の出力部のディジタル信号処理でデコードし音声を出力しながら、第２のファイルのタグ情報（例えば、ＭＰ３ファイルではＩＤ３タグ）を第２の出力部によって取得することができる。
【００６７】
なお、本実施例１では、トラックバッファを等分に分割するとしたが、分割するトラックバッファのサイズを等分にする代わりに、新たにデータ転送蓄積処理をするファイルに対するファイル情報より、トラックバッファのサイズを決定する方法を用いてもよい。
【００６８】
なお、本実施例１では、メモリバッファ３０を分割するサイズについては、ファイル情報より判断する方法としたが、ファイル情報としてデコードするファイルのファイルサイズを用いてトラックバッファのサイズを決定する方法を用いてもよい。ファイルサイズを含むファイル情報を基にトラックバッファの分割サイズを決定する方法を用いると、本実施例１での等分のトラックバッファサイズよりファイルサイズが小さい場合は、ファイルサイズ分に相当する領域だけを新たなトラックバッファとして割り当てることにより、分割前に制御していたファイルのトラックバッファの領域を十分に確保できる。併せてトラックバッファを分割するときに、蓄積データを破棄する量Ｑも本実施例１のデータを破棄する量より削減できる。
【００６９】
また、ファイル情報として再生するファイルの映像情報か音声情報かの区別を表す情報を用いてトラックバッファのサイズを決定する方法を用いてもよい。映像情報か音声情報かの区別を表す情報を含むファイル情報を基にトラックバッファの分割サイズを決定する方法を用いると、映像情報のファイルは、音声情報より１単位の再生時間当たりに占めるデータ量が大きいため、映像情報のファイルに対するトラックバッファの分割サイズを多く確保する。例えば、映像情報と音声情報を２対１の割合でメモリバッファ３０を分割する方法がある。
【００７０】
また、映像情報か音声情報であるかを判別するには、ファイルの拡張子で判別する方法がある。ファイルの拡張子で映像情報か音声情報かを判別するには、メモリデバイス１０にあるファイル位置情報を記載しているファイルシステムにファイル名を示す情報があり、通常はファイルの位置情報とともにファイル名の情報も合わせて取得する。ファイル名にはファイルの情報を示す拡張子が付加されている。拡張子については、映像情報としては、Ｗｉｎｄｏｗｓ（登録商標） Ｍｅｄｉａ Ｖｉｄｅｏ（ＷＭＶ）や、Ｒｅａｌ Ｖｉｄｅｏ（ＲＭ）や、Ｍｏｔｉｏｎ ＪＰＥＧ（ＡＶＩ、ＭＯＶ）などの拡張子がある。音声情報としては、ＭｐｅｇI−Ｌａｙｅｒ３（ＭＰ３）や、ＷＭＡ（Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ Ａｕｄｉｏ）や、Ｍｐｅｇ４ ＡＡＣ（Ｍ４Ａ）などの拡張子がある。
【００７１】
さらに、ファイル情報として再生するファイルのビットレート情報を用いてトラックバッファのサイズを決定する方法を用いてもよい。第２のファイルのビットレート情報が予め分かっていて、第２のファイルのビットレートが第１のファイルより高い場合は、第２のファイルに対するトラックバッファの容量を多く確保する。高ビットレートのファイルは、単位時間当たりの必要なデータ量が多いため、トラックバッファから出力するデータ量も多くなる。高ビットレートのファイルの場合は、トラックバッファ内のデータが枯渇する可能性が高くなる。以上より、この方法を用いてメモリバッファ３０を分割すると、高ビットレートのファイルのトラックバッファの容量を多く確保するため、データが枯渇することを減少させるという効果が得られる。
【００７２】
ビットレート情報については、圧縮ファイルをデコードすることで、圧縮ファイルに記載されているヘッダ情報より取得することができる。一度はデコードする必要があるため、メモリバッファ３０でトラックバッファのサイズを予め設定した容量としておき（決め打ち）、ビットレート情報を取得するまで決め打ちしたトラックバッファの容量でファイルをデコードする。ビットレート情報を取得した後は、決め打ちしたトラックバッファのサイズを再度変更することで、最適なトラックバッファの容量にする。
【００７３】
（実施例２）
実施例２において、実施例１を発展させた、ビデオオンデマンドに代表される映像情報や音声情報を配信するデータ配信装置を含むデータ配信システムについて説明する。
【００７４】
図３は本発明の実施例２におけるデータ配信装置を含むデータ配信システムの構成を示すブロック図である。複数の出力部４１，４２，４３は、視聴するユーザ側にある複数の端末装置４０１，４０２，４０３の各々に含まれている。また、メモリコントローラ２０とメモリバッファ３０とは実施例１と同様のものであり、これらがデータを配信する側のデータ配信装置２００を構成している。
【００７５】
次に、上記のように構成された本実施例のデータ配信装置２００の動作を説明する。
【００７６】
第１の端末装置４０１側からのファイルの再生要求に応じて、データ配信装置２００にあるメモリコントローラ２０がメモリデバイス１０から第１のファイルを読み出し、メモリバッファ３０へデータを入力し、メモリバッファ３０から第１の端末装置４０１にファイルデータを配信する。第２の端末装置４０２から別のファイルの再生要求があると、実施例１に記載のようにメモリバッファ３０を分割する処理を行い、第１の端末装置４０１からの再生要求と同様にして、メモリコントローラ２０がメモリデバイス１０から第２のファイルを読み出し、メモリバッファ３０へデータを入力し、メモリバッファ３０から第２の端末装置４０２にファイルデータを配信する。
【００７７】
従来のデータ配信システムでは、図８のように、端末装置４５１，４５２，４５３それぞれにメモリバッファ３０１，３０２，３０３が必要であった。これに対して、本実施例では、複数系統に共通のメモリコントローラ２０があるので、実施例１と同様にデータ配信装置２００のメモリバッファ３０を分割して使用でき、端末装置側の個別のメモリバッファ３０１，３０２，３０３が不要になる。
【００７８】
本実施例２によれば、データ配信システム全体としてのメモリバッファの資源をデータ配信装置側に一元化でき、システム全体の構成要素を削減できる効果が得られる。この効果により、端末装置単体でのコストを削減することができる。
【００７９】
また、外国語試験におけるリスニングシステムにおいても、本実施例２の構成を採用すれば同様の効果を得ることができる。
【００８０】
（実施例３）
本発明の実施例３は、メモリデバイスとして半導体メモリが用いられるファイル再生装置についてであり、その技術ポイントは、読み出し対象となっている全ファイルを予めファイルオープンしておくことでファイル読み出し時間を削減することである。
【００８１】
本実施例３のファイル再生装置の構成については、実施例１の場合の図１の構成が援用される。その図１において、メモリデバイス１０が半導体メモリである場合に相当する。本実施例では、半導体メモリ１０と表記する。
【００８２】
本実施例３のファイル再生装置の動作を図４のフローチャートに従って説明する。図４はメモリコントローラ２０にあるデータ転送蓄積部２２が第１のファイル１１と第２のファイル１２の２つのファイルについて同時的にデータ転送蓄積処理を行う場合の手順を示す。
【００８３】
まずステップＳ１において、第１のファイル１１をファイルオープンする。
【００８４】
次いでステップＳ２において、第２のファイル１２をファイルオープンする。
【００８５】
ファイルオープンによってＦＡＴ（File Allocation Table）情報を基に半導体メモリ１０内を探索し、ファイル実体位置の探索結果を制御用メモリ（図示せず）に一時的に保持しておくので、その後はデータ読み出しが可能になる。
【００８６】
次いでステップＳ３において、データ読み取りファイルを特定する。第１のファイル１１のデータを読み出す場合はステップＳ４に進み、第２のファイル１２のデータを読み出す場合はステップＳ７に進む。
【００８７】
第１のファイル１１のデータを読み出すとして進んだステップＳ４において、第１のファイル１１のファイルリードを行う。
【００８８】
次いでステップＳ５において、第１のファイル１１についてファイル終端まで読み出しが完了したかを判断する。ファイルの終端まで読み出していない場合は、ステップＳ３まで戻る。また、ファイルの終端まで読み出しが完了した場合は、ステップＳ６に進む。
【００８９】
ステップＳ６において、第１のファイル１１をファイルクローズし、単一ファイルの読み出し処理に戻る。
【００９０】
一方、ステップＳ３で第２のファイル１２のデータを読み出すとして進んだステップＳ７においては、第２のファイル１２のファイルリードを行う。
【００９１】
次いでステップＳ８において、第２のファイル１２についてファイル終端まで読み出しが完了したかを判断する。ファイルの終端まで読み出していない場合は、ステップＳ３まで戻る。ファイルの終端まで読み出しが完了した場合は、ステップＳ９に進む。
【００９２】
ステップＳ９において、第２のファイル１２をファイルクローズし、単一ファイルの読み出し処理に戻る。
【００９３】
２つのファイルに対する同時的なデータ転送蓄積処理において、いずれか一方のファイルの読み出しがファイル終端まで完了してステップＳ６またはＳ９のファイルクローズ処理を行った後は、ステップＳ７またはＳ４のファイルリード処理より、処理を継続する。以降、ファイル終端を検出する（ステップＳ８またはＳ５）までファイルリード（ステップＳ７またはＳ４）を繰り返し行う。これが単一ファイルの読み出し処理である。この単一ファイルの読み出し処理では、データ読み取りファイルを特定する処理（ステップＳ３相当）は、ある１つのファイル側のみとなる。その他の処理については実施例１と同様であるので、詳しい説明は省略する。
【００９４】
３つ以上のファイルを再生する場合も予めすべてのファイルをファイルオープンにし、あとは同様の論理で処理が展開される。
【００９５】
本実施例３によれば、複数のファイルについて予めファイルオープンした状態で各ファイルからデータを読み出すように制御するので、読み出しファイルを順次切り替えるごとにファイルオープンとファイルクローズを行う必要がなく、ファイル読み出し時間の削減が図られる。
【００９６】
再生対象ファイルのすべてについてファイルオープンすることに代えて、一部のファイルを優先してファイルオープンする方法もある。ファイルオープン処理ではＦＡＴ情報より探索した結果を一時的に制御用メモリ（図示せず）に保持しておく必要がある。制御用メモリに割り当てられた容量以上に探索結果を保持できない。制御用メモリの容量には限界があるため、必然的に同時的にファイルオープンするファイル数も制限がある。
【００９７】
そこで、ファイルサイズやビットレートや映像・音声の区別などのファイル情報を基にしてファイルオープンの優先順位を決めることにする。つまり、同時にファイルオープンするファイル数に制限を設ける。あるファイルについてデータ転送蓄積処理が完了したときは、ファイルクローズ処理を行って制御用メモリを開放し、次順位のファイルのファイルオープンを許可する。このようにすれば、同時的にファイルオープンするファイル数に制限があるシステムにおいても、上記同様にファイル読み出し時間の削減効果が期待できる。
【００９８】
（実施例４）
本発明の実施例４は、メモリデバイスとして光ディスクが用いられるファイル再生装置についてであり、その技術ポイントは、光ディスク上のファイル位置に関してピックアップ装置の基準位置から遠くに離れるファイルほどデータ転送蓄積処理において優先することにより、トラックバッファにおけるデータ枯渇を回避することである。基準位置から遠くに離れるファイルほど、ピックアップ装置がそのファイルにシークするまでの時間が長くかかり、時間的なロスのためにデータ枯渇を招来する可能性が高くなる。この不都合を回避するのが主旨である。
【００９９】
本実施例４のファイル再生装置の構成については、実施例１の場合の図１の構成が援用される。その図１において、メモリデバイス１０が光ディスクである場合に相当する。本実施例では、光ディスク１０と表記する。
【０１００】
図５は光ディスク１０上のファイル位置とピックアップ装置５０の関係を示す模式図である。メモリコントローラ２０におけるメモリ制御部２１は、複数のファイル１１，１２，１３の光ディスク１０上の物理的な位置情報を取得し、基準位置からの離間距離の順番を計算し、優先順位を決める機能（ファイル判別機能）を持っている。離間距離が最も大きいものを第１順位とする。このとき、ピックアップ装置５０が光ディスク１０上でシーク動作をするときの移動距離の物理的平均値を基準にして、個々のファイル１１，１２，１３の記録位置までの距離の大小比較に基づいて優先順位が決定される。
【０１０１】
図２で説明したように、各トラックバッファ３１，３２，３３においてファイルデータの蓄積量がデータ出力に伴って漸減し入力再開レベルに達すると、データ転送蓄積処理が再開される。その入力再開レベルを優先順位に応じて可変する。すなわち、優先順位が高いファイルのトラックバッファほど、入力再開レベルを高めに設定する。入力再開レベルはメモリコントローラ２０によって各トラックバッファに個別に記録されるようになっている。
【０１０２】
優先順位が高いファイルほどトラックバッファでのデータ枯渇を生じやすい。そこで、優先順位が高いファイルに対応するトラックバッファほど、入力再開レベルを高めに設定して、データ転送蓄積処理の再開タイミングをより早期化し、データ蓄積量が多めに保たれるようにして、対応するトラックバッファでのデータ枯渇をできるだけ避けるようにする。これの制御はメモリコントローラ２０で行われる。
【０１０３】
図５の例では、基準位置からの離間距離は第３のファイル１３が最も大きい。したがって、第３のファイル１３が優先順位１位となり、入力再開レベルが最も高く設定される。次いでは第２のファイル１２が優先順位２位となり、入力再開レベルが次に高く設定される。
【０１０４】
データ蓄積量の時間的推移をみると、第３のファイル１３に対応する第３のトラックバッファ３３では他のトラックバッファよりも多くのデータを蓄積することができる。その結果、第３のトラックバッファ３３へのピックアップ装置５０のアクセスに最も多くの時間がかかるとしても、第３のトラックバッファ３３でのデータ枯渇が回避される。
【０１０５】
なお、ここでは３つのファイルの場合で説明したが、４つ以上のファイルでも同様の動作により同様の効果を得ることができるのはもちろんである。
【０１０６】
上記では、光ディスク１０上でのピックアップ装置５０の移動距離の物理的平均値を基準にして離間距離の大小関係を判断するようにしたが、平均値に代えて中央値を用いてもよく、同様の効果を得ることができる。
【０１０７】
蓄積するファイルデータは、ファイルだけでなく、光ディスク１０内にあるファイルの位置情報を格納しているＩＳＯ９６６０に代表されるようなファイルシステムを解析することにも利用できる。あるファイルについて、その解析で得られたファイル情報を基に出力部のディジタル信号処理部でデコードしながら、残りのファイルの解析を同時に行う。こうすれば、ファイル解析開始時点からデコードし再生開始するまでの時間を短縮することができる。
【０１０８】
なお、上記において複数の実施の形態、実施例について説明したが、本発明の趣旨を逸脱しない範囲で、複数の実施の形態、実施例における各構成要素を任意に組み合わせてもよきものである。
【産業上の利用可能性】
【０１０９】
本発明によるファイル再生装置は、複数ファイルについてデータ蓄積とデータ出力をメモリバッファ１つの分割方式としてあるので、複数ファイルのショックプルーフ機能を伴う同時再生が可能となっている。ひいては、特にＵＳＢメモリプレーヤやＣＤプレーヤ、ＤＶＤプレーヤなどの再生装置およびビデオオンデマンドや外国語試験用リスニング機器などの配信装置として有用であり、その産業上の利用可能性は非常に広くかつ大きい。
【符号の説明】
【０１１０】
１０  メモリデバイス
１１  第１のファイル
１２  第２のファイル
１３  第３のファイル
２０  メモリコントローラ
２１  メモリ制御部
２２  データ転送蓄積部
２３  データ出力部
３０  メモリバッファ
３１  第１のトラックバッファ
３２  第２のトラックバッファ
３３  第３のトラックバッファ
４１，４２，４３  出力部
５０  ピックアップ装置
１００  ファイル再生装置
２００  データ配信装置
４０１，４０２，４０３  端末装置
Ｑ  蓄積データ破棄量
【図１】
2011198405.tif 000003
【図２】
2011198405.tif 000004
【図３】
2011198405.tif 000005
【図４】
2011198405.tif 000006
【図５】
2011198405.tif 000007
【図６】
2011198405.tif 000008
【図７】
2011198405.tif 000009
【図８】
2011198405.tif 000010