(57)【要約】【課題】  ＭＳ符号化を適用した場合と同様の符号化効率を保ちつつ処理量を削減できるオーディオ符号化技術を提供する。【解決手段】  オーディオ入力信号を処理単位のフレームに分割するフレーム分割器１と、ＭＳ符号化を適用するか否かを判定するＭＳ適用判定器１５を有する聴覚心理演算器２と、フレームをブロック化して周波数スペクトルに変換するフィルタバンク４と、ＭＳ適用判定器での判定結果に応じて所定の信号処理を周波数スペクトルに対して行うＭＳ符号化器５と、周波数スペクトルを量子化する量子化器７とを有し、量子化単位の周波数帯域毎にＭＳ符号化を適用するか否かを判断し、適用される周波数帯域数が一定数に達しない場合には、すべての周波数帯域にＬＲ符号化を適用するように判定することを特徴とするオーディオ信号符号化装置が提供される。【選択図】  図１
2005351977.tif 000002
【特許請求の範囲】
【請求項１】
複数のチャンネルにより構成されるオーディオ入力信号を、チャンネル毎に独立して符号化する第１の符号化、及び上記第１の符号化とは異なる第２の符号化を選択的に適用して符号化するオーディオ信号符号化装置であって、
上記オーディオ入力信号を処理単位のフレームに分割するフレーム分割手段と、
上記オーディオ入力信号に対して上記第２の符号化を適用するか否かを判定する判定手段を有し、かつ上記フレーム分割されたオーディオ入力信号を分析して聴覚マスキング計算を行う聴覚心理演算手段と、
上記フレームをブロック化し、１つ又は複数の周波数スペクトルの組に変換するフィルタバンク手段と、
上記判定手段の判定結果に応じて、上記フィルタバンク手段より出力される周波数スペクトルに対して上記第２の符号化に係る所定の信号処理を施す信号処理手段と、
上記周波数スペクトルを量子化する量子化手段とを備え、
上記判定手段は、量子化単位の周波数帯域毎に上記所定の信号処理を適用するか否かを判断し、上記所定の信号処理が適用されると判断した周波数帯域の数が予め定める閾値に達しない場合には、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定することを特徴とするオーディオ信号符号化装置。
【請求項２】
上記フィルタバンク手段より出力される周波数スペクトルを、複数の周波数帯域に分割して、上記聴覚心理演算手段の演算結果に応じて各周波数帯域に割当てるビット量を計算するビット割当て手段と、
上記量子化手段から出力される量子化スペクトルを規定のフォーマットに従って整形したビットストリームを作成し出力するビット整形手段とをさらに備え、
上記量子化手段は、上記ビット割当て手段によって決定されたビット割当てに従って、上記周波数スペクトルを量子化することを特徴とする請求項１記載のオーディオ信号符号化装置。
【請求項３】
上記第２の符号化は、上記チャンネル間のオーディオ入力信号の相関性を利用して符号化することを特徴とする請求項１又は２記載のオーディオ信号符号化装置。
【請求項４】
上記聴覚心理演算手段は、さらに上記フレーム分割されたオーディオ入力信号を分析して変換ブロック長を決定し、
上記フィルタバンク手段は、上記聴覚心理演算手段が決定した変換ブロック長に従って、上記フレームをブロック化することを特徴とする請求項１〜３の何れか１項に記載のオーディオ信号符号化装置。
【請求項５】
上記聴覚心理演算手段は、上記フレーム分割されたオーディオ入力信号を分析し所定の周波数帯域毎に聴覚エネルギー閾値を算出する聴覚エネルギー閾値算出手段と、
上記判定手段の判定結果に応じて、上記第２の符号化が適用される周波数帯域の上記算出される聴覚エネルギー閾値を調整するイメージング制御手段とをさらに有することを特徴とする請求項１〜４の何れか１項に記載のオーディオ信号符号化装置。
【請求項６】
上記信号処理手段は、上記複数のチャンネルのうち、左右の関係を有する組のオーディオ入力信号に係る周波数スペクトルに対して上記所定の信号処理を施すことを特徴とする請求項１〜５の何れか１項に記載のオーディオ信号符号化装置。
【請求項７】
上記所定の信号処理では、上記左右の関係を有する組の周波数スペクトルを、その和成分及び差成分に変換することを特徴とする請求項６記載のオーディオ信号符号化装置。
【請求項８】
上記判定手段は、上記所定の信号処理を適用するか否かの判断結果に基づいて、上記量子化単位の周波数帯域に対応させた各ビットの値により上記第２の符号化を適用するか否かを示すマスク情報を作成するとともに、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定した場合には、上記マスク情報のすべてのビットの値を上記第２の符号化を適用しないことを示す値に書き換えて出力することを特徴とする請求項１〜７の何れか１項に記載のオーディオ信号符号化装置。
【請求項９】
上記オーディオ入力信号の符号化方式が、ＭＰ３規格もしくはＭＰＥＧ−２／４  ＡＡＣ規格に準拠した符号化方式であることを特徴とする請求項１〜８の何れか１項に記載のオーディオ信号符号化装置。
【請求項１０】
上記所定の信号処理は、左右の関係にあるチャンネルの組の周波数スペクトルに対するＭＳステレオ符号化に係る処理であることを特徴とする請求項９記載のオーディオ信号符号化装置。
【請求項１１】
複数のチャンネルにより構成されるオーディオ入力信号を、チャンネル毎に独立して符号化する第１の符号化、及び上記第１の符号化とは異なる第２の符号化を選択的に適用して符号化するオーディオ信号符号化方法であって、
上記オーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、
上記オーディオ入力信号に対して上記第２の符号化を適用するか否かを判定する判定ステップを有し、かつ上記フレーム分割されたオーディオ入力信号を分析して聴覚マスキング計算を行う聴覚心理演算ステップと、
上記フレームをブロック化し、１つ又は複数の周波数スペクトルの組に変換する変換ステップと、
上記判定ステップでの判定結果に応じて、上記周波数スペクトルに対して上記第２の符号化に係る所定の信号処理を施す信号処理ステップと、
上記周波数スペクトルを量子化する量子化ステップとを有し、
上記判定ステップは、量子化単位の周波数帯域毎に上記所定の信号処理を適用するか否かを判断し、上記所定の信号処理が適用されると判断した周波数帯域の数が予め定める閾値に達しない場合には、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定することを特徴とするオーディオ信号符号化方法。
【請求項１２】
複数のチャンネルにより構成されるオーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、
上記オーディオ入力信号に対して、上記チャンネル毎に独立して行う第１の符号化とは異なる第２の符号化を適用するか否かを判定する判定ステップを含み、上記フレーム分割されたオーディオ入力信号を分析し聴覚マスキング計算を行う聴覚心理演算ステップと、
上記フレームをブロック化し、１つ又は複数の周波数スペクトルの組に変換する変換ステップと、
上記判定ステップでの判定結果に応じて、上記周波数スペクトルに対して上記第２の符号化に係る所定の信号処理を施す信号処理ステップと、
上記周波数スペクトルを量子化する量子化ステップとをコンピュータに実行させるためのプログラムであって、
上記判定ステップは、量子化単位の周波数帯域毎に上記所定の信号処理を適用するか否かを判断し、上記所定の信号処理が適用されると判断した周波数帯域の数が予め定める閾値に達しない場合には、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定することを特徴とするプログラム。
【請求項１３】
請求項１２記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーディオ信号の符号化装置及び符号化方法に関し、特に、ステレオ信号を含むオーディオ信号の符号化技術に関する。
【背景技術】
【０００２】
近年、高音質、かつ高効率なオーディオ信号符号化技術は、DVD-Videoの音声トラックや、半導体メモリやＨＤＤなどを利用した携帯オーディオプレイヤー、インターネットを介した音楽配信、家庭内ＬＡＮにおけるホームサーバへの楽曲蓄積などに広く利用され、幅広く普及するとともにその重要性も増している。
【０００３】
このようなオーディオ信号符号化技術の多くは、変換符号化技術を利用して時間周波数変換を行っている。例えば、MPEG-2 AACやDolby Digital（AC-3）などでは、ＭＤＣＴ（Modified Discrete Cosine Transform）などの直交変換単体でフィルタバンクを構成している。また、例えば、MPEG-1 Audio Layer III（MP3）やATRAC（ＭＤに利用されている符号化方式）では、ＱＭＦ（Quadrature Mirror Filter）などのサブバンド分割フィルタと直交変換を多段接続してフィルタバンクを構成している。
【０００４】
変換符号化方式では、基本的にはフィルタバンクによって周波数成分に変換された入力信号を、人間の聴覚の周波数分解能に基づいて設定される分割周波数帯域毎にまとめ、量子化時に各分割周波数帯域毎の正規化係数を決定し、正規化係数と量子化スペクトルとの組み合わせで周波数成分を表現することで情報量を削減している。MPEG-2 AACでは、この分割周波数帯域をスケールファクタバンド（ＳＦＢ）と呼び、正規化係数をスケールファクタと呼ぶ。
【０００５】
さらに、これらの高効率オーディオ符号化技術では、人間の聴覚特性を利用したマスキング分析を行い、マスキングされると判断したスペクトル成分を取り除く、あるいはマスキングされる量子化誤差を許容することにより、スペクトルを表現するための情報量を削減して圧縮効率を高めている。
【０００６】
これらの高効率オーディオ符号化技術で用いられているマスキング分析は、主に、静寂時の可聴周波数領域によるマスキングと、臨界帯域におけるマスカーによる周波数マスキングである。
【０００７】
上記マスキング分析により、人間に感知できないと判断される信号の多くは主に高周波域の信号になるため、通常の場合、高周波成分の量子化誤差は多少大きくなってもマスキングされうる。
【０００８】
ところが、変換符号化方式では、オーディオ入力信号に急激な変化がある、いわゆる過渡状態の場合、急激な変化が起こっている部分の高周波成分の量子化誤差が、急激な変化の直前や直後の信号にまで影響を与えるため、リンギングノイズが生じる。
【０００９】
人間の聴覚特性として、大きな音が発生した場合、その直前と直後の時間は音が聞こえづらくなる。これを時間マスキング効果という。大きな音の後に聞こえなくなる時間は、個人差はあるが約１００msec程度と比較的長い。しかしながら、直前に働くマスキング効果の時間は約５〜６msecと短い。したがって、リンギングノイズが生じると、大きな音の前のノイズは感知されやすくなってしまう。これは一般にプリエコーと呼ばれる現象である。
【００１０】
これを抑制するための一方法として、種々のオーディオ符号化方式では、入力信号の急激な変化を検知して変換ブロック長を短くすることにより、急激な変化による高周波成分の量子化誤差が、変化直前の部分に及ばないようにすることで、プリエコーの発生を抑制している。
【００１１】
ところが、一般にブロック長を短くすると、周波数分解能が落ちることによりマスキング分析の精度が落ちるばかりでなく、量子化時に使用するスケールファクタバンドがブロックの数だけ増大するために、スケールファクタによって消費される情報量が増えてしまう。その結果、量子化時に本来ならスペクトル情報に割り当てるべきビットがスケールファクタに消費されてしまうため、符号化効率が低下する。特に、低ビットレート時には量子化誤差が厳密にマスキングできなくなるため、ブロック長が長い場合に比較して、ノイズが感知されやすくなるおそれがある。
【００１２】
そこで、ブロック長の切り替えを適応的に行う符号化方式では、プリエコーが発生しそうなアタック部を的確に検出することが重要となる。MPEG-1 Audio Layer IIIやMPEG-2/4 AACの規格では、聴覚心理モデルにおいて算出される聴覚エントロピー（以下、「ＰＥ」とも称す。ＰＥ：Perceptual Entropy）がある閾値を超えたか否かで判定しているが、その他に、時間領域信号内の高周波成分の変化によってアタックを検出する方法も利用されている。
【００１３】
ところで、このような変換符号化方式では、ブロック間の境界で生じるエイリアシング（折り返しノイズ）を除去するために、各ブロック幅の２倍の時間信号に対してｓｉｎウィンドウなどの一定の条件を満たすウィンドウによってウィンドウ掛けを行ってからＭＤＣＴによって周波数スペクトルに変換し、復号側で逆ＭＤＣＴによって時間信号に逆変換した後、ブロック幅分の時間信号を重ね合わせるという処理を行っている。したがって、ブロック長の変更を行う場合には、このエイリアシングキャンセルが確実に行われるようにフレームにおけるブロック幅やウィンドウ掛けの仕様を設計する必要がある。
【００１４】
MPEGオーディオ規格では、このフレーム内におけるブロック幅とウィンドウパターンとの組み合わせをブロックタイプ、もしくはウィンドウ・シーケンスと呼称している。例えば、MPEG-2/4 AACにおけるブロックタイプは、図１１のテーブルに示すように、“ONLY_LONG_SEQUENCE”，“LONG_START_SEQUENCE”，“EIGHT_SHORT_SEQUENCE”，及び“LONG_STOP_SEQUENCE”の４つのタイプが定義されている。これらのブロックタイプのうち、EIGHT_SHORT_SEQUENCEのみ、ショートブロック長の場合の聴覚分析結果が採用され、その他のブロックタイプではロングブロック長の場合の聴覚分析結果が採用される。
なお、図１１において、イメージの列では各ブロックタイプにおけるウィンドウ掛けのイメージを模式的に図示しており、太い縦線はフレーム境界を示し、細い縦線は１２８サンプル毎の境界を示す。
【００１５】
MPEG-2/4 AACでは、１フレーム分の周波数成分を得るために、２フレーム分の時間信号、すなわち２０４８サンプルをまとめて時間周波数変換する。次のフレームの変換は、１フレーム分、すなわち１０２４サンプルずつ入力をシフトさせて行い、復号側で逆ＭＤＣＴ後に得られた時間成分を重ね合わせることにより、エイリアシングキャンセルが実行される。
【００１６】
このウィンドウの重ね合わせによるエイリアシングキャンセルが確実に行われるためには、ブロックタイプの推移はある程度制限されなければならない。例えば、MPEG-2/4 AACの場合では、ブロックタイプがONLY_LONG_SEQUENCEからEIGHT_SHORT_SEQUENCEに推移する場合は、必ずその間にLONG_START_SEQUENCEに推移しなければならない。逆に、ブロックタイプがEIGHT_SHORT_SEQUENCEからONLY_LONG_SEQUENCEに推移する場合には、必ずその間にLONG_STOP_SEQUENCEを経由する必要がある。
【００１７】
このように、現在処理中のフレームのブロックタイプを決定するためには、その後に推移するブロック長を知る必要がある。上述したように、MPEGオーディオ規格書に記載されている技術では、ブロック長はＰＥによって決定されるので、聴覚心理モデルによる入力信号分析は、処理中のフレームよりも１フレーム分時間的に先行して行う必要がある。
【００１８】
ところで、このような変換符号化方式では、オーディオ入力信号が多チャンネル信号の場合、各チャンネルの相関性を利用して符号化効率を高める工夫がなされている。特に、ステレオチャンネルペアの場合、入力されるステレオ信号の音像が左右の中心寄りに位置することが多いという性質を利用して符号化効率を高める技術として、ＭＳ（Middle Side）ステレオ符号化がある。
【００１９】
これは、左右（ＬＲ）信号を（Ｌ＋Ｒ）の和成分（Middle：Ｍ）と（Ｌ−Ｒ）の差成分（Side：Ｓ）とに変換してから符号化するものであり、一般的なステレオ信号の場合には、特にＳ成分の情報量がＬ、Ｒ成分に比較して相対的に小さくなるため、その分だけ符号化効率を高めようとする技術である。
【００２０】
MPEG-2/4 AACでは、ＭＳ符号化とＬＲ符号化の切り替えをスケールファクタバンド毎に指定できる仕様になっており、更に符号化効率を高めることができる。
ところが、ＭＳ符号化するＳＦＢとＬＲ符号化するＳＦＢが混在すると、聴覚心理分析において、ＭＳ符号化する場合とＬＲ符号化する場合によって、特にＲ成分とＳ成分との間に聴覚エネルギー閾値の大きな差が生じ、それが信号対マスク比（ＳＭＲ：Signal Mask Ratio）にも反映される。そのため、量子化時の正規化やビット割り当てに悪影響を及ぼし、量子化誤差が大きくなってしまい、ノイズとして感知されてしまうという問題が生じる。
【００２１】
そこで、MPEG-2/4 AAC規格書では、聴覚心理分析において、ＬＲ成分とＭＳ成分に対して聴覚エネルギー閾値の調整を行うイメージコントロールプロセスが記述されており、この処理を行うことによってＭＳ成分とＬＲ成分が混在する場合の量子化誤差増大を防止している。
【００２２】
【特許文献１】特開２００２−２６８６９４号公報
【発明の開示】
【発明が解決しようとする課題】
【００２３】
通常、入力信号にＭＳステレオ符号化を行うと、通常の符号化処理に加えてＭＳ成分を新たに計算し、さらにＭＳ成分に対する聴覚心理演算を行う必要が生じるため、ＬＲ独立で符号化する場合よりも処理量が増える。
【００２４】
さらに、MPEG-2/4 AACでは、同一フレーム内にＭＳ成分とＬＲ成分が混在することによって、ＬＲＭＳの４つの成分すべての聴覚エネルギー閾値演算が必須になり、聴覚心理演算においてイメージングコントロールプロセスの処理量も付加されるため、符号化装置全体の処理量が著しく増大する。
【００２５】
MPEG-2 AAC規格書（ISO/IEC 13818-7 Annex C C.6.1）に記述されているＭＳステレオ符号化技術では、スケールファクタバンド毎にＭＳ符号化とＬＲ符号化を指定できる仕様になっており、その決定方法に関しては、ＭＳ成分とＬＲ成分をともに量子化し、スケールファクタバンド毎に使用ビット量が少ない方を選択すると記述されている。しかしながら、この方法は量子化処理までもがＬＲ符号化時の処理量の二倍に増加してしまうため、現実的な手法ではない。
【００２６】
上記特許文献１に開示されている技術では、聴覚心理モデルにおいて、スケールファクタバンド毎の各成分の聴覚エントロピーもしくはスペクトルエネルギーによってＭＳ符号化するかＬＲ符号化するかの決定を行っている。この技術を利用すれば、ＭＳ符号化を行う場合の量子化処理量の増大は避けることができる。
しかしながら、上記特許文献１に開示された技術では、引き続きイメージングコントロールプロセスはすべての周波数帯全域に渡って行われるため、この処理に関しては処理量を削減することができない。
【００２７】
特に、ＭＳ符号化が適用されるスケールファクタバンドがごく少数である場合には、僅かな符号化効率の向上のために、イメージングコントロールプロセスや、フィルタバンク出力に対するＭＳ成分の計算や、Ｌ成分とＭ成分及びＲ成分とＳ成分の混合チャンネルスペクトル作成といった複雑な処理を行う必要があり、しかも上記の技術では結果として符号化効率が確実に向上することは何ら保証されていないため、結果として無駄な処理を行っている可能性がある。
【００２８】
本発明は、上記問題点に鑑みて考案されたものであり、ＭＳ符号化適用判定の結果、ＭＳ符号化が適用されるスケールファクタバンドの数が一定数を超えない場合には、一切ＭＳ符号化を適用しないことにより、符号化効率の向上があまり望めない場合における処理量を削減することで、ＭＳ符号化を適用した場合とほぼ同様の符号化効率を保ちつつ処理量を削減することができるオーディオ符号化技術を提供することを目的とする。
【課題を解決するための手段】
【００２９】
本発明のオーディオ信号符号化装置は、複数のチャンネルにより構成されるオーディオ入力信号を、チャンネル毎に独立して符号化する第１の符号化、及び上記第１の符号化とは異なる第２の符号化を選択的に適用して符号化するオーディオ信号符号化装置であって、上記オーディオ入力信号を処理単位のフレームに分割するフレーム分割手段と、上記オーディオ入力信号に対して上記第２の符号化を適用するか否かを判定する判定手段を有し、かつ上記フレーム分割されたオーディオ入力信号を分析して聴覚マスキング計算を行う聴覚心理演算手段と、上記フレームをブロック化し、１つ又は複数の周波数スペクトルの組に変換するフィルタバンク手段と、上記判定手段の判定結果に応じて、上記フィルタバンク手段より出力される周波数スペクトルに対して上記第２の符号化に係る所定の信号処理を施す信号処理手段と、上記周波数スペクトルを量子化する量子化手段とを備え、上記判定手段は、量子化単位の周波数帯域毎に上記所定の信号処理を適用するか否かを判断し、上記所定の信号処理が適用されると判断した周波数帯域の数が予め定める閾値に達しない場合には、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定することを特徴とする。
本発明のオーディオ信号符号化方法は、複数のチャンネルにより構成されるオーディオ入力信号を、チャンネル毎に独立して符号化する第１の符号化、及び上記第１の符号化とは異なる第２の符号化を選択的に適用して符号化するオーディオ信号符号化方法であって、上記オーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、上記オーディオ入力信号に対して上記第２の符号化を適用するか否かを判定する判定ステップを有し、かつ上記フレーム分割されたオーディオ入力信号を分析して聴覚マスキング計算を行う聴覚心理演算ステップと、上記フレームをブロック化し、１つ又は複数の周波数スペクトルの組に変換する変換ステップと、上記判定ステップでの判定結果に応じて、上記周波数スペクトルに対して上記第２の符号化に係る所定の信号処理を施す信号処理ステップと、上記周波数スペクトルを量子化する量子化ステップとを有し、上記判定ステップは、量子化単位の周波数帯域毎に上記所定の信号処理を適用するか否かを判断し、上記所定の信号処理が適用されると判断した周波数帯域の数が予め定める閾値に達しない場合には、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定することを特徴とする。
本発明のプログラムは、複数のチャンネルにより構成されるオーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、上記オーディオ入力信号に対して、上記チャンネル毎に独立して行う第１の符号化とは異なる第２の符号化を適用するか否かを判定する判定ステップを含み、上記フレーム分割されたオーディオ入力信号を分析し聴覚マスキング計算を行う聴覚心理演算ステップと、上記フレームをブロック化し、１つ又は複数の周波数スペクトルの組に変換する変換ステップと、上記判定ステップでの判定結果に応じて、上記周波数スペクトルに対して上記第２の符号化に係る所定の信号処理を施す信号処理ステップと、上記周波数スペクトルを量子化する量子化ステップとをコンピュータに実行させるためのプログラムであって、上記判定ステップは、量子化単位の周波数帯域毎に上記所定の信号処理を適用するか否かを判断し、上記所定の信号処理が適用されると判断した周波数帯域の数が予め定める閾値に達しない場合には、上記すべての周波数帯域に対して上記第１の符号化を適用するように判定することを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、上述したプログラムを記録したことを特徴とする。
【発明の効果】
【００３０】
本発明によれば、チャンネル毎に独立して符号化する第１の符号化とは異なる第２の符号化に係る所定の信号処理を適用するか否かを量子化単位の周波数帯域毎に判断した結果、所定の信号処理が適用される周波数帯域の数が予め定める閾値に達しない場合には、すべての周波数帯域に対して第１の符号化が適用されるようにしたので、僅かな符号化効率向上を図るために第２の符号化に係る多大な処理が実行されることを防止し、符号化処理に要する処理量を削減して効率良いオーディオ入力信号の符号化処理を実現することができる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施形態を図面に基づいて説明する。
【００３２】
（第１の実施形態）
図１は、本発明の第１の実施形態におけるオーディオ信号符号化装置の一構成例を示す図である。なお、図１において実線の矢印はデータ信号を示し、破線の矢印は制御信号を示す。
【００３３】
図示の構成において、１はオーディオ入力信号を処理単位であるフレームに分割するフレーム分割器である。ここで分割されたフレームは後述する聴覚心理演算器２と遅延バッファ３に送出される。
【００３４】
２は聴覚心理演算器であり、オーディオ入力信号をフレーム単位に分析し、ブロックタイプを決定し、聴覚エントロピー（Perceptual Entropy、以下「ＰＥ」）値の算出と、量子化単位となる分割周波数帯域（スケールファクタバンド、以下、「ＳＦＢ」）毎のマスキング計算と、ＭＳ適用判定を行う。この演算の結果、ブロックタイプがフィルタバンク４に、また、信号対マスク比（Signal Mask Ratio、以下「ＳＭＲ」）とＰＥ値がビット割り当て器６に、さらに、ＭＳ符号化が適用されるＳＦＢを示すビットマスクパターン（以下、「ＭＳマスク」）がＭＳ符号化器５にそれぞれ出力される。なお、聴覚心理演算器２の詳細な構成例は図２を用いて後述する。
【００３５】
３は遅延バッファであり、２フレーム分の入力信号を保存することができるＦＩＦＯバッファである。遅延バッファ３に新しい入力信号が１フレーム分入力されると、蓄積された２フレーム分の入力信号が出力されるとともに、１フレーム分の信号シフトが行われ、最も古いフレームの入力信号が削除されて新しい入力信号が蓄積される。すなわち、聴覚心理演算器２に送出される入力信号は、フィルタバンク４に送出される入力信号よりも１フレーム分時間的に先行することになる。
【００３６】
４はフィルタバンクであり、遅延バッファ３から出力された２フレーム分の入力時間信号に対して聴覚心理演算器２によって指定されたブロックタイプのウィンドウ掛けを行った後、指定された長さのブロック長で時間周波数変換を行い、時間信号を周波数スペクトルに変換する。
【００３７】
５はＭＳ符号化器であり、フィルタバンク４から出力されるＬＲ成分の周波数スペクトルから、聴覚心理演算器２より送出されるＭＳマスクに従ってＭＳ符号化されるＳＦＢに含まれるスペクトルのＭＳ成分を算出し、適宜、Ｍ成分をＬチャンネルに、またＳ成分をＲチャンネルに混合する。
【００３８】
６はビット割当て器であり、聴覚心理演算器２より送出されるＳＦＢ毎のＳＭＲ値とＰＥ値、及びＭＳ符号化器５から出力される混合された周波数スペクトルを参照して、各ＳＦＢに割り当てるビット量を決定する。
【００３９】
７は量子化器であり、ＭＳ符号化器５が出力する混合周波数スペクトルの正規化係数（スケールファクタ）をＳＦＢ毎に算出し、ビット割当て器６が出力する、各ＳＦＢに割り当てられたビット量に従って混合周波数スペクトルを量子化する。
【００４０】
８はビット整形器であり、量子化器７が出力するスケールファクタと量子化スペクトルを適宜規定のフォーマットに整形してビットストリームを作成し、出力する。
【００４１】
図２は、本実施形態における聴覚心理演算器２の詳細な構成例を示す図である。
図示の構成において、１１は入力されたオーディオ入力信号からアタック状態を検出するアタック検出器である。MPEG-2 AACの場合、アタック検出器１１は、まず、先行フレームの入力信号のうち、先頭から５１２番目のサンプルから１０２４個のサンプルをハイパスフィルタに通し、高周波成分を取り出した後、ショートブロック長よりも短い時間単位に再分割して高周波成分の振幅を比較することにより、アタックやリリースを検出する。このようなアタック検出器１１は、オーディオ符号化技術分野において公知であるため、ここでは詳細は説明しない。
【００４２】
１２はブロック判定器である。本実施形態において、ブロック判定は二段階の手順をとって行われる。まず、アタック検出器１１から送出されたアタック検知通知より、現在分析中のフレームよりも１フレーム分時間的に先行するフレーム（以下、「先行フレーム」）の変換ブロック長を選択する。例えば、アタックが検知された場合には、先行フレームのブロック長としてショートブロック長が選択され、それ以外の場合にはロングブロック長が選択される。次に、ブロック判定器１２内に保持されている分析中のフレーム（以下、「現フレーム」）のブロック長と、先ほど選択した先行フレームのブロック長とから、現フレームのブロックタイプを決定する。例えば、MPEG-2 AACの場合、ブロック判定器１２に保持されている現行フレームのブロック長がロングブロック長であり、かつ先行フレームのブロック長がショートブロック長である場合は、現行フレームのブロックタイプをLONG_START_SEQUENCEに決定する。
【００４３】
１３は遅延バッファであり、遅延バッファ３と同様に、２フレーム分の入力信号を保存しておくことができるＦＩＦＯバッファである。すなわち、遅延バッファ１３によって、アタック検出器１１でアタック検出されるフレームは、ＦＦＴ器１４以降で分析される入力信号よりも１フレーム分時間的に先行することになる。
【００４４】
１４はＦＦＴ（Fast Fourier Transform：高速フーリエ変換）器であり、ブロック判定器１２から通知される現行フレームのブロックタイプにより指定されるブロック長に従って、現行フレームの入力時間信号を周波数スペクトルに変換する。
【００４５】
１５はＭＳ適用判定器であり、ＦＦＴ器１４から出力されるＬＲ成分の周波数スペクトルからＭＳ成分の周波数スペクトルを算出し、それに基づいてＳＦＢ毎にＭＳ符号化を適用するか否かを判定する。
【００４６】
１６は聴覚エネルギー閾値演算器であり、ＦＦＴ器１４から出力される周波数スペクトルを分析して、人間の聴覚に従って分割された周波数帯域毎に聴覚エネルギー閾値を算出する。
【００４７】
１７はイメージング制御器であり、調整前のＬＲＭＳ各成分の聴覚エネルギー閾値を聴覚エネルギー閾値演算器１６から受け取り、ＬＲ成分とＭＳ成分との聴覚エネルギー閾値の大きさのバランスを調整する処理を行って聴覚エネルギー閾値演算器１６に出力する。また、イメージング制御器１７は、ＭＳ適用判定器１５によって、オン（ＯＮ）／オフ（ＯＦＦ）制御される。
【００４８】
１８はＳＭＲ算出器であり、聴覚エネルギー閾値演算器１６から出力された聴覚エネルギー閾値の組を利用して、ＳＭＲをＳＦＢ毎に算出して出力する。
【００４９】
１９はＰＥ算出器であり、聴覚エネルギー閾値演算器１６から出力された聴覚エネルギー閾値の組から、現行フレーム全体のＰＥ値を算出して出力する。
【００５０】
上記構成によるオーディオ信号符号化装置におけるオーディオ信号の処理動作を以下に説明する。
なお、本実施形態では説明の便宜のために符号化方式としてMPEG-2 AACを例にとって説明するが、ＭＳ符号化の適用を部分的に制御可能なその他の符号化方式についても全く同様な方法で実現可能である。
【００５１】
まず、処理に先立ち、各部の初期化を行う。
複数のチャンネルにより構成される、オーディオＰＣＭ（Pulse Code Modulation）信号などのオーディオ入力信号はフレーム分割器１によってチャンネル毎にフレーム単位に分割され、聴覚心理演算器２と遅延バッファ３に送出される。MPEG-2 AAC LC（Low-Complexity）プロファイルの場合、１フレームは１０２４サンプルのＰＣＭ信号で構成される。
【００５２】
聴覚心理演算器２の内部において、入力信号フレームはアタック検出器１１と遅延バッファ１３に送出される。アタック検出器１１では入力されたフレーム（先行フレーム）に対して上述したアタック検出処理が行われ、アタックが検出されたか否かをブロック情報としてブロック判定器１２に送出する。ブロック判定器１２は、上述したようにアタック検出器１１から送出されたアタック情報により先行フレームのブロック長を決定した後、決定したブロック長とブロック判定器１２内部に保持されている現フレームのブロック長とに基づいて現フレームのブロックタイプを決定する。
【００５３】
一方、遅延バッファ１３では先行フレームの入力信号をバッファリングし、蓄積されていた２フレーム分の入力信号を送出する。ＦＦＴ器１４は、ブロック判定器１２から送出されるブロックタイプに従って、２０４８サンプルの入力時間信号を１０２４個の周波数スペクトルに変換する。ここで、MPEG-2/4 AACの場合、ブロックタイプがEIGHT_SHORT_SEQUENCEのときは、ＦＦＴ器１４は入力信号の２０４８サンプルのうち、４４８番目のサンプルを先頭として、２５６サンプルを１つのブロックとしてハニング窓掛けを行った後、ＦＦＴにより１２８個の周波数スペクトルを出力する変換を、入力信号を１２８サンプルずつずらしながら都合８回行い、１２８×８組の周波数スペクトルを得る。それ以外のブロックタイプのときは、２０４８サンプル全体にハニング窓掛けを行った後、ＦＦＴにより１０２４個の周波数スペクトル１組に変換する。
【００５４】
ＭＳ適用判定器１５では、まず、ＦＦＴ器１４から送出される周波数スペクトルに含まれる左右の関係にあるチャンネルペアのＬＲ成分の周波数スペクトルに基づいてＭＳ成分（Ｍ成分は（Ｌ＋Ｒ）の和成分、Ｓ成分は（Ｌ−Ｒ）の差成分）の周波数スペクトルを算出する。本実施形態において、ＭＳ成分は以下の式（１）により計算される。
【００５５】
【数１】
2005351977.tif 000003
【００５６】
ただし、上記式（１）において、ＸiはＸ成分のｉ番目のスペクトルである。
次に、ＭＳ適用判定器１５では、ＳＦＢ毎にＬＲＭＳ各成分のエネルギーをそれぞれ算出する。Ｘ成分のＳＦＢｂにおけるエネルギーをX_engy［ｂ］とすると、これは次式（２）により計算される。
【００５７】
【数２】
2005351977.tif 000004
【００５８】
ただし、上記式（２）において、ｌ、ｍはそれぞれＳＦＢｂに含まれる最初と最後の周波数スペクトルである。
なお、ショートブロックの場合には、ＭＳ成分とそのエネルギーはショートブロック毎に別々に求められる。
【００５９】
次に、ＭＳ適用判定器１５は、すべてのＳＦＢに対して、ＭＳ符号化を適用するか否かを判定するＭＳ適用判定をそれぞれ行う。本実施形態の場合は、次式（３）が成り立つ場合に、そのＳＦＢにＭＳ符号化が適用される。
【００６０】
【数３】
2005351977.tif 000005
【００６１】
ただし、上記式（３）において、αは予め定められた定数である。
このとき、ＭＳ符号化されるＳＦＢを示すビットパターン（ＭＳマスク）が作成される。ＭＳマスクにおいて、ビットの値が“１”である場合は、そのビットに対応するＳＦＢに対してＭＳ符号化が適用されることを示し、ビットの値が“０”である場合は、そのビットに対応するＳＦＢにはＭＳ符号化が適用されず、ＬＲ符号化が行われることを示す。なお、ＬＲ符号化は、Ｌ，Ｒチャンネル毎に独立して符号化するものであり本発明における第１の符号化に相当し、ＭＳ符号化は、本発明における第２の符号化に相当する。
【００６２】
ここで、本実施形態におけるＭＳ適用判定器１５は、ＭＳマスクにおいて立っているビット（値が“１”のビット）の数を調べ、この数が予め定められた数を超えない場合、すなわちＭＳ符号化が適用されるＳＦＢの数が予め定められた数を超えない場合（あるいは、予め定められた数に達しない場合）は、ＭＳマスクのビットの値をすべて“０”にして、イメージング制御器１７にＯＦＦ信号を送出する。これによって、この後のあらゆるＭＳ符号化に関する聴覚分析は行われないことになる。
【００６３】
聴覚エネルギー閾値演算器１６は、ＦＦＴ器１４から送出される周波数スペクトルと、ＭＳ適用判定器１５から送出されるＭＳマスクとＭＳ成分の周波数スペクトルに基づき、人間の聴覚における周波数分解能に基づいて分割されたサブ周波数帯域毎の聴覚エネルギー閾値を算出する。このサブ周波数帯域は詳細な分析を行うために、ＳＦＢよりも更に狭い帯域に分割される。本実施形態では、このサブ周波数帯域を以下、「パーティションバンド」と呼称する。なお、ショートブロックとロングブロックでは周波数スペクトルの分解能が異なるため、ここでのパーティションバンドの設定もショートブロックの場合とロングブロックの場合では当然異なっている。
【００６４】
本実施形態において、聴覚エネルギー閾値演算器１６では、聴覚エネルギー閾値は以下の手順で求められる。なお、説明の便宜上、ここではロングブロック長の場合について説明する。
まず、ＭＳマスクのビットが１つでも“１”になっている場合はＬＲＭＳ成分のスペクトルに対して、またＭＳマスクのビットがすべて“０”の場合はＬＲ成分のスペクトルのみに対して、非予測可能性が全周波数帯域に渡って計算される。
【００６５】
次に、スペクトルの非予測可能性に基づいてパーティションバンド毎にトナリティ（調性）計算が行われ、これに基づいてパーティションバンド間の周波数マスキング計算が行われる。
このようにして得られた周波数マスキング結果により聴覚エネルギー計算が行われ、調整前の聴覚エネルギーがパーティションバンド毎に計算され、これらはイメージング制御器１７に送出される。
【００６６】
イメージング制御器１７では、聴覚エネルギー閾値演算器１６から送出されるすべてのサブ周波数帯における聴覚エネルギー閾値の調整を行う。なお、ＭＳ適用判定器１５からＯＦＦ信号が送出された場合には、イメージング制御器１７は何も行わず、送出された聴覚エネルギー閾値をそのまま聴覚エネルギー閾値演算器１６に戻す。
【００６７】
次に、イメージング制御器１７から送出された調整後の聴覚エネルギー閾値に対して、聴覚エネルギー閾値演算器１６はプリエコー防止処理を行い、最終的な聴覚エネルギー閾値が得られる。
【００６８】
ＳＭＲ算出器１８では、聴覚エネルギー閾値演算器１６から送出される聴覚エネルギー閾値の組に従って、ＳＦＢ毎のＳＭＲを算出する。ここでも、ブロックタイプがEIGHT_SHORT_SEQUENCEのときは８組のＳＭＲが算出され、それ以外のときは１組のＳＭＲが算出される。
ＰＥ算出器１９では、聴覚エネルギー閾値演算器１６から送出される聴覚エネルギー閾値の組を利用して、フレーム全体の聴覚エントロピー（ＰＥ）を算出する。
【００６９】
図１に戻り、遅延バッファ３は、遅延バッファ１３と同じく１フレーム分の入力信号を新しく蓄積するとともに、蓄積してあった２フレーム分の入力信号を出力する。
【００７０】
フィルタバンク４では、聴覚心理演算器２が出力するブロックタイプに従って、ＦＦＴ器１４と同様な方法で適宜遅延バッファ３から送出される現フレームの入力信号を周波数成分に変換する。すなわち、長いブロック長を用いる場合は、入力信号の２０４８サンプルを１つのブロックとして、ブロックタイプに応じた形の窓掛けを実行後、ＭＤＣＴを行い、１０２４個の周波数スペクトルを出力する。一方、短いブロック長を用いる場合は、入力信号の２０４８サンプルのうち、４４８番目のサンプルを先頭として２５６サンプルを１つのブロックとして窓掛けを実行した後にＭＤＣＴを行い、１２８個の周波数成分を出力する変換を、入力信号を１２８サンプルずつずらしながら都合８回行い、８組の周波数スペクトルを得る。
【００７１】
ＭＳ符号化器５は、聴覚心理演算器２から出力されるＭＳマスクで指定されたＳＦＢの周波数成分からＭＳ成分を算出し、フィルタバンク４から出力されたＬＲ成分のスペクトルと入れ替える。このようにして作成された混合スペクトルと、聴覚心理演算器２から出力されたＳＭＲ値及びＰＥ値に基づいて、ビット割当て器６はＳＦＢ毎にビットを割り当て、量子化器７は各ＳＦＢのスケールファクタ（正規化係数）を算出してＳＦＢに割り当てられたビットに従い周波数成分を量子化する。
各ＳＦＢのスケールファクタと量子化スペクトルは、ビット整形器８によって定められた書式に従ってビットストリームに整形されて出力される。
【００７２】
以上説明したように、本実施形態における聴覚心理演算器２では、ＭＳ適用判定器１５においてＭＳ符号化が適用されるＳＦＢの数がある一定の数以上ないと判定した場合にはＭＳ符号化を中止する（一切ＭＳ符号化を適用しない）ことで、従来技術では１つでもＭＳ符号化が適用されるＳＦＢが存在した場合に行っていた、僅かな符号化効率向上のために全周波数帯域に渡ってＭＳ成分の聴覚分析を行うことで消費していた多大な処理（例えば、ＭＳ成分の聴覚エネルギー閾値計算や聴覚エネルギー閾値の調整等）を省略することができる。また、従来とほぼ同様な音質を保ったビットストリームを作成することができる。また、本実施形態において、結果的に作成されるビットストリームの符号化効率は従来とほぼ変わらないものを得ることができる。
【００７３】
（第２の実施形態）
次に、第２の実施形態について説明する
本発明の第２の実施形態は、汎用的なパーソナルコンピュータ（ＰＣ）上で動作するソフトウェアプログラムとして実施することが可能である。以下、この場合について図面を用いて説明する。
【００７４】
図６は、本発明の第２の実施形態におけるオーディオ信号符号化装置の構成例を示す図である。
図示の構成において、１００はＣＰＵであり、オーディオ信号符号化処理のための演算、論理判断等を行い、１０２のバスを介して、バス１０２に接続された各構成要素を制御する。
【００７５】
１０１はメモリであり、本実施形態の構成例における基本Ｉ／Ｏプログラムや、実行しているプログラムコード、プログラム処理時に必要なデータなどを格納する。
１０２はバスであり、ＣＰＵ１００の制御の対象とする構成要素を指示するアドレス信号を転送し、ＣＰＵ１００の制御の対象とする各構成要素のコントロール信号を転送し、各構成機器相互間のデータ転送を行う。
【００７６】
１０３は端末であり、装置の起動、各種条件や入力信号の設定、符号化開始の指示を行う。
１０４は外部記憶装置であり、データやプログラム等を記憶するための外部記憶領域である。データやプログラム等は必要に応じて保管され、また、保管されたデータやプログラムは必要な時に呼び出される。
【００７７】
１０５はメディアドライブであり、記録媒体に記録されているプログラムやデータ、デジタルオーディオ信号などはこのメディアドライブ１０５が読み取ることにより本オーディオ信号符号化装置にロードされる。また、外部記憶部１０４に蓄えられた各種データや実行プログラムを、記録媒体に書き込むことができる。
【００７８】
１０６はマイクであり、音を集音してオーディオ信号に変換する。
１０７はスピーカーであり、任意のオーディオ信号データを実際の音にして出力することができる。
１０８は通信網であり、ＬＡＮ、公衆回線、無線回線、放送電波などで構成されている。
【００７９】
１０９は通信インタフェース（通信Ｉ／Ｆ）であり、通信網１０８に接続されている。本実施形態のオーディオ信号符号化装置は、この機器を介して通信網１０８を経由して外部機器と通信し、データやプログラムを送受信することができる。
【００８０】
かかる各構成要素からなる本実施形態のオーディオ信号符号化装置においては、端末１０３からの各種の入力に応じて作動するものであって、端末１０３からの入力が供給されると、インタラプト信号がＣＰＵ１００に送られることによって、ＣＰＵ１００がメモリ１０１内に記憶してある各種の制御信号を読出し、それらの制御信号に従って、各種の制御が行われる。
【００８１】
本実施形態の装置は、基本Ｉ／Ｏプログラム、ＯＳ（オペレーティングシステム）、及び本オーディオ信号符号化処理プログラムをＣＰＵ１００が実行することによって動作する。基本Ｉ／Ｏプログラムはメモリ１０１中に書き込まれており、ＯＳは外部記憶装置１０４に書き込まれている。そして、本装置の電源がＯＮにされると、基本Ｉ／Ｏプログラム中のＩＰＬ（イニシャルプログラムローディング）機能により外部記憶装置１０４からＯＳがメモリ１０１に読み込まれ、ＯＳの動作が開始される。
【００８２】
本オーディオ信号符号化処理プログラムは、図３に示されるオーディオ信号符号化処理手順のフローチャートに基づいてプログラムコード化されたものである。
【００８３】
図７は、本オーディオ信号符号化処理プログラム及び関連データを記録媒体に記録したときの内容構成図である。
本実施形態において、本オーディオ信号符号化処理プログラム及び関連データは記録媒体に記録されている。図示したように記録媒体の先頭領域には、この記録媒体のディレクトリ情報が記録されており、その後にこの記録媒体のコンテンツである本オーディオ信号符号化処理プログラムと、オーディオ信号符号化処理関連データがファイルとして記録されている。
【００８４】
図８は本オーディオ信号符号化装置に、本オーディオ信号符号化処理プログラムを導入する模式図である。記録媒体に記録されたオーディオ信号符号化処理プログラム及び関連データは、図８に示したようにメディアドライブ１０５を通じて本装置にロードすることができる。この記録媒体１１０をメディアドライブ１０５にセットすると、ＯＳ及び基本Ｉ／Ｏプログラムの制御のもとに本オーディオ信号符号化処理プログラム及び関連データが記録媒体から読み出され、外部記憶装置１０４に格納される。その後、再起動時にこれらの情報がメモリ１０１にロードされて動作可能となる。
【００８５】
図９は、本オーディオ信号符号化装置処理プログラムがメモリ１０１にロードされ実行可能となった状態のメモリマップを示す。
メモリ１０１には、基本Ｉ／Ｏプログラム、ＯＳ、オーディオ信号符号化処理プログラム、関連データ及びワークエリアが格納される。
このとき、メモリ１０１のワークエリアには、カウンタｂ、現行フレームブロックタイプ、先行フレームブロック長、現行フレームブロック長、ＭＳマスク、閾値Ｔ、入力信号バッファ、ＳＭＲ、ＰＥ、余剰ビット量が格納されている。このうち、閾値Ｔは定数であり、予めシステムで定められた値が格納されている。
【００８６】
図１０は、本オーディオ信号符号化装置処理プログラムにおける入力信号バッファの一構成例である。
図示の構成において、バッファサイズは１０２４×３サンプルであり、説明の便宜上、図１０において１０２４サンプル毎に縦線で区切っている。入力信号は右（図１０における領域２００）から１フレーム分の１０２４サンプルずつ入力されて、左から逐次処理される。
なお、図示の構成は１チャンネル分の入力信号バッファを模式的に示しており、本実施形態では入力信号のチャンネル数の分だけ同様なバッファが用意される。
【００８７】
以下、本実施形態においてＣＰＵ１００で実行されるオーディオ信号符号化処理をフローに従って説明する。
【００８８】
図３は、本実施形態におけるオーディオ信号符号化処理のフローチャートである。
まず、ステップＳ１は、符号化するオーディオ入力信号をユーザが端末１０３を用いて指定する処理である。本実施形態において、符号化するオーディオ信号は、複数のチャンネルで構成されたオーディオ信号であり、外部記憶装置１０４に格納されているオーディオＰＣＭファイルでも良いし、マイク１０６で捉えたリアルタイムの音声信号をアナログ・デジタル変換した信号でも良い。処理を終えると、ステップＳ２へ進む。
【００８９】
ステップＳ２は、符号化するオーディオ入力信号が終了したか否かを判定する処理である。入力信号が終了している場合には、ステップＳ１１へ処理が進む。未終了の場合には、ステップＳ３へ処理が進む。
【００９０】
ステップＳ３は、図１０に示した入力信号バッファにおいて、右から２フレーム分、すなわち２０４８サンプルの時間信号を１フレーム分左にシフトするとともに、新たに１フレーム分、すなわち１０２４サンプルを右側に読み込む入力信号シフト処理である。この処理は入力信号に含まれるすべてのチャンネルに対して行われる。また、このステップＳ３での処理を行う前にオーディオ入力信号はフレーム分割されている。処理を終えると、ステップＳ４へ処理が進む。
【００９１】
ステップＳ４は、入力信号バッファに格納されている時間信号を分析し、現行フレームの聴覚心理演算を行う処理である。この演算の結果、現行フレームのブロックタイプと、ＭＳマスクと、聴覚エントロピー（ＰＥ）値と、ＳＦＢ毎のＳＭＲ値とが算出され、メモリ１０１上のワークエリアに格納される。ここで、ＳＭＲ値は、ブロックタイプがEIGHT_SHORT_SEQUENCEの場合にはショートブロック時の８組のＳＭＲ値が算出され、ブロックタイプがそれ以外の場合にはロングブロック時の１組のＳＭＲ値が算出される。この処理の詳細については、図４を用いて後述する。処理を終えると、ステップＳ５へ処理が進む。
【００９２】
ステップＳ５では、ステップＳ４において得られたブロックタイプに従って、現行フレームの時間信号、すなわち図１０に示した現行フレーム先頭ポインタから右に２０４８サンプル（２フレーム分）の信号に対して窓掛けを実行した後、時間周波数変換を行う。この結果、MPEG-2 AACの場合、ブロックタイプがEIGHT_SHORT_SEQUENCEのときは、１２８の周波数成分に分割されたスペクトルの組が８組得られる。それ以外のブロックタイプのときは、１０２４の周波数成分に分割されたスペクトルの組が１組得られる。処理を終えると、ステップＳ６に処理が進む。
【００９３】
ステップＳ６は、ステップＳ４において得られたＭＳマスクによってＭＳ符号化が指定されたＳＦＢに対して、Ｓ５で得られたＬＲ成分の周波数スペクトルから適宜ＭＳ成分の周波数スペクトルを算出して、Ｌ成分とＭ成分、Ｒ成分とＳ成分を入れ替える処理である。したがって、ＭＳマスクのビットの値がすべて“０”の場合には、このステップＳ６での処理は何も行われない。処理を終えると、ステップＳ７へ処理が進む。
【００９４】
ステップＳ７は、Ｓ４において得られたＳＭＲ値とＰＥ値、さらにステップＳ６で得られた混合周波数スペクトルに基づいてビット割当てを行う処理である。本実施形態においては、ビット割当ては二段階に行われる。まず、処理中のフレーム全体に割り当てるビット量をメモリ１０１上の余剰ビット量やステップＳ４において算出されたＰＥ値とブロックタイプから決定する。次に、ステップＳ４において得られたＳＭＲ値と周波数スペクトルからＳＦＢ毎の許容誤差エネルギーを算出し、これに基づいてフレーム内の各ＳＦＢに割り当てるビット量を決定する。このような処理は本発明のような変換符号化方法において一般的であるので、詳細は説明しない。処理を終えると、ステップＳ８へ処理が進む。
【００９５】
ステップＳ８は、各ＳＦＢのスケールファクタを算出するとともに、ステップＳ７で割り当てられたビット量に従って、周波数スペクトルを量子化する処理である。処理を終えると、ステップＳ９へ処理が進む。
【００９６】
ステップＳ９は、ステップＳ８において算出されたスケールファクタと量子化スペクトルを、符号化方式によって定められたフォーマットに従って整形し、ビットストリームとして出力する処理である。本実施形態において、この処理によって出力されるビットストリームは、外部記憶装置１０４に格納されても良いし、あるいは、通信インタフェース１０９を介して通信網１０８に繋がっている外部機器に出力されても良い。処理を終えると、ステップＳ１０へ処理が進む。
【００９７】
ステップＳ１０は、ステップＳ９で出力されたビットストリームに使用されたビット量と符号化ビットレートから、メモリ１０１上に格納されている余剰ビット量の補正を行う処理である。処理を終えると、ステップＳ２へ処理が進む。
【００９８】
ステップＳ１１は、聴覚心理演算や直交変換などで生じる遅延によってまだ出力されていない量子化スペクトルがメモリ上に残っているため、それらをビットストリームに整形して出力する処理である。処理を終えると、オーディオ信号符号化処理を終了する。
【００９９】
図４は、上記図３に示したステップＳ４の聴覚心理演算処理の詳細を示したフローチャートである。
【０１００】
ステップＳ１０１は、先行フレームの入力信号、すなわち、図１０における先行フレーム先頭ポインタを先頭にして左に２０４８サンプル（２フレーム分）の時間信号において、急激な振幅の増大が存在するか否かを調べるアタック検出処理である。この処理は、上述した第１の実施形態と同様に、先行フレームの入力信号をハイパスフィルタに通した後、時間的に細分化した信号間のエネルギーを比較して時間振幅の変化を検知することによってアタック状態を検出するが、当分野において公知であるため詳細な説明は省略する。処理を終えると、ステップＳ１０２へ進む。
【０１０１】
ステップＳ１０２は、ステップＳ１０１の処理結果を受けて、先行フレームのブロック長を判定する処理である。ステップＳ１０１において、アタック状態が検出された場合は、先行フレーム長をショートブロック長と判定し、そうでない場合は、先行フレーム長をロングブロック長と判定する。判定された先行フレームブロック長はメモリ１０１上のワークエリアに格納される。処理を終えると、ステップＳ１０３へ進む。
【０１０２】
ステップＳ１０３は、メモリ１０１上に格納されている先行フレームブロック長と現行フレームブロック長とから、現行フレームブロックタイプを決定する処理である。この処理は、時間周波数変換におけるフレーム間の境界で発生するエイリアシングをキャンセルするために行われる。本実施形態において、例えば現行ブロック長がロング長で、先行ブロック長がショート長である場合、現行ブロックタイプとしてLONG_START_SEQUENCEが決定される。決定された現行ブロックタイプはメモリ１０１上のワークエリアに格納される。処理を終えると、ステップＳ１０４へ進む。
【０１０３】
ステップＳ１０４は、ステップＳ１０３において決定された現行フレームブロックタイプに従って、現行フレームの入力信号、すなわち、図１０に示した入力信号バッファにおける現行フレーム先頭ポインタから右に２０４８サンプル（２フレーム分）に対して、ハニング窓掛け後、ＦＦＴによる時間周波数変換を行う。処理を終えると、ステップＳ１０５へ進む。
【０１０４】
ステップＳ１０５は、処理している入力信号中にチャンネルペアが含まれているか否かを判定する処理である。この判定の結果、チャンネルペアが入力信号に含まれている場合にはステップＳ１０６へ処理が進み、チャンネルペアが入力信号に含まれていない場合にはステップＳ１１４へ処理が進む。
【０１０５】
ステップＳ１０６は、チャンネルペアの現行ブロックタイプがＬチャンネル、Ｒチャンネルともに同じであるか否かを判定する処理である。この判定の結果、ＬとＲで現行ブロックタイプが同じチャンネルペアであるならば、ステップＳ１０７へ処理が進む。そうでない場合は、ステップＳ１１４へ処理が進み、ＬとＲがそれぞれ独立したチャンネルとして以後の処理が行われる。
【０１０６】
ステップＳ１０７は、チャンネルペアのＬＲ成分周波数スペクトルに対して、ＭＳ適用判定処理を行い、ＭＳマスクをメモリ１０１上のワークエリアに格納する処理である。このステップＳ１０７での処理の詳細については図５を用いて後述する。処理を終えると、ステップＳ１０８へ処理が進む。
【０１０７】
ステップＳ１０８は、ステップＳ１０７で出力されたＭＳマスクを参照してＭＳ符号化が適用されると判定されたＳＦＢの数をカウントし、これがメモリ１０１のワークエリアに格納されている閾値Ｔを超えているか否かを判定する処理である。この判定の結果、ＭＳ符号化を適用するＳＦＢ数が閾値Ｔを超えている場合にはステップＳ１０９へ処理が進み、閾値Ｔを超えていない場合には、ステップＳ１１３へ処理が進む。
【０１０８】
ステップＳ１０９は、すべての周波数帯域にわたってＬ，Ｒ，Ｍ，Ｓ成分の聴覚エネルギー閾値計算を行う処理である。ここで行われる処理の詳細は第１の実施形態における聴覚エネルギー閾値演算器１６で行われる処理と同様である。すなわち、まず、ＬＲＭＳ成分のスペクトルに対して非予測性が計算され、スペクトルの非予測性に基づいてパーティションバンド毎にトナリティ（調性）計算が行われ、これに基づいてパーティションバンド間の周波数マスキング計算が行われる。続いて、得られた周波数マスキング結果より、聴覚エネルギー計算が行われ、調整前の聴覚エネルギーがパーティションバンド毎にＬ，Ｒ，Ｍ，Ｓすべての成分に対して計算される。処理を終えると、ステップＳ１１０へ進む。
【０１０９】
ステップＳ１１０は、Ｌ，Ｒ，Ｍ，Ｓ各成分の聴覚エネルギー閾値に対して、大きさの調整を行うイメージング制御処理である。ここで行われる処理は、第１の実施形態におけるイメージング制御器１７で行われる処理と同様であるため、詳細は省略する。処理を終えると、ステップＳ１１１へ進む。
【０１１０】
ステップＳ１１１は、ＭＳ適用時の調整が行われた聴覚エネルギー閾値に対して、プリエコー制御のための調整を行う処理である。処理を終えると、ステップＳ１１２へ処理が進む。
【０１１１】
ステップＳ１１２は、ステップＳ１０７において作成されたＭＳマスクに従って、Ｌ，Ｒ成分の聴覚エネルギー閾値にＭ，Ｓ成分の聴覚エネルギー閾値を混合する処理である。具体的には、ＭＳマスクにおいて値が“１”となっているビットに対応するＳＦＢの聴覚エネルギー閾値に対して、Ｌ成分をＭ成分に、またＲ成分をＳ成分を入れ替える。処理を終えると、ステップＳ１１５へ進む。
【０１１２】
ステップＳ１１３は、メモリ１０１上に格納されているＭＳマスクのビットの値をすべて“０”にしてクリアする処理である。この結果、このチャンネルペアに対しては以後一切のＭＳ符号化に関する処理は行われなくなる。処理を終えると、ステップＳ１１４へ処理が進む。
【０１１３】
ステップＳ１１４は、チャンネル単独で聴覚エネルギー閾値を算出する処理である。ここでの処理も第１の実施形態の聴覚エネルギー閾値演算器１６と同様に行われるが、上述したステップＳ１０９で行われる処理とは異なり、ＭＳ成分に関する計算は一切行われない。処理を終えると、ステップＳ１１５へ処理が進む。
【０１１４】
ステップＳ１１５は、ステップＳ１１２もしくはステップＳ１１４において得られたパーティションバンド毎のＬ，Ｒチャンネルの聴覚エネルギー閾値から、Ｌ，ＲチャンネルのＰＥ値を算出する処理である。処理を終えると、ステップＳ１１６へ進む
【０１１５】
ステップＳ１１６は、ステップＳ１１２もしくはステップＳ１１４において得られたパーティションバンド毎のＬ，Ｒチャンネルの聴覚エネルギー閾値から、Ｌ，ＲチャンネルのＳＦＢ毎のＳＭＲ値を算出する処理である。処理を終えると、聴覚心理演算処理を終了してリターンする（図３におけるステップＳ５に進む）。
【０１１６】
図５は、上記図４に示したステップＳ１０７のＭＳ適用判定処理の詳細を示したフローチャートである。
【０１１７】
ステップＳ２０１は、ＬＲ成分のスペクトルからＭＳ成分の周波数スペクトルを算出する処理である。本実施形態においても、ＭＳ成分は第１の実施形態にて示した式（１）と同様な演算によってＬＲ成分から求められる。処理を終えると、ステップＳ２０２へ進む。
【０１１８】
ステップＳ２０２は、ＳＦＢ毎のＬ，Ｒ，Ｍ，Ｓ成分のエネルギーを算出する処理である。この処理も、第１の実施形態にて示した式（２）と同じ要領で計算される。処理を終えると、ステップＳ２０３へ進む。
【０１１９】
ステップＳ２０３は、メモリ１０１上のＳＦＢカウンタｂを初期化して“０”を代入する。処理を終えるとステップＳ２０４へ進む。
【０１２０】
ステップＳ２０４は、第１の実施形態にて示した式（３）と同様にして、ＳＦＢｂにおけるＭＳ符号化の適用判定を行う。この結果、式（３）が成立しない場合は、ステップＳ２０５へ処理が進み、ＭＳマスクのｂ番目のビットであるMSmask[b]に値“０”がセットされる。一方、ステップＳ２０４において式（３）が成立する場合は、ステップＳ２０６に処理が進み、MSmask[b]に値“１”がセットされる。これらの処理を終えると、ステップＳ２０７に進む。
【０１２１】
ステップＳ２０７は、すべてのＳＦＢに対して適用判定が終了したか否かを判定する処理である。すべてのＳＦＢに対する判定が終了していない場合は、ステップＳ２０８へ進む。すべてのＳＦＢに対する判定が終了した場合は、ＭＳ適用判定処理を終了してリターンする（図４におけるステップＳ１０８に進む）。
【０１２２】
ステップＳ２０８は、メモリ１０１上のＳＦＢカウンタｂに“１”を加える処理である。処理を終えると、ステップＳ２０４に進み、次のＳＦＢに対する判定を行う。
【０１２３】
以上説明したように、第２の実施形態におけるオーディオ信号符号化処理では、ＭＳ適用判定処理の結果、ＭＳ符号化適用ＳＦＢの数が予め定められた閾値Ｔよりも大きくなければ、通常のＬＲ符号化時の分析のみを行うことにより、僅かな符号化効率の向上のために消費していた周波数全域に渡るＭＳ成分の聴覚エネルギー閾値計算やイメージング制御処理にかかる処理量を省略することができる。
【０１２４】
なお、上述の実施形態では、オーディオ符号化装置及び方法としてブロックスイッチングが行われる符号化方式の場合を一例として示しているが、ブロックスイッチングを行わない符号化方式においても同様に実施することが可能である。
【０１２５】
また、上述の第１の実施形態では、オーディオ符号化装置全体及び聴覚心理演算器の双方がそれぞれ遅延バッファを備えるように構成しているが、これは説明の便宜上このような構成をとったものであり、オーディオ符号化装置全体で遅延バッファを１つだけ利用して構成しても同様な実施が可能である。
【０１２６】
また、上述の第２の実施形態では、特に記録媒体に関して言及していないが、これは、ＦＤ、ＨＤＤ、ＣＤ、ＤＶＤ、ＭＯ、半導体メモリなど、どのような記録媒体を用いても適用可能である。
【０１２７】
また、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【０１２８】
例えば、上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【０１２９】
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体は本発明を構成する。また、そのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１３０】
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【０１３１】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【図面の簡単な説明】
【０１３２】
【図１】第１の実施形態におけるオーディオ信号符号化装置の一構成例を示す図である。
【図２】第１の実施形態における聴覚心理演算器の詳細な構成例を示す図である。
【図３】第２の実施形態におけるオーディオ信号符号化処理のフローチャートである。
【図４】聴覚心理演算処理の詳細を示すフローチャートである。
【図５】ＭＳ適用判定処理の詳細を示すフローチャートである。
【図６】第２の実施形態におけるオーディオ信号符号化装置の構成例を示す図である。
【図７】第２の実施形態におけるオーディオ信号符号化処理プログラム及び関連データを格納した記録媒体の内容構成例を示す図である。
【図８】第２の実施形態におけるオーディオ信号符号化処理プログラムをパーソナルコンピュータに導入する模式図である。
【図９】第２の実施形態におけるメモリマップ構成図である。
【図１０】第２の実施形態における入力信号バッファの構成例を示す図である。
【図１１】MPEG-2/4 AACにおけるブロックタイプを示す図である。
【符号の説明】
【０１３３】
１  フレーム分割器
２  聴覚心理演算器
３、１３  遅延バッファ
４  フィルタバンク
５  ＭＳ符号化器
６  ビット割当て器
７  量子化器
８  ビット整形器
１１  アタック検出器
１２  ブロック判定器
１４  ＦＦＴ器
１５  ＭＳ適用判定器
１６  聴覚エネルギー閾値演算器
１７  イメージング制御器
１８  ＳＭＲ算出器
１９  ＰＥ算出器
１００  ＣＰＵ
１０１  メモリ
１０２  バス
１０３  端末
１０４  外部記憶装置
１０５  メディアドライブ
１０６  マイク
１０７  スピーカー
１０８  通信網
１０９  通信インタフェース
【図１】
2005351977.tif 000006
【図２】
2005351977.tif 000007
【図３】
2005351977.tif 000008
【図４】
2005351977.tif 000009
【図５】
2005351977.tif 000010
【図６】
2005351977.tif 000011
【図７】
2005351977.tif 000012
【図８】
2005351977.tif 000013
【図９】
2005351977.tif 000014
【図１０】
2005351977.tif 000015
【図１１】
2005351977.tif 000016