(57)【特許請求の範囲】
【請求項１】
１フレーズ分のオーディオ波形のサンプル列を所定個数のサンプルからなるブロック単位で圧縮符号化した圧縮符号化データを記憶する記憶手段と、
前記圧縮符号化データの復号をブロック単位で行い、オーディオ波形のサンプル列を出力する再生動作を行う第１および第２のデコーダと、
前記第１または第２のデコーダによる圧縮符号化データの再生を制御する手段であって、ループ再生の指示が与えられた場合に、前記フレーズの開始点以降のサンプル列を再生するための前記圧縮符号化データの復号化を前記第１または第２のデコーダの一方のデコーダに開始させ、前記第１および第２のデコーダを交互に用いて、前記フレーズにおけるループ開始点からループ終了点までのサンプル列を指定された回数だけ繰り返し再生するための復号化を行わせ、その際に、一方のデコーダによりループ終了点のサンプルが再生されるのに続けて、他方のデコーダにより遅滞なくループ開始点以降のサンプル列が再生されるように、一方のデコーダによりループ終了点のサンプルが再生されるのに先立って、他方のデコーダにループ開始点のサンプルを含むブロック以降の圧縮符号化データの復号化を開始させる制御手段と
を具備することを特徴とするオーディオ再生装置。
【請求項２】
前記制御手段は、前記一方のデコーダによってループ終了点のサンプルが再生される直後に、前記他方のデコーダによってループ開始点のサンプルが再生されるように、前記他方のデコーダに前記ループ開始点を含むブロック以降の圧縮符号化データの復号化を開始させる時刻を決定することを特徴とする請求項１に記載のオーディオ再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、オーディオ圧縮符号化データの再生を行うオーディオ再生装置に関する。
【背景技術】
【０００２】
近年、ＭＰ３（ＭＰＥＧ Ａｕｄｉｏ Ｌａｙｅｒ−３）やＡＡＣ（Ａｄｖａｎｃｅｄ Ａｕｄｉｏ Ｃｏｄｉｎｇ）などの符号化・復号化技術が様々な分野において利用されている。
【特許文献１】特許第３６０１４７３号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、ゲーム機などにおいては、ＣＤの再生や放送とは異なり、あるフレーズの途中の区間を繰り返し再生するループ再生がよく行われる。このため、ゲーム機などにおいて、圧縮符号化データの再生を行う場合においても、このループ再生機能が求められる。しかしながら、ＭＰ３等においては、１フレーズ分のオーディオ波形のサンプル列を所定個数のサンプルからなるブロックに分割し、ブロック単位で圧縮符号化を行う。この場合、ループの開始点および終了点は、一般にブロックを構成するサンプル列の途中にある。従って、圧縮符号化データの復号化により、この開始点および終了点間のサンプル列を切れ目なく自然に繰り返し再生することは困難である。なお、特許文献１は、圧縮符号化データを復号化してループ再生を行う技術を開示している。しかしながら、この技術は、１フレーズ分のオーディオデータのループ再生を自然に行うことを可能にするものであり、１フレーズの途中の区間のループ再生を可能にするものではない。
【０００４】
この発明は、以上説明した事情に鑑みてなされたものであり、圧縮符号化データの再生において、フレーズの途中の任意の区間のループ再生をすることができるオーディオ再生装置を提供することを目的としている。
【課題を解決するための手段】
【０００５】
この発明は、１フレーズ分のオーディオ波形のサンプル列を所定個数のサンプルからなるブロック単位で圧縮符号化した圧縮符号化データを記憶する記憶手段と、圧縮符号化データを復号化し、オーディオ波形のサンプル列を出力する再生動作を行う第１および第２のデコーダと、前記第１または第２のデコーダによる圧縮符号化データの再生を制御する手段であって、ループ再生の指示が与えられた場合に、前記フレーズの開始点以降のサンプル列を再生するための前記圧縮符号化データの復号化を前記第１または第２のデコーダの一方のデコーダに開始させ、前記第１および第２のデコーダを交互に用いて、前記フレーズにおけるループ開始点からループ終了点までのサンプル列を指定された回数だけ繰り返し再生するための復号化を行わせ、その際に、一方のデコーダによりループ終了点のサンプルが再生されるのに続けて、他方のデコーダにより遅滞なくループ開始点以降のサンプル列が再生されるように、一方のデコーダによりループ終了点のサンプルが再生されるのに先立って、他方のデコーダにループ開始点のサンプルを含むブロックの圧縮符号化データの復号化を開始させる制御手段とを具備することを特徴とするオーディオ再生装置を提供する。
かかる発明によれば、フレーズの途中の任意の区間のループ再生をすることができる。
【発明を実施するための最良の形態】
【０００６】
以下、図面を参照し、この発明の実施の形態を説明する。
図１はこの発明の一実施形態であるオーディオ再生装置の構成を示すブロック図である。図１において、メモリ１０は、各種のオーディオデータファイルを記憶している。１つのオーディオデータファイルは、効果音などの１フレーズ分のオーディオ波形のサンプル列からＭＰ３などの圧縮符号化アルゴリズムにより得られた圧縮符号化データを格納している。
【０００７】
本実施形態が想定する圧縮符号化アルゴリズムでは、図２（ａ）に示すように、１フレーズ分のサンプル列を、Ｎサンプル（Ｎは所定の整数）からなるブロックに区切り、ブロック単位でサンプル列の圧縮符号化を行う。なお、１フレーズ分のサンプルの個数がＮの整数倍でない場合には、サンプル列の最後尾に０データを補充することにより１フレーズ分のサンプル数をＮの整数倍とし、圧縮符号化を行う。
【０００８】
圧縮符号化の対象となる１フレーズ分のサンプル列は途中がループ再生の対象となるループ区間となっている。図２（ａ）において、ＬＳはループ区間が始まるループ開始点、ＬＥはループ区間が終了するループ終了点を示す。通常、ループ開始点ＬＳおよびループ終了点ＬＥは、図示のようにブロックの途中にある。フレーズの最初からループ開始点ＬＳまでのサンプル数をＮＬＳとした場合、ループ開始点ＬＳのサンプルを含むブロックの番号ＮＢＳは、次式に示すように、ＮＬＳをＮにより除算した値の整数部となる。
ＮＢＳ＝ＩＮＴ（ＮＬＳ／Ｎ）      ……（１）
同様に、フレーズの最初からループ終了点ＬＥまでのサンプル数をＮＬＥとした場合、ループ終了点ＬＥのサンプルを含むブロックの番号ＮＢＥは、次式により与えられる。
ＮＢＥ＝ＩＮＴ（ＮＬＥ／Ｎ）      ……（２）
【０００９】
また、ループ開始点ＬＳを含むブロックにおいて、そのブロックの最初のサンプルからループ開始点ＬＳのサンプルまでのサンプル数Ｎ１は、次式に示すように、ＮＬＳをＮにより除算したときの剰余となる。
Ｎ１＝ＭＯＤ（ＮＬＳ、Ｎ）        ……（３）
同様に、ループ終了点ＬＥを含むブロックにおいて、そのブロックの最初のサンプルからループ終了点ＬＥのサンプルまでのサンプル数Ｎ２は、次式により与えられる。
Ｎ２＝ＭＯＤ（ＮＬＥ、Ｎ）        ……（４）
【００１０】
図２（ｂ）は、圧縮符号化により得られた圧縮符号化データを示している。同図において、＃ｋ（ｋ＝０、１、…）は、各々第ｋブロック（ｋ＝０、１、…）のサンプル列から得られた圧縮符号化データである。各ブロックに対応した圧縮符号化データ全体の先頭には、各種の制御情報からなるヘッダが付加される。このヘッダを構成する情報には、ループ開始点ＬＳおよびループ終了点ＬＥの位置を示すデータＮＬＳおよびＮＬＥが含まれている。
【００１１】
図１において、デコーダ２１および２２は、制御部４０による制御の下、以上説明した圧縮符号化データを復号化し、所定のサンプリング周期ＴＳのサンプル列を出力する装置である。そして、オーディオ出力部３０は、制御部４０による制御の下、デコーダ２１または２２の一方が出力するサンプル列を選択して出力するセレクタ３１と、セレクタ３１から出力されるサンプル列をアナログ信号に変換するＤ／Ａ変換器３２と、このＤ／Ａ変換器３２から出力されるアナログ信号を増幅するアンプ３３と、アンプ３３の出力信号を音として出力するスピーカ３４により構成されている。
【００１２】
制御部４０は、各種のプログラムを記憶したＲＯＭと、このＲＯＭに記憶されたプログラムを実行するＣＰＵと、ＣＰＵによってワークエリアとして使用されるＲＡＭなどにより構成されている。ＣＰＵにより実行されるプログラムの１つとしてゲーム用アプリケーションプログラムがある。このアプリケーションプログラムは、メモリ１０に記憶されたオーディオデータファイル内の圧縮符号化データをデコーダ２１および２２に復号化させ、オーディオ出力部３０により音として再生させる処理を含む。
【００１３】
本実施形態の特徴は、制御部４０のＣＰＵがゲーム用アプリケーションプログラムに従って実行するデコーダ２１および２２並びにオーディオ出力部３０の制御の態様にある。ゲーム用アプリケーションプログラムは、オーディオデータファイル内の圧縮符号化データの再生に関し、通常再生を命じるコマンドと、ループ再生を命じるコマンドの両方を含む。これらのコマンドのいずれを実行するかにより制御部４０によるデコーダ２１および２２並びにオーディオ出力部３０の制御の態様は異なったものとなる。
【００１４】
通常再生を命じるコマンドを実行する場合、制御部４０は、再生対象であるオーディオデータファイルの圧縮符号化データを例えばデコーダ２１に復号化させ、この結果得られる１フレーズ分のオーディオ波形のサンプル列をオーディオ出力部３０に出力させる。
【００１５】
一方、ループ再生を命じるコマンドを実行する場合、制御部４０は、フレーズの開始点以降のサンプル列を再生するための圧縮符号化データの復号化をデコーダ２１または２２の一方に開始させ、デコーダ２１および２２を交互に用いて、フレーズにおけるループ開始点ＬＳからループ終了点ＬＥまでのサンプル列を指定された回数だけ繰り返し再生するための復号化を行わせる。
【００１６】
その際、制御部４０は、デコーダ２１または２２の一方によりループ終了点ＬＥのサンプルが再生されるのに続けて、他方のデコーダにより遅滞なくループ開始点ＬＳ以降のサンプル列が再生されるように、一方のデコーダによりループ終了点ＬＥのサンプルが再生されるのに先立って、他方のデコーダにループ開始点ＬＳのサンプルを含むブロックの圧縮符号化データの復号化を開始させる。また、制御部４０は、一方のデコーダによって再生されたループ終了点ＬＥまでのサンプル列がオーディオ出力部３０のセレクタ３１により選択された後、他方のデコーダによって再生されたループ開始点ＬＳ以降のサンプル列がセレクタ３１によって選択されるように、セレクタ３１の切り換え制御を行う。本実施形態の最大の特徴は、このようなループ終了点ＬＥからループ開始点ＬＳへ再生位置を復帰させるための制御にある。
【００１７】
図３（ａ）および（ｂ）は、このループ終了点ＬＥからループ開始点ＬＳへの再生位置の復帰動作を示すタイムチャートである。また、図４は、本実施形態におけるループ再生の動作例を示すタイムチャートである。なお、図３（ａ）および（ｂ）は、図４における区間Ａ１の動作を詳細に示すものである。以下、これらの図を参照し、本実施形態におけるループ再生の動作例について詳細について説明する。
【００１８】
制御部４０は、あるオーディオデータファイルの圧縮符号化データのループ再生を行う場合、同圧縮符号化データのヘッダからループ開始点ＬＳおよびループ終了点ＬＥを示すデータＮＬＳおよびＮＬＥを読み出す。次に制御部４０は、これらのデータＮＬＳおよびＮＬＥを用いて、前掲式（１）〜（４）に従い、上述したデータＮＢＳ、ＮＢＥ、Ｎ１およびＮ２を求める。そして、制御部４０は、デコーダ２１または２２の一方に、フレーズの開始点以降のサンプル列を再生するための圧縮符号化データの復号化を開始させる。図４に示す例では、制御部４０はデコーダ２１にこのフレーズの開始点以降の復号化を行わせている。また、制御部４０は、この段階では、セレクタ３１にデコータ２１の出力データを選択させている。これによりフレーズの開始点以降のサンプル列がデコーダ２１により再生され、このサンプル列がセレクタ３１により選択され、スピーカ３４から音となって出力される。
【００１９】
その後、制御部４０は、このデコーダ２１において復号化されるブロックおよび再生されるサンプルを監視し、第ＮＢＥブロックの最初から第Ｎ２番目のサンプル、すなわち、ループ終了点ＬＥのサンプルがデコーダ２１により再生される時刻を予測する。そして、図３（ａ）および（ｂ）に示すように、ループ終了点ＬＥのサンプルの予測再生時刻の時間ＴＳだけ後にループ開始点ＬＳのサンプルがデコーダ２２から再生されるようにするための条件として、デコーダ２２にループ開始点ＬＳを含む第ＮＢＳブロック以降の復号化を開始させる時刻を求める。
【００２０】
さらに詳述すると、制御部４０は、ループ終了点ＬＥのサンプルの予測再生時刻に対して下記式（５）により与えられる時間ΔＴだけ前の時刻を、デコーダ２２に第ＮＢＳブロックの復号化を開始させる時刻として設定し、この設定した時刻において、第ＮＢＳブロック以降の復号化をデコーダ２２に開始させる。
ΔＴ＝（Ｎ１−２）・ＴＳ＋τ０              ……（５）
ただし、上記式（５）において、τ０は、デコーダ２２が第ＮＢＳブロックの復号化を開始してから、第ＮＢＳブロックの最初のサンプルが再生されるまでの遅れ時間である。
【００２１】
このような時刻に第ＮＢＳブロック以降の復号化が開始されると、図３（ａ）および（ｂ）に示すように、ループ終了点ＬＥのサンプルがデコーダ２１により再生された後、時間ＴＳだけ経過したときに、ループ開始点ＬＳのサンプルがデコーダ２２により再生される。そして、制御部４０は、このループ終了点ＬＥのサンプルがデコーダ２１により再生されてからループ開始点ＬＳのサンプルがデコーダ２２により再生されるまでの時間内に、セレクタ３１の切り換えを行い、デコーダ２２により再生されるループ開始点ＬＳ以降のサンプル列をセレクタ３１に選択させる。これによりループ開始点ＬＳ以降のサンプル列がスピーカ３４から音となって出力される（以上、図４における区間Ａ１）。
【００２２】
その後、制御部４０は、デコーダ２２において復号化されるブロックおよび再生されるサンプルを監視し、ループ終了点ＬＥのサンプルがデコーダ２２により再生される時刻を予測する。そして、ループ終了点ＬＥのサンプルの予測再生時刻よりも上述した時間ΔＴだけ前の時刻において、デコーダ２１に第ＮＢＳブロックの復号化を開始させる。そして、制御部４０は、このループ終了点ＬＥのサンプルがデコーダ２２により再生されてからループ開始点ＬＳのサンプルがデコーダ２１により再生されるまでの時間内に、セレクタ３１の切り換えを行い、デコーダ２１により再生されるループ開始点ＬＳ以降のサンプル列をセレクタ３１に選択させる。これにより再びループ開始点ＬＳ以降のサンプル列がスピーカ３４から音となって出力される（以上、図４における区間Ａ２）。
【００２３】
以下同様であり、制御部４０は、デコーダ２１および２２にループ区間のサンプル列の再生のための復号化を交互に行わせる。そして、所定回数に亙るループ区間のサンプル列の再生が終わると、制御部４０は、その時点において復号化を行わせているデコーダ（図４に示す例ではデコーダ２１）にフレーズの終了点までのサンプル列を再生させる。
以上のように、本実施形態によれば、圧縮符号化データの再生において、フレーズの途中の任意の区間のループ再生をすることができる。
【００２４】
図５は本実施形態の他の動作例に示すタイムチャートである。この動作例において、再生対象である１フレーズ分のサンプル列は、その途中に第１のループ区間を含み、この第１のループ区間の中にそれよりも小さい第２のループ区間を含む。このようにフレーズが階層構造を有するループを持つ場合であっても、本実施形態において制御部４０は、図示のようにデコーダ２１および２２を交互に用いてループ区間の再生を行う。その際、制御部４０は、再生位置を第２ループ終了点から第２ループ開始点に復帰させる制御、第１ループ終了点から第１ループ開始点に復帰させる制御を行うが、その制御の内容は図３（ａ）および（ｂ）を参照して説明したものと同様である。
【００２５】
以上、この発明の一実施形態について説明したが、この発明にはこれ以外にも他の実施形態が考えられる。例えば次の通りである。
（１）ＭＵＴＥ指示が与えられた場合に復号結果たるサンプルの代わりに０データを出力する機能をデコーダ２１および２２に設け、オーディオ出力部３０におけるセレクタ３１をＯＲゲートに置き換えてもよい。この場合、制御部４０は、ループ終了点ＬＥからループ開始点ＬＳに再生位置を復帰させる動作において、次のような制御を行えばよい。まず、制御部４０は、一方のデコーダ（例えばデコーダ２１とする。）にループ開始点ＬＳを含むブロックの復号化を開始させた際、そのデコーダ２１にＭＵＴＥ指示を送って復号結果の代わりに０データを出力させる。そして、デコーダ２１がループ開始点ＬＳの手前のサンプルの復号化を終えたときにデコーダ２１に対するＭＵＴＥ指示を解除し、デコーダ２１にループ開始点ＬＳ以降のサンプル列を再生させる。これと同時に他方のデコーダ２２にＭＵＴＥ指示を送るのである。この態様においても、上記実施形態と同様な効果が得られる。
【００２６】
（２）復号処理の一時停止する機能および一時停止した状態から復号処理を再開する機能をデコーダ２１および２２に持たせてもよい。すなわち、ブロックの途中であっても、一時停止の指示が与えられた場合には、その時点においてサンプルの出力を停止し、復号処理に用いる全てのレジスタ群の内容を保持し、再開の指示が与えられた場合には、保持したレジスタ群の内容を用いて、復号処理を再開するようにデコーダ２１および２２を構成する。
【００２７】
このようなデコーダ２１および２２を用いた場合、制御部４０の制御負担を軽減することが可能になる。さらに詳述すると、この態様において、制御部４０は、ループ終了点ＬＥからループ開始点ＬＳに再生位置を復帰させる動作において、一方のデコーダ（例えばデコーダ２１とする。）にループ開始点ＬＳを含むブロックの復号化を行わせるとき、ループ開始点ＬＳの１つ手前のサンプルが得られた状態でデコーダ２１の復号処理を一時停止させる。そして、他方のデコーダ２２がループ終了点ＬＥのサンプルを再生した直後、一方のデコーダ２１に復号処理を再開させ、ループ開始点ＬＳ以降のサンプル列を再生させる。この場合、デコーダ２１にループ開始点ＬＳを含むブロックの復号化を開始させる時刻は、ループ終了点ＬＥのサンプルの予測再生時刻の上記ΔＴだけ前の時刻である必要はなく、ΔＴ以上前の時刻であればよい。従って、上記実施形態に比べ、制御部４０によるタイミング制御が容易なものになるという利点がある。
【図面の簡単な説明】
【００２８】
【図１】この発明の一実施形態であるオーディオ再生装置の構成を示すブロック図である。
【図２】同実施形態における圧縮符号化データの内容を説明する図である。
【図３】同実施形態におけるループ終了点からループ開始点への復帰動作の詳細を示すタイムチャートである。
【図４】同実施形態におけるループ再生の動作例を示すタイムチャートである。
【図５】同実施形態におけるループ再生の他の動作例を示すタイムチャートである。
【符号の説明】
【００２９】
１０……メモリ、２１，２２，２３……デコーダ、３０……オーディオ出力部、３１……セレクタ、３２……Ｄ／Ａ変換器、３３……アンプ、３４……アンプ、４０……制御部。
【図１】
0004760440.tif 000002
【図２】
0004760440.tif 000003
【図３】
0004760440.tif 000004
【図４】
0004760440.tif 000005
【図５】
0004760440.tif 000006