説明

ファイル再生装置およびデータ配信装置

【課題】複数のファイルデータをショックプルーフ機能を伴う状態で同時に再生対象にすることができるファイル再生装置を提供する。
【解決手段】データを一時的に蓄積するメモリバッファ30と、メモリバッファ30を制御するメモリコントローラ20と、複数の出力部41,42,43とを有する。メモリバッファ30は複数のトラックバッファ31,32,33に分割可能に構成されている。メモリコントローラ20は、メモリバッファ30を複数のトラックバッファに分割する機能をもつメモリ制御部21と、メモリデバイス10にある複数のファイル11,12,13のデータを個別に取り込んで複数のトラックバッファのうちの対応するものに転送し順次に蓄積させるデータ転送蓄積部22と、複数のトラックバッファにあるデータを個別に複数の出力部41,42,43のうち対応するものへ出力させるデータ出力部23とを備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、読み出したファイルデータをショックプルーフ機能のために一時的に蓄積しておくメモリバッファを備えたファイル再生装置にかかわり、詳しくは、複数ファイルのショックプルーフ機能を伴う同時再生を可能にするための技術に関する。ショックプルーフ機能というのは、再生中に装置にかかる物理的衝撃に対して音飛びを防止する機能である。本発明はまた、データ配信装置に関する。
【背景技術】
【0002】
図6は従来技術におけるCD(Compact Disc)システムでのファイル再生装置の構成を示すブロック図である。CDサーボ61から出力される音楽や映像などのファイルデータは、ショックプルーフ機能のため、マイコン64の制御によりメモリコントローラ62を介して一時的にメモリバッファ63に蓄積される。メモリバッファ63に蓄積されたファイルデータは、メモリコントローラ62を介してディジタル信号処理部65で復号化され、D/Aコンバータ66でアナログ化された音声データが音となって出力される(例えば特許文献1参照)。
【0003】
図7は上記従来技術におけるCDシステムでのファイル再生装置のメモリバッファ63の入出力制御を説明するための波形図である。メモリコントローラ62は、CDサーボ61からのファイルデータをその出力レートより高いレートでメモリバッファ63に入力する。その結果、メモリバッファ63にはファイルデータが蓄積されていく。ファイルデータがメモリバッファ63の容量上限まで蓄積されると、データ入力動作を一時停止する。上記の過程において、メモリコントローラ62は、データ入力動作と並行してメモリバッファ63からファイルデータをその入力レートより低いレートで出力する。さらにデータ入力動作の停止後においても引き続き、先と同じ一定の出力レートでファイルデータを出力し、メモリバッファ63内のデータ蓄積量が入力再開レベルまで減少すると、ファイルデータを上記の入力レートで再度メモリバッファ63に入力する。結果、メモリコントローラ62は、メモリバッファ63のデータを枯渇させることなく、常にファイルデータが蓄積されているように制御する。
【0004】
上記のようにファイルデータの入力と出力とを繰り返しながら、ファイルの最後に到達するまでファイルデータをメモリバッファ63へ入力する。ファイルの最後まで到達した後は入力を停止する。以降は、ファイル再生装置が新たなファイルを決定すれば、その新たなファイルについてメモリバッファ63へ入力する。この際にも、メモリコントローラ62は、先と同じ一定の出力レートでファイルデータを出力し続け、このデータ出力動作をメモリバッファ63内のファイルデータがすべてなくなるまで連続して継続する。新たなファイルのデータの入力は、1つ前のファイルのデータの再生が完了した後に行われる。
【0005】
データ入力動作中に外部より加えられた物理的衝撃等のために、CDからの再生にエラーが生じることがある。メモリバッファ63にデータを蓄積しながら読み出すことは、このCDの再生エラーに際して、再生データの修復を行う時間的ゆとりを与えることになる。これがメモリバッファによるショックプルーフ機能であり、音声出力のためのメモリバッファ63からのデータ出力動作とは別動作として実行される。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2002−184108号公報(第4頁、第1図)
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記の従来の技術においては、メモリバッファに蓄積するのは単一のファイルであることを前提にしている。そのため、メモリバッファから出力できるのはただ1つのファイルのデータのみであり、これでは当然のことながら、複数のファイルは同時に再生することができない。
【0008】
本発明は、このような事情に鑑みて創作したものであり、複数のファイルデータをショックプルーフ機能を伴う状態で同時に再生対象にすることができるファイル再生装置を提供することを目的としている。
【課題を解決するための手段】
【0009】
《1》ファイル再生装置についての本発明は、上記の課題を解決するために次の手段を講じる。理解を容易にするため、後述する実施例1で用いる図1を参照しながら説明することとする(ただし、本発明は同図によって制限を受けるものではない)。
【0010】
基本的な構成要素は、ショックプルーフ機能のためデータを一時的に蓄積するメモリバッファ30と、このメモリバッファ30を制御するメモリコントローラ20と、複数の出力部41,42,43である。複数のファイルのデータを同時に取り扱えるようにするために、メモリバッファ30を複数のトラックバッファ31,32,33に分割可能に構成する。メモリコントローラ20には、メモリバッファ30を複数のトラックバッファ31,32,33に分割する機能をもたせる。その機能部をメモリ制御部21とする。ファイルのデータを格納するのがメモリデバイス10であるが、ここではメモリデバイス10に複数のファイル11,12,13が格納されているとする。メモリデバイス10自体は必ずしも必須要件とする必要はなくて、外部の構成要素であってもよい。メモリデバイス10の複数のファイル11,12,13を個別にメモリバッファ30の個々のトラックバッファ31,32,33に転送するため、メモリコントローラ20にデータ転送蓄積部22を設ける。すなわち、このデータ転送蓄積部22は、メモリデバイス10の複数のファイル11,12,13のデータを、メモリバッファ30において対応するトラックバッファ31,32,33に転送し順次に蓄積させる機能を有するものとして構成する。また、メモリバッファ30の複数のトラックバッファ31,32,33にあるファイル11,12,13のデータを個別的に取り出すことができるようにするため、複数の出力部41,42,43を設ける。それとともに、メモリコントローラ20にはさらに、複数のトラックバッファ31,32,33と複数の出力部41,42,43とを中継するデータ出力部23を設ける。データ出力部23は、トラックバッファ31におけるファイルデータの出力部41への出力と、トラックバッファ32におけるファイルデータの出力部42への出力と、トラックバッファ33におけるファイルデータの出力部43への出力とを個別独立的に実行するように構成されている。メモリコントローラ20は、メモリ制御部21とデータ転送蓄積部22とデータ出力部23とを備えていることになる。
【0011】
上記構成のファイル再生装置においては、メモリコントローラ20のメモリ制御部21は、同時に再生要求のあるファイル数に応じてメモリバッファ30を複数のトラックバッファ31,32,33に分割する。再生要求のファイル数が2であればメモリバッファ30は2分割し、ファイル数が3であればメモリバッファ30は3分割する。一般に、nを2以上の自然数として、再生要求のファイル数がnであればメモリバッファ30はn分割する。メモリコントローラ20のデータ転送蓄積部22は、メモリデバイス10にある複数のファイル11,12,13の適宜のものを、メモリバッファ30の複数のトラックバッファ31,32,33の対応するものに転送し、順次に蓄積させる。蓄積が進むと、メモリコントローラ20のデータ出力部23は、転送蓄積と並行して複数のトラックバッファ31,32,33の適宜のものからデータを読み出し、複数の出力部41,42,43のうちの対応するものへと出力する。以上の結果として、複数ファイルのショックプルーフ機能を伴う同時再生が可能となる。
【0012】
以上を要するに、本発明のファイル再生装置は、
データを一時的に蓄積するメモリバッファ30と、メモリバッファ30を制御するメモリコントローラ20と、複数の出力部41,42,43とを有し、
メモリバッファ30は、複数のトラックバッファ31,32,33に分割可能に構成され、
メモリコントローラ20は、
メモリバッファ30を複数のトラックバッファ31,32,33に分割する機能をもつメモリ制御部21と、
メモリデバイス10にある複数のファイル11,12,13のデータを個別に取り込んで複数のトラックバッファ31,32,33のうちの対応するものに転送し順次に蓄積させるデータ転送蓄積部22と、
複数のトラックバッファ31,32,33にあるデータを個別に複数の出力部41,42,43のうち対応するものへ出力させるデータ出力部23とを備えた構成となっている。
【0013】
この構成においては、メモリバッファ30を複数のトラックバッファ31,32,33に分割することにより、分割したそれぞれのトラックバッファにファイルデータを蓄積し、かつメモリバッファ30にある複数のファイルデータを同時に複数の出力部41,42,43に出力することが可能となる。すなわち、複数のファイル11,12,13の各ファイルデータについて、メモリバッファ30における複数のトラックバッファ31,32,33への転送と順次的な蓄積および個別独立的な出力を、各ファイルデータごとに独立して個別的に遂行することが可能である。ゆえに、複数ファイルのショックプルーフ機能を伴う同時再生が可能となる。
【0014】
上記《1》のファイル再生装置にかかわる発明をデータ配信装置において、次のように展開することが可能である。理解を容易にするため、後述する実施例2で用いる図3を参照しながら説明する(ただし、本発明はこの図によって限定されるものではない)。
【0015】
本発明によるデータ配信装置200は、上記《1》の構成におけるメモリコントローラ20とメモリバッファ30とを備えている。メモリコントローラ20におけるデータ出力部23は、外部にある複数の端末装置401,402,403に接続可能に構成されている。端末装置401,402,403は、上記《1》にいう出力部41,42,43を具備しているものとする。
【0016】
複数の端末装置401,402,403のいずれか2つ以上からメモリコントローラ20に対して再生要求がなされたとき、メモリコントローラ20におけるメモリ制御部21がメモリバッファ30を分割して複数のトラックバッファ31,32,33を形成させ、データ転送蓄積部22とデータ出力部23との協働により、上記の動作を行う。
【0017】
この構成によれば、データ配信システム全体におけるメモリバッファ30の資源をデータ配信装置200に一元化しており、端末装置側ではメモリバッファが不要になるため、システム全体で構成要素を削減することが可能となる(従来図8参照)。
【発明の効果】
【0018】
本発明によれば、複数のファイルデータについて、メモリバッファを分割した複数のトラックバッファへの転送と順次的な蓄積および複数の出力部への個別独立的な出力を各ファイルデータごとに独立して個別的に遂行するので、メモリデバイスにおける複数のファイルデータについてショックプルーフ機能を伴う同時再生を実行することができる。
【図面の簡単な説明】
【0019】
【図1】本発明の実施例1におけるファイル再生装置の構成を示すブロック図
【図2】本発明の実施例1におけるファイル再生装置のメモリバッファの入出力制御を説明する波形図
【図3】本発明の実施例2おけるデータ配信装置を含むデータ配信システムの構成を示すブロック図
【図4】本発明の実施例3におけるファイル再生装置でファイルを読み出すときの手順を示すフローチャート
【図5】本発明の実施例4における光ディスク上のファイル位置とピックアップ装置の関係を示す模式図
【図6】従来技術におけるCDシステムでのファイル再生装置の構成を示すブロック図
【図7】従来技術におけるCDシステムでのファイル再生装置のメモリバッファの入出力制御を説明する波形図
【図8】従来技術におけるデータ配信システムの構成を示すブロック図
【発明を実施するための形態】
【0020】
上記《1》の構成の本発明のファイル再生装置は、次のような実施の形態においてさらに有利に展開することが可能である。
【0021】
《2》上記《1》の構成においては、メモリバッファ30を複数のトラックバッファ31,32,33に分割するとしたが、どのように分割するかについては、特別には言及していない。等分に分割する態様であってもよいし、適宜の比率で分割するのでもよい。本項は、等分ではない適宜比率での分割について規定するものである。
【0022】
メモリデバイス10にある複数のファイル11,12,13は、そのデータ量が互いに相違するのが一般的である。したがって、メモリバッファ30を等分に分割して複数のトラックバッファ31,32,33の容量を互いに等しく設定しておくと、複数のファイル11,12,13を複数のトラックバッファ31,32,33に同時的に格納し、同時的に読み出す過程において、あるトラックバッファではデータが残っているのに、別のトラックバッファではデータが枯渇してしまうといった事態が生じないとも限らない。これでは、複数ファイルのショックプルーフ機能を伴う同時再生に支障となる。
【0023】
そこで、メモリバッファ30を複数のトラックバッファ31,32,33に分割するに際して、複数のファイル11,12,13のファイル情報を基に分割することとする。すなわち、メモリコントローラ20におけるメモリ制御部21は、メモリバッファ30を複数のトラックバッファ31,32,33に分割するに際して、複数のファイル11,12,13のファイル情報を基に複数に分割するように構成されているということである。
【0024】
このように構成すれば、メモリバッファ30を分割して形成される複数のトラックバッファ31,32,33のサイズをファイル情報に応じた最適な値にすることが可能となり、トラックバッファにおいてデータが枯渇してしまうことを防止し、複数ファイルのショックプルーフ機能を伴う同時再生の動作品質を保つことが可能になる。
【0025】
《3》上記《2》の構成において、ファイル情報についてはファイルサイズを用いることが可能である。ファイル情報としてファイルサイズを用いることで、トラックバッファ31,32,33のサイズをファイルサイズに応じた大きさにするので、過不足の少ない割り当てとなり、合理的な運用が可能となる。
【0026】
《4》上記《2》の構成において、ファイル情報として映像情報か音声情報かの区別を表す情報を用いることが可能である。一般的に、映像情報は音声情報より1単位の再生時間当たりに占めるデータ量が大きい。ファイル情報が映像情報を指示している場合は、分割で得られる複数のトラックバッファ31,32,33のうち対応するトラックバッファの容量を多くすることで、映像情報の再生品質を保てる。一方、ファイル情報が音声情報を指示している場合は、対応するトラックバッファの容量を少なくすることで、残りのトラックバッファを他のファイルのための領域として活用することが可能となる。
【0027】
《5》上記《2》の構成において、ファイル情報としてビットレート情報を用いることが可能である。ビットレートが高いファイルの場合は、メモリバッファ30の分割で得られるトラックバッファの容量を多くすることで、ビットレートが高いファイルの再生品質を保つことが可能となる。一方、ビットレートが低いファイルの場合は、トラックバッファの容量を少なくする。ビットレートが低いと消費するデータ量も少ないことから、トラックバッファの容量を少なくしても、ファイル再生は可能である。また、残りのトラックバッファを他のファイルのための領域として活用することが可能となる。
【0028】
《6》上記《1》〜《5》の構成において、メモリデバイス10について、これをUSB(Universal Serial Bus)メモリ、SD(Secure Digital)メモリカードなどの半導体メモリとすることが可能である。この場合に、メモリコントローラ20は、複数のファイル11,12,13に対してファイルオープン処理を行うものとする。
【0029】
ファイルオープン処理は、半導体メモリ内に記録されているFAT(File Allocation Table)情報を基に、ファイルの実体がある物理的な位置を探索し、その探索結果を一時的に保持しておく処理である。ファイルオープン処理を行った後に、ファイルオープンしたファイルに対してデータの読み出しが可能になる。データの読み出しが完了した後は、ファイルクローズ処理を行い、一時的に保持しておいたファイルの実体のある物理的な位置の情報を破棄する。ファイルクローズ処理を行わなければ、データの読み出しを一時的に停止していても、読み出しが再開されれば、再度のファイルオープン処理を行わなくても直ちに読み出しすることが可能である。
【0030】
複数のファイル11,12,13のデータを順次にトラックバッファ31,32,33に蓄積する動作を行う場合、まず第1のファイルに対してファイルオープン処理を行い、データを読み出す。次に第2のファイルを蓄積するときは、データを途中まで読み取った第1のファイルに対するファイルクローズ処理を行わず、第2のファイルに対してファイルオープン処理を行い、第2のファイルからデータを読み出す。ファイル内のすべてのデータを読み取ったファイルに対してファイルクローズ処理を行う。この手順を行うことで、ファイルオープン処理にかかる時間的な損失を軽減することが可能となる。
【0031】
《7》上記《1》の構成において、メモリデバイス10について、これをCD、DVDなどの光ディスクとすることが可能である。この場合に、メモリコントローラ20は、光ディスク上におけるファイルの物理的な位置を検出し、ピックアップ装置の基準位置から遠くに離れているファイルほどその蓄積を優先するものとする。
【0032】
光ディスクにおいては、ピックアップ装置から光ディスクに対してレーザーを出射し、その反射光を入力することでデータを読み取っている。ピックアップ装置は可動式になっており、光ディスクの半径方向に沿って内周から外周まで移動する。光ディスクから読み取る情報には半径方向に対する物理的な位置の情報が含まれており、ピックアップ装置が読み取っている物理的な位置を確認することができる。
【0033】
このような構成により、複数のファイル11,12,13のデータをトラックバッファ31,32,33に蓄積する動作を行う場合、ファイル解析処理で蓄積するファイルの物理的な位置を取得しておく。この各ファイルの物理的な位置の相関関係より、基準位置から最も離れているファイルを特定する。また、次に離れているファイルを対象としてもよい。メモリコントローラ20が特定した最も離れているファイルに対するデータの蓄積を優先する。具体的には、トラックバッファでの蓄積データ量が入力再開レベルまで下がるとデータの転送蓄積を再開するが、優先するファイルについては、入力再開レベルを他のファイルより高く設定することで、トラックバッファにより多くのデータが蓄積される状態を維持する。このため、ピックアップ装置の移動量が大きく時間的にゆとりの少ないファイルに対するトラックバッファでデータが枯渇してしまうことを回避することが可能になる。
【実施例】
【0034】
以下、本発明のファイル再生装置の実施例について図面を参照しながら説明する。
【0035】
(実施例1)
図1は本発明の実施例1におけるファイル再生装置の構成を示すブロック図である。
【0036】
メモリデバイス10には、USB(Universal Serial Bus)メモリ、SD(Secure Digital)メモリカードなどの半導体メモリやCD(Compact Disc)、DVD(Digital Versatile Disc)などの光ディスクが用いられる。ファイル再生装置100は、メモリデバイス10にある複数のファイル11,12,13を読み出して再生するものである。ファイル再生装置100は、メモリデバイス10から1または2以上のファイルデータを取り込むメモリコントローラ20と、メモリコントローラ20からデータを入力して蓄積した上で出力するメモリバッファ30と、メモリコントローラ20からのデータの出力先である複数の出力部41,42,43とを備えている。第1、第2および第3の3つのファイル11,12,13および第1、第2および第3の3つのトラックバッファ31,32,33は一例であり、それぞれの数は任意である。ファイル数が1のときは、メモリバッファ30の分割は不要である。
【0037】
メモリコントローラ20は、メモリバッファ30を複数に分割する機能を持つメモリ制御部21と、メモリデバイス10からデータを入力し、蓄積するためにメモリバッファ30に転送するデータ転送蓄積部22と、メモリバッファ30からデータを受け取って外部に出力するデータ出力部23とを備えている。
【0038】
メモリ制御部21は、メモリデバイス10内の複数のファイル11,12,13のファイル数に応じてメモリバッファ30を複数に分割するようになっている。例えば、ファイル数が2であればメモリバッファ30を2分割し、ファイル数が3であればメモリバッファ30を3分割する。一般に、nを2以上の自然数として、ファイル数がnであればメモリバッファ30をn分割する。
【0039】
データ転送蓄積部22は、メモリデバイス10における第nのファイルのデータをメモリバッファ30におけるn番目のトラックバッファに転送して蓄積するものとして構成されている。
【0040】
データ出力部23は、複数のトラックバッファ31,32,33のうちの第nのトラックバッファのデータを、複数の出力部41,42,43のうちの第nの出力部に出力するように構成されている。
【0041】
以上のように構成されたファイル再生装置100について、以下にその動作を説明する。
【0042】
メモリコントローラ20におけるデータ転送蓄積部22は、メモリデバイス10にある任意のファイルについて、ファイルデータを1セクタ単位で入力し、メモリバッファ30内の複数のトラックバッファ31,32,33のうちの対応するものに転送して蓄積させる。つまり、メモリデバイス10にある第1のファイル11については第1のトラックバッファ31へデータ転送蓄積処理を行い、第2のファイル12については第2のトラックバッファ32へデータ転送蓄積処理を行い、第3のファイル13については第3のトラックバッファ33へデータ転送蓄積処理を行う。メモリデバイス10におけるファイル数が2つのときは、メモリデバイス10にある第1のファイル11については第1のトラックバッファ31へデータ転送蓄積処理を行い、第2のファイル12については第2のトラックバッファ32へデータ転送蓄積処理を行う。ファイル数が1つのときは、その単一のファイルについて単にメモリバッファ30へデータ転送蓄積処理を行う。
【0043】
メモリコントローラ20におけるデータ出力部23は、複数の出力部41,42,43のうちのいずれかからの再生要求があったときに、複数のトラックバッファ31,32,33のうち対応するものに蓄積されたデータを該当の出力部41,42,43に出力する(データ出力処理)。
【0044】
データ出力部23は、複数の出力部41,42,43からの再生要求受け付け処理について、出力部ごとに個別の受け付けが可能であり、また、複数のトラックバッファ31,32,33からのデータ出力処理について、トラックバッファごとに個別の出力が可能となっている。そして、再生要求受け付け処理とデータ出力処理の組み合わせのいずれにおいても、複数組のものを時間的に同じタイミングで並行処理することが可能である。
【0045】
出力部41,42,43の各々は、音声情報や映像情報が含まれているファイルデータのデコードを行うディジタル信号処理部や、ファイルデータの解析を行う解析処理部などを備えている。
【0046】
図2はメモリバッファ30の入出力制御を説明するための波形図である。横軸に時間をとり、縦軸にバッファの使用容量をとっている。この図2は、第1のファイル11ただ1つのファイルについてのデータ転送蓄積処理・データ出力処理の状態から、第1のファイル11と第2のファイル12との2つのファイルについてのデータ転送蓄積処理・データ出力処理の状態への推移を示している。それぞれの状態を第1の期間、第2の期間とする。
【0047】
第1の期間においては、再生要求対象のファイルが第1のファイル11の1つのみとなっている。1つのみであるから、メモリコントローラ20におけるメモリ制御部21は、メモリバッファ30に対する分割処理は行わない。したがって、トラックバッファのベースでみると、メモリバッファ30は単一のトラックバッファの状態となっている。この状態で、データ転送蓄積部22は、メモリデバイス10から第1のファイル11のデータをその出力レートより高いレートで読み出し、メモリバッファ30へ転送し、蓄積させる。第1のファイル11のデータがメモリバッファ30における容量上限まで蓄積されると、そのデータ入力動作を一時停止する。すると、データ出力処理のみが有効となり、メモリバッファ30内のデータ量が減少し始める。
【0048】
上記の過程において、メモリコントローラ20のデータ出力部23は、データ入力動作と並行して、メモリバッファ30のデータをその入力レートより低いレートで出力する。さらには、データ入力動作の停止後においても引き続き、同じ出力レートでデータを出力する。図2での上昇過程では、データ転送蓄積処理・データ出力処理とが並行している。並行処理でも上昇するのは、レートの差による。下降過程では、データ転送蓄積処理は停止で、データ出力処理のみが行われている。
【0049】
データ入力動作の一時停止中のデータ出力処理に伴ってメモリバッファ30内のデータ量が所定の入力再開レベルまで減少すると、データ転送蓄積部22の動作が再開され、引き続いてメモリデバイス10から第1のファイル11の続きの部分が上記と同じ入力レートで再度、メモリバッファ30に転送蓄積される。再び第1のファイル11のデータがメモリバッファ30における容量上限まで入力されると、そのデータ入力動作が一時停止され、メモリバッファ30内のデータ量の減少が起きる。
【0050】
上記のように、第1の期間で第1のファイル11のみについてデータ転送蓄積処理・データ出力処理を行っている最中に、ユーザ操作などによって、第2のファイル12についても再生要求があったとする。このときの動作は次のとおりである。
【0051】
メモリ制御部21は、メモリバッファ30を第1のトラックバッファ31と第2のトラックバッファ32の2つに分割する。これで、第2の期間に移行する。
【0052】
メモリバッファ30を分割する際には、それまでに蓄積されていた第1のファイル11のデータの一部を破棄する。破棄されるデータ量がQで示されている。破棄するのは、時刻的に現在に最も近い時点で蓄積されたデータから優先するものとする。このデータの一部破棄の結果、メモリバッファ30には、第1のファイル11のための第1のトラックバッファ31以外に、第2のファイル12のための第2のトラックバッファ32の領域が確保されることになる。すなわち、メモリ制御部21によるメモリバッファ30の、第1のトラックバッファ31および第2のトラックバッファ32への分割が可能となる。この分割処理に伴って、メモリ制御部21は、第1のトラックバッファ31に対して第1のファイル11用の容量上限値を設定するとともに、第2のトラックバッファ32に対して第2のファイル12用の容量上限値を設定する。
【0053】
メモリバッファ30を2つに分割した後も、第1のファイル11についてのデータ転送蓄積処理・データ出力処理は継続して行う。加えて、第2のファイル12についてのデータ転送蓄積処理・データ出力処理が並行して実行される。
【0054】
第2のファイル12については、分割で新たに確保された第2のトラックバッファ32についてデータ転送蓄積処理・データ出力処理が行われる。すなわち、第2のファイル12のデータ転送蓄積処理により、第2のトラックバッファ32の容量上限に達するまでデータを蓄積する。以降、第1のファイル11のデータ転送蓄積処理・データ出力処理と同様に、第2のファイル12に対しても同じ処理を継続して行う。
【0055】
より詳しくは、次のとおりである。
【0056】
蓄積していた第1のファイル11のデータを一部破棄した第1のトラックバッファ31においては、引き続きデータ転送蓄積処理が停止されており、蓄積のデータ量は減少を続ける。一方、新たに再生要求のあった第2のファイル12に対応する第2のトラックバッファ32においては、データ転送蓄積部22は、メモリデバイス10から第2のファイル12のデータをその出力レートより高いレートで読み出し、第2のトラックバッファ32へ転送し、蓄積させる。第2のファイル12のデータが第2のトラックバッファ32における容量上限まで入力されると、そのデータ入力動作を一時停止する。すると、データ出力処理のみが有効となり、第2のトラックバッファ32内のデータ量が減少し始める。
【0057】
この間に、第1のトラックバッファ31において第1のファイル11のデータ量が入力再開レベルまで減少すると、データ転送蓄積部22の動作が再開され、引き続いてメモリデバイス10から第1のファイル11の続きの部分(破棄された部分が優先される)が第1のトラックバッファ31に転送蓄積される。再び第1のファイル11のデータが第1のトラックバッファ31における容量上限まで入力されると、そのデータ入力動作が一時停止され、第1のトラックバッファ31内のデータ量の減少が起きる。
【0058】
第2のトラックバッファ32においても、第2のファイル12のデータ量が入力再開レベルまで減少すると、データ転送蓄積部22の動作が再開され、引き続いてメモリデバイス10から第2のファイル12の続きの部分が第2のトラックバッファ32に転送蓄積される。再び第2のファイル12のデータが第2のトラックバッファ32における容量上限まで入力されると、そのデータ入力動作が一時停止され、第2のトラックバッファ32内のデータ量の減少が起きる。
【0059】
以上の結果、メモリコントローラ20は、メモリバッファ30における第1のトラックバッファ31および第2のトラックバッファ32の両方でデータを枯渇させることなく、常にファイルデータが蓄積しているように制御する。
【0060】
もし、再度、ユーザ操作などで第3のファイル13の再生要求があった場合には、上記と同様の論理のもと、今度はメモリバッファ30を第1のトラックバッファ31と第2のトラックバッファ32と第3のトラックバッファ33の3つに分割し、3つのデータ転送蓄積処理・データ出力処理を並行する(波形図は図示省略)。
【0061】
以上のように、本実施例1は再生要求対象のファイル数に応じてメモリバッファ30の分割数を調整しながらメモリバッファ30を複数に分割する処理を動的に適応しながら実行する。
【0062】
本実施例1では、メモリを3つに分割することを説明したが、nを2以上の任意の自然数として、最大n個まで分割することができる。
【0063】
本実施例1によれば、1つのファイルについてデータ転送蓄積処理を行う場合は、メモリバッファ30の全領域を使用することができる。しかも、複数のファイルについてデータ転送蓄積処理を行う場合は、メモリバッファ30を複数に分割し、得られた複数のトラックバッファ31,32,33を全体として効率良く利用することができる。
【0064】
また、分割機能があるためメモリバッファ30は1つだけでよく、システム全体の回路規模をあまり増大させることなく、複数ファイルのショックプルーフ機能を伴う同時再生の機能を付加することができる。
【0065】
また、複数のファイルを同時に出力し、各ファイルデータを出力部41,42,43にあるディジタル信号処理部でデコードする場合、再生システム構成として1つのメモリバッファ30でよいため、再生システム全体の回路規模をあまり増大させなくてすむ。また、同じシステム構成で、従来技術と同様の単一ファイルの再生装置としての機能も確保している。
【0066】
また、従来の再生装置に本発明を用いたメモリコントローラ20を使用することで、第1のファイルを第1の出力部のディジタル信号処理でデコードし音声を出力しながら、第2のファイルのタグ情報(例えば、MP3ファイルではID3タグ)を第2の出力部によって取得することができる。
【0067】
なお、本実施例1では、トラックバッファを等分に分割するとしたが、分割するトラックバッファのサイズを等分にする代わりに、新たにデータ転送蓄積処理をするファイルに対するファイル情報より、トラックバッファのサイズを決定する方法を用いてもよい。
【0068】
なお、本実施例1では、メモリバッファ30を分割するサイズについては、ファイル情報より判断する方法としたが、ファイル情報としてデコードするファイルのファイルサイズを用いてトラックバッファのサイズを決定する方法を用いてもよい。ファイルサイズを含むファイル情報を基にトラックバッファの分割サイズを決定する方法を用いると、本実施例1での等分のトラックバッファサイズよりファイルサイズが小さい場合は、ファイルサイズ分に相当する領域だけを新たなトラックバッファとして割り当てることにより、分割前に制御していたファイルのトラックバッファの領域を十分に確保できる。併せてトラックバッファを分割するときに、蓄積データを破棄する量Qも本実施例1のデータを破棄する量より削減できる。
【0069】
また、ファイル情報として再生するファイルの映像情報か音声情報かの区別を表す情報を用いてトラックバッファのサイズを決定する方法を用いてもよい。映像情報か音声情報かの区別を表す情報を含むファイル情報を基にトラックバッファの分割サイズを決定する方法を用いると、映像情報のファイルは、音声情報より1単位の再生時間当たりに占めるデータ量が大きいため、映像情報のファイルに対するトラックバッファの分割サイズを多く確保する。例えば、映像情報と音声情報を2対1の割合でメモリバッファ30を分割する方法がある。
【0070】
また、映像情報か音声情報であるかを判別するには、ファイルの拡張子で判別する方法がある。ファイルの拡張子で映像情報か音声情報かを判別するには、メモリデバイス10にあるファイル位置情報を記載しているファイルシステムにファイル名を示す情報があり、通常はファイルの位置情報とともにファイル名の情報も合わせて取得する。ファイル名にはファイルの情報を示す拡張子が付加されている。拡張子については、映像情報としては、Windows(登録商標) Media Video(WMV)や、Real Video(RM)や、Motion JPEG(AVI、MOV)などの拡張子がある。音声情報としては、MpegI−Layer3(MP3)や、WMA(Windows(登録商標) Media Audio)や、Mpeg4 AAC(M4A)などの拡張子がある。
【0071】
さらに、ファイル情報として再生するファイルのビットレート情報を用いてトラックバッファのサイズを決定する方法を用いてもよい。第2のファイルのビットレート情報が予め分かっていて、第2のファイルのビットレートが第1のファイルより高い場合は、第2のファイルに対するトラックバッファの容量を多く確保する。高ビットレートのファイルは、単位時間当たりの必要なデータ量が多いため、トラックバッファから出力するデータ量も多くなる。高ビットレートのファイルの場合は、トラックバッファ内のデータが枯渇する可能性が高くなる。以上より、この方法を用いてメモリバッファ30を分割すると、高ビットレートのファイルのトラックバッファの容量を多く確保するため、データが枯渇することを減少させるという効果が得られる。
【0072】
ビットレート情報については、圧縮ファイルをデコードすることで、圧縮ファイルに記載されているヘッダ情報より取得することができる。一度はデコードする必要があるため、メモリバッファ30でトラックバッファのサイズを予め設定した容量としておき(決め打ち)、ビットレート情報を取得するまで決め打ちしたトラックバッファの容量でファイルをデコードする。ビットレート情報を取得した後は、決め打ちしたトラックバッファのサイズを再度変更することで、最適なトラックバッファの容量にする。
【0073】
(実施例2)
実施例2において、実施例1を発展させた、ビデオオンデマンドに代表される映像情報や音声情報を配信するデータ配信装置を含むデータ配信システムについて説明する。
【0074】
図3は本発明の実施例2におけるデータ配信装置を含むデータ配信システムの構成を示すブロック図である。複数の出力部41,42,43は、視聴するユーザ側にある複数の端末装置401,402,403の各々に含まれている。また、メモリコントローラ20とメモリバッファ30とは実施例1と同様のものであり、これらがデータを配信する側のデータ配信装置200を構成している。
【0075】
次に、上記のように構成された本実施例のデータ配信装置200の動作を説明する。
【0076】
第1の端末装置401側からのファイルの再生要求に応じて、データ配信装置200にあるメモリコントローラ20がメモリデバイス10から第1のファイルを読み出し、メモリバッファ30へデータを入力し、メモリバッファ30から第1の端末装置401にファイルデータを配信する。第2の端末装置402から別のファイルの再生要求があると、実施例1に記載のようにメモリバッファ30を分割する処理を行い、第1の端末装置401からの再生要求と同様にして、メモリコントローラ20がメモリデバイス10から第2のファイルを読み出し、メモリバッファ30へデータを入力し、メモリバッファ30から第2の端末装置402にファイルデータを配信する。
【0077】
従来のデータ配信システムでは、図8のように、端末装置451,452,453それぞれにメモリバッファ301,302,303が必要であった。これに対して、本実施例では、複数系統に共通のメモリコントローラ20があるので、実施例1と同様にデータ配信装置200のメモリバッファ30を分割して使用でき、端末装置側の個別のメモリバッファ301,302,303が不要になる。
【0078】
本実施例2によれば、データ配信システム全体としてのメモリバッファの資源をデータ配信装置側に一元化でき、システム全体の構成要素を削減できる効果が得られる。この効果により、端末装置単体でのコストを削減することができる。
【0079】
また、外国語試験におけるリスニングシステムにおいても、本実施例2の構成を採用すれば同様の効果を得ることができる。
【0080】
(実施例3)
本発明の実施例3は、メモリデバイスとして半導体メモリが用いられるファイル再生装置についてであり、その技術ポイントは、読み出し対象となっている全ファイルを予めファイルオープンしておくことでファイル読み出し時間を削減することである。
【0081】
本実施例3のファイル再生装置の構成については、実施例1の場合の図1の構成が援用される。その図1において、メモリデバイス10が半導体メモリである場合に相当する。本実施例では、半導体メモリ10と表記する。
【0082】
本実施例3のファイル再生装置の動作を図4のフローチャートに従って説明する。図4はメモリコントローラ20にあるデータ転送蓄積部22が第1のファイル11と第2のファイル12の2つのファイルについて同時的にデータ転送蓄積処理を行う場合の手順を示す。
【0083】
まずステップS1において、第1のファイル11をファイルオープンする。
【0084】
次いでステップS2において、第2のファイル12をファイルオープンする。
【0085】
ファイルオープンによってFAT(File Allocation Table)情報を基に半導体メモリ10内を探索し、ファイル実体位置の探索結果を制御用メモリ(図示せず)に一時的に保持しておくので、その後はデータ読み出しが可能になる。
【0086】
次いでステップS3において、データ読み取りファイルを特定する。第1のファイル11のデータを読み出す場合はステップS4に進み、第2のファイル12のデータを読み出す場合はステップS7に進む。
【0087】
第1のファイル11のデータを読み出すとして進んだステップS4において、第1のファイル11のファイルリードを行う。
【0088】
次いでステップS5において、第1のファイル11についてファイル終端まで読み出しが完了したかを判断する。ファイルの終端まで読み出していない場合は、ステップS3まで戻る。また、ファイルの終端まで読み出しが完了した場合は、ステップS6に進む。
【0089】
ステップS6において、第1のファイル11をファイルクローズし、単一ファイルの読み出し処理に戻る。
【0090】
一方、ステップS3で第2のファイル12のデータを読み出すとして進んだステップS7においては、第2のファイル12のファイルリードを行う。
【0091】
次いでステップS8において、第2のファイル12についてファイル終端まで読み出しが完了したかを判断する。ファイルの終端まで読み出していない場合は、ステップS3まで戻る。ファイルの終端まで読み出しが完了した場合は、ステップS9に進む。
【0092】
ステップS9において、第2のファイル12をファイルクローズし、単一ファイルの読み出し処理に戻る。
【0093】
2つのファイルに対する同時的なデータ転送蓄積処理において、いずれか一方のファイルの読み出しがファイル終端まで完了してステップS6またはS9のファイルクローズ処理を行った後は、ステップS7またはS4のファイルリード処理より、処理を継続する。以降、ファイル終端を検出する(ステップS8またはS5)までファイルリード(ステップS7またはS4)を繰り返し行う。これが単一ファイルの読み出し処理である。この単一ファイルの読み出し処理では、データ読み取りファイルを特定する処理(ステップS3相当)は、ある1つのファイル側のみとなる。その他の処理については実施例1と同様であるので、詳しい説明は省略する。
【0094】
3つ以上のファイルを再生する場合も予めすべてのファイルをファイルオープンにし、あとは同様の論理で処理が展開される。
【0095】
本実施例3によれば、複数のファイルについて予めファイルオープンした状態で各ファイルからデータを読み出すように制御するので、読み出しファイルを順次切り替えるごとにファイルオープンとファイルクローズを行う必要がなく、ファイル読み出し時間の削減が図られる。
【0096】
再生対象ファイルのすべてについてファイルオープンすることに代えて、一部のファイルを優先してファイルオープンする方法もある。ファイルオープン処理ではFAT情報より探索した結果を一時的に制御用メモリ(図示せず)に保持しておく必要がある。制御用メモリに割り当てられた容量以上に探索結果を保持できない。制御用メモリの容量には限界があるため、必然的に同時的にファイルオープンするファイル数も制限がある。
【0097】
そこで、ファイルサイズやビットレートや映像・音声の区別などのファイル情報を基にしてファイルオープンの優先順位を決めることにする。つまり、同時にファイルオープンするファイル数に制限を設ける。あるファイルについてデータ転送蓄積処理が完了したときは、ファイルクローズ処理を行って制御用メモリを開放し、次順位のファイルのファイルオープンを許可する。このようにすれば、同時的にファイルオープンするファイル数に制限があるシステムにおいても、上記同様にファイル読み出し時間の削減効果が期待できる。
【0098】
(実施例4)
本発明の実施例4は、メモリデバイスとして光ディスクが用いられるファイル再生装置についてであり、その技術ポイントは、光ディスク上のファイル位置に関してピックアップ装置の基準位置から遠くに離れるファイルほどデータ転送蓄積処理において優先することにより、トラックバッファにおけるデータ枯渇を回避することである。基準位置から遠くに離れるファイルほど、ピックアップ装置がそのファイルにシークするまでの時間が長くかかり、時間的なロスのためにデータ枯渇を招来する可能性が高くなる。この不都合を回避するのが主旨である。
【0099】
本実施例4のファイル再生装置の構成については、実施例1の場合の図1の構成が援用される。その図1において、メモリデバイス10が光ディスクである場合に相当する。本実施例では、光ディスク10と表記する。
【0100】
図5は光ディスク10上のファイル位置とピックアップ装置50の関係を示す模式図である。メモリコントローラ20におけるメモリ制御部21は、複数のファイル11,12,13の光ディスク10上の物理的な位置情報を取得し、基準位置からの離間距離の順番を計算し、優先順位を決める機能(ファイル判別機能)を持っている。離間距離が最も大きいものを第1順位とする。このとき、ピックアップ装置50が光ディスク10上でシーク動作をするときの移動距離の物理的平均値を基準にして、個々のファイル11,12,13の記録位置までの距離の大小比較に基づいて優先順位が決定される。
【0101】
図2で説明したように、各トラックバッファ31,32,33においてファイルデータの蓄積量がデータ出力に伴って漸減し入力再開レベルに達すると、データ転送蓄積処理が再開される。その入力再開レベルを優先順位に応じて可変する。すなわち、優先順位が高いファイルのトラックバッファほど、入力再開レベルを高めに設定する。入力再開レベルはメモリコントローラ20によって各トラックバッファに個別に記録されるようになっている。
【0102】
優先順位が高いファイルほどトラックバッファでのデータ枯渇を生じやすい。そこで、優先順位が高いファイルに対応するトラックバッファほど、入力再開レベルを高めに設定して、データ転送蓄積処理の再開タイミングをより早期化し、データ蓄積量が多めに保たれるようにして、対応するトラックバッファでのデータ枯渇をできるだけ避けるようにする。これの制御はメモリコントローラ20で行われる。
【0103】
図5の例では、基準位置からの離間距離は第3のファイル13が最も大きい。したがって、第3のファイル13が優先順位1位となり、入力再開レベルが最も高く設定される。次いでは第2のファイル12が優先順位2位となり、入力再開レベルが次に高く設定される。
【0104】
データ蓄積量の時間的推移をみると、第3のファイル13に対応する第3のトラックバッファ33では他のトラックバッファよりも多くのデータを蓄積することができる。その結果、第3のトラックバッファ33へのピックアップ装置50のアクセスに最も多くの時間がかかるとしても、第3のトラックバッファ33でのデータ枯渇が回避される。
【0105】
なお、ここでは3つのファイルの場合で説明したが、4つ以上のファイルでも同様の動作により同様の効果を得ることができるのはもちろんである。
【0106】
上記では、光ディスク10上でのピックアップ装置50の移動距離の物理的平均値を基準にして離間距離の大小関係を判断するようにしたが、平均値に代えて中央値を用いてもよく、同様の効果を得ることができる。
【0107】
蓄積するファイルデータは、ファイルだけでなく、光ディスク10内にあるファイルの位置情報を格納しているISO9660に代表されるようなファイルシステムを解析することにも利用できる。あるファイルについて、その解析で得られたファイル情報を基に出力部のディジタル信号処理部でデコードしながら、残りのファイルの解析を同時に行う。こうすれば、ファイル解析開始時点からデコードし再生開始するまでの時間を短縮することができる。
【0108】
なお、上記において複数の実施の形態、実施例について説明したが、本発明の趣旨を逸脱しない範囲で、複数の実施の形態、実施例における各構成要素を任意に組み合わせてもよきものである。
【産業上の利用可能性】
【0109】
本発明によるファイル再生装置は、複数ファイルについてデータ蓄積とデータ出力をメモリバッファ1つの分割方式としてあるので、複数ファイルのショックプルーフ機能を伴う同時再生が可能となっている。ひいては、特にUSBメモリプレーヤやCDプレーヤ、DVDプレーヤなどの再生装置およびビデオオンデマンドや外国語試験用リスニング機器などの配信装置として有用であり、その産業上の利用可能性は非常に広くかつ大きい。
【符号の説明】
【0110】
10 メモリデバイス
11 第1のファイル
12 第2のファイル
13 第3のファイル
20 メモリコントローラ
21 メモリ制御部
22 データ転送蓄積部
23 データ出力部
30 メモリバッファ
31 第1のトラックバッファ
32 第2のトラックバッファ
33 第3のトラックバッファ
41,42,43 出力部
50 ピックアップ装置
100 ファイル再生装置
200 データ配信装置
401,402,403 端末装置
Q 蓄積データ破棄量

【特許請求の範囲】
【請求項1】
データを一時的に蓄積するメモリバッファと、前記メモリバッファを制御するメモリコントローラと、複数の出力部とを有し、
前記メモリバッファは、複数のトラックバッファに分割可能に構成され、
前記メモリコントローラは、
前記メモリバッファを前記複数のトラックバッファに分割する機能をもつメモリ制御部と、
メモリデバイスにある複数のファイルのデータを個別に取り込んで前記複数のトラックバッファのうちの対応するものに転送し順次に蓄積させるデータ転送蓄積部と、
前記複数のトラックバッファにあるデータを個別に前記複数の出力部のうち対応するものへ出力させるデータ出力部とを備えた構成とされているファイル再生装置。
【請求項2】
前記メモリ制御部は、前記メモリバッファを前記複数のトラックバッファに分割するに際して、前記複数のファイルのファイル情報を基に複数に分割するように構成されている請求項1に記載のファイル再生装置。
【請求項3】
前記ファイル情報は、ファイルサイズである請求項2に記載のファイル再生装置。
【請求項4】
前記ファイル情報は、ファイルが映像情報か音声情報かの区別を表す情報である請求項2に記載のファイル再生装置。
【請求項5】
前記ファイル情報は、ファイルのビットレート情報である請求項2に記載のファイル再生装置。
【請求項6】
前記メモリデバイスとして半導体メモリを対象とし、前記メモリコントローラは、前記複数のファイルでファイルオープン処理を行うように構成されている請求項1から請求項5までのいずれか1項に記載のファイル再生装置。
【請求項7】
前記メモリデバイスとして光ディスクを対象とし、前記メモリコントローラは、光ディスク上におけるファイルの物理的な位置を検出し、ピックアップ装置の基準位置から遠くに離れているファイルほどその蓄積を優先する機能を有する請求項1から請求項5までのいずれか1項に記載のファイル再生装置。
【請求項8】
複数の端末装置からの各再生要求に対して個別に各端末装置にデータを配信するデータ配信装置であって、前記複数の端末装置の各々は請求項1に記載の前記出力部を具備するものであり、前記データ配信装置は、請求項1に記載の前記メモリコントローラと、前記メモリバッファとを備えているデータ配信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−198405(P2011−198405A)
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願番号】特願2010−63005(P2010−63005)
【出願日】平成22年3月18日(2010.3.18)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】