(57)【要約】【課題】  圧縮率が大きく、しかも、発音レイテンシーが小さいデータ圧縮方法を提供する。【解決手段】  フレーム分割部２は、メモリ１内の圧縮前のデータを第１〜第ｎのフレームに分割する。この場合、第１フレームから予め決められた第ｋ（１＜ｋ＜ｎなる整数）フレームまでフレームデータ数が１６、３２、６４・・・１０２４と順次増大するように分割する。そして、フレーム分割部２によって生成された各フレームのデータを、構成要素４〜９によって、等しい帯域幅を持つ複数のサブバンド信号に分割し、該サブバンド信号を心理聴覚分析に基づいて量子化して圧縮済データを生成する。【選択図】    図１
2006337508.tif 000002
【特許請求の範囲】
【請求項１】
圧縮前の複数のデータからなるデータ集合体を第１〜第ｎのフレーム分割し、各フレーム内のデータを複数のサブバンド信号に分割し、該サブバンド信号を心理聴覚分析に基づいて量子化して圧縮済データを生成するデータ圧縮方法において、
前記第１フレームから予め決められた第ｋ（１＜ｋ＜ｎなる整数）フレームまで順次フレームデータ数が増大するように前記データ集合体をフレーム分割することを特徴とするデータ圧縮方法。
【請求項２】
圧縮前の複数のデータからなるデータ集合体を第１〜第ｎのフレームに分割する分割手段と、
前記分割手段によって生成された各フレーム内のデータを複数のサブバンド信号に分割し、該サブバンド信号を心理聴覚分析に基づいて量子化して圧縮済データを生成する圧縮手段とを具備し、
前記分割手段は、第１フレームから予め決められた第ｋ（１＜ｋ＜ｎなる整数）フレームまで順次フレームデータ数が増大するように前記データ集合体を分割することを特徴とするデータ圧縮回路。
【請求項３】
請求項２に記載されるデータ圧縮装置によって圧縮されたデータを伸張するデータ伸張装置において、
各フレームをフレーム単位でデコードして圧縮前データに戻すデコード手段と、
前記デコード手段によってデコードされたデータが順次書き込まれるメモリと、
前記メモリの空き容量に基づいて前記デコード手段におけるデコード処理をオン／オフ制御する制御手段と、
を具備することを特徴とするデータ伸張回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主としてディジタルオーディオデータを圧縮するデータ圧縮方法に係り、特に、圧縮率が大きく、しかも、レイテンシーが小さいデータ圧縮方法およびデータ圧縮回路、データ伸張回路に関する。
【背景技術】
【０００２】
周知のように、ディジタルオーディオデータを圧縮する方法として、ＡＤＰＣＭやＬＰＣ等の線形予測による方法と、ＭＰ３（MPEG Audio Layer 3）やＭＰＥＧ Ａｕｄｉｏ ＡＡＣ（Advanced Audio Coding）等のサブバンド符号化を使用する方法が知られている。
【特許文献１】特許第2734323号公報
【特許文献２】国際公開第WO99/29133号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、線形予測による方法は、発音レイテンシーは小さいが圧縮率が小さい欠点があり、一方、サブバンド符号化による方法は、圧縮率は大きいが発音レイテンシーも大きくなる欠点がある。なお、特許文献１、２には各々、圧縮性能を維持しながら発音レイテンシーを改善したデータ圧縮技術が記載されている。
本発明は上記事情を考慮してなされたもので、その目的は、圧縮率が大きく、しかも、発音レイテンシーが小さいデータ圧縮方法およびデータ圧縮回路並びにデータ伸張回路を提供することにある。
【課題を解決するための手段】
【０００４】
この発明は上述した課題を解決するためになされたもので、請求項１に記載の発明は、圧縮前の複数のデータからなるデータ集合体を第１〜第ｎのフレーム分割し、各フレーム内のデータを複数のサブバンド信号に分割し、該サブバンド信号を心理聴覚分析に基づいて量子化して圧縮済データを生成するデータ圧縮方法において、前記第１フレームから予め決められた第ｋ（１＜ｋ＜ｎなる整数）フレームまで順次フレームデータ数が増大するように前記データ集合体をフレーム分割することを特徴とするデータ圧縮方法である。
【０００５】
請求項２に記載の発明は、圧縮前の複数のデータからなるデータ集合体を第１〜第ｎのフレームに分割する分割手段と、前記分割手段によって生成された各フレーム内のデータを複数のサブバンド信号に分割し、該サブバンド信号を心理聴覚分析に基づいて量子化して圧縮済データを生成する圧縮手段とを具備し、前記分割手段は、第１フレームから予め決められた第ｋ（１＜ｋ＜ｎなる整数）フレームまで順次フレームデータ数が増大するように前記データ集合体を分割することを特徴とするデータ圧縮装置である。
【０００６】
請求項３に記載の発明は、請求項２に記載されるデータ圧縮装置によって圧縮されたデータを伸張するデータ伸張装置において、各フレームをフレーム単位でデコードして圧縮前データに戻すデコード手段と、前記デコード手段によってデコードされたデータが順次書き込まれるメモリと、前記メモリの空き容量に基づいて前記デコード手段におけるデコード処理をオン／オフ制御する制御手段とを具備することを特徴とするデータ伸張回路である。
【発明の効果】
【０００７】
この発明によれば、圧縮率が大きく、しかも、発音レイテンシーが小さいデータ圧縮が可能となる効果が得られる。
【発明を実施するための最良の形態】
【０００８】
以下、図面を参照し、この発明の実施の形態について説明する。図１はこの発明の一実施の形態によるデータ圧縮回路の構成を示すブロック図である。このデータ圧縮回路は、サブバンド符号化方法によってディジタルオーディオデータを圧縮する回路である。ここで、ディジタルオーディオデータが楽曲を再生するためのデータとされる場合には、同図下部に記載されるように、楽曲の立上り部において１フレームのサンプル数を可変としている。すなわち、従来のサブバンド符号化方法においては、１フレームのサンプル数は、例えば１０２４サンプルと固定であるが、この実施形態においては、１フレームのサンプル数が、図に示すように、
１６、３２、６４、１２８、２５６、・・・・、１０２４、１０２４、・・・
となっており、サンプル数が１６から徐々に増加し、１０２４に達した後は、１フレーム＝１０２４サンプルで圧縮処理が行われる。
【０００９】
以下、図１のデータ圧縮回路について詳述する。
図において、符号１は圧縮前のディジタルオーディオデータ（ＰＣＭデータ）が記憶されたメモリである。２はフレーム分割部であり、制御部３からフレームサイズを受け、そのフレームサイズが示すサンプル数のオーディオデータをメモリ１から順次読み出し、サブバンド変換部４および心理聴覚分析部５へ出力する。すなわち、まず、メモリ１から１６サンプル読み出してサブバンド変換部４および心理聴覚分析部５へ出力し、次いで、３２サンプル読み出して出力し、以下、６４サンプル、１２８サンプル、・・・と読み出し、順次、出力する。
【００１０】
サブバンド変換部４は、入力データを等しい帯域幅を持つ例えば３２バンドのサブバンド信号に分割する。この場合、各々のサブバンド信号は１／３２のサンプリング周波数にダウンサンプルされる。スケールファクタ抽出・正規化部６は、１フレームにおける各々のサブバンド信号に対し、最大絶対値を持つサンプルを検出する。その値を量子化したものをスケールファクタと呼ぶ。そして、このスケールファクタによって各サブバンドサンプルを除算し、それらの値を±１の範囲内に正規化する。
【００１１】
一方、心理聴覚分析部５は、ＦＦＴ（高速フーリエ変換）による周波数スペクトルの計算を行い、それに基づき各サブバンド毎のマスキングしきい値、すなわち、許容量子化雑音電力を計算して出力する。ビット割当部７は心理聴覚分析部５の出力と、ビットレートで決まる１フレームで使用可能なビット数の制限の下で反復ループ処理により各サブバンド毎の量子化ビット数を決定する。量子化部８は、各サブバンド毎に設定された量子化ビット数でスケールファクタ抽出・正規化回路６から出力されるサブバンド信号を量子化する。ビットストリーム生成部９は、各部から出力されるデータに基づいて各フレーム毎に図１に示すビットストリームＢＳを作成し出力する。このビットストリームＢＳにおいて、オーディオデータには量子化されたサブバンドサンプルが書き込まれ、サイドデータには、各サブバンドに対するビット割当情報、スケールファクタおよび制御部３から出力されるフレームサイズが書き込まれる。そして、これらのデータにヘッダが付与されてビットストリームＢＳが生成され、ＲＯＭ１０に焼き付けられる。
【００１２】
次に、ＲＯＭ１０内のビットストリームＢＳを読み出し、伸張するデータ伸張回路について説明する。
図２はデータ伸張回路の構成を示すブロック図である。この図において、ＲＯＭ１０から読み出されたビットストリームＢＳのヘッダは制御回路１４へ出力され、サブバンドサンプルおよびサイドデータはビットストリーム解析部１２へ出力される。ビットストリーム解析部１２はＲＯＭ１０から読み出されたビットストリームＢＳから量子化されたサブバンドサンプルおよびサイドデータを分離し、サブバンドサンプルを逆量子化回路１３へ出力し、サイドデータを制御回路１４へ出力する。逆量子化回路１３は、サブバンドサンプルの逆量子化を行い、さらに、スケールファクタを乗算してサブバンドデータとし、各サブバンドに対応した３２サンプル毎にサブバンド合成回路１６へ出力する。
【００１３】
制御回路１４は各部を制御するもので、図示しないＣＰＵ（中央制御装置）からの指示を受けてＲＯＭ１０の読み出しアドレスを生成し、ＲＯＭ１０へ出力する。また、ビットストリーム解析部１２から出力されるサイドデータを受けて、ビット割当情報およびスケールファクタを逆量子化回路１３へ出力する。また、ＦＩＦＯ・１７から出力されるデータＥＤに基づいて上述した逆量子回路１３、サブバンド合成回路１６によるデコード処理を制御する（詳細は後述する）。
【００１４】
サブバンド合成回路１６は、逆量子化回路１３から出力される３２のサブバンドデータを合成して圧縮前のディジタルオーディオデータに戻し、ＦＩＦＯ・１７へ出力する。ＦＩＦＯ・１７は先入れ／先出し型のメモリであり、サンプリングパルスｆｓのタイミングで内部のデータを順次Ｄ／Ａ（デジタル／アナログ）変換器１８へ出力する。また、このＦＩＦＯ・１７は、現在の空き容量を示すデータＥＤを、常時、制御回路１４へ出力する。Ｄ／Ａ変換器１８は、ＦＩＦＯ・１７から出力されるディジタルオーディオデータをアナログ楽音信号に変換し、出力する。
【００１５】
次に、上述したデータ伸張回路の動作を図３のフローチャートを参照して説明する。
制御回路１４は、ＣＰＵからスタート指示を受けると、まず、各部の初期化を行うと共に、ＦＩＦＯ・１７をクリアする（ステップＳ１）。次に、ＲＯＭ１０へ第１フレームを読み出すためのアドレスを出力する。これにより、ＲＯＭ１０から第１フレームのビットストリームＢＳが読み出され、そのヘッダが制御回路１４へ入力され（ステップＳ２）、サブバンドサンプルおよびサイドデータがビットストリーム解析部１２へ入力される。ビットストリーム解析部１２は、ビットストリームＢＳから量子化されたサブバンドサンプルおよびサイドデータを分離し、サブバンドサンプルを逆量子化回路１３へ出力し、サイドデータを制御回路１４へ出力する。
【００１６】
制御回路１４はヘッダデータからそのフレームが第１フレームであるか否かを判断する（ステップＳ３）。そして、第１フレームであった場合は、サイドデータに含まれるビット割当情報およびスケールファクタを逆量子化回路１３へ出力し、逆量子化処理を指示する。逆量子化回路１３は、その指示を受け、サブバンドサンプルの逆量子化を行い、さらに、スケールファクタを乗算してサブバンドデータとしてサブバンド合成回路１６へ出力する。サブバンド合成回路１６は、逆量子化回路１３から出力される３２のサブバンドデータを合成して圧縮前のディジタルオーディオデータに戻し、ＦＩＦＯ・１７へ出力する。このようにしてデコードが行われる（ステップＳ４）。デコードされたディジタルオーディオデータは、ＦＩＦＯ・１７に格納され（ステップＳ５）、格納が終わった時点でＦＩＦＯ・１７の読み出しが開始される（ステップＳ６）。
この第１フレームは、フレームサイズが１６サンプルとされているので、デコード処理（ステップＳ４）に要する時間が短く、遅れがほとんどない発音が行われる。
【００１７】
次に、制御回路１４は、ＲＯＭ１０へ第２フレームを読み出すためのアドレスを出力する。これにより、ＲＯＭ１０から第２フレームのビットストリームが読み出され、そのヘッダが制御回路１４へ入力され（ステップＳ２）、サブバンドサンプルおよびサイドデータがビットストリーム解析部１２へ入力される。ここで、制御回路１４はＦＩＦＯ・１７から現在の空き容量を示すデータＥＤを受け、第２フレームのフレームサイズと空き容量データＥＤとを比較する（ステップＳ７）。なお、各フレームのフレームサイズは、サイドデータ中に存在し、制御回路１４内に設定される。
【００１８】
そして、空き容量データＥＤがフレームサイズより小の場合は、空き容量データＥＤがフレームサイズより大になるまで待機し（ステップＳ７）、大になった時点でビット割当情報およびスケールファクタを逆量子化回路１３へ出力し、逆量子化処理を指示する。以後、上記と同様にしてデコードが行われ（ステップＳ８）、次いで、ＦＩＦＯ・１７への格納が行われる（ステップＳ９）。
【００１９】
以後、ＲＯＭ１０から、第３、第４・・・フレームのビットストリームが順次読み出され、上記と同様にステップＳ７〜Ｓ９の過程でデコードされ、ＦＩＦＯ・１７に順次格納される。一方、ＦＩＦＯ・１７内のデータは、サンプリングパルスｆｓのタイミングでＦＩＦＯ・１７から先入れ／先出しで順次連続的に読み出され、Ｄ／Ａ変換器１８によってアナログ楽音信号に変換され、出力される。通常、ＦＩＦＯ・１７の容量は１０２４×２サンプル分の容量とされ、発音開始直後には十分な空き容量があり、ステップＳ７で待たされることなく、ＦＩＦＯ・１７にサンプルが貯まっていく。未読出のサンプルを徐々に増やしていき、大きなフレームをデコードする余裕を作り出していくのが本発明の原理である。
【００２０】
このように、上記実施形態によれば、楽曲のスタート時のフレームのサンプル数が１６、３２、６４・・・と、本来のサンプル数１０２４より小さい数になっている。周知のように、逆量子化回路１３、サブバンド合成回路１６におけるデコード処理は、サンプル数が少ないほど短時間で処理することが可能となり、従って、上記実施形態によれば、楽曲再生スタート時のレイテンシーを極めて小さくすることができる。但し、１フレームのサンプル数が少ないと圧縮率も小さくなる。そこで、上記実施形態においては、１フレームのサンプル数を、１０２４まで順次大きくしてゆき、楽曲の立ち上がり部分が経過後は本来のサンプル数とすることによって圧縮率も大きくなるようにしている。
【００２１】
なお、スタート時のサンプル数の数列は、上述した数列に限らず、例えば、
１６、１６、３２、３２、６４、６４、・・・
のごとき数列でもよく、あるいは他の数列でもよい。要は、ＦＩＦＯ・１７の読み出しスピードより早くＦＩＦＯ・１７の書き込みを行うことができる数列であればよく、デコード処理のスピードによって決まる。但し、この数列は２のべき乗である方がデータ圧縮回路が簡単になって好ましい。
また、この発明は、楽曲のデータ圧縮に限らず、他の種のディジタルデータの圧縮にも適用可能である。
【産業上の利用可能性】
【００２２】
この発明は、ゲーム機やオーディオ機器等の音源の分野において用られる。
【図面の簡単な説明】
【００２３】
【図１】この発明の一実施形態によるデータ圧縮回路の構成を示すブロック図である。
【図２】この発明の一実施形態によるデータ伸張回路の構成を示すブロック図である。
【図３】同データ伸張回路の動作を説明するためのフローチャートである。
【符号の説明】
【００２４】
１…メモリ、２…フレーム分割部、３…制御部、４…サブバンド変換部、５…心理聴覚分析部、６…スケールファクタ抽出・正規化部、７…ビット割当部、８…量子化部、９…ビットストリーム生成部、１０…ＲＯＭ、１２…ビットストリーム解析部、１３…逆量子化回路、１４…制御回路、１６…サブバンド合成回路、１７…ＦＩＦＯ、１８…Ｄ／Ａ変換器、ＢＳ…ビットストリーム。
【図１】
2006337508.tif 000003
【図２】
2006337508.tif 000004
【図３】
2006337508.tif 000005