(57)【要約】【課題】  符号化効率を保ちながらプリエコーを抑制し、音質の良いビットストリームを効率的に作成すること。【解決手段】    オーディオ入力信号を処理単位に分割するフレーム分割器（１）と、処理単位毎の特徴データを出力する聴覚心理演算器（３）と、特徴データに基づいて、処理単位毎にロングブロック長かショートブロック長かを判定するブロック長判定器（４）と、ロングブロック長の場合に処理単位の許容誤差エネルギーを算出し、ショートブロック長の場合に前記処理単位のオーディオ信号をブロック化し、各ブロックの許容誤差エネルギーを算出するフィルタバンク（２）と、ショートブロックの場合に、前記許容誤差エネルギーに基づいてショートブロックをグループにまとめるグループ判定器（６）と、前記グループ毎または前記処理単位毎に、前記オーディオ信号を符号化する符号化手段（６〜８）とを有する。【選択図】  図１
2005165056.tif 000002
【特許請求の範囲】
【請求項１】
オーディオ入力信号を処理単位に分割する分割手段と、
前記処理単位毎に前記オーディオ入力信号を分析して、特徴データを出力する分析手段と、
前記特徴データに基づいて、前記処理単位毎にオーディオ信号の変換ブロック長がロングブロック長であるかショートブロック長であるかを判定する判定手段と、
ロングブロック長の場合に前記処理単位の許容誤差エネルギーを算出し、ショートブロック長の場合に前記処理単位のオーディオ信号をブロック化し、各ブロックの許容誤差エネルギーを算出する算出手段と、
ショートブロックの場合に、前記許容誤差エネルギーに基づいてショートブロックをグループにまとめるグルーピング手段と、
前記変換ブロック長がショートブロックの場合に前記グループ毎に、ロングブロックの場合に前記処理単位毎に、前記オーディオ信号を符号化する符号化手段と
を有することを特徴とするオーディオ信号符号化装置。
【請求項２】
前記グルーピング手段は、連続するショートブロックの許容誤差エネルギーの差分和が、一方のショートブロックの許容誤差エネルギーの総和の所定割合よりも小さい場合に同じグループであると判断し、大きい場合に異なるグループであると判断することにより、グループにまとめることを特徴とする請求項１に記載のオーディオ信号符号化装置。
【請求項３】
前記グルーピング手段は、連続するショートブロックの許容誤差エネルギーが最大となる分割周波数帯域の位置の差が所定値よりも小さい場合に同じグループであると判断し、大きい場合に異なるグループであると判断することにより、グループにまとめることを特徴とする請求項１または２に記載のオーディオ信号符号化装置。
【請求項４】
前記グルーピング手段は、連続するショートブロックの許容誤差エネルギーが最大となる分割周波数帯域の位置の差が所定値よりも小さく、且つ、当該位置におけるショートブロック間の許容誤差エネルギー差が所定値より小さい場合に同じグループであると判断し、それ以外の場合に異なるグループであると判断することにより、グループにまとめることを特徴とする請求項１または２に記載のオーディオ信号符号化装置。
【請求項５】
前記判定手段により処理対象の処理単位のオーディオ信号の変換ブロック長がショートブロックであり、前後の処理単位のオーディオ信号の変換ブロック長のが共にロングブロックであると判定された場合、最小ブロック数を３に設定する設定手段を更に有することを特徴とする請求項１乃至４のいずれかに記載のオーディオ信号符号化装置。
【請求項６】
前記設定手段は、判定手段により処理対象の処理単位のオーディオ信号の変換ブロック長がショートブロックであり、前後の処理単位のオーディオ信号の変換ブロック長の少なくともいずれか一方がショートブロックであると判定された場合、最小ブロック数を２に設定することを特徴とする請求項５に記載のオーディオ信号符号化装置。
【請求項７】
前記グルーピング手段によりまとめられたグループ数が前記最小ブロック数に満たない場合グルーピングの判断基準を変更して、前記グルーピング手段による処理を再実行することを特徴とする請求項５または６に記載のオーディオ信号符号化装置。
【請求項８】
前記特徴データは、聴覚エントロピーであることを特徴とする請求項１乃至７のいずれかに記載のオーディオ信号符号化装置。
【請求項９】
前記許容誤差エネルギーは、各周波数分割帯域の信号対マスク比の逆数と、各周波数帯域のスペクトルエネルギーの積であることを特徴とする請求項１乃至８のいずれかに記載のオーディオ信号符号化装置。
【請求項１０】
前記符号化手段の符号化形式がMPEG-2/4 AACであることを特徴とする請求項１乃至９のいずれかに記載のオーディオ信号符号化装置。
【請求項１１】
オーディオ入力信号を処理単位に分割する分割工程と、
前記処理単位毎に前記オーディオ入力信号を分析して、特徴データを出力する分析工程と、
前記特徴データに基づいて、前記処理単位毎にオーディオ信号の変換ブロック長がロングブロック長であるかショートブロック長であるかを判定する判定工程と、
ロングブロック長の場合に前記処理単位の許容誤差エネルギーを算出し、ショートブロック長の場合に前記処理単位のオーディオ信号をブロック化し、各ブロックの許容誤差エネルギーを算出する算出工程と、
ショートブロックの場合に、前記許容誤差エネルギーに基づいてショートブロックをグループにまとめるグルーピング工程と、
前記変換ブロック長がショートブロックの場合に前記グループ毎に、ロングブロックの場合に前記処理単位毎に、前記オーディオ信号を符号化する符号化工程と
を有することを特徴とするオーディオ信号符号化方法。
【請求項１２】
前記グルーピング工程では、連続するショートブロックの許容誤差エネルギーの差分和が、一方のショートブロックの許容誤差エネルギーの総和の所定割合よりも小さい場合に同じグループであると判断し、大きい場合に異なるグループであると判断することにより、グループにまとめることを特徴とする請求項１１に記載のオーディオ信号符号化方法。
【請求項１３】
前記グルーピング工程では、連続するショートブロックの許容誤差エネルギーが最大となる分割周波数帯域の位置の差が所定値よりも小さい場合に同じグループであると判断し、大きい場合に異なるグループであると判断することにより、グループにまとめることを特徴とする請求項１１または１２に記載のオーディオ信号符号化方法。
【請求項１４】
前記グルーピング工程では、連続するショートブロックの許容誤差エネルギーが最大となる分割周波数帯域の位置の差が所定値よりも小さく、且つ、当該位置におけるショートブロック間の許容誤差エネルギー差が所定値より小さい場合に同じグループであると判断し、それ以外の場合に異なるグループであると判断することにより、グループにまとめることを特徴とする請求項１１または１２に記載のオーディオ信号符号化方法。
【請求項１５】
前記判定工程において処理対象の処理単位のオーディオ信号の変換ブロック長がショートブロックであり、前後の処理単位のオーディオ信号の変換ブロック長のが共にロングブロックであると判定された場合、最小ブロック数を３に設定する設定工程を更に有することを特徴とする請求項１１乃至１４のいずれかに記載のオーディオ信号符号化方法。
【請求項１６】
前記設定工程では、判定工程において処理対象の処理単位のオーディオ信号の変換ブロック長がショートブロックであり、前後の処理単位のオーディオ信号の変換ブロック長の少なくともいずれか一方がショートブロックであると判定された場合、最小ブロック数を２に設定することを特徴とする請求項１５に記載のオーディオ信号符号化方法。
【請求項１７】
前記グルーピング工程においてまとめられたグループ数が前記最小ブロック数に満たない場合グルーピングの判断基準を変更して、前記グルーピング工程を再実行することを特徴とする請求項１５または１６に記載のオーディオ信号符号化方法。
【請求項１８】
前記特徴データは、聴覚エントロピーであることを特徴とする請求項１１乃至１７のいずれかに記載のオーディオ信号符号化方法。
【請求項１９】
前記許容誤差エネルギーは、各周波数分割帯域の信号対マスク比の逆数と、各周波数帯域のスペクトルエネルギーの積であることを特徴とする請求項１１乃至１８のいずれかに記載のオーディオ信号符号化方法。
【請求項２０】
前記符号化工程の符号化形式がMPEG-2/4 AACであることを特徴とする請求項１１乃至１９のいずれかに記載のオーディオ信号符号化方法。
【請求項２１】
情報処理装置が実行可能なプログラムであって、前記プログラムを実行した情報処理装置を、請求項１乃至１０のいずれかに記載のオーディオ信号符号化装置として機能させることを特徴とするプログラム。
【請求項２２】
請求項１１乃至２０のいずれかに記載のオーディオ信号符号化方法を実現するためのプログラムコードを有することを特徴とする情報処理装置が実行可能なプログラム。
【請求項２３】
請求項２１又は２２に記載のプログラムを記憶したことを特徴とする情報処理装置が読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルオーディオ信号の符号化装置及び方法に関し、特に、変換ブロック長の変更が可能な変換符号化技術を利用したオーディオ信号符号化装置及び方法に関する。
【背景技術】
【０００２】
近年、高音質、かつ高効率なオーディオ信号符号化技術は、DVD-Videoの音声トラックや、半導体メモリやHDDなどを利用した携帯オーディオプレイヤー、インターネットを介した音楽配信、家庭内LANにおけるホームサーバへの楽曲蓄積などに広く利用され、幅広く普及するとともにその重要性も増している。
【０００３】
このようなオーディオ信号符号化技術の多くは、変換符号化技術を利用して時間周波数変換を行っている。例えば、MPEG-2 AACやDolby Digital(AC-3)などでは、MDCTなどの直交変換単体でフィルタバンクを構成しており、MPEG-1 Audio Layer3(MP3)やATRAC(MDに利用されている符号化方式)では、QMFなどのサブバンド分割フィルタと直交変換を多段接続してフィルタバンクを構成している。
【０００４】
変換符号化方式では、基本的にはフィルタバンクによって周波数成分に変換された入力信号を、人間の聴覚の周波数分解能に基づいて設定される分割周波数帯域ごとにまとめ、量子化時に各分割周波数帯域毎の正規化係数を決定し、正規化係数と量子化スペクトルの組み合わせで周波数成分を表現することで情報量を削減している。MPEG-2 AACでは、この分割周波数帯域をスケールファクタバンド（ＳＦＢ）と呼び、正規化係数をスケールファクタと呼称する。
【０００５】
更に、これらの高効率オーディオ符号化技術では、人間の聴覚特性を利用したマスキング分析を行うことによって、マスキングされると判断したスペクトル成分を取り除く、あるいはマスクされる量子化誤差を許容することにより、スペクトルを表現するための情報量を削減し、圧縮効率を高めている。
【０００６】
これらの高効率オーディオ符号化技術で用いられているマスキング分析は、主に、静寂時の可聴周波数領域によるマスキングと、臨界帯域におけるマスカーによる周波数マスキングである。
【０００７】
上記マスキング分析により、人間に感知できないと判断される信号は主に高周波域の信号になるため、通常の場合、高周波成分の量子化誤差は多少大きくなってもマスキングされ得る。
【０００８】
ところが、変換符号化方式では、オーディオ入力信号に急激な変化がある、いわゆる過渡状態の場合、急激な変化が起こっている部分の高周波成分の量子化誤差が、急激な変化の直前や直後の信号にまで影響を与えるため、リンギングノイズが生じる。
【０００９】
人間の聴覚特性として、大きな音が発生した場合、その直前と直後の時間は音が聞こえづらくなる。これを時間マスキング効果という。大きな音の後に聞こえなくなる時間は、個人差はあるが約100msec程度と比較的長い。しかしながら、直前に働くマスキング効果の時間（プリマスキング時間）は約5〜6msecと短い。従って、リンギングノイズが生じると、大きな音の前のノイズは感知されやすくなってしまう。これは一般にプリエコーと呼ばれる現象である。
【００１０】
以下、この現象を図を用いて説明する。
【００１１】
図１１（ａ）は、急激に振幅が変化しているオーディオ入力信号の一例である。この信号を、MPEG-2 AACの通常の変換ブロック長である2048サンプルブロックで符号化・復号化したオーディオ信号の例を図１１（ｂ）に示している。図示したように急激な信号の変化の部分で生じている高周波域の量子化誤差が、ブロック全域に亘って影響している。
【００１２】
前述したように、振幅が急激に変化する部分の直前では、時間マスキング効果によって人間はノイズを感知できない。しかしながら、入力信号が音楽用CDに用いられているPCM信号と同様な44.1KHzサンプリング周波数を用いていると仮定して、ブロック長を時間に換算すると、2048サンプルブロックの時間は2048÷44100×1000＝約46.44msとなるため、この前半の時間にノイズが生じているとしてもプリマスキング時間をはみだしてしまい、人間はプリエコーを感知してしまう。
【００１３】
これを抑制するための一方法として、種々のオーディオ符号化方式では、入力信号の急激な変化を検知して変換ブロック長を短くすることにより、急激な変化による高周波成分の量子化誤差が、変化直前の部分に及ばないようにすることで、プリエコーの発生を抑制している。
【００１４】
図１２では、MPEG-2 AACにおけるショートブロック長である256サンプルブロックで図１１（ａ）に示すオーディオ信号を符号化、復号化した信号を示している。この場合、入力信号の急激な変化による高周波数域の量子化誤差の影響は、変化が発生している256サンプルブロックの中に閉じ込められてしまう。先ほどと同様に、このブロック長を44.1KHzサンプリング周波数で時間に換算すると、約5.80msとなるため、プリマスキング効果によりこのノイズを人間はほぼ感知できなくなり、結果としてプリエコーは消える。
【００１５】
ところが、一般にブロック長を短くすると、周波数分解能が落ちることによりマスキング分析の精度が落ちるばかりでなく、量子化時に使用するスケールファクタバンドがブロックの数だけ増大するために、スケールファクタによって消費される情報量が増えてしまい、量子化時に本来ならスペクトル情報に割り当てるべきビットがスケールファクタに消費されてしまうため、符号化効率が低下する。その結果、特に低ビットレート時には量子化誤差が厳密にマスキングできなくなるため、ブロック長が長い場合に比較して、ノイズが感知されやすくなる恐れがある。
【００１６】
そこで、MPEG-2 AACでは、ショートブロックで処理するときに、各ブロックに含まれる信号の特性によって複数のブロックをグループ化し、同じグループに含まれるブロックではスケールファクタを共有することによって、スケールファクタによって消費されるビットを削減する仕組みが規格上定められている。これをグルーピングと呼ぶ。
【００１７】
MPEG-2 AACでは、適切なグルーピングを行うことによって、ショートブロックで変換を行った場合の符号化効率の低下を抑制しつつ、効果的にプリエコーの発生を抑えることが可能である。
【００１８】
グルーピングではスケールファクタを異なるショートブロックで共有するため、本来ならば、スケールファクタを決定した後で、スケールファクタのパターンが似通っているショートブロックを同じグループにまとめることが望ましい。また、スケールファクタは入力信号の変化に応じて変化するため、ショートブロックのグループも入力信号の変化に合致していないと、復号時の量子化誤差が大きくなる可能性がある。
【００１９】
また、符号化効率を優先するあまりに多くのショートブロックを同じグループにしてしまうと、量子化誤差が聴覚上感知できるレベルまで大きくなってしまう危険性がある。MPEG-2 AACの場合、非特許文献１に記載の規格上ではショートブロックは必ず２つ以上のグループから構成されることになっている。
【００２０】
特許文献１には、隣接するブロック、もしくはグループを統合した場合のスペクトル変動指標を全ての組み合わせで算出し、この変動指標と閾値を比較することによってグループの判定を行う技術が開示されている。
【００２１】
また、特許文献２には、ブロック浮動演算のコンテキストにおいて、隣接するブロックのスケールファクタを共有する方法が提案されている。
【００２２】
しかしながら、ショートブロックとなるフレームが連続している場合は、１つのフレーム内に２つのグループという分け方も考えられるが、ショートブロックフレームが単体で存在する場合は、過渡状態前の部分と、信号が激しく変化している部分と、変化後の定常状態に戻る部分という少なくとも３つ以上のグループが構成されることが望ましい。
【００２３】
【特許文献１】特開２００３−１０８１９２号公報
【特許文献２】特開平４−３０４０３１号公報
【非特許文献１】ISO/IEC  １３８１８−７
【発明の開示】
【発明が解決しようとする課題】
【００２４】
ところが、MPEG-2 AAC規格書（非特許文献１参照）には、グルーピング情報をビットストリーム上に格納する書式情報や、グルーピング情報の復号化方法は記載されているものの、ショートブロックのグループを決定する方法についての記述が一切されていない。
【００２５】
また、ISOのMPEG-4 Ver.1リファレンスプログラムでは、グループ分けのパターンを予め決めておいて、全てのショートブロックフレームを同じグループパターンで処理するように実装されているが、これでは刻々と変化する入力情報とグルーピングパターンが合致せず、音質が劣化してしまう。
【００２６】
最も単純なグループ判定手法としては、全てのブロックのスケールファクタを算出した後に、隣接するブロック間でスケールファクタの類似の度合いを判定することによってグループを判定する方法がある。しかし、スケールファクタが実際に決定されるのは量子化処理後であるため、この手法では、グループ判定後に再度量子化をやり直すことになってしまい、処理量のオーバヘッドが著しく大きくなってしまうため、現実的ではない。
【００２７】
また、特許文献１に記載の方法では、変動指標を計算するために多くの計算量が要求され、また、グループ統合の決定を行う度に繰り返し計算を行わなければならないため結果として処理効率が落ちる。また、繰り返し計算を行う度に変動指標に累積される誤差が増して、結果として入力信号に合致しないグルーピングが行われてしまう可能性がある。
【００２８】
また、特許文献２に記載の方法では、ブロックのスペクトルピークのみを用い、ピーク間の差分が固定値を超えているかどうかで判断しているが、周波数軸上でピークがどこに現れるかについて考慮されていない。
【００２９】
また、これらの先行技術では、前後フレームの状況より考えられる最小グループ数は考慮されていない。
【００３０】
本発明は上記問題点を鑑みてなされたものであり、符号化効率を保ちながらプリエコーを抑制し、音質の良いビットストリームを効率的に作成することを目的とする。
【課題を解決するための手段】
【００３１】
上記目的を達成するために、本発明のオーディオ信号符号化装置は、オーディオ入力信号を処理単位に分割する分割手段と、前記処理単位毎に前記オーディオ入力信号を分析して、特徴データを出力する分析手段と、前記特徴データに基づいて、前記処理単位毎にオーディオ信号の変換ブロック長がロングブロック長であるかショートブロック長であるかを判定する判定手段と、ロングブロック長の場合に前記処理単位の許容誤差エネルギーを算出し、ショートブロック長の場合に前記処理単位のオーディオ信号をブロック化し、各ブロックの許容誤差エネルギーを算出する算出手段と、ショートブロックの場合に、前記許容誤差エネルギーに基づいてショートブロックをグループにまとめるグルーピング手段と、前記変換ブロック長がショートブロックの場合に前記グループ毎に、ロングブロックの場合に前記処理単位毎に、前記オーディオ信号を符号化する符号化手段とを有する。
【００３２】
また、本発明のオーディオ信号符号化方法は、オーディオ入力信号を処理単位に分割する分割工程と、前記処理単位毎に前記オーディオ入力信号を分析して、特徴データを出力する分析工程と、前記特徴データに基づいて、前記処理単位毎にオーディオ信号の変換ブロック長がロングブロック長であるかショートブロック長であるかを判定する判定工程と、ロングブロック長の場合に前記処理単位の許容誤差エネルギーを算出し、ショートブロック長の場合に前記処理単位のオーディオ信号をブロック化し、各ブロックの許容誤差エネルギーを算出する算出工程と、ショートブロックの場合に、前記許容誤差エネルギーに基づいてショートブロックをグループにまとめるグルーピング工程と、前記変換ブロック長がショートブロックの場合に前記グループ毎に、ロングブロックの場合に前記処理単位毎に、前記オーディオ信号を符号化する符号化工程とを有する。
【００３３】
また、処理対象の処理単位のオーディオ信号の変換ブロック長がショートブロックであり、前後の処理単位のオーディオ信号の変換ブロック長のが共にロングブロックであると判定された場合、最小ブロック数を３に設定する。更に、処理対象の処理単位のオーディオ信号の変換ブロック長がショートブロックであり、前後の処理単位のオーディオ信号の変換ブロック長の少なくともいずれか一方がショートブロックであると判定された場合、最小ブロック数を２に設定する。
【発明の効果】
【００３４】
上記構成によれば、フレーム内の符号量を割り当てる基準となる許容誤差エネルギーが類似しているブロックを同じグループと判定することによって、人間の聴覚特性に合致した適切なグループ判定が可能になり、プリエコーの発生を抑えながら、ショートブロック選択による符号化効率の低下を防止することにより、高音質なビットストリームを効率的に作成することができる。
【００３５】
更に、グループ判定に用いる閾値に、時間的に直前に位置するブロックの許容誤差エネルギーを用いることによって、入力信号が変化している部分を確実にグループの分割点として判断することが可能となり、入力信号の変化に応じた正確なグルーピング結果を得ることができる。
【００３６】
また、前後フレームのブロック長から最小グループ数を設定し、多くのブロックが同じグループに固まることによる量子化誤差の増大を防ぐことにより、適切なグルーピング結果を得ることができる。
【発明を実施するための最良の形態】
【００３７】
以下、添付図面を参照して本発明を実施するための最良の形態を詳細に説明する。
【００３８】
＜第１の実施形態＞
図１は、本第１の実施形態におけるオーディオ信号符号化装置の一構成例を示すブロック図である。
【００３９】
図１の構成において、１はオーディオ入力信号を処理単位であるフレームに分割するフレーム分割器である。ここで分割されたフレームは後述するフィルタバンク２と聴覚心理演算器３とに送出される。聴覚心理演算器３は、入力されたフレーム単位のオーディオ入力信号を分析し、聴覚エントロピー値の算出と、量子化単位となる分割周波数帯域毎のマスキング計算を行う。この演算の結果、聴覚エントロピー（ＰＥ）値をブロック長判定器４に、また、各分割周波数帯域毎の信号対マスク比(Signal Mask Ratio:SMR)をグループ判定器５にそれぞれ出力する。
【００４０】
ブロック長判定器４は、聴覚心理演算器３から送出されるＰＥ値と予め定められているＰＥ閾値とを比較して変換ブロック長を判定し、フィルタバンク２に通知する。なお、本第１の実施形態において、ＰＥ閾値は予め決定され、ブロック長判定器４に保持されている。
【００４１】
フィルタバンク２は、フレーム分割器１から入力されたフレーム単位の入力時間信号をブロック長判定器４によって指定された長さのブロック長の周波数スペクトルに変換する。
【００４２】
グループ判定器５は、聴覚心理演算器３から送出される分割周波数帯域ごとのＳＭＲ値とフィルタバンク２から出力されるスペクトル列より、分割周波数帯域毎の許容誤差エネルギーを算出するとともに、スペクトル列がショートブロックの組の場合にのみ、許容誤差エネルギーに基づいてショートブロックのグループ判定を行う。
【００４３】
６はビット割当て器であり、聴覚心理演算器３より送出される分割周波数帯域毎のＳＭＲ値やフィルタバンク２から出力される周波数スペクトルを参照して、各分割周波数帯域に割り当てるビット量を決定する。７は量子化器であり、フィルタバンク２が出力する周波数スペクトルの正規化係数（スケールファクタ）を各周波数帯域毎に算出し、ビット割当て器６が出力する、各周波数帯域に割り当てられたビット量に従って周波数スペクトルを量子化する。８はビット整形器であり、量子化器７が出力するスケールファクタと量子化スペクトルを適宜規定のフォーマットに整形してビットストリームを作成し、出力する。
【００４４】
上記構成を有するオーディオ信号符号化装置におけるオーディオ信号の符号化処理動作を、図２を参照して以下に説明する。
【００４５】
なお、本第１の実施形態では説明の便宜のために符号化方式としてMPEG-2  AACを例にとって説明するが、グルーピングを行うその他の符号化方式についても同様な方法で実現可能である。また、符号化処理対象となる入力オーディオ信号としては、例えば、オーディオＰＣＭファイル、マイクで捉えたリアルタイムの音声信号をアナログ・デジタル変換した信号が挙げられるが、これらに限られるものではない。
【００４６】
まず、ステップＳ１において、図１に示す各部の初期化を行う。このとき、本第１の実施形態ではＰＥ閾値の初期値として2000が与えられ、ブロック長判定器４に格納される。
【００４７】
次に、ステップＳ２において、符号化する入力オーディオ信号が終了したかどうかを判定する。入力信号が終了している場合はステップＳ１５へ進み、未終了の場合はステップＳ３へ進む。ステップＳ３では、入力オーディオ信号は、フレーム分割器１によって処理単位であるフレームに分割され、フィルタバンク２と聴覚心理演算器３に送出される。MPEG-2 AAC LC(Low-Complexity)プロファイルの場合、１フレームは1024サンプルのＰＣＭ信号で構成される。フレーム分割後、ステップＳ４に進む。
【００４８】
ステップＳ４では、入力オーディオ信号に対してフレーム毎に聴覚心理演算器３によって聴覚エントロピー（ＰＥ）と、量子化単位である各周波数帯域ごとのマスキング計算を行って信号対マスク（ＳＭＲ）値を算出する。このＳＭＲ値はロングブロック長の場合の値とショートブロック長の場合の値が両方とも算出される。なお、ＭＤＣＴにおけるエイリアシング除去を確実に行うために、ブロック長の判定は１フレーム分先行して行なう必要があるため、聴覚心理演算器３による聴覚分析は、符号化対象フレームよりも１フレーム分時間的に後となるフレーム（以下、先行フレーム）に対して行われる。次に、ステップＳ６で、ブロック長判定器４により、算出された先行フレームのＰＥ値とブロック長判定器４内に予め設定されたＰＥ閾値とを比較する。ここで、ＰＥ閾値よりも先行フレームのＰＥ値が大きい場合は、先行フレームに短いブロック（ショートブロック）長を使用すると判定し、そうでない場合は、先行フレームに長いブロック（ロングブロック）長を使用すると判定する。次に、前回に判定された当該フレーム長と今回判定された先行フレーム長の判定結果に基づいて、当該フレームの変換ブロック長を正式に決定する。この結果、当該フレームにロングブロック長を使用する場合はステップＳ７へ進み、当該フレームにショートブロック長を使用する場合はしてステップＳ１０に進む。以下に説明するように、フィルタバンク２では、この決定に沿ったブロック長で、入力信号を周波数スペクトルへ変換することになる。なお、先行フレームのブロック長判定結果は、次回の（先行フレームが符号化対象フレームとなる）ブロック長判定に使用されるまで、ブロック長判定器４内に保持される。
【００４９】
ステップＳ１０では、フィルタバンク２により処理対象フレームに対してロングブロック長による直交変換を行う。MPEG-２ AACの場合、直交変換によるエイリアシングを除去するために、変換ブロック長の幅の窓掛け処理を行った上で、MDCTによる重複変換が行われる。時間周波数変換では、処理対象フレームとその直前のフレームを合わせた２０４８サンプルを一単位として入力し、１０２４個の周波数スペクトルを得る。このとき、ロングブロック長を用いる場合は、入力信号の２０４８サンプルを一つのブロックとして直交変換を行い、１０２４個の周波数スペクトルを出力する。この結果、１０２４の周波数成分に分割されたスペクトルの組が一組だけ得られる。処理を終えると、ステップＳ１１に処理が進む。
【００５０】
ステップＳ１１では、聴覚心理演算器３の前回の出力である当該フレームのＳＭＲ値とステップＳ１０においてフィルタバンク２で得られたスペクトルから許容誤差エネルギーを算出する。ここで、グループ判定器５は、処理対象フレーム内の各ブロック毎に、分割周波数帯域毎の許容誤差エネルギーを求める。分割周波数帯域ｂの許容誤差エネルギーをxmin[b]とすると、次式より算出される。
【００５１】
2005165056.tif 000003
【００５２】
ここで、energy[b]は分割周波数帯域bに含まれるスペクトルの総エネルギーである。ｉ番目のスペクトルをxiと表記し、帯域ｂに含まれるスペクトルがｊ番目からｋ番目までであるとすると、energy[b]は次式で求められる。
2005165056.tif 000004
【００５３】
また、SMR[b]は、聴覚心理演算器３が前回出力したロングブロック長の分割周波数帯域bにおけるSMR値である。なお、ステップＳ４において聴覚心理演算器３が出力したＳＭＲ値は、先行フレームが符号化対象フレームとなる次回の処理までグループ判定器５内に保持される。これは、ロングブロック長の場合とショートブロック長の場合の両方のＳＭＲ値がともに保存される。許容誤差エネルギーの算出が終わると、ステップＳ１２に進む。
一方、ステップＳ６において当該フレームにショートブロック長を使用すると判断された場合、ステップＳ７において、フィルタバンク２により処理対象フレームに対してショートブロック長による直交変換を行う。ここでもMPEG-２ AACの場合、直交変換によるエイリアシングを除去するために、変換ブロック長の幅の窓掛け処理を行った上で、MDCTによる重複変換が行われる。時間周波数変換では、処理対象フレームとその直前のフレームを合わせた２０４８サンプルを一単位として入力し、１０２４個の周波数スペクトルを得る。このとき、ショートブロック長を用いる場合は、入力信号の２５６サンプルを一つのブロックとして１２８個の周波数スペクトルを出力する変換を、入力信号を１２８サンプルずつずらしながら都合８回行い、８組の周波数スペクトルを得る。処理を終えると、ステップＳ９に進む。
【００５４】
ステップＳ９において、グループ判定器５は前回保存されたショートブロックのＳＭＲ値に基づいて許容誤差エネルギーを算出し、その結果に基づき短ブロックのグループ判定を行い、結果をグループ情報として出力する。このグループ判定は、隣接する２つのブロック間において、各分割周波数帯域ごとに許容誤差エネルギーの差分を取り、その総和がある閾値を超えた場合、グループの分割点と判定する処理である。なお、この処理の詳細は図３を用いて後述する。グループ判定が終了すると、ステップＳ１２に進む。
【００５５】
ステップＳ１２では、フィルタバンク２から出力された周波数スペクトルと、グループ判定器５から出力されたグループ情報と許容誤差エネルギー値に基づいて、ビット割当て器６が各周波数帯域にビットを割り当てる。なお、ここではビット割当ては二段階に行われる。まず、処理中のフレーム全体に割り当てるビットを余剰ビット量やビット割り当て器６に保存されている処理中のフレームのＰＥ値、変換ブロック長から決定し、次に、ステップＳ９もしくはステップＳ１１で得られる許容誤差エネルギー値に基づいて、フレーム内の各分割周波数帯域に割り当てるビット量を決定する。このような処理は本発明のような変換符号化方法において一般的であるので、詳細説明は省略する。次に、聴覚心理演算器３から出力される先行フレームＰＥ値をビット割り当て器６内に保存する。処理を終えると、ステップＳ１３に進む。
【００５６】
ステップＳ１３では、量子化器７は各周波数帯域のスケールファクタを算出し、ステップＳ１２で各周波数帯域に割り当てられたビット量に従って周波数スペクトルを量子化する。処理を終えると、ステップＳ１４に進む。
【００５７】
ステップＳ１４では、ビット整形器８は、ステップＳ１３で算出された各周波数帯域のスケールファクタと量子化スペクトルを符号化方式によって定められたフォーマットに従ってビットストリームに整形し、出力する。
【００５８】
その後、ステップＳ２に戻り、符号化する入力オーディオ信号が終了したかどうかを判定し、入力信号が終了している場合はステップＳ１５へ進む。ステップＳ１５では、聴覚心理演算や直交変換などで生じる遅延によってまだ出力されていない量子化スペクトルが残っているため、それらをビットストリームに整形して出力する。処理を終えると、オーディオ信号符号化処理を終了する。
【００５９】
次に、図３のフローチャートを参照して、グループ判定器５により図２のステップＳ９で行われるグループ判定処理の詳細を説明する。
【００６０】
ステップＳ１０１では、前回保存されたショートブロック時のＳＭＲ値とステップＳ７で求めた８組のショートブロックのスペクトル値より８組の許容誤差エネルギーを求める。この計算は、ステップＳ１１でロングブロック長の処理を行う場合の処理と同様であり、式１及び式２に従って行われる。次に、ステップＳ４において聴覚心理演算器３から出力された先行フレームのＳＭＲ値をグループ判定器５内に保存する。この場合も、ロングブロック長のＳＭＲ値とショートブロック長のＳＭＲ値がともに保存される。処理を終えると、ステップＳ１０２へ進む。
【００６１】
ステップＳ１０２では、処理対象ブロックカウンタｗを０にリセットする。なお、このカウンタｗは、グループ判定器５内に保持される。、ステップＳ１０３において、処理対象ブロックカウンタｗが７以上であるかどうかを判定する。ｗが７未満、すなわち、全てのショートブロック間のグループ判定が未終了の場合はステップＳ１０４に進む。ｗが７、すなわち、全てのショートブロック間のグループ判定が終了した場合はステップＳ１０９へ進む。
【００６２】
ステップＳ１０４では、ｗ番目のショートブロックとｗ＋１番目のショートブロックの許容誤差エネルギー差分和Ｓを算出する。本実施の形態において、各ショートブロックがｎ個の分割周波数帯域に分割される場合、Ｓは次式によって求められる。
【００６３】
2005165056.tif 000005
【００６４】
ただし、xmin[w][b]はブロックｗの分割周波数帯域ｂにおける許容誤差エネルギーである。
【００６５】
次に、ステップＳ１０５において、ブロックｗの許容誤差エネルギー総和Ｘを算出する。Ｘは次式によって求められる。
【００６６】
2005165056.tif 000006
【００６７】
処理を終えると、ステップＳ１０６へ進む。
ステップＳ１０６では、ステップＳ１０４で計算した許容誤差エネルギー差分和Ｓと、ステップＳ１０５で計算したブロックｗの許容誤差エネルギー総和Ｘに予め定められた係数α（0＜α＜1）を掛けた値とを比較する。
【００６８】
このように、グループ判定に用いる閾値に、時間的に直前に位置するブロックの許容誤差エネルギーを用いることによって、入力信号が変化している部分を確実にグループの分割点として判断することが可能となる。
【００６９】
比較の結果、許容誤差エネルギー差分和Ｓの方が大きい場合は（ステップＳ１０６でＹＥＳ）ステップＳ１０７へ処理が進み、ブロックｗとブロックｗ＋１の間をグループの切れ目と判断し、ブロックｗとブロックｗ＋１の境界にグループ境界を設定する。この処理では、グループ情報にこのグループ境界を追加する。処理を終えると、ステップＳ１０８へ進む。
【００７０】
一方、許容誤差エネルギー差分和Ｓの方が大きくない場合は（ステップＳ１０６でＮＯ）、ブロックｗとブロックｗ＋１は同じグループであると判断し、そのままステップＳ１０８へ進む。ステップＳ１０８では、ブロックカウンタｗをインクリメントして、ステップＳ１０３へ戻り、上述した処理を繰り返す。
【００７１】
また、ステップＳ１０３でｗが７と判断した場合、すなわち、全てのショートブロック間のグループ判定が終了した場合には、ステップＳ１０９に進み、決定されたグループ情報に従って、許容誤差エネルギーをグループ毎にまとめる。本実施の形態では、この処理は、同グループ内に含まれる同じ分割周波数帯域の許容誤差エネルギーの総和Ｘを、グループに含まれるブロック数で割ることによって行われる。処理を終えると、ステップＳ１１０へ進む。
【００７２】
ステップＳ１１０では、決定されたグループ情報に従って、同グループ、同スケールファクタ毎にまとめるようにして、スペクトル成分の順番を入れ替える。本実施の形態では、MPEG-2 AACの場合を考慮しているが、MPEG-2 AACではこの並び替え順は規格上で定められており、公知であるため詳細な説明は省略する。処理を終えると、グループ判定処理を終了し、図２の処理にリターンする。
【００７３】
以上説明したように、本第１の実施形態におけるオーディオ信号符号化処理では、フレーム内の符号量を割り当てる基準となる許容誤差エネルギーが類似しているブロックを同じグループと判定することによって、人間の聴覚特性に合致した適切なグループ判定が可能になり、プリエコーの発生を抑えながら、ショートブロック選択による符号化効率の低下を防止することができる。これにより、高音質なビットストリームを効率的に作成することができる。
【００７４】
更に、グループ判定に用いる閾値に、時間的に直前に位置するブロックの許容誤差エネルギーを用いることによって、入力信号が変化している部分を確実にグループの分割点として判断することが可能となり、入力信号の変化に応じた正確なグルーピング結果を得ることができる。
【００７５】
＜第２の実施形態＞
本発明は、汎用的なＰＣ上で動作するソフトウェアプログラムとして実施することも可能である。以下、この場合について図面を用いて説明する。
【００７６】
図４は本第２の実施形態における汎用的なＰＣを利用したオーディオ信号符号化装置の構成例である。
【００７７】
図示の構成において、１００はＣＰＵであり、オーディオ信号符号化処理のための演算、論理判断等を行い、バス１０２を介して、バス１０２に接続された各構成要素を制御する。１０１はメモリであり、本第２の実施形態の構成例における基本I／Oプログラムや、実行しているプログラムコード、プログラム処理時に必要なデータなどを格納する。１０２はバスであり、ＣＰＵ１００の制御の対象とする構成要素を指示するアドレス信号を転送し、ＣＰＵ１００の制御の対象とする各構成要素のコントロール信号を転送し、各構成機器相互間のデータ転送を行う。
【００７８】
１０３は端末であり、装置の起動、各種条件や入力信号の設定、符号化開始の指示を行う。１０４は外部記憶装置であり、データやプログラム等を記憶するための記憶領域を提供する。データやプログラム等は必要に応じて保管され、また、保管されたデータやプログラムは必要な時に呼び出される。
【００７９】
１０５はメディアドライブであり、記録媒体に記録されているプログラムやデータ、デジタルオーディオ信号などはこのメディアドライブ１０５が読み取ることにより本オーディオ信号符号化装置にロードされる。また、外部記憶部１０４に蓄えられた各種データや実行プログラムを記録媒体に書き込むことができる。
【００８０】
１０６はマイクであり、音を集音してオーディオ信号に変換する。１０７はスピーカーであり、任意のオーディオ信号データを実際の音にして出力することができる。
【００８１】
１０８は通信網であり、LAN、公衆回線、無線回線、放送電波などで構成されている。１０９は通信インタフェースであり、通信網に接続されている。本第２の実施形態のオーディオ信号符号化装置はこの通信インタフェース１０９を介して通信網を経由し、外部機器と通信し、データやプログラムを送受信することができる。
【００８２】
上記構成を有する本第２の実施形態のオーディオ信号符号化装置においては、端末１０３からの各種の入力に応じて作動する。端末１０３からの入力が供給されると、インタラプト信号がＣＰＵ１００に送られることによって、ＣＰＵ１００がメモリ１０１内に記憶してある各種の制御信号を読出し、それらの制御信号に従って、各種の制御が行われる。
【００８３】
本第２の実施形態のオーディオ信号符号化装置は、基本Ｉ／Ｏプログラム、ＯＳ、および本オーディオ信号符号化処理プログラムをＣＰＵ１００が実行することによって動作する。基本Ｉ／Ｏプログラムはメモリ１０１中に書き込まれており、ＯＳは外部記憶装置１０４に書き込まれている。そして、本装置の電源がＯＮにされると、基本Ｉ／Ｏプログラム中のＩＰＬ（イニシャルプログラムローディング）機能により外部記憶部１０４からＯＳがメモリ１０１に読み込まれ、ＯＳの動作が開始される。
【００８４】
本第２の実施形態におけるオーディオ信号符号化処理プログラムは、後述する図８に示すオーディオ信号符号化処理手順のフローチャートに基づいてプログラムコード化されたものである。
【００８５】
図５は、本オーディオ信号符号化処理プログラムおよび関連データを記録媒体に記録したときの内容構成図である。
【００８６】
本第２の実施形態において、オーディオ信号符号化処理プログラムおよび関連データは記録媒体に記録されている。図示したように記録媒体の先頭領域には、この記録媒体のディレクトリ情報が記録されており、その後にこの記録媒体のコンテンツである本オーディオ信号符号化処理プログラムと、オーディオ信号符号化処理関連データがファイルとして記録されている。
【００８７】
図６は本第２の実施形態のオーディオ信号符号化装置に、オーディオ信号符号化処理プログラムを導入する様子を示す模式図である。記録媒体に記録されたオーディオ信号符号化処理プログラムおよび関連データは、図６に示したようにメディアドライブ１０５を通じて本第２の実施形態のオーディオ信号符号化装置にロードすることができる。この記録媒体１１０をメディアドライブ１０５にセットすると、ＯＳ及び基本Ｉ／Ｏプログラムの制御のもとに本オーディオ信号符号化処理プログラムおよび関連データが記録媒体から読み出され、外部記憶部１０４に格納される。その後、再起動時にこれらの情報がメモリ１０１にロードされて動作可能となる。
【００８８】
図７は、本オーディオ信号符号化装置処理プログラムがメモリ１０１にロードされ実行可能となった状態のメモリマップを示す。
【００８９】
このとき、メモリ１０１のワークエリアには、先行ブロック長、現行ブロック長、前ブロック長、許容誤差エネルギー、最小グループ数、ブロックカウンタｗ、グループ情報ＰＥ閾値、余剰ビット量、先行フレームＳＭＲ、現行フレームＳＭＲ、先行フレームＰＥ値、現行フレームＰＥ値が格納される。
【００９０】
以下、本第２の実施形態においてＣＰＵ１００で実行されるオーディオ信号符号化処理を図８のフローチャートに従って説明する。
【００９１】
まず、ステップＳ２１では、符号化する入力オーディオ信号をユーザが端末１０３を用いて指定する。本第２の実施形態において、符号化するオーディオ信号は、外部記憶１０４に格納されているオーディオＰＣＭファイルでも良いし、マイク１０６で捉えたリアルタイムの音声信号をアナログ・デジタル変換した信号でも良い。
【００９２】
次に、ステップＳ２２において、符号化する入力オーディオ信号が終了したかどうかを判定する。入力信号が終了している場合は、ステップＳ３５へ進み、未終了の場合は、ステップＳ２３へ進む。ステップＳ２３では、入力オーディオ信号をチャンネル毎に処理単位であるフレームに分割する。第１の実施形態での説明同様、例えば、MPEG-2 AACの場合、オーディオ入力信号をチャンネル毎に1024サンプルのフレームに分割する。処理を終えると、ステップＳ２４へ進む。
【００９３】
ステップＳ２４では、符号化対象となっているフレームから時間的に次にくるフレーム（以下、先行フレーム）の聴覚心理演算を行う。この演算の結果、先行フレームの聴覚エントロピー（ＰＥ）と、同じく先行フレームに対する量子化単位である分割周波数帯域毎のＳＭＲ値が算出される。ここで、ＳＭＲ値はショートブロック時の８組とロングブロック時の１組を共に算出する。算出されたＰＥ値はメモリ１０１上の先行フレームＰＥ値に、また、ＳＭＲ値は全てメモリ１０１上の先行フレームＳＭＲにそれぞれ格納される。処理を終えると、ステップＳ２５へ進む。
【００９４】
ステップＳ２５では、ステップＳ２４で行われた聴覚分析の結果より、先行フレームのブロック長を判定する。本第２の実施形態において、この判定は、先行フレームのＰＥ値と、メモリ１０１上のＰＥ閾値とを比較することによって行われる。すなわち、先行フレームのＰＥ値がＰＥ閾値よりも大きい場合は、ショートブロック長と判定し、そうでない場合は、ロングブロック長と判定する。次に、メモリ１０１上の現行フレームブロック長に格納されているデータをメモリ１０１のワークエリア内の前フレームブロック長に記憶し、さらに、先行フレームブロック長に格納されているデータをメモリ１０１のワークエリア内の現行フレームブロック長に記憶した後、メモリ１０１のワークエリア内の先行フレームブロック長に判定結果を格納する。これにより、現行フレーム及びその前後のフレームのフレーム長を記憶しておく。処理を終えると、ステップＳ２６へ進む。
【００９５】
ステップＳ２６では、メモリ１０１上に格納されている現行フレームブロック長と先行フレームブロック長から、最終的な現行フレームのブロックタイプを決定する。この判定は、MPEG-2 AACの場合は、規格書に記載されている方法によって決定される。なお、ブロックタイプが決定されると、自動的にブロック長が決定する。ブロック長がショートブロック長である場合は、ステップＳ２７へ進み、ロングブロック長である場合は、ステップＳ３０に進む。
【００９６】
ステップＳ３０では、ステップＳ２６で行われた決定に基づき、処理対象フレームに対してロングブロック長による直交変換を行い、ステップＳ３１において分割周波数帯域毎の許容誤差エネルギーを算出する。ステップＳ３０及びＳ３１で行われる処理は、第１の実施形態の図２に示すステップＳ１０及びＳ１１で行われる処理と同様であるため、ここでは詳細説明を省略する。
【００９７】
一方、ステップＳ２６においてショートブロック長であると判断された場合、ステップＳ２７では、処理対象フレームに対してショートブロック長による直交変換を行う。ここでの処理は、第１の実施形態の図２に示すステップＳ７で実施される処理と同様であり、MPEG-２ AACの場合、この結果１２８の周波数成分に分割されたスペクトルの組が８組得られる。処理を終えると、ステップＳ２８に処理が進む。
【００９８】
ステップＳ２８では、現行フレームの時間的な前後に位置するフレーム（つまり、先行フレーム、現行フレーム、前フレームの３つ）のブロック長に基づいて、最小グループ数を決定する。すなわち、メモリ１０１上の前フレームブロック長、もしくは、先行フレームブロック長のいずれかがショートブロック長である場合は、メモリ１０１上の最小グループ数に２を格納する。これは、この場合は前後のフレームと合わせて少なくとも過渡状態の前後と過渡状態の３つの部分に別れればよいため、MPEG-２  AACの規格上最低２つのグループにグルーピングできるからである。一方、前後のフレームがどちらもロングブロック長である場合は、処理中のフレームは単一のショートブロックフレームであるので、メモリ１０１上の最小グループ数に３を格納する。これは、前述したように、過渡状態前の部分と、信号が激しく変化している部分と、変化後の定常状態に戻る部分という少なくとも３つ以上のグループが構成されるべきであるからである。処理を終えると、ステップＳ２９へ進む。
【００９９】
ステップＳ２９は、メモリ１０１上に格納されているショートブロックの現行フレームＳＭＲ値と、ステップＳ２７で計算された８組のショートブロックスペクトルから周波数帯域ごとの許容誤差エネルギーを計算し、それに基づいてショートブロックのグループを決定する。なお、この処理の詳細は図９を用いて後述する。処理を終えるとステップＳ３２へ進む。
【０１００】
ステップＳ３２ではメモリ１０１上の現行フレームＰＥ値、変換ブロック長、及びステップＳ２９もしくはステップＳ３１で得られる許容誤差エネルギーを用いて、第１の実施形態の図２のステップＳ１２と同様の手順でビット割当てを行い、ステップＳ３３で各分割周波数帯域のスケールファクタを算出するとともに、ステップＳ３２で割り当てられたビット量に従って、周波数スペクトルを量子化し、ステップＳ３４で、ステップＳ３３で算出されたスケールファクタと量子化スペクトルを、符号化方式によって定められたフォーマットに従って整形し、ビットストリームとして出力する。本第２の実施形態では、この処理によって出力されるビットストリームは、外部記憶１０４に格納されても良いし、あるいは、通信インターフェース１０９を介して回線網１０８に繋がっている外部機器に出力されても良い。
【０１０１】
ステップＳ３５はメモリ１０１上の先行フレームＰＥ値を現行フレームＰＥ値に、また、先行フレームＳＭＲに格納されているＳＭＲ値を現行フレームＳＭＲにそれぞれコピーする処理である。
【０１０２】
その後、ステップＳ２２に戻り、入力信号が終了するとステップＳ３６に進む。ステップＳ３６では、聴覚心理演算や直交変換などで生じる遅延によってまだ出力されていない量子化スペクトルがメモリ上に残っているため、それらをビットストリームに整形して出力する。処理を終えると、オーディオ信号符号化処理を終了する。
【０１０３】
次に、図９のフローチャートを参照して、図８のステップＳ２９で行われる本第２の実施形態のグループ判定処理について説明するが、第１の実施形態で説明した図３と同様の処理には同じ参照番号を付し、図３と異なる点について飲み説明する。
【０１０４】
なお、図３における処理対象ブロックカウンタｗは、メモリ１０１上で保持される。
【０１０５】
図９に示す例では、ステップＳ１０３でｗが７と判断した場合、すなわち、全てのショートブロック間のグループ判定が終了した場合には、ステップＳ１２０に進み、グループ判定の正否を判断する。
【０１０６】
ステップＳ１２０において、得られたグループ数がステップＳ２７で決定されたメモリ１０１上の最小グループ数以上になっているかどうかを判定する。グループ数が最小グループ数以上である場合は、ステップＳ１０９に進んで、第１の実施形態で説明した処理を行う。
【０１０７】
一方、グループ数が最小グループ数未満の場合は、グループ判定が失敗したものとして再度グループ判定を行うために、ステップＳ１２１へ進む。ステップＳ１２１では、ステップＳ１０６において許容誤差総和Ｘに掛ける係数αを0.05減算し、ステップＳ１０２に戻ってグループ判定をやり直す。この係数αを減らすことにより、次回のステップＳ１０６における判定において閾値を下げることになるため、より細かくグループを分けが為されることになる。
【０１０８】
上記の通り、本第２の実施形態によれば、汎用のＰＣを用いてオーディオ信号符号化を実施することができる。
【０１０９】
また、図８のステップＳ２７及び図９のステップＳ１２０及びＳ１２１の処理を行うことによって、前後に位置するフレームの状況も考慮した適切なブロック判定が行われることが保障される。
【０１１０】
なお、上記処理は図１に示す第１の実施形態のオーディオ信号符号化装置における処理に適用することが可能であることは言うまでもない。また、図８及び図９に示す処理の代わりに、第１の実施形態で説明した図２及び図３の処理を汎用のＰＣを用いて実行することも勿論可能である。
【０１１１】
＜第３の実施形態＞
上記第２の実施形態では、許容誤差エネルギーの差分の総和によってグルーピング判定を行う例を示したが、許容誤差エネルギーのピークによってグルーピング判定を行うことも可能である。以下、許容誤差エネルギーのピークによってグルーピング判定を行う処理について図１０を用いて説明する。オーディオ信号符号化処理の全体の流れは図８のフローチャートに示す処理と同様であるため、説明を省略する。また、上記第２の実施形態で説明した図４に示すオーディオ信号符号化装置と同様の構成を有する装置により実現することができる。
【０１１２】
図１０は、第３の実施形態における、図８のステップＳ２９のグループ判定処理を示すフローチャートである。
【０１１３】
ステップＳ２０１は、処理対象であるフレームに含まれる全てのショートブロックにおける、分割周波数帯域（ＳＦＢ）毎の許容誤差エネルギーを計算する。本第３の実施形態における許容誤差エネルギーも、第１の実施形態で説明した図２のステップＳ１１における処理と同様な方法で計算される。処理を終えると、ステップＳ２０２へ進む。
【０１１４】
ステップＳ２０２では、メモリ１０１上のブロックカウンタｗを１にリセットし、ステップＳ２０３において、ブロック１における許容誤差エネルギーがピークとなるＳＦＢ位置（ピークＳＦＢ位置）を検出する。この処理は許容誤差エネルギーが最大となるＳＦＢ位置を求めればよい。
【０１１５】
次にステップＳ２０４において、ブロックカウンタｗが７未満であるかどうかを判断し、ｗが７未満、すなわち、全てのショートブロック間の判定が済んでいない場合は、ステップＳ２０５へ進む。ｗが７、すなわち、全てのショートブロック間の判定が終了した場合は、ステップＳ２１０へ進む。
【０１１６】
ステップＳ２０５では、１ブロック前のショートブロックｗ＋１の許容誤差エネルギーのピークＳＦＢ位置を、ステップＳ２０３と同様にして検出する。処理を終えると、ステップＳ２０６へ進む。
【０１１７】
ステップＳ２０６では、ブロックｗのピークＳＦＢ位置と、ブロックｗ＋１のピークＳＦＢ位置の差分が閾値Ａより大きいかどうかを判定する。なお、本第３の実施形態において、閾値Ａは予め定められており、オーディオ信号符号化装置処理プログラムがメモリ１０１にロードされた時に、メモリ１０１のワークエリアに格納される。
【０１１８】
判定の結果、ピークＳＦＢ位置の差分が閾値Ａより大きい場合は、ブロックｗとブロックｗ＋１の間をグループの切れ目と判断し、ステップＳ２０８へ進み、メモリ１０１上のグループ情報において、ブロックｗとブロックｗ＋１の間にグループ境界を設定する。処理を終えると、ステップＳ２０９へ進む。
【０１１９】
一方、ステップＳ２０６において、ピークＳＦＢ位置の差分が閾値Ａ以下の場合は、ステップＳ２０７へ進み、ブロックｗのピークＳＦＢ位置の許容誤差エネルギーと、ブロックｗ＋１のピークＳＦＢ位置の許容誤差エネルギーの差分が、閾値Ｂより大きいかどうかを判定する。本第３の実施形態において、閾値Ｂも予め定められ、メモリ１０１上のワークエリアに格納されているものとする。判定の結果、ピーク許容誤差エネルギーの差分が閾値Ｂより大きい場合もブロックｗとブロックｗ＋１の間をグループの切れ目と判断し、ステップＳ２０８においてメモリ１０１上のグループ情報において、ブロックｗとブロックｗ＋１の間にグループ境界を設定する。処理を終えると、ステップＳ２０９へ進む。また、ピーク許容誤差エネルギーの差分が閾値Ｂより大きくない場合は、ブロックｗとブロックｗ＋１は同じグループであると判断し、直接ステップＳ２０９へ進む。
【０１２０】
ステップＳ２０９では、グループカウンタｗをインクリメントしてステップＳ２０４に戻り、上述した処理を繰り返す。
【０１２１】
また、ステップＳ１０３でｗが７と判断した場合、すなわち、全てのショートブロック間のグループ判定が終了した場合には、ステップＳ２１０に進み、グループ判定の正否を判断する。
【０１２２】
ステップＳ２１０において、得られたグループ数が図８のステップＳ２７で決定されたメモリ１０１上の最小グループ数以上になっているかどうかを判定する。グループ数が最小グループ数以上である場合は、ステップＳ２１３に進んで、第１の実施形態で説明した図３のステップＳ１０９及びＳ１１０の処理をステップＳ２１３及びＳ２１４で行う。
【０１２３】
一方、グループ数が最小グループ数未満の場合は、グループ判定が失敗したものとして再度グループ判定を行うために、ステップＳ２１１へ進む。ステップＳ２１１は、メモリ１０１上の閾値Ａから１を引き、更にステップＳ２１２において、メモリ１０１上の閾値Ｂを適宜減じる。処理を終えると、ステップＳ２０２に戻って、グループ判定をやり直す。
【０１２４】
この処理を行うことによって、前後に位置するフレームの状況も考慮した適切なブロック判定が行われることが保障される。
【０１２５】
以上説明したように、スペクトルのピーク位置が違うショートブロックを別グループとして扱うことによって、適切なグルーピングを行うことが可能になる。さらに、ピークの大きさが著しく異なる部分を別グループとして扱うことにより、入力信号の変化が激しい部分を確実に別グループとして扱うことが可能になり、この場合も入力信号の変化に合致したグルーピングが可能である。
【０１２６】
また、許容誤差エネルギーの差分和とピーク位置差分、ピーク差分を同時に検出し、総合的に判断してグルーピングを行ってもよい。
【０１２７】
また、上述の実施例２では、特に記録媒体に関して言及していないが、これは、ＦＤ、ＨＤＤ、ＣＤ，ＤＶＤ，ＭＯ、半導体メモリなど、どのような記録媒体を用いても適用可能である。
【０１２８】
その他、本発明はその要旨を逸脱しない範囲で種種変形して実施することができる。
【図面の簡単な説明】
【０１２９】
【図１】本発明の第１の実施形態におけるオーディオ信号符号化装置の構成例を示すブロック図である。
【図２】本発明の第１の実施形態におけるオーディオ信号符号化処理を示すフローチャートである。
【図３】本発明の第１の実施形態におけるグループ判定処理を示すフローチャートである。
【図４】本発明の第２の実施形態におけるオーディオ信号符号化装置の構成例を示すブロック図である。
【図５】本発明の第２の実施形態におけるオーディオ信号符号化処理プログラムを格納した記憶媒体の内容構成図である。
【図６】本発明の第２の実施形態におけるオーディオ信号符号化処理プログラムを導入する様子を示す模式図である。
【図７】本発明の第２の実施形態におけるオーディオ信号符号化処理プログラムがロードされた状態のメモリマップを示す図である。
【図８】本発明の第２の実施形態におけるオーディオ信号符号化処理を示すフローチャートである。
【図９】本発明の第２の実施形態におけるグループ判定処理を示すフローチャートである。
【図１０】本発明の第３の実施形態におけるグループ判定処理を示すフローチャートである。
【図１１】従来のオーディオ信号を２０４８サンプルブロックで符号化する場合の概念の説明図である。
【図１２】従来のオーディオ信号を２５６サンプルブロックで符号化する場合の概念を示す図である。
【符号の説明】
【０１３０】
１  フレーム分割器
２  フィルタバンク
３  聴覚心理演算器
４  ブロック長判定器
５  グループ判定器
６  ビット割当て器
７  量子化器
８  ビット整形器
１００  ＣＰＵ
１０１  メモリ
１０２  バス
１０３  端末
１０４  外部記憶装置
１０５  メディアドライブ
１０６  マイク
１０７  スピーカー
１０８  通信回線
１０９  通信インターフェース
１１０  記録媒体
【図１】
2005165056.tif 000007
【図２】
2005165056.tif 000008
【図３】
2005165056.tif 000009
【図４】
2005165056.tif 000010
【図５】
2005165056.tif 000011
【図６】
2005165056.tif 000012
【図７】
2005165056.tif 000013
【図８】
2005165056.tif 000014
【図９】
2005165056.tif 000015
【図１０】
2005165056.tif 000016
【図１１】
2005165056.tif 000017
【図１２】
2005165056.tif 000018