(57)【特許請求の範囲】
【請求項１】
オーディオ信号を時間周波数変換し、周波数スペクトル係数を生成する時間周波数変換手段と、
前記時間周波数変換手段により生成された前記周波数スペクトル係数を正規化し、正規化された前記周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを生成する正規化手段と、
前記オーディオ信号のレベルを計算するレベル計算手段と、
前記レベル計算手段により計算された前記オーディオ信号のレベルに基づいて、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを変更するスケールファクタ変更手段と、
前記オーディオ信号の符号化時にエラーが発生しない場合、前記正規化手段により生成された前記オーディオ信号の前記符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、前記スケールファクタ変更手段により前記スケールファクタが変更された前記コンシールメント用の符号化データを、そのオーディオ信号の前記符号化データとして出力する出力手段と
を備える符号化装置。
【請求項２】
前記レベル計算手段は、前記オーディオ信号の前記スケールファクタの平均値、最大値、または最小値を、前記オーディオ信号のレベルとして計算する
請求項１に記載の符号化装置。
【請求項３】
前記微小ノイズ信号の前記スケールファクタは、オフセット値、および、前記オフセット値と前記スケールファクタの差分に符号化されており、
前記スケールファクタ変更手段は、前記オフセット値を変更することにより、前記スケールファクタを変更する
請求項１に記載の符号化装置。
【請求項４】
過去のフレームの前記オーディオ信号の前記スケールファクタまたは前記微小ノイズ信号の変更後の前記スケールファクタを用いて、前記オーディオ信号の前記スケールファクタをフレーム間予測符号化するスケールファクタ符号化手段
をさらに備え、
前記オーディオ信号の前記符号化データは、前記正規化手段により正規化された前記周波数スペクトル係数と、前記スケールファクタ符号化手段によりフレーム間予測符号化された前記スケールファクタとからなる
請求項１に記載の符号化装置。
【請求項５】
前記コンシールメント用の符号化データのビット数は、前記符号化装置で処理可能な最小のビット数であり、
前記出力手段は、前記コンシールメント用の符号化データのビット数が出力ビットレートに対応するように、前記コンシールメント用の符号化データをパディングして出力する
請求項１に記載の符号化装置。
【請求項６】
符号化装置が、
オーディオ信号を時間周波数変換し、周波数スペクトル係数を生成する時間周波数変換ステップと、
前記時間周波数変換ステップの処理により生成された前記周波数スペクトル係数を正規化し、正規化された前記周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを生成する正規化ステップと、
前記オーディオ信号のレベルを計算するレベル計算ステップと、
前記レベル計算ステップの処理により計算された前記オーディオ信号のレベルに基づいて、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを変更するスケールファクタ変更ステップと、
前記オーディオ信号の符号化時にエラーが発生しない場合、前記正規化ステップの処理により生成された前記オーディオ信号の前記符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、前記スケールファクタ変更ステップの処理により前記スケールファクタが変更された前記コンシールメント用の符号化データを、そのオーディオ信号の前記符号化データとして出力する出力ステップと
を含む符号化方法。
【請求項７】
コンピュータに、
オーディオ信号を時間周波数変換し、周波数スペクトル係数を生成する時間周波数変換ステップと、
前記時間周波数変換ステップの処理により生成された前記周波数スペクトル係数を正規化し、正規化された前記周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを生成する正規化ステップと、
前記オーディオ信号のレベルを計算するレベル計算ステップと、
前記レベル計算ステップの処理により計算された前記オーディオ信号のレベルに基づいて、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを変更するスケールファクタ変更ステップと、
前記オーディオ信号の符号化時にエラーが発生しない場合、前記正規化ステップの処理により生成された前記オーディオ信号の前記符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、前記スケールファクタ変更ステップの処理により前記スケールファクタが変更された前記コンシールメント用の符号化データを、そのオーディオ信号の前記符号化データとして出力する出力ステップと
を含む処理を実行させるためのプログラム。
【請求項８】
オーディオ信号の符号化時にエラーが発生しない場合、そのオーディオ信号を時間周波数変換し、正規化することによって生成された、正規化された周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを、そのオーディオ信号のレベルに基づいて変更し、そのオーディオ信号の前記符号化データとして出力する符号化装置から供給される、前記符号化データに含まれる前記スケールファクタを用いて、その符号化データに含まれる前記正規化された周波数スペクトル係数を逆正規化する逆正規化手段と、
前記逆正規化手段により逆正規化された結果得られる前記周波数スペクトル係数を周波数時間変換する周波数時間変換手段と
を備える復号装置。
【請求項９】
前記符号化データと、前記スケールファクタが変更される前の前記コンシールメント用の符号化データである比較用コンシールメント符号化データとを比較することにより、前記符号化データが前記コンシールメント用の符号化データであるかどうかを判定する判定手段
をさらに備える
請求項８に記載の復号装置。
【請求項１０】
前記判定手段は、前記符号化データのうちの前記正規化された周波数スペクトル係数と、前記比較用コンシールメント符号化データのうちの前記正規化された周波数スペクトル係数とが一致する場合、前記符号化データが前記コンシールメント用の符号化データであると判定する
請求項９に記載の復号装置。
【請求項１１】
前記判定手段により前記符号化データが前記コンシールメント用の符号化データであると判定された場合、そのコンシールメント用の符号化データに含まれる前記スケールファクタと、そのコンシールメント用の符号化データより前の符号化データとを用いて、コンシールメント用のオーディオ信号を生成する生成手段
をさらに備え、
前記逆正規化手段は、前記判定手段により前記符号化データが前記コンシールメント用の符号化データではないと判定された場合、その符号化データを逆正規化する
請求項９に記載の復号装置。
【請求項１２】
前記微小ノイズ信号の前記スケールファクタは、オフセット値、および、前記オフセット値と前記スケールファクタの差分に符号化されている
請求項８に記載の復号装置。
【請求項１３】
過去のフレームの前記オーディオ信号の前記スケールファクタまたは前記微小ノイズ信号の変更後の前記スケールファクタを用いて、前記オーディオ信号の前記符号化データに含まれる、フレーム間予測符号化された前記スケールファクタをフレーム間予測復号し、前記オーディオ信号の前記スケールファクタを生成するスケールファクタ復号手段
をさらに備える
請求項８に記載の復号装置。
【請求項１４】
前記符号化装置から供給される、パディングされた前記コンシールメント用の符号化データから前記コンシールメント用の符号化データを抽出する抽出手段
をさらに備える
請求項８に記載の復号装置。
【請求項１５】
復号装置が、
オーディオ信号の符号化時にエラーが発生しない場合、そのオーディオ信号を時間周波数変換し、正規化することによって生成された、正規化された周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを、そのオーディオ信号のレベルに基づいて変更し、そのオーディオ信号の前記符号化データとして出力する符号化装置から供給される、前記符号化データに含まれる前記スケールファクタを用いて、その符号化データに含まれる前記正規化された周波数スペクトル係数を逆正規化する逆正規化ステップと、
前記逆正規化ステップの処理により逆正規化された結果得られる前記周波数スペクトル係数を周波数時間変換する周波数時間変換ステップと
を含む復号方法。
【請求項１６】
コンピュータに、
オーディオ信号の符号化時にエラーが発生しない場合、そのオーディオ信号を時間周波数変換し、正規化することによって生成された、正規化された周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを、そのオーディオ信号のレベルに基づいて変更し、そのオーディオ信号の前記符号化データとして出力する符号化装置から供給される、前記符号化データに含まれる前記スケールファクタを用いて、その符号化データに含まれる前記正規化された周波数スペクトル係数を逆正規化する逆正規化ステップと、
前記逆正規化ステップの処理により逆正規化された結果得られる前記周波数スペクトル係数を周波数時間変換する周波数時間変換ステップと
を含む処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置および符号化方法、復号装置および復号方法、並びにプログラムに関し、特に、より自然な音のコンシールメント用のオーディオ信号を生成することができるようにした符号化装置および符号化方法、復号装置および復号方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、オーディオ信号をディジタル化し、その結果得られるディジタル信号を圧縮・符号化して、伝送したり保存したりすることが多い。オーディオ信号の符号化は、主に波形符号化と分析合成符号化に分類される。波形符号化には、帯域分割フィルタを用いてオーディオ信号を複数の周波数成分に分割し、符号化する帯域分割符号化や、ディジタルオーディオ信号を所定のブロック単位で時間-周波数変換し、その結果得られるスペクトルを符号化する変換符号化などがある。波形符号化では、帯域分割フィルタや時間-周波数変換によって周波数成分に分割されたオーディオ信号に対して所定の帯域毎に量子化が行われ、いわゆる聴覚マスキング効果などを利用した高能率な符号化が行われる。
【０００３】
図１は、変換符号化を行う符号化装置の構成の一例を示すブロック図である。
【０００４】
図１の符号化装置１０は、時間‐周波数変換部１１、スペクトル正規化部１２、スペクトル量子化部１３、エントロピー符号化部１４、スケールファクタ符号化部１５、および多重化部１６により構成される。
【０００５】
符号化装置１０の時間‐周波数変換部１１には、時間信号であるオーディオ信号が入力される。時間‐周波数変換部１１は、入力されたオーディオ信号に対して所定のフレーム単位でMDCT（Modified Discrete Cosine Transform）（修正コサイン変換）などの時間−周波数変換を行う。時間‐周波数変換部１１は、その結果得られるフレーム単位の周波数スペクトル係数（MDCT係数）をスペクトル正規化部１２に供給する。
【０００６】
スペクトル正規化部１２は、時間‐周波数変換部１１から供給されるフレーム単位の周波数スペクトル係数を、所定の帯域幅の量子化単位（量子化ユニット）ごとにグルーピングする。スペクトル正規化部１２は、グルーピングされた量子化ユニットの周波数スペクトル係数を、以下の式（１）により、所定のステップ幅の係数2-λ×SF［ｎ］を用いてフレーム単位で正規化する。
【０００７】
XＮｏｒｍ(k)=X(k)×2-λ×SF［ｎ］
・・・（１）
【０００８】
なお、式（１）において、X(k)は、n番目の量子化ユニットのk番目の周波数スペクトル係数を表し、XＮｏｒｍ(k)は、正規化された周波数スペクトル係数を表す。また、λは、ステップ幅を決定する値であり、例えば、λ=0.5である場合ステップ幅は3dBとなる。ここでは、ステップ幅λはフレームによらず一定であるものとする。また、ここでは、係数2-λ×SF［ｎ］に関する情報としての指数インデックスSF[n]（整数）をスケールファクタという。
【０００９】
スペクトル正規化部１２は、以上のようにして正規化されたフレーム単位の周波数スペクトル係数をスペクトル量子化部１３に供給し、正規化に用いられたフレーム単位のスケールファクタをスケールファクタ符号化部１５に供給する。
【００１０】
スペクトル量子化部１３は、スペクトル正規化部１２から供給される正規化されたフレーム単位の周波数スペクトル係数を所定のビット数で量子化し、量子化されたフレーム単位の周波数スペクトル係数をエントロピー符号化部１４に供給する。また、スペクトル量子化部１３は、正規化されたフレーム単位の周波数スペクトル係数の各量子化ユニットの量子化時のビット数を表す量子化情報を多重化部１６に供給する。
【００１１】
エントロピー符号化部１４は、スペクトル量子化部１３から供給される量子化されたフレーム単位の周波数スペクトル係数を、ハフマン符号化や算術符号化などによって可逆圧縮し、その結果得られるフレーム単位の周波数スペクトル係数を符号化スペクトルデータとして多重化部１６に供給する。
【００１２】
スケールファクタ符号化部１５は、スペクトル正規化部１２から供給されるフレーム単位のスケールファクタを符号化する。スケールファクタ符号化部１５は、符号化されたフレーム単位のスケールファクタを符号化スケールファクタとして多重化部１６に供給する。
【００１３】
多重化部１６は、エントロピー符号化部１４からの符号化スペクトルデータ、スケールファクタ符号化部１５からの符号化スケールファクタ、およびスペクトル量子化部１３からの量子化情報を多重化し、フレーム単位の符号化データを生成する。多重化部１６は、その符号化データを出力する。
【００１４】
ところで、上述したような符号化装置１０において、フレームのビット数が符号化に必要なビット数より少ない、リアルタイム処理可能な時間より多くの時間を符号化に要するなどの原因で、符号化エラーが発生することがある。このような場合、再符号化を行うことは不可能であるため、不定なデータが符号化データとして出力されないように、その不定なデータの代わりにコンシールメント用の符号化データを出力するエラーコンシールメント手段が必要である。
【００１５】
エラーコンシールメント手段としては、例えば、制限時間内に符号化が終了しない場合に、符号化対象のフレームの符号化データの代わりに、そのフレームの前のフレームの符号化データをコンシールメント用の符号化データとして出力するものが提案されている（例えば、特許文献１参照）。
【００１６】
また、エラーコンシールメント手段としては、無音信号などを符号化することにより予めコンシールメント用の符号化データを用意しておき、その符号化データを符号化エラーが発生したフレームの符号化データの代わりに出力するものも提案されている（例えば、特許文献２参照）。
【００１７】
一方、復号時に符号化データの同期異常が検出された場合、その符号化データの代わりに、予め記憶されている無音の符号化データをコンシールメント用の符号化データとして出力する音声圧縮伝送装置が提案されている（例えば、特許文献３参照）。
【００１８】
また、外部からのミュート指示にしたがって、符号化データを予め作成された無音の符号化データに置き換えて出力する装置が提案されている（例えば、特許文献４参照）。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特許第３４６３５９２号
【特許文献２】特開２００３−５７９８号
【特許文献３】特許第２７３１５１４号
【特許文献４】特開平９−２９４０７７号
【発明の概要】
【発明が解決しようとする課題】
【００２０】
しかしながら、特許文献１に記載されているようなエラーコンシールメント手段では、符号化対象のオーディオ信号のレベルの時間変化が大きい場合、コンシールメント用の符号化データの信号レベルは、符号化エラーが発生したフレームの本来の符号化データの信号レベルとは大きく異なる。その結果、コンシールメント用の符号化データの復号結果として、不自然な音のオーディオ信号が生成される場合がある。
【００２１】
また、特許文献２に記載されているようなエラーコンシールメント手段では、コンシールメント用の符号化データの信号レベルと、符号化エラーが発生したフレームの本来の符号化データの信号レベルが大きく異なる。その結果、コンシールメント用の符号化データの復号結果として、異音や不連続で不自然な音のオーディオ信号が生成される場合がある。
【００２２】
本発明は、このような状況に鑑みてなされたものであり、より自然な音のコンシールメント用のオーディオ信号を生成することができるようにするものである。
【課題を解決するための手段】
【００２３】
本発明の第１の側面の符号化装置は、オーディオ信号を時間周波数変換し、周波数スペクトル係数を生成する時間周波数変換手段と、前記時間周波数変換手段により生成された前記周波数スペクトル係数を正規化し、正規化された前記周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを生成する正規化手段と、前記オーディオ信号のレベルを計算するレベル計算手段と、前記レベル計算手段により計算された前記オーディオ信号のレベルに基づいて、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを変更するスケールファクタ変更手段と、前記オーディオ信号の符号化時にエラーが発生しない場合、前記正規化手段により生成された前記オーディオ信号の前記符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、前記スケールファクタ変更手段により前記スケールファクタが変更された前記コンシールメント用の符号化データを、そのオーディオ信号の前記符号化データとして出力する出力手段とを備える符号化装置である。
【００２４】
本発明の第１の側面の符号化方法およびプログラムは、本発明の第１の側面の符号化装置に対応する。
【００２５】
本発明の第１の側面においては、オーディオ信号が時間周波数変換されて、周波数スペクトル係数が生成され、前記周波数スペクトル係数が正規化されて、正規化された前記周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データが生成され、前記オーディオ信号のレベルが計算され、前記オーディオ信号のレベルに基づいて、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタが変更され、前記オーディオ信号の符号化時にエラーが発生しない場合、生成された前記オーディオ信号の前記符号化データが出力され、前記オーディオ信号の符号化時にエラーが発生した場合、前記スケールファクタ変更手段により前記スケールファクタが変更された前記コンシールメント用の符号化データが、そのオーディオ信号の前記符号化データとして出力される。
【００２６】
本発明の第２の側面の復号装置は、オーディオ信号の符号化時にエラーが発生しない場合、そのオーディオ信号を時間周波数変換し、正規化することによって生成された、正規化された周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを、そのオーディオ信号のレベルに基づいて変更し、そのオーディオ信号の前記符号化データとして出力する符号化装置から供給される、前記符号化データに含まれる前記スケールファクタを用いて、その符号化データに含まれる前記正規化された周波数スペクトル係数を逆正規化する逆正規化手段と、前記逆正規化手段により逆正規化された結果得られる前記周波数スペクトル係数を周波数時間変換する周波数時間変換手段とを備える復号装置である。
【００２７】
本発明の第２の側面の復号方法およびプログラムは、本発明の第２の側面の復号装置に対応する。
【００２８】
本発明の第２の側面においては、オーディオ信号の符号化時にエラーが発生しない場合、そのオーディオ信号を時間周波数変換し、正規化することによって生成された、正規化された周波数スペクトル係数と、その正規化に用いられたスケールファクタからなる符号化データを出力し、前記オーディオ信号の符号化時にエラーが発生した場合、微小ノイズ信号を時間周波数変換し、正規化することによって得られる、コンシールメント用の符号化データに含まれるスケールファクタを、そのオーディオ信号のレベルに基づいて変更し、そのオーディオ信号の前記符号化データとして出力する符号化装置から供給される、前記符号化データに含まれる前記スケールファクタを用いて、その符号化データに含まれる前記正規化された周波数スペクトル係数が逆正規化され、逆正規化された結果得られる前記周波数スペクトル係数が周波数時間変換される。
【発明の効果】
【００２９】
本発明の第１の側面によれば、より自然な音のコンシールメント用のオーディオ信号の符号化データを生成することができる。
【００３０】
また、本発明の第２の側面によれば、より自然な音のコンシールメント用のオーディオ信号を生成することができる。
【図面の簡単な説明】
【００３１】
【図１】従来の符号化装置の構成の一例を示すブロック図である。
【図２】本発明を適用した符号化装置の一実施の形態の構成例を示すブロック図である。
【図３】コンシールメント符号化データのフレーム構造の例を示す図である。
【図４】符号化スケールファクタの変更を説明する図である。
【図５】図２の符号化装置による符号化処理を説明するフローチャートである。
【図６】復号装置の構成例を示すブロック図である。
【図７】図６の復号装置による復号処理を説明するフローチャートである。
【図８】復号装置の他の構成例を示すブロック図である。
【図９】符号化データの比較を説明する図である。
【図１０】図８の復号装置による復号処理を説明するフローチャートである。
【図１１】コンピュータの一実施の形態の構成例を示すブロック図である。
【発明を実施するための形態】
【００３２】
＜一実施の形態＞
［符号化装置の一実施の形態の構成例］
図２は、本発明を適用した符号化装置の一実施の形態の構成例を示すブロック図である。
【００３３】
図２に示す構成のうち、図１の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
【００３４】
図２の符号化装置３０の構成は、主に、エラー検出部３１、信号レベル計算部３２、符号化スケールファクタ置換部３３、および代替符号化データ出力部３４が新たに設けられている点、および、スケールファクタ符号化部１５、多重化部１６の代わりにスケールファクタ符号化部３５、多重化部３６が設けられている点が図１の構成と異なる。符号化装置３０は、符号化エラーが発生した場合、オーディオ信号のレベルに基づいて、フレーム単位のコンシールメント用のオーディオ信号の符号化データ（以下、コンシールメント符号化データという）を生成する。
【００３５】
具体的には、符号化装置３０のエラー検出部３１は、符号化においてエラーが発生したかどうか、および、符号化時間が所定の時間（例えば、リアルタイム処理可能な時間）を超過しているかどうかをフレーム単位で判定する。エラー検出部３１は、判定結果に基づいて符号化エラーを検出し、検出結果を信号レベル計算部３２と多重化部３６に供給する。
【００３６】
信号レベル計算部３２は、エラー検出部３１からの検出結果に応じて、スペクトル正規化部１２により得られるフレーム単位のスケールファクタの平均値、最大値、最小値などを、符号化対象のフレームのオーディオ信号のスペクトルレベルとして計算する。信号レベル計算部３２は、計算されたスペクトルレベルを符号化スケールファクタ置換部３３に供給する。
【００３７】
符号化スケールファクタ置換部３３には、予め符号化装置３０の図示せぬメモリに記憶されている、コンシールメント符号化データが入力される。コンシールメント符号化データとしては、例えば、微小ノイズ信号をコンシールメント用のオーディオ信号として、符号化装置３０に入力されるオーディオ信号と同様に符号化された、符号化装置３０が処理可能な最小のフレーム長（ビット数）のデータが用いられる。
【００３８】
符号化スケールファクタ置換部３３は、スケールファクタ変更手段として機能し、信号レベル計算部３２から供給されるスペクトルレベルに基づいて、コンシールメント符号化データ内の符号化スケールファクタを変更する。符号化スケールファクタ置換部３３は、符号化スケールファクタが変更されたコンシールメント符号化データを代替符号化データ出力部３４に供給する。また、符号化スケールファクタ置換部３３は、変更後の符号化スケールファクタに対応するスケールファクタをスケールファクタ符号化部３５に供給して保持させる。
【００３９】
代替符号化データ出力部３４は、符号化スケールファクタ置換部３３から供給されるコンシールメント符号化データのビット数が出力ビットレートに対応するように、コンシールメント符号化データをパディングする。
【００４０】
コンシールメント符号化データは、符号化装置３０が処理可能な最小のフレーム長のデータであるので、代替符号化データ出力部３４は、パディングを行うことにより任意の出力ビットレートに対応するフレーム長のコンシールメント符号化データを生成することができる。従って、符号化装置３０は、フレーム長ごとに、コンシールメント符号化データを保持する必要がなく、コンシールメント符号化データを保持する図示せぬメモリを節約することができる。
【００４１】
代替符号化データ出力部３４は、パディングされたコンシールメント符号化データを多重化部３６に供給する。
【００４２】
スケールファクタ符号化部３５は、スペクトル正規化部１２から供給されるフレーム単位のスケールファクタを、保持している過去のフレームのスケールファクタを用いてフレーム間予測符号化する。このように、スケールファクタ符号化部３５は、スケールファクタをフレーム間予測符号化するので、符号化効率を向上させることができる。
【００４３】
スケールファクタ符号化部３５は、フレーム間予測符号化されたフレーム単位のスケールファクタを符号化スケールファクタとして多重化部３６に供給する。また、スケールファクタ符号化部３５は、スペクトル正規化部１２から供給されるフレーム単位のスケールファクタ、または、符号化スケールファクタ置換部３３から供給されるスケールファクタを、過去のフレームのスケールファクタとして保持する。
【００４４】
多重化部３６は、エラー検出部３１から供給される検出結果に応じて、エントロピー符号化部１４からの符号化スペクトルデータ、スケールファクタ符号化部１５からの符号化スケールファクタ、およびスペクトル量子化部１３からの量子化情報を多重化し、フレーム単位の符号化データを生成する。多重化部３６は、出力手段として機能し、エラー検出部３１からの検出結果に応じて、生成されたフレーム単位の符号化データを出力するか、または、代替符号化データ出力部３４から供給されるパディングされたコンシールメント符号化データを、符号化エラーが発生したフレームの符号化データとして出力する。多重化部１６から出力される符号化データおよびコンシールメント符号化データは、例えば、図示せぬ出力バッファに一時的に保持され、他の装置に送信される。
【００４５】
なお、符号化エラーが、フレームのビット数が符号化に必要なビット数より少ない、符号化時間が所定の時間を超過しているなどによるものである場合、符号化エラーは、複雑なビットアロケーションを行う量子化時に発生しやすい。従って、符号化エラーの検出時にフレーム単位のスケールファクタは計算済みである場合が多い。よって、本実施の形態では、信号レベル計算部３２が、フレーム単位のスケールファクタを用いて、スペクトルレベルを計算するものとする。
【００４６】
しかしながら、符号化エラーの検出時にフレーム単位のスケールファクタがまだ計算されていない場合には、符号化エラーの検出時に得られているフレーム単位の周波数スペクトル係数やオーディオ信号そのものを用いてスペクトルレベルが計算される。例えば、符号化エラーの検出時にフレーム単位の周波数スペクトル係数まで計算されている場合、その周波数スペクトル係数の平均値や最大値が、スペクトルレベルとして計算される。また、符号化エラーの検出時にフレーム単位のオーディオ信号しか得られていない場合、そのオーディオ信号の時間サンプルの最大値、平均値、エネルギーなどに対して、時間-周波数変換部１１による時間-周波数変換に応じた適切なスケーリングが行われ、スペクトルレベルとされる。
【００４７】
[コンシールメント符号化データのフレーム構造の例]
図３は、コンシールメント符号化データのフレーム構造の例を示す図である。
【００４８】
図３に示すように、コンシールメント符号化データには、フレームごとに、コンシールメント用のオーディオ信号のスケールファクタの符号化モード、符号化スケールファクタ、量子化情報、符号化スペクトルなどが多重化されている。
【００４９】
スケールファクタの符号化モードとしては、例えば、オフセット値とそのオフセット値からの差分に符号化するオフセットモード、量子化ユニット間予測符号化を行う量子化ユニット間予測モード、フレーム間予測符号化を行うフレーム間予測モード、チャンネル間予測符号化を行うチャンネル間予測モードなどがある。
【００５０】
本実施の形態では、コンシールメント用のオーディオ信号のスケールファクタが、オフセットモードで符号化される。従って、コンシールメント符号化データの符号化スケールファクタは、図３に示すように、オフセット値sf_offset（整数）、以下の式（２）で定義される差分情報ΔSF[n]のビット数N、および差分情報ΔSF[n]により構成される。
【００５１】
ΔSF[n]=SFｅｃ[n]-sf_offset
・・・（２）
【００５２】
なお、式（２）において、SFｅｃ[n]は、n番目の量子化ユニットのコンシールメント用のオーディオ信号のスケールファクタを表す。また、コンシールメント用のオーディオ信号は、微小なノイズ信号であるので、差分ΔSF[n]は十分に小さく、N=2程度である。
【００５３】
また、図示は省略するが、本来のオーディオ信号の符号化データのフレーム構造も、図３のコンシールメント符号化データと同様に構成される。但し、符号化モードは、フレーム間予測モードであり、符号化スケールファクタには、過去のフレームの各量子化ユニットのスケールファクタとの差分情報などが配置される。
【００５４】
[コンシールメント符号化データのスケールファクタの変更の説明]
図４は、符号化スケールファクタ置換部３３によるコンシールメント符号化データの符号化スケールファクタの変更を説明する図である。なお、図４において、横軸は、量子化ユニットの番号nを表し、縦軸は、スケールファクタのレベルを表している。
【００５５】
図４に示すように、符号化装置３０に入力されるオーディオ信号のフレーム単位のスケールファクタがSFｓｉｇ[n]であり、信号レベル計算部３２により計算されるスペクトルレベルがSigLevである場合、符号化スケールファクタ置換部３３は、符号化スケールファクタのオフセット値sf_offsetを以下の式（３）で表されるオフセット値sf_offset'に変更する。
【００５６】
sf_offset'=SigLev-A
・・・（３）
【００５７】
なお、式（３）において、Aは、コンシールメント用のオーディオ信号のレベル調整のための整数である。整数Aは、図４に示すように、コンシールメント用のオーディオ信号の補正後のスケールファクタSF'ｅｃ[n]がスペクトルレベルSigLevより若干（数dB）下回るように設定されることが望ましい。
【００５８】
オフセット値sf_offsetがオフセット値sf_offset'に変更されると、コンシールメント用のオーディオ信号の変更後のスケールファクタSF'ｅｃ[n]は、以下の式（４）に示すようになる。
【００５９】
SF'ｅｃ[n]=ΔSF[n]+sf_offset'
・・・（４）
【００６０】
以上のように、コンシールメント符号化データの符号化スケールファクタでは、フレーム単位のコンシールメント用のオーディオ信号の各量子化ユニットのスケールファクタSFｅｃ[n]が、オフセット値sf_offsetとの差分ΔSF[n]で表される。従って、符号化スケールファクタ置換部３３は、オフセット値sf_offsetを変更するだけで、フレーム単位のコンシールメント用のオーディオ信号の全量子化ユニットのスケールファクタを容易に変更することができる。また、符号化スケールファクタ置換部３３は、オフセット値sf_offsetだけを変更するので、差分情報ΔSF[n]のビット数Nおよび差分情報ΔSF[n]は変化しない。
【００６１】
[符号化装置の処理の説明]
図５は、図２の符号化装置３０による符号化処理を説明するフローチャートである。この符号化処理は、フレーム単位のオーディオ信号を順に符号化対象として、フレームごとに行われる。
【００６２】
図５のステップＳ１１において、符号化装置３０は、符号化対象の符号化を開始する。具体的には、時間‐周波数変換部１１、スペクトル正規化部１２、スペクトル量子化部１３、エントロピー符号化部１４、およびスケールファクタ符号化部３５による処理が開始される。なお、符号化対象が最初のフレームのオーディオ信号である場合、符号化装置３０の初期化が行われた後、符号化が行われる。
【００６３】
ステップＳ１２において、エラー検出部３１は、符号化エラーが検出されたかどうかを判定する。具体的には、エラー検出部３１は、符号化においてエラーが発生したかどうか、および、符号化時間が所定の時間（例えば、リアルタイム処理可能な時間）を超過しているかどうかを判定する。符号化においてエラーが発生したか、または、符号化時間が所定の時間を超過している場合、ステップＳ１２で符号化エラーが検出されたと判定され、エラー検出部３１は、符号化エラーの検出を表す検出結果を信号レベル計算部３２と多重化部３６に供給する。
【００６４】
そして、ステップＳ１３において、符号化装置３０は、符号化対象の符号化を停止し、以下のステップＳ１４乃至Ｓ１９のエラーコンシールメント処理を行う。
【００６５】
具体的には、ステップＳ１４において、信号レベル計算部３２は、エラー検出部３１からの検出結果に応じて、スペクトル正規化部１２により得られるフレーム単位のスケールファクタの平均値、最大値、最小値などをスペクトルレベルとして計算する。信号レベル計算部３２は、計算されたスペクトルレベルを符号化スケールファクタ置換部３３に供給する。
【００６６】
ステップＳ１５において、符号化スケールファクタ置換部３３は、信号レベル計算部３２から供給されるスペクトルレベルに基づいて、上述した式（３）により、オフセット値sf_offset'を計算する。
【００６７】
ステップＳ１６において、符号化スケールファクタ置換部３３は、オフセット値sf_offset'に基づいて、コンシールメント符号化データ内の符号化スケールファクタのオフセット値を変更する。符号化スケールファクタ置換部３３は、オフセット値が変更されたコンシールメント符号化データを代替符号化データ出力部３４に供給する。
【００６８】
ステップＳ１７において、代替符号化データ出力部３４は、符号化スケールファクタ置換部３３から供給されるコンシールメント符号化データのビット数が出力ビットレートに対応するように、コンシールメント符号化データに対してパディングを行う。そして、代替符号化データ出力部３４は、パディングされたコンシールメント符号化データを多重化部３６に供給する。
【００６９】
ステップＳ１８において、多重化部３６は、エラー検出部３１から供給される検出結果に応じて、代替符号化データ出力部３４から供給されるパディングされたコンシールメント符号化データを、符号化対象の符号化データとして出力する。
【００７０】
ステップＳ１９において、符号化スケールファクタ置換部３３は、ステップＳ１６の処理でオフセット値が変更された符号化スケールファクタに対応する、上述した式（４）で表されるスケールファクタSF'ｅｃ[n]を、スケールファクタ符号化部３５に供給し、保持させる。
【００７１】
その結果、スケールファクタ符号化部３５に保持されるスケールファクタSFｓｉｇ[n]は、以下の式（５）で表される。
【００７２】
SFｓｉｇ[n]=SF'ｅｃ[n]=ΔSF[n]+sf_offset'
・・・（５）
【００７３】
このように、符号化エラーが発生した場合であっても、符号化対象の符号化データとされるコンシールメント符号化データのスケールファクタがスケールファクタ符号化部３５に保持されるので、スケールファクタ符号化部３５は、次のフレームの符号化時に、保持しているスケールファクタを用いてフレーム間予測符号化を正確に行うことができる。
【００７４】
一方、符号化においてエラーが発生しておらず、符号化時間が所定の時間を超過していない場合、ステップＳ１２で符号化エラーが検出されていないと判定される。そして、エラー検出部３１は、符号化エラーが検出されていないことを表す検出結果を信号レベル計算部３２と多重化部３６に供給する。
【００７５】
そして、ステップＳ２０において、符号化装置３０は、符号化対象の符号化が終了したかどうかを判定し、符号化対象の符号化が終了していないと判定した場合、処理はステップＳ１２に戻る。そして、符号化エラーが検出されるか、または、符号化対象の符号化が終了するまで、ステップＳ１２およびステップＳ２０の処理が繰り返される。
【００７６】
ステップＳ２０で符号化対象の符号化が終了したと判定された場合、ステップＳ２１において、多重化部１６は、エラー検出部３１から供給される検出結果に応じて、符号化により生成された符号化対象の符号化データを出力し、処理を終了する。
【００７７】
以上のように、符号化装置３０は、符号化対象のオーディオ信号のレベルに基づいて、コンシールメント符号化データのスケールファクタを変更するので、より自然な音のコンシールメント符号化データを生成することができる。
【００７８】
[復号装置の構成例]
図６は、図２の符号化装置３０から出力される符号化データを復号する復号装置の構成例を示すブロック図である。
【００７９】
図６の復号装置５０は、逆多重化部５１、エントロピー復号部５２、スペクトル逆量子化部５３、スケールファクタ復号部５４、スペクトル逆正規化部５５、および周波数‐時間変換部５６により構成される。復号装置５０は、符号化装置３０から出力されるフレーム単位の符号化データを復号し、その結果得られるオーディオ信号を出力する。
【００８０】
具体的には、逆多重化部５１は、抽出手段として機能し、符号化装置３０から供給されるフレーム単位の符号化データがパディングされている場合、その符号化データから、パディング前の符号化データを抽出する。逆多重化部５１は、抽出されたパディング前の符号化データ、または、符号化装置３０から供給されるパディングされていないフレーム単位の符号化データを逆多重化し、符号化スペクトルデータ、符号化スケールファクタ、および量子化情報を抽出する。逆多重化部５１は、符号化スペクトルデータをエントロピー復号部５２に供給し、量子化情報をスペクトル逆量子化部５３に供給する。また、逆多重化部５１は、符号化スケールファクタをスケールファクタ復号部５４に供給する。
【００８１】
エントロピー復号部５２は、逆多重化部５１から供給される符号化スペクトルデータに対して、ハフマン符号化や算術符号化などの可逆圧縮に対応する可逆復号を行い、その結果得られる量子化されたフレーム単位の周波数スペクトル係数をスペクトル逆量子化部５３に供給する。
【００８２】
スペクトル逆量子化部５３は、逆多重化部５１から供給される量子化情報に基づいて、エントロピー復号部５２から供給される量子化されたフレーム単位の周波数スペクトル係数を逆量子化し、正規化されたフレーム単位の周波数スペクトル係数を得る。スペクトル逆量子化部５３は、その正規化されたフレーム単位の周波数スペクトル係数をスペクトル逆正規化部５５に供給する。
【００８３】
スケールファクタ復号部５４は、逆多重化部５１から供給される符号化スケールファクタを復号し、フレーム単位のスケールファクタを得る。具体的には、符号化モードがオフセットモードである場合、スケールファクタ復号部５４は、符号化スケールファクタに含まれるオフセット値sf_offset'と差分情報ΔSF[n]を用いて、上述した式（４）により、スケールファクタSF'ｅｃ[n]を求める。
【００８４】
一方、符号化モードがフレーム間予測モードであある場合、スケールファクタ復号部５４は、保持している過去のフレームのスケールファクタを用いて、符号化スケールファクタをフレーム間予測復号する。具体的には、スケールファクタ復号部５４は、符号化スケールファクタに含まれる差分情報と、保持している過去のフレームのスケールファクタを加算し、現在のフレームのスケールファクタを求める。スケールファクタ復号部５４は、求められたフレーム単位のスケールファクタを保持するとともに、スペクトル逆正規化部５５に供給する。
【００８５】
スペクトル逆正規化部５５は、スケールファクタ復号部５４から供給されるフレーム単位のスケールファクタに基づいて、スペクトル逆量子化部５３から供給される正規化されたフレーム単位の周波数スペクトル係数を量子化ユニットごとに逆正規化する。スペクトル逆正規化部５５は、逆正規化の結果得られるフレーム単位の周波数スペクトル係数を周波数‐時間変換部５６に供給する。
【００８６】
周波数‐時間変換部５６は、スペクトル逆正規化部５５から供給されるフレーム単位の周波数スペクトル係数に対してIMDCT（Inverse Modified Discrete Cosine Transform）（逆修正コサイン変換）などの周波数‐時間変換を行う。周波数‐時間変換部５６は、その結果得られるフレーム単位の時間信号であるオーディオ信号を出力する。
【００８７】
なお、フレーム単位の周波数スペクトル係数に対してIMDCTが行われる場合、各フレームのオーディオ信号は、そのフレームの周波数スペクトル係数に対応するオーディオ信号と、前のフレームの周波数スペクトル係数に対応するオーディオ信号とが重複加算されたものである。
【００８８】
ここで、コンシールメント符号化データのスケールファクタは、上述したように、符号化エラーが発生した際のオーディオ信号のスペクトルレベルに基づいて設定される。従って、コンシールメント用のオーディオ信号のスペクトルレベルは、本来のオーディオ信号のスペクトルレベルと大きく異ならない。よって、コンシールメント用のオーディオ信号は、周波数‐時間変換部５６で前後のフレームの周波数スペクトル係数に対応するオーディオ信号と加算されることにより、前後のフレームのオーディオ信号と滑らかに接続される。
【００８９】
[復号処理の説明]
図７は、図６の復号装置５０による復号処理を説明するフローチャートである。この復号処理は、例えば、図２の符号装置３０から出力されたフレーム単位の符号化データが復号装置５０に入力されたときに、開始される。なお、最初のフレームの符号化データの復号処理時には、復号処理の前に復号装置５０が初期化される。
【００９０】
図７のステップＳ３１において、逆多重化部５１は、符号化装置３０から供給されるフレーム単位の符号化データに対して逆多重化を行い、符号化スペクトルデータ、符号化スケールファクタ、および量子化情報を抽出する。なお、符号化装置３０から供給されるフレーム単位の符号化データがパディングされている場合には、逆多重化部５１は、パディング前の符号化データを抽出した後、逆多重化を行う。逆多重化部５１は、符号化スペクトルデータをエントロピー復号部５２に供給し、量子化情報をスペクトル逆量子化部５３に供給する。また、逆多重化部５１は、符号化スケールファクタをスケールファクタ復号部５４に供給する。
【００９１】
ステップＳ３２において、エントロピー復号部５２は、逆多重化部５１から供給される符号化スペクトルデータを、ハフマン符号化や算術符号化などの可逆圧縮に対応する可逆復号する。エントロピー復号部５２は、その結果得られる量子化されたフレーム単位の周波数スペクトル係数をスペクトル逆量子化部５３に供給する。
【００９２】
ステップＳ３３において、スペクトル逆量子化部５３は、逆多重化部５１から供給される量子化情報に基づいて、エントロピー復号部５２から供給される量子化されたフレーム単位の周波数スペクトル係数を逆量子化する。スペクトル逆量子化部５３は、その結果得られる正規化されたフレーム単位の周波数スペクトル係数をスペクトル逆正規化部５５に供給する。
【００９３】
ステップＳ３４において、スケールファクタ復号部５４は、逆多重化部５１から供給される符号化スケールファクタに含まれる符号化モードに応じて、符号化スケールファクタを復号し、スケールファクタを得る。
【００９４】
ステップＳ３５において、スケールファクタ復号部５４は、得られたスケールファクタを保持する。このスケールファクタは、現在の復号対象のフレームより後のフレームの符号化スケールファクタの符号化モードがフレーム間予測モードである場合に、その符号化スケールファクタの復号に用いられる。スケールファクタ復号部５４はまた、得られたスケールファクタを、スペクトル逆正規化部５５に供給する。
【００９５】
ステップＳ３６において、スペクトル逆正規化部５５は、スケールファクタ復号部５４から供給されるスケールファクタに基づいて、スペクトル逆量子化部５３から供給される正規化されたフレーム単位の周波数スペクトル係数を量子化ユニットごとに逆正規化する。スペクトル逆正規化部５５は、逆正規化の結果得られるフレーム単位の周波数スペクトル係数を周波数‐時間変換部５６に供給する。
【００９６】
ステップＳ３７において、周波数‐時間変換部５６は、スペクトル逆正規化部５５から供給されるフレーム単位の周波数スペクトル係数に対してIMDCTなどの周波数‐時間変換を行う。
【００９７】
ステップＳ３８において、周波数‐時間変換部５６は、周波数‐時間変換の結果得られるフレーム単位の時間信号であるオーディオ信号を出力し、処理を終了する。
【００９８】
以上のように、復号装置５０は、コンシールメント符号化データに含まれる、本来のオーディオ信号のスペクトルレベルに基づいて変更された符号化スケールファクタに基づいて、コンシールメント符号化データの正規化された周波数スペクトル係数を逆正規化する。その結果、復号装置５０は、本来のオーディオ信号のスペクトルレベルに応じたスペクトルレベルの、自然な音のコンシールメント用のオーディオ信号を復号結果として生成することができる。
【００９９】
[復号装置の他の構成例]
図８は、図２の符号化装置３０から出力される符号化データを復号する復号装置の他の構成例を示すブロック図である。
【０１００】
図８に示す構成のうち、図６の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
【０１０１】
図８の復号装置７０の構成は、主に、コンシールメントデータ検出部７１とコンシールメントスペクトル生成部７２が新たに設けられている点、および、スペクトル逆正規化部５５の代わりにスペクトル逆正規化部７３が設けられている点が図６の構成と異なる。復号装置７０は、符号化装置３０から供給されるフレーム単位の符号化データがコンシールメント符号化データである場合、コンシールメント符号化データを復号するのではなく、コンシールメント用のオーディオ信号を新たに生成する。
【０１０２】
具体的には、復号装置７０のコンシールメントデータ検出部７１は、判定手段として機能し、図示せぬメモリに保持されている、符号化装置３０に保持されているコンシールメント符号化データと同一のコンシールメント符号化データと、符号化装置３０から供給されるフレーム単位の符号化データを比較する。コンシールメントデータ検出部７１は、比較結果に基づいて、符号化装置３０から供給されるフレーム単位の符号化データがコンシールメント符号化データであるかどうかを判定し、判定結果をコンシールメントスペクトル生成部７２に供給する。
【０１０３】
コンシールメントスペクトル生成部７２は、コンシールメントデータ検出部７１からの判定結果に応じて、スペクトル逆量子化部５３により得られる正規化されたフレーム単位の周波数スペクトル係数に基づいて、コンシールメント用係数を生成する。なお、コンシールメント用係数とは、復号装置７０により生成されるコンシールメント用のオーディオ信号の正規化された周波数スペクトル係数である。コンシールメントスペクトル生成部７２は、生成されたコンシールメント用係数をスペクトル逆正規化部７３に供給する。
【０１０４】
スペクトル逆正規化部７３は、スペクトル逆量子化部５３からの正規化された周波数スペクトル係数、または、コンシールメントスペクトル生成部７２からのコンシールメント用係数を、スケールファクタ復号部５４からのスケールファクタに基づいて逆正規化する。スペクトル逆正規化部７３は、逆正規化の結果得られる周波数スペクトル係数を周波数-時間変換部５６に供給する。その結果、スペクトル逆量子化部５３からの正規化された周波数スペクトル係数に対応するオーディオ信号が、本来のオーディオ信号として生成され、コンシールメント用係数に対応するオーディオ信号が、新たなコンシールメント用のオーディオ信号として生成される。
【０１０５】
[符号化データの比較の説明]
図９は、図８のコンシールメントデータ検出部７１による符号化データの比較を説明する図である。
【０１０６】
図９に示すように、図示せぬメモリに保持されているコンシールメント符号化データ、および、符号化装置３０から供給されるフレーム単位の符号化データには、フレームごとに、符号化モード、符号化スケールファクタ、量子化情報、符号化スペクトルなどが配置される。
【０１０７】
コンシールメントデータ検出部７１は、コンシールメント符号化データおよびフレーム単位の符号化データの符号化スケールファクタを除くデータを比較する。なお、コンシールメントデータ検出部７１は、符号化スケールファクタを除くデータをまとめて一度で比較してもよいし、分割して段階的に比較するようにしてもよい。
【０１０８】
コンシールメントデータ検出部７１が、符号化スケールファクタを除くデータを段階的に比較する場合には、まず、図９に示すような、符号化スペクトルのうちの最も特徴的な数バイト程度のデータ（１）をコンシールメント符号化データおよびフレーム単位の符号化データから抽出する。なお、データ（１）としては、例えばパターン出現頻度の低い数バイト程度のデータがある。
【０１０９】
次に、コンシールメントデータ検出部７１は、コンシールメント符号化データおよびフレーム単位の符号化データのデータ（１）どうしを比較する。データ（１）は数バイト程度のデータであるので、この比較は高速に行うことができる。比較の結果、コンシールメント符号化データおよびフレーム単位の符号化データのデータ（１）どうしが一致していない場合、コンシールメントデータ検出部７１は、フレーム単位の符号化データはコンシールメント符号化データではないと判定する。
【０１１０】
一方、コンシールメント符号化データおよびフレーム単位の符号化データのデータ（１）どうしが一致している場合、コンシールメントデータ検出部７１は、例えば、コンシールメント符号化データおよびフレーム単位の符号化データの符号化スペクトルのうちのデータ（１）以外のデータ（２）どうしを抽出し、比較する。そして、比較の結果、コンシールメント符号化データおよびフレーム単位の符号化データのデータ（２）どうしが一致していない場合、コンシールメントデータ検出部７１は、フレーム単位の符号化データはコンシールメント符号化データではないと判定する。
【０１１１】
以降も同様にして、コンシールメントデータ検出部７１は、コンシールメント符号化データおよびフレーム単位の符号化データの量子化情報（３）を抽出し、比較する。そして、コンシールメントデータ検出部７１は、量子化情報（３）どうしが一致している場合、コンシールメント符号化データおよびフレーム単位の符号化データの符号化スケールファクタ、データ（１）、データ（２）、および量子化情報（３）を除くデータ（４）を抽出して比較する。そして、コンシールメント符号化データおよびフレーム単位の符号化データのデータ（１）、データ（２）、量子化情報（３）およびデータ（４）どうしが全て一致した場合、コンシールメントデータ検出部７１は、フレーム単位の符号化データはコンシールメント符号化データであると判定する。一方、コンシールメント符号化データおよびフレーム単位の符号化データの量子化情報（３）どうし、または、データ（４）どうしが一致していない場合、コンシールメントデータ検出部７１は、フレーム単位の符号化データはコンシールメント符号化データではないと判定する。
【０１１２】
以上のように、コンシールメントデータ検出部７１は、符号化スケールファクタを除くデータを段階的に比較する場合、コンシールメント符号化データおよびフレーム単位の符号化データのデータ（１）どうし、データ（２）どうし、量子化情報（３）どうし、およびデータ（４）どうしのいずれか１つが一致しない時点で、フレーム単位の符号化データはコンシールメント符号化データではないと判定することができる。従って、コンシールメントデータ検出部７１は、フレーム単位の符号化データがコンシールメント符号化データであるかどうかの判定を効率良く行うことができる。
【０１１３】
また、コンシールメントデータ検出部７１は、符号化スケールファクタを除くデータが全て一致した場合に、フレーム単位の符号化データがコンシールメント符号化データであると判定するので、精度良くコンシールメント符号化データを検出することができる。
【０１１４】
なお、データ（２）、量子化情報（３）、およびデータ（４）の比較の順序は、上述した場合に限定されない。
【０１１５】
[他の復号処理の説明]
図１０は、図８の復号装置７０による復号処理を説明するフローチャートである。この復号処理は、例えば、図２の符号装置３０から出力されたフレーム単位の符号化データが復号装置７０に入力されたときに、開始される。なお、最初のフレームの符号化データの復号処理時には、復号処理の前に復号装置７０が初期化される。
【０１１６】
図１０のステップＳ５１乃至Ｓ５５の処理は、図７のステップＳ３１乃至Ｓ３５の処理と同様であるので、説明は省略する。
【０１１７】
ステップＳ５５の処理後、ステップＳ５６において、コンシールメントデータ検出部７１は、図９で説明したように、復号対象のフレーム単位の符号化データとコンシールメント符号化データの符号化スケールファクタを除くデータどうしを比較する。
【０１１８】
ステップＳ５７において、コンシールメントデータ検出部７１は、比較結果に基づいて、復号対象のフレーム単位の符号化データがコンシールメント符号化データであるかどうかを判定し、判定結果をコンシールメントスペクトル生成部７２に供給する。
【０１１９】
ステップＳ５７で復号対象のフレーム単位の符号化データがコンシールメント符号化データではないと判定された場合、処理はステップＳ５８に進む。ステップＳ５８において、スペクトル逆正規化部７３は、スペクトル逆量子化部５３からの正規化された周波数スペクトル係数を、スケールファクタ復号部５４からのスケールファクタに基づいて逆正規化する。スペクトル逆正規化部７３は、逆正規化の結果得られる周波数スペクトル係数を周波数-時間変換部５６に供給する。そして、処理はステップＳ６１に進む。
【０１２０】
一方、ステップＳ５７で復号対象のフレーム単位の符号化データがコンシールメント符号化データであると判定された場合、処理はステップＳ５９に進む。
【０１２１】
ステップＳ５９において、コンシールメントスペクトル生成部７２は、スペクトル逆量子化部５３により得られる正規化された周波数スペクトル係数に基づいて、コンシールメント用係数を生成する。具体的には、コンシールメントスペクトル生成部７２は、復号対象のフレームより前のフレームの正規化された周波数スペクトル係数の平均値、復号対象のフレームの直前および直後のフレームの正規化された周波数スペクトル係数の平均値などを、コンシールメント用係数として生成する。
【０１２２】
但し、復号対象のフレームより後ろのフレームの正規化された周波数スペクトル係数がコンシールメント用係数の生成に用いられる場合、遅延が発生する。なお、コンシールメント用係数の生成方法は、上述した方法に限定されない。コンシールメントスペクトル生成部７２は、生成されたコンシールメント用係数をスペクトル逆正規化部７３に供給する。
【０１２３】
ステップＳ６０において、スペクトル逆正規化部７３は、コンシールメントスペクトル生成部７２から供給されるコンシールメント用係数を、スケールファクタ復号部５４からのスケールファクタに基づいて逆正規化する。スペクトル逆正規化部７３は、逆正規化の結果得られる周波数スペクトル係数を周波数-時間変換部５６に供給する。そして、処理はステップＳ６１に進む。
【０１２４】
ステップＳ６１およびＳ６２の処理は、図７のステップＳ３７およびＳ３８の処理と同様であるので、説明は省略する。
【０１２５】
以上のようなステップＳ５９乃至Ｓ６１の処理により、復号対象の符号化データがコンシールメント符号化データであると判定された場合、そのコンシールメント符号化データに含まれる符号化スケールファクタと、そのコンシールメント符号化データより前または後の符号化データとが用いられて、新たなコンシールメント用のオーディオ信号が生成される。従って、この場合、コンシールメントスペクトル生成部７２、スペクトル逆正規化部７３、および周波数-時間変換部５６は、新たなコンシールメント用のオーディオ信号を生成する生成手段として機能する。
【０１２６】
なお、図１０の復号処理では、復号対象がコンシールメント符号化データであっても、本来のオーディオ信号の符号化データであっても、ステップＳ５２およびＳ５３の処理が行われるようにしたが、復号対象がコンシールメント符号化データである場合、ステップＳ５２乃至Ｓ５３の処理は行われないようにしてもよい。
【０１２７】
以上のように、復号装置７０は、復号対象のフレーム単位の符号化データとコンシールメント符号化データを比較することにより、復号対象のフレーム単位の符号化データがコンシールメント符号化データであるかどうかを判定する。従って、符号化装置３０は、符号化データがコンシールメント符号化データであるかどうかを表すフラグを復号装置７０に伝送する必要がなく、伝送ビットを節約することができる。これに対して、符号化データがコンシールメント符号化データであるかどうかを表すフラグを復号装置に伝送する必要がある場合、例えば、符号化データのフォーマットが既に規定されていると、そのフラグを新たなヘッダとして符号化データに付加したり、新たなフォーマットを規定したりする必要がある。
【０１２８】
また、復号装置７０は、復号対象のフレーム単位の符号化データがコンシールメント符号化データである場合、コンシールメント用係数を生成し、そのコンシールメント用係数に対して、コンシールメント符号化データに含まれる符号化スケールファクタに基づく逆正規化を行う。従って、復号装置７０は、コンシールメント用係数を生成するだけで、本来のオーディオ信号のスペクトルレベルに応じたスペクトルレベルの、自然な音のコンシールメント用のオーディオ信号を容易に生成することができる。これに対して、符号化エラーが発生したフレームの本来のオーディオ信号のスペクトルレベルに基づくスケールファクタを用いずに、コンシールメント用のオーディオ信号を生成する復号装置では、演算器やメモリなどの多くのリソースが必要であり、また自然な音のコンシールメント用のオーディオ信号を生成することは困難である。
【０１２９】
さらに、復号装置７０は、復号対象のフレームより前または後の少なくとも一方のフレームの正規化された周波数スペクトル係数に基づいて、コンシールメント用係数を生成するので、より自然な音のコンシールメント用のオーディオ信号を生成することができる。
【０１３０】
本実施の形態では、コンシールメント用のオーディオ信号のスケールファクタの符号化モードがオフセットモードであったが、符号化モードはこれに限定されない。例えば、左チャネルのコンシールメント用のオーディオ信号のスケールファクタの符号化モードが量子化ユニット間予測モードであり、右チャネルのコンシールメント用のオーディオ信号のスケールファクタの符号化モードがチャンネル間予測モードであるようにすることも可能である。
【０１３１】
但し、コンシールメント用のオーディオ信号のスケールファクタの符号化モードとしては、フレーム間予測モードが設定されないことが望ましい。フレーム間予測モードが設定されない場合、エラーコンシールメント処理の処理量を低減し、符号化装置３０の記憶領域を節約することができる。
【０１３２】
また、スケールファクタの符号化モードは、フレームごとに設定されるようにしてもよい。
【０１３３】
さらに、上述した符号化データには、符号化スケールファクタが含まれたが、符号化データに含まれる正規化に関する情報は、符号化スケールファクタではなく、正規化に用いられた係数やスケールファクタそのものであってもよい。
【０１３４】
[本発明を適用したコンピュータの説明]
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【０１３５】
そこで、図１１は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０１３６】
プログラムは、コンピュータに内蔵されている記録媒体としての記憶部２０８やROM（Read Only Memory）２０２に予め記録しておくことができる。
【０１３７】
あるいはまた、プログラムは、リムーバブルメディア２１１に格納（記録）しておくことができる。このようなリムーバブルメディア２１１は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブルメディア２１１としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto Optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
【０１３８】
なお、プログラムは、上述したようなリムーバブルメディア２１１からドライブ２１０を介してコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵する記憶部２０８にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
【０１３９】
コンピュータは、CPU(Central Processing Unit)２０１を内蔵しており、CPU２０１には、バス２０４を介して、入出力インタフェース２０５が接続されている。
【０１４０】
CPU２０１は、入出力インタフェース２０５を介して、ユーザによって、入力部２０６が操作等されることにより指令が入力されると、それに従って、ROM２０２に格納されているプログラムを実行する。あるいは、CPU２０１は、記憶部２０８に格納されたプログラムを、RAM(Random Access Memory)２０３にロードして実行する。
【０１４１】
これにより、CPU２０１は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU２０１は、その処理結果を、必要に応じて、例えば、入出力インタフェース２０５を介して、出力部２０７から出力、あるいは、通信部２０９から送信、さらには、記憶部２０８に記録等させる。
【０１４２】
なお、入力部２０６は、キーボードや、マウス、マイク等で構成される。また、出力部２０７は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
【０１４３】
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含む。
【０１４４】
また、プログラムは、１のコンピュータ（プロセッサ）により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【０１４５】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１４６】
１１  時間-周波数変換部，  １２  スペクトル正規化部，  ３０  符号化装置，  ３２  信号レベル計算部，  ３３  符号化スケールファクタ置換部，  ３５  スケールファクタ符号化部，  ３６  多重化部，  ５０  復号装置，  ５１  逆多重化部，  ５４  スケールファクタ復号部，  ５５  スペクトル逆正規化部，  ５６  周波数-時間変換部，  ７０  復号装置，  ７１  コンシールメントデータ検出部，  ７２  コンシールメントスペクトル生成部，  ７３  スペクトル逆正規化部
【図１】
0005724338.tif 000002
【図２】
0005724338.tif 000003
【図３】
0005724338.tif 000004
【図４】
0005724338.tif 000005
【図５】
0005724338.tif 000006
【図６】
0005724338.tif 000007
【図７】
0005724338.tif 000008
【図８】
0005724338.tif 000009
【図９】
0005724338.tif 000010
【図１０】
0005724338.tif 000011
【図１１】
0005724338.tif 000012