(57)【要約】  本発明は階層的オーディオ符号化、復号化方法及びシステムを提供する。階層的オーディオ符号化方法は、オーディオ信号にMDCTを行った後の周波数領域係数を複数の符号化サブバンドに区分し、符号化サブバンドの振幅エンベロープ値に計量化と符号化を行うこと、コア層の各符号化サブバンドをビット割り当てし、コア層の周波数領域係数に計量化と符号化を行い、コア層の周波数領域係数の符号化ビットを取得すること、コア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算すること、拡張層の各符号化サブバンドをビット割り当てし、拡張層の符号化信号に計量化と符号化を行い、拡張層の符号化信号の符号化ビットを取得すること、及びコア層と拡張層の周波数領域係数からなる各符号化サブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット及び拡張層の符号化信号の符号化ビットを多重化してパッキングした後、復号化側に伝送することを含む。【選択図】          図１
2013511054.tif 000002
【特許請求の範囲】
【請求項１】
階層的オーディオ符号化方法であって、
オーディオ信号が修正離散コサイン変換MDCTされた後の周波数領域係数をコア層の周波数領域係数と拡張層の周波数領域係数に区分し、前記コア層の周波数領域係数と拡張層の周波数領域係数を複数個の符号化サブバンドに区分し、前記符号化サブバンドの振幅エンベロープ値に計量化と符号化を行うこと、
コア層の各符号化サブバンドの振幅エンベロープ値によってコア層の各符号化サブバンドをビット割り当てし、次に、コア層の周波数領域係数に計量化と符号化を行ってコア層の周波数領域係数の符号化ビットを取得すること、
コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算すること、
コア層の残差信号と拡張層の周波数領域係数からなる拡張層の符号化信号及び前記拡張層の符号化信号からなる各符号化サブバンドの振幅エンベロープ値によって拡張層の各符号化サブバンドをビット割り当てし、次に、拡張層の符号化信号に計量化と符号化を行って拡張層の符号化信号の符号化ビットを取得すること、及び
コア層の周波数領域係数と拡張層の周波数領域係数からなる各符号化サブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット及び拡張層の符号化信号の符号化ビットを多重化してパッキングした後、復号化側に伝送することを含む。
【請求項２】
オーディオ信号が修正離散コサイン変換MDCTされた後の周波数領域係数をコア層の周波数領域係数と拡張層の周波数領域係数に区分し、前記コア層の周波数領域係数と拡張層の周波数領域係数を複数個の符号化サブバンドに区分するステップにおいて、
MDCT変換した後の周波数領域係数を複数の等間隔の符号化サブバンドに区分し、或いは聴覚感知特性に従って複数の非均一符号化サブバンドに区分し、低周波符号化サブバンドをコア層符号化サブバンドに区分し、高周波符号化サブバンドを拡張層符号化サブバンドに区分する請求項1に記載の方法。
【請求項３】
コア層の周波数領域係数と拡張層の符号化信号に計量化と符号化を行うステップにおいて、
ビット割り当て数が分類しきい値より小さい符号化サブバンドの計量化しようとするベクトルにピラミッド格子ベクトル計量化方法を用いて計量化と符号化を行い、ビット割り当て数が前記分類しきい値より大きい符号化サブバンド的計量化しようとするベクトルに球格子ベクトル計量化方法を用いて計量化と符号化を行い、
ビット割り当て数は１つの符号化サブバンドにおいて単一の周波数領域係数が割り当てられたビット数である請求項1に記載の方法。
【請求項４】
コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算するステップにおいて、
コア層の周波数領域係数の計量化値を逆計量化し、コア層の周波数領域係数との差を計算し、コア層の残差信号を取得すること、
コア層の残差信号をコア層の周波数領域係数と同様である方法に従って符号化サブバンドに区分し、コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を算出すること、
という方法を採用してコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算する請求項1に記載の方法。
【請求項５】
コア層の残差信号の各符号化サブバンドの振幅エンベロープ値を算出するステップは、
コア層の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、符号化サブバンドに対応する計量化指数の修正修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得すること、
各符号化サブバンドの計量化指数の修正修正値が0の以上で、且つコア層の符号化サブバンドに対応するビット割り当て数が増える際に減ってないこと、及び
コア層の符号化サブバンドのビット割り当て数が0である際に、計量化指数の修正修正値が0で、コア層の符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数である際に、コア層の残差信号が該符号化サブバンドでの振幅エンベロープ値が零であることを含む請求項4に記載の方法。
【請求項６】
コア層の周波数領域係数の符号化ビットを取得するステップは、
コア層の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、コア層の各符号化サブバンドをビット割り当てすること、及び
コア層の各符号化サブバンドの振幅エンベロープ計量化指数が再建するコア層の各符号化サブバンドの計量化振幅エンベロープ値によって各符号化サブバンドの周波数領域係数を正規化し、コア層の各符号化サブバンドのビット割り当て数によってそれぞれピラミッド格子ベクトル計量化方法と球格子ベクトル計量化方法を用いて計量化と符号化を行い、コア層の周波数領域係数の符号化ビットを取得することを含み、
その中、拡張層の符号化信号の符号化ビットを取得するステップは、
コア層の残差信号と拡張層の周波数領域係数によって拡張層の符号化信号を構成すること、
拡張層の符号化信号の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層の各符号化サブバンドをビット割り当てすること、及び
拡張層の各符号化サブバンドの振幅エンベロープ計量化指数が再建する拡張層の各符号化サブバンドの計量化振幅エンベロープ値によって各符号化サブバンドの符号化信号を正規化し、拡張層の各符号化サブバンドのビット割り当て数によってそれぞれピラミッド格子ベクトル計量化方法と球格子ベクトル計量化方法で計量化と符号化を行い、拡張層の符号化信号の符号化ビットを取得することを含む請求項1に記載の方法。
【請求項７】
コア層の周波数領域係数と拡張層の周波数領域係数からなる各符号化のサブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット及び拡張層の符号化信号の符号化ビットを多重化してパッキングした後に、復号化側に伝送するステップにおいて、
コア層のサイド情報ビットをストリームのフレームヘッダの後に書き込み、コア層の符号化サブバンドの振幅エンベロープ符号化ビットをビットストリームマルチプレクサーMUXに書き込み、次に、コア層の周波数領域係数の符号化ビットをMUXに書き込むこと、及び拡張層のサイド情報ビットをMUXに書き込み、拡張層の周波数領域係数符号化サブバンドの振幅エンベロープ符号化ビットをMUXに書き込み、次に、拡張層の符号化信号の符号化ビットをMUXに書き込むこと、
要求されたビットレートによってビットレート要求を満たすビット数を復号化側に伝送すること、
というストリーム形式に従って多重化してパッキングする請求項1に記載の方法。
【請求項８】
コア層のサイド情報はMDCT係数からなる符号化サブバンド振幅エンベロープのハフマン符号化フラグビット、コア層の周波数領域係数のハフマン符号化フラグビット及び逆復回数ビットを含み、
拡張層のサイド情報は拡張層の符号化信号のハフマン符号化フラグビットと逆復回数ビットを含む請求項7に記載の方法。
【請求項９】
ビットレート要求を満たすビット数を復号化側に伝送するステップは、
限定された最大符号化ビットレートのビット数に従って符号化する必要があるすべての周波数帯域範囲に、コア層と拡張層を符号化し、符号化周波数帯域範囲に最大符号化ビットレートに達させること、
コア層の符号化ビットの後に、拡張層の符号化信号の符号化ビットを各符号化サブバンド重要性の初期値の大きいから小さいまでの順序に従ってビットストリームマルチプレクサーに書き込むこと、及び
符号化サブバンド重要性の初期値が小さい符号化サブバンドの符号化ビットを先に取り除く原則に従って、ビットレート要求を満たすビット数を復号化側に伝送すること、
その中、コア層が対応するビットレートをL0層とし、拡張層が取り除いたビット数によって拡張層が対応するそれぞれのビットレートをそれぞれL1_1層、L1_2層、…L1_K層までとし、そのうちL1_K層のビットレートは前記最大符号化ビットレートであることを含む請求項7に記載の方法。
【請求項１０】
オーディオ信号が修正離散コサイン変換MDCTされた後の周波数領域係数をコア層の周波数領域係数と拡張層の周波数領域係数に区分するステップの後に、前記方法はさらに、拡張層の周波数領域係数を周波数が小さいから大きいまでの順序に従ってMの部分に分け、それらがそれぞれ拡張層1から拡張層Mまでの周波数領域係数であり、その中、拡張層1において周波数領域係数の周波数が最小で、拡張層Mにおいて周波数領域係数の周波数が最大であることを含み、
コア層の周波数領域係数に計量化と符号化を行ったステップの後に、前記方法はさらに、コア層の周波数領域係数の計量化値を逆計量化し、コア層の周波数領域係数との差を計算し、コア層の残差信号を取得することを含み、
前記コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算するステップにおいて、コア層の残差信号をコア層と同様である方法に従って符号化サブバンドに区分し、コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を算出することを含み、
前記コア層の残差信号と拡張層の周波数領域係数からなる拡張層の符号化信号及び前記拡張層の符号化信号からなる各符号化サブバンドの振幅エンベロープ値によって拡張層の各符号化サブバンドをビット割り当てし、次に、拡張層の符号化信号に計量化と符号化を行って拡張層の符号化信号の符号化ビットを取得するステップにおいて、
コア層の残差信号と拡張層1の周波数領域係数を用いて拡張層1の符号化信号を構成し、拡張層1の符号化信号によって各符号化サブバンドの振幅エンベロープ計量化指数を計算し、拡張層1の各符号化サブバンドをビット割り当てし、拡張層1の各符号化サブバンドのビット割り当て数によって拡張層1の符号化信号に計量化と符号化を行い、
拡張層iの符号化信号の計量化値を逆計量化し、拡張層iの符号化信号との差を計算し、拡張層iの残差信号を取得し、
拡張層iの残差信号を拡張層iと同様である方法に従って符号化サブバンドに区分し、拡張層iの各符号化サブバンドの振幅エンベロープ値とビット割り当て数によって拡張層iの残差信号の各サブバンドの振幅エンベロープ値を算出し、
拡張層iの残差信号と拡張層i+1の周波数領域係数によって拡張層i+1の符号化信号を構成し、拡張層i+1の符号化信号の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層i+1の各符号化サブバンドをビット割り当てし、及び
拡張層i+1の各符号化サブバンドの振幅エンベロープ計量化指数が再建する拡張層i+1の各符号化サブバンドの計量化振幅エンベロープ値と符号化ビット数によって拡張層i+1の各符号化サブバンドの符号化信号に正規化、ベクトル計量化及び符号化を行い、拡張層i+1の符号化信号の符号化ビットを取得し、
前記i=1,….N-1であり、Nが2より大きい正整数である請求項1〜4のいずれかの請求項に記載の方法。
【請求項１１】
コア層の周波数領域係数と拡張層の周波数領域係数からなる各符号化サブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット及び拡張層の符号化信号の符号化ビットを多重化してパッキングする処理において、
コア層の符号化ビットの後に、拡張層の通し番号の大きさに従って通し番号が小さい拡張層のビットを先にビットストリームマルチプレクサーMUXに書き込み、次に、通し番号が大きい拡張層のビットをさらにビットストリームマルチプレクサーMUXに書き込むこと、
同一の拡張層において、先に該拡張層のサイド情報ビットをMUXに書き込み、次に、該拡張層の周波数領域係数の符号化サブバンドの振幅エンベロープ符号化ビットをMUXに書き込み、次に、該拡張層の符号化信号の符号化ビットをMUXに書き込むこと、
要求されたビットレートによってビットレート要求を満たすビット数を復号化側に伝送すること、
というストリーム形式に従って多重化してパッキングする請求項1また7に記載の方法。
【請求項１２】
階層的オーディオ復号化方法であって、
符号化側が伝送してきたビットストリームを逆多重化し、コア層の周波数領域係数の振幅エンベロープ符号化ビットを復号化し、コア層の各符号化サブバンドの振幅エンベロープ値を取得すること、
コア層の各符号化サブバンドの振幅エンベロープ値によってコア層の各符号化サブバンドをビット割り当てし、コア層の残差信号の振幅エンベロープ値を算出すること、拡張層の周波数領域係数の振幅エンベロープ符号化ビットを復号化し、拡張層の周波数領域係数の振幅エンベロープ値を取得すること、コア層の残差信号の振幅エンベロープ値と拡張層の周波数領域係数の振幅エンベロープ値によって拡張層の各符号化サブバンドをビット割り当てすること、及び
コア層のビット割り当て数と拡張層のビット割り当て数によって、コア層の周波数領域係数符号化ビットと拡張層の符号化信号の符号化ビットをそれぞれ復号化し、コア層の周波数領域係数と拡張層の符号化信号を取得し、拡張層の符号化信号を周波数帯域の順序に従って改めてソートし、コア層の周波数領域係数に加えて、帯域幅全体の周波数領域係数を取得し、帯域幅全体の周波数領域係数に修正修正離散コサイン逆変換IMDCTを行い、出力したオーディオ信号を取得することを含む。
【請求項１３】
コア層の残差信号の振幅エンベロープ値を算出するステップは、
コア層の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、符号化サブバンドに対する計量化指数修正修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得すること、
拡張層iの各符号化サブバンド振幅エンベロープとビット割り当て数によって拡張層iの残差信号の各サブバンドの振幅エンベロープ値を算出すること、
各符号化サブバンドの計量化指数の修正修正値が0の以上で、且つコア層の符号化サブバンドに対応するビット割り当て数が増える際に、減ってないこと、及び
コア層の符号化サブバンドのビット割り当て数が0である際に、計量化指数修正修正値が0で、符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数である際に、コア層の残差信号が該符号化サブバンドでの振幅エンベロープ値が零であることを含む請求項12に記載の方法。
【請求項１４】
コア層の周波数領域係数と拡張層の符号化信号を取得するステップは、
コア層の各符号化サブバンドのビット割り当て数、計量化振幅エンベロープ値及びサイド情報によってコア層の周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行って、コア層の周波数領域係数を取得すること、及び
拡張層の各符号化サブバンドのビット割り当て数、拡張層の符号化信号の計量化振幅エンベロープ値及びサイド情報によって該拡張層の符号化信号の符号化ビットに復号化、逆計量化及び逆正規化処理を行って、拡張層の符号化信号を取得することを含む請求項12に記載の方法。
【請求項１５】
拡張層の符号化信号の符号化ビットを復号化するステップにおいて、
異なる拡張層において、各層復号化の順序は先に拡張層通し番号が小さい低拡張層の振幅エンベロープと各符号化サブバンドの符号化ビットを復号化し、次に、さらに拡張層通し番号が大きい高拡張層の振幅エンベロープと各符号化サブバンドの符号化信号を復号化し、復号化過程中に、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に、復号化を停止すること、
同一の拡張層において、各符号化サブバンド復号化の順序は各符号化サブバンド重要性の初期値によって決められ、重要性が大きい符号化サブバンドを優先的に復号化し、2つの符号化サブバンドが同様の重要性を有すると、低周波符号化サブバンドを優先的に復号化し、復号化過程中に、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に、復号化を停止すること、
という順序に従って拡張層の符号化信号の符号化ビットを復号化する請求項12または14に記載の方法。
【請求項１６】
階層的オーディオ符号化システムであって、修正離散コサイン変換MDCTユニット、振幅エンベロープ計算ユニット、振幅エンベロープ計量化と符号化ユニット、コア層ビット割り当てユニット、コア層の周波数領域係数ベクトル計量化と符号化ユニット、及びビットストリームマルチプレクサーを含み、拡張層の符号化信号生成ユニット、残差信号振幅エンベロープ生成ユニット、拡張層ビット割り当てユニット、及び拡張層の符号化信号ベクトル計量化と符号化ユニットをさらに含み、
前記MDCTユニットは、入力したオーディオ信号に修正離散コサイン変換を行い、コア層の周波数領域係数と拡張層の周波数領域係数を生成するように設置され、
前記振幅エンベロープ計算ユニットは、前記コア層の周波数領域係数と拡張層の周波数領域係数において符号化しようとする部分をコア層の周波数領域係数の符号化サブバンドと拡張層の周波数領域係数の符号化サブバンドに区分し、各符号化サブバンドの振幅エンベロープ値を計算するように設置され、
前記振幅エンベロープ計量化と符号化ユニットは、前記コア層の周波数領域係数の符号化サブバンドと拡張層の周波数領域係数の符号化サブバンドの振幅エンベロープ値に計量化と符号化を行い、コア層の周波数領域係数、拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数、及び振幅エンベロープの符号化ビットを生成するように設置され、
前記コア層ビット割り当てユニットは、コア層をビット割り当てし、コア層の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記コア層の周波数領域係数ベクトル計量化と符号化ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数によって再建するコア層の各符号化サブバンドの計量化振幅エンベロープ値とビット割り当て数を用いてコア層の各符号化サブバンドの周波数領域係数に正規化、ベクトル計量化及び符号化を行い、コア層の周波数領域係数の符号化ビットを取得するように設置され、
前記拡張層の符号化信号生成ユニットは、残差信号を生成し、残差信号と拡張層の周波数領域係数からなる拡張層の符号化信号を取得するように設置され、
前記残差信号振幅エンベロープ生成ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応するビット割り当て数によって、残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置され、
前記拡張層ビット割り当てユニットは、残差信号の各符号化サブバンドの振幅エンベロープ計量化指数と拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層をビット割り当てし、拡張層の符号化信号の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記拡張層の符号化信号ベクトル計量化と符号化ユニットは、拡張層の各符号化サブバンドの振幅エンベロープ計量化指数によって再建する拡張層の各符号化サブバンドの計量化振幅エンベロープ値とビット割り当て数を用いて拡張層の各符号化サブバンドの符号化信号に正規化、ベクトル計量化及び符号化を行い、拡張層の符号化信号の符号化ビットを取得するように設置され、
前記ビットストリームマルチプレクサーは、コア層サイド情報ビット、コア層の各符号化サブバンドの振幅エンベロープの符号化ビット、コア層の周波数領域係数の符号化ビット、拡張層サイド情報ビット、拡張層の周波数領域係数の各振幅エンベロープの符号化ビット及び拡張層の符号化信号の符号化ビットをパッキングするように設置される。
【請求項１７】
前記拡張層の符号化信号生成ユニットは残差信号生成ユニット、拡張層の符号化信号合成ユニットをさらに含み、
前記残差信号生成ユニットは、コア層の周波数領域係数の計量化値を逆計量化し、コア層の周波数領域係数との差を計算し、コア層の残差信号を取得するように設置され、
前記拡張層の符号化信号合成ユニットは、コア層の残差信号と拡張層の周波数領域係数を周波数帯域の順序に従って合成し、拡張層の符号化信号を取得するように設置される請求項16に記載のシステム。
【請求項１８】
前記残差信号の振幅エンベロープ生成ユニットは計量化指数修正修正値取得ユニットと残差信号振幅エンベロープ計量化指数計算ユニットをさらに含み、
前記計量化指数修正値取得ユニットは、コア層の各符号化サブバンドビット割り当て数によって残差信号の各符号化サブバンドの計量化指数修正値を計算し、各符号化サブバンドの計量化指数修正値が0の以上で、且つコア層の符号化サブバンドに対応する符号化ビット数が増える際に減ってなく、コア層の符号化サブバンドのビット割り当て数が0であると、計量化指数修正値が0であり、符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数であると、残差信号が該符号化サブバンドでの振幅エンベロープ値が零であるように設置され、
前記残差信号振幅エンベロープ計量化指数計算ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応する計量化指数修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置される請求項16に記載のシステム。
【請求項１９】
前記ビットストリームマルチプレクサーは、拡張層の符号化信号符号化ビットを各符号化サブバンド重要性の初期値が大きいから小さいまでの順序に従ってストリームに書き込み、同様の重要性を有する符号化サブバンドに対して、低周波符号化サブバンドの符号化ビットを優先的にストリームに書き込むように設置される請求項16に記載のシステム。
【請求項２０】
階層的オーディオ復号化システムであって、ビットストリームデマルチプレクサ、コア層振幅エンベロープ復号化ユニット、コア層ビット割り当てユニット、コア層復号化と逆計量化ユニットを含み、拡張層振幅エンベロープ復号化ユニット、コア層の残差信号振幅エンベロープ生成ユニット、拡張層ビット割り当てユニット、拡張層の符号化信号復号化と逆計量化ユニット、周波数領域係数生成ユニット、ノイズ充填ユニット及び修正離散コサイン逆変換IMDCTユニットをさらに含み、
前記コア層振幅エンベロープ復号化ユニットは、前記ビットストリームデマルチプレクサが出力するコア層の符号化サブバンドの振幅エンベロープ符号化ビットを復号化し、コア層の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置され、
前記コア層ビット割り当てユニットは、コア層をビット割り当てし、コア層の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記コア層復号化と逆計量化ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数によってコア層の各符号化サブバンドの計量化振幅エンベロープ値を計算して取得し、コア層の各符号化サブバンドのビット割り当て数と計量化振幅エンベロープ値を用いて前記ビットストリームデマルチプレクサが出力するコア層の周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、コア層の周波数領域係数を取得するように設置され、
前記拡張層振幅エンベロープ復号化ユニットは、ビットストリームデマルチプレクサが出力する拡張層の周波数領域係数の振幅エンベロープ符号化ビットを復号化し、拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置され、
前記コア層の残差信号振幅エンベロープ生成ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応するビット割り当て数によって残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を計算して取得するように設置され、
前記拡張層ビット割り当てユニットは、残差信号の各符号化サブバンドの振幅エンベロープ計量化指数と拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層をビット割り当てし、拡張層の符号化信号の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記拡張層の符号化信号復号化と逆計量化ユニットは、拡張層の各符号化サブバンドの振幅エンベロープ計量化指数を用いて拡張層の各符号化サブバンドの計量化振幅エンベロープ値を計算して取得し、拡張層の各符号化サブバンドの符号化ビット数と計量化振幅エンベロープ値を用いて前記ビットストリームデマルチプレクサが出力する拡張層の符号化信号の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、拡張層の符号化信号を取得するように設置され、
前記周波数領域係数生成ユニットは、周波数帯域順序に従って前記拡張層の符号化信号復号化と逆計量化ユニットが出力する拡張層の符号化信号を改めてソートし、次に、前記コア層復号化と逆計量化ユニットが出力するコア層の周波数領域係数との和を計算し、周波数領域係数の出力値を取得するように設置され、
前記ノイズ充填ユニットは、符号化過程中に割り当てしない符号化ビットの符号化サブバンドにノイズ充填を行うように設置され、
IMDCTユニットは、ノイズ充填を行った後すべての周波数領域係数にIMDCTを行い、出力したオーディオ信号を取得するように設置される。
【請求項２１】
前記コア層の残差信号振幅エンベロープ生成ユニットは、計量化指数修正値取得ユニット、残差信号振幅エンベロープ計量化指数計算ユニットをさらに含み、
前記計量化指数修正値取得ユニットは、コア層の各符号化サブバンドビット割り当て数によって残差信号の各符号化サブバンドの計量化指数修正値を計算し、符号化サブバンドの周波数領域係数に対応する絶対値を調整し、その中、各符号化サブバンドの計量化指数修正値が0の以上で、且つコア層の符号化サブバンドに対応する符号化ビット数が増える際に減ってなく、コア層の符号化サブバンドのビット割り当て数が0であると、計量化指数修正値が0であり、符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数であると、残差信号が該符号化サブバンドでの振幅エンベロープ値が零であるように設置され、
前記残差信号振幅エンベロープ計量化指数計算ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応する計量化指数修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置される請求項20に記載のシステム。
【請求項２２】
前記拡張層の符号化信号復号化と逆計量化ユニットは、拡張層の符号化信号の各符号化サブバンド復号化の順序が各符号化サブバンドの重要性の初期値によって決められ、重要性が大きい符号化サブバンドを優先的に復号化し、2つの符号化サブバンドが同様の重要性を有すると、低周波符号化サブバンドを優先的に復号化し、復号化過程中に、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に、復号化を停止するように設置される請求項20に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は階層的オーディオ符号化、復号化方法及びシステムに関する。
【背景技術】
【０００２】
階層的オーディオ符号化とは、階層的な方式でオーディオ符号化のストリームを組合せ、一般的に、1つのコア層と若干個の拡張層に分け、復号化器は高位レイヤー（例えば拡張層）符号化ストリームがない場合に低位レイヤー（例えばコア層）符号化ストリームのみを復号化でき、復号化の階層数が多ければ多いほど、音質をより大きく高める。
【０００３】
階層的符号化技術は通信ネットワークにおいて極めて重要な実用価値を有する。データの伝送は異なるチャンネルにより一緒に協力して完成できるが、それぞれのチャンネルのパケットロス率はいずれも異なる可能性があって、この際に、データに対して階層的処理を行う必要がある場合が多く、データにおける重要な部分をパケットロス率が比較的に低い安定チャンネルに置き伝送し、データにおける二次的部分をパケットロス率が比較的に高い非安定チャンネルに置き伝送することによって、非安定チャンネルがパケットロスする際に相対的な音質の低下ことだけが発生し、1つのフレームのデータが全く復号化できない場合は発生しないことを保証する。一方で、ある通信ネットワーク（例えばインターネット）の帯域幅が非常に不安定で、異なるユーザーとの間の帯域幅が互いに異なって、1つの固定のビットレートを用いて異なる帯域幅ユーザーの需求を満たすことができなく、階層的な符号化方案によれば異なるユーザーがそれぞれ持っている帯域幅条件で最適の音質の楽しみを取得させる。
【０００４】
従来の階層的オーディオ符号化方案、例えばITU(International Telecommunication Union,国際電気通信連合)の標準G.729.1とG.VBRは採用された方式がコア層に音声符号化を用いて、拡張層にタイムドメイン或いは変換領域符号化を用いる。コア層と拡張層の間の符号化方式は互いに独立して、このように、符号化効率が低く、同時に、中、低ビットレートの伝送条件で音楽信号符号化の品質に影響を及ぼす。別のある階層的方案、例えばMPEG4(Moving Picture Experts Group4,動画専門家集団-4)は採用されたBSAC(Bit-Slice Arithmetic Code, ビットスライス算術符号化)可変ビットレート（或いはスケーラブル）の符号化方案は、データ自体の大きさのみからビット割り当てと階層的操作を行い、信号自分の全体に残差の感知の分布の特性を考えなく、コア層に既存した情報を用いて拡張層が符号化することを援助できないので、符号化の効率が低いである。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は解決しようとする技術問題は、従来の技術の不足を克服し、効果的な階層的オーディオ符号化、復号化方法及びシステムを提供する。
【課題を解決するための手段】
【０００６】
上記の技術問題を解決するために、本発明は階層的オーディオ符号化方法であって、
オーディオ信号が修正離散コサイン変換MDCTされた後の周波数領域係数をコア層の周波数領域係数と拡張層の周波数領域係数に区分し、前記コア層の周波数領域係数と拡張層の周波数領域係数を複数個の符号化サブバンドに区分し、前記符号化サブバンドの振幅エンベロープ値に計量化と符号化を行うこと、
コア層の各符号化サブバンドの振幅エンベロープ値によってコア層の各符号化サブバンドをビット割り当てし、次に、コア層の周波数領域係数に計量化と符号化を行ってコア層の周波数領域係数の符号化ビットを取得すること、
コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算すること、
コア層の残差信号と拡張層の周波数領域係数からなる拡張層の符号化信号及び前記拡張層の符号化信号からなる各符号化サブバンドの振幅エンベロープ値によって拡張層の各符号化サブバンドをビット割り当てし、次に、拡張層の符号化信号に計量化と符号化を行って拡張層の符号化信号の符号化ビットを取得すること、及び
コア層の周波数領域係数と拡張層の周波数領域係数からなる各符号化サブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット及び拡張層の符号化信号の符号化ビットを多重化してパッキングした後、復号化側に伝送することを含む。
【０００７】
また、オーディオ信号が修正離散コサイン変換MDCTされた後の周波数領域係数をコア層の周波数領域係数と拡張層の周波数領域係数に区分し、前記コア層の周波数領域係数と拡張層の周波数領域係数を複数個の符号化サブバンドに区分するステップにおいて、
MDCT変換した後の周波数領域係数を複数の等間隔の符号化サブバンドに区分し、或いは聴覚感知特性に従って複数の非均一符号化サブバンドに区分し、低周波符号化サブバンドをコア層符号化サブバンドに区分し、高周波符号化サブバンドを拡張層符号化サブバンドに区分する。
【０００８】
また、符号化サブバンドの振幅エンベロープ値によって各符号化サブバンドのステップサイズを変更しビット割り当てを行い、
ビット割り当ての過程中に、ビット割り当て数が0である符号化サブバンドの割り当てビットのステップサイズは1つのビットであり、ビット割り当てした後重要性が低下したステップサイズが1であり、ビット割り当て数が0より大きく且つ分類しきい値より小さい符号化サブバンドに割り当てビットを追加する際のビット割り当てのステップサイズが0.5個のビットであり、ビット割り当てした後重要性が低下するステップサイズが0.5であり、ビット割り当て数が前記分類しきい値の以上の符号化サブバンドに割り当てビットを追加する際のビット割り当てステップサイズが1であり、ビット割り当てした後重要性が低下するステップサイズが1であり、
ビット割り当て数は1つの符号化サブバンドにおいて単一の周波数領域係数が割り当てされたビット数である。
【０００９】
また、コア層の周波数領域係数と拡張層の符号化信号に計量化と符号化を行うステップにおいて、
ビット割り当て数が分類しきい値より小さい符号化サブバンドの計量化しようとするベクトルにピラミッド格子ベクトル計量化方法を用いて計量化と符号化を行い、ビット割り当て数が前記分類しきい値より大きい符号化サブバンドの計量化しようとするベクトルに球格子ベクトル計量化方法を用いて計量化と符号化を行い、
ビット割り当て数は１つの符号化サブバンドにおいて単一の周波数領域係数が割り当てされたビット数である。
【００１０】
また、コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算するステップにおいて、
コア層の周波数領域係数の計量化値を逆計量化し、コア層の周波数領域係数との差を計算し、コア層の残差信号を取得すること、
コア層の残差信号をコア層の周波数領域係数と同様である方法に従って符号化サブバンドに区分し、コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を算出すること、
という方法を採用して、コア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算する。
【００１１】
また、コア層の残差信号の各符号化サブバンドの振幅エンベロープ値を算出するステップは、
コア層の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、符号化サブバンドに対応する計量化指数の修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得すること、
各符号化サブバンドの計量化指数の修正値が0の以上で、且つコア層が符号化サブバンドに対応するビット割り当て数が増える際に減ってないこと、及び
コア層の符号化サブバンドのビット割り当て数が0である際に、計量化指数の修正値が0で、コア層の符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数である際に、コア層の残差信号が該符号化サブバンドでの振幅エンベロープ値が零であることを含む。
【００１２】
また、符号化サブバンドの計量化指数修正値はコア層ビット割り当て数によって取得され、コア層の符号化サブバンドのビット割り当て数がそれぞれ0、1、1.5、2、2.5、3、3.5、4、4.5、5、6、7または8である際に、該符号化サブバンドが対応する計量化指数の修正値がそれぞれ0、1、2、3、4、5、5、6、7、7、9、10または12を取って、
また、コア層の周波数領域係数の符号化ビットを取得するステップは、
コア層の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、コア層の各符号化サブバンドをビット割り当てすること、及び
コア層の各符号化サブバンドの振幅エンベロープ計量化指数が再建するコア層の各符号化サブバンドの計量化振幅エンベロープ値によって各符号化サブバンドの周波数領域係数を正規化し、コア層の各符号化サブバンドのビット割り当て数によってそれぞれピラミッド格子ベクトル計量化方法と球格子ベクトル計量化方法を用いて計量化と符号化を行い、コア層の周波数領域係数の符号化ビットを取得することを含み、
その中、拡張層の符号化信号の符号化ビットを取得するステップは、
コア層の残差信号と拡張層の周波数領域係数によって拡張層の符号化信号を構成すること、
拡張層の符号化信号の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層の各符号化サブバンドをビット割り当てすること、及び
拡張層の各符号化サブバンドの振幅エンベロープ計量化指数が再建する拡張層の各符号化サブバンドの計量化振幅エンベロープ値によって各符号化サブバンドの符号化信号を正規化し、拡張層の各符号化サブバンドのビット割り当て数によってそれぞれピラミッド格子ベクトル計量化方法と球格子ベクトル計量化方法で計量化と符号化を行い、拡張層の符号化信号の符号化ビットを取得することを含む。
【００１３】
また、コア層の周波数領域係数と拡張層の周波数領域係数からなる各符号化のサブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット及び拡張層の符号化信号の符号化ビットを多重化してパッキングした後に、復号化側に伝送するステップにおいて、
コア層のサイド情報ビットをストリームのフレームヘッダの後に書き込み、コア層の符号化サブバンドの振幅エンベロープ符号化ビットをビットストリームマルチプレクサーMUXに書き込み、次に、コア層の周波数領域係数の符号化ビットをMUXに書き込むこと、
及び拡張層のサイド情報ビットをMUXに書き込み、拡張層の周波数領域係数符号化サブバンドの振幅エンベロープ符号化ビットをMUXに書き込み、次に、拡張層の符号化信号の符号化ビットをMUXに書き込むこと、
要求されたビットレートによってビットレート要求を満たすビット数を復号化側に伝送すること、
というストリーム形式に従って多重化してパッキングする。
【００１４】
また、拡張層の符号化信号の符号化ビットを各符号化サブバンドの重要性の初期値が大きいから小さいまでの順序に従ってストリームに書き込み、復号化側に伝送する。
【００１５】
また、コア層のサイド情報はMDCT係数からなる符号化サブバンド振幅エンベロープのハフマン符号化フラグビット、コア層の周波数領域係数のハフマン符号化フラグビット及び逆復回数ビットを含み、
拡張層のサイド情報は拡張層の符号化信号のハフマン符号化フラグビットと逆復回数ビットを含む。
【００１６】
また、ビットレート要求を満たすビット数を復号化側に伝送するステップは、
限定された最大符号化ビットレートのビット数に従って符号化する必要があるすべての周波数帯域範囲に、コア層と拡張層を符号化し、符号化周波数帯域範囲に最大符号化ビットレートに達させること、
コア層の符号化ビットの後に、拡張層の符号化信号の符号化ビットを各符号化サブバンド重要性の初期値の大きいから小さいまでの順序に従ってビットストリームマルチプレクサーに書き込むこと、及び
符号化サブバンド重要性の初期値が小さい符号化サブバンドの符号化ビットを先に取り除く原則に従って、ビットレート要求を満たすビット数を復号化側に伝送すること、
その中、コア層が対応するビットレートをL0層とし、拡張層が取り除いたビット数によって拡張層が対応するそれぞれのビットレートをそれぞれL1_1層、L1_2層、…L1_K層までとし、そのうちL1_K層のビットレートは前記最大符号化ビットレートであることを含む。
【００１７】
また、符号化周波数帯域範囲が0〜13.6kHzで、最大符号化ビットレートが64kbpsである際に、次のような符号化ビットレート階層方法でビットレート要求を満たすビット数を復号化側に伝送し：
符号化周波数帯域範囲の0〜13.6kHzにおいて0〜6.4kHz内のMDCT周波数領域係数をコア層に区分し、コア層が対応する最大ビットレートが32kbpsで、L0層とし、拡張層の符号化周波数帯域範囲が0〜13.6kHzであり、その最大ビットレートが64kbpsで、L1_5層とし、
復号化側に伝送する前に、取り除いたビット数によってビットレートを、36kbpsに対応されたL1_1層、40kbpsに対応されｔたL1_2層、48kbpsに対応されたL1_3層、56kbpsに対応されたL1_4層、及び64kbpsに対応されたL1_5層に分ける。
【００１８】
また、オーディオ信号が修正離散コサイン変換MDCTされた後の周波数領域係数をコア層の周波数領域係数と拡張層の周波数領域係数に区分するステップの後に、前記方法は、拡張層の周波数領域係数を周波数が小さいから大きいまでの順序に従ってMの部分に分け、それらがそれぞれ拡張層1から拡張層Mまでの周波数領域係数であり、その中、拡張層1において周波数領域係数の周波数が最小で、拡張層Mにおいて周波数領域係数の周波数が最大であることをさらに含み、
コア層の周波数領域係数に計量化と符号化を行ったステップの後に、前記方法は、コア層の周波数領域係数の計量化値を逆計量化し、コア層の周波数領域係数との差を計算し、コア層の残差信号を取得することをさらに含み、
前記コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を計算するステップにおいて、コア層の残差信号をコア層と同様である方法に従って符号化サブバンドに区分し、コア層の各符号化サブバンドの振幅エンベロープ値とビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ値を算出し、
前記コア層の残差信号と拡張層の周波数領域係数からなる拡張層の符号化信号及び前記拡張層の符号化信号からなる各符号化サブバンドの振幅エンベロープ値によって拡張層の各符号化サブバンドをビット割り当てし、次に、拡張層の符号化信号に計量化と符号化を行って拡張層の符号化信号の符号化ビットを取得するステップにおいて、
コア層の残差信号と拡張層1の周波数領域係数を用いて拡張層1の符号化信号を構成し、拡張層1の符号化信号によって各符号化サブバンドの振幅エンベロープ計量化指数を計算し、拡張層1の各符号化サブバンドをビット割り当てし、拡張層1の各符号化サブバンドのビット割り当て数によって拡張層1の符号化信号に計量化と符号化を行い、
拡張層iの符号化信号の計量化値を逆計量化し、拡張層iの符号化信号との差を計算し、拡張層iの残差信号を取得し、
拡張層iの残差信号を拡張層iと同様である方法に従って符号化サブバンドに区分し、拡張層iの各符号化サブバンドの振幅エンベロープ値とビット割り当て数によって拡張層iの残差信号の各サブバンドの振幅エンベロープ値を算出し、
拡張層iの残差信号と拡張層i+1の周波数領域係数によって拡張層i+1の符号化信号を構成し、拡張層i+1の符号化信号の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層i+1の各符号化サブバンドをビット割り当てし、及び
拡張層i+1の各符号化サブバンドの振幅エンベロープ計量化指数が再建する拡張層i+1の各符号化サブバンドの計量化振幅エンベロープ値と符号化ビット数によって拡張層i+1の各符号化サブバンドの符号化信号に正規化、ベクトル計量化及び符号化を行い、拡張層i+1の符号化信号の符号化ビットを取得し、
前記i=1,…N-1、Nが2より大きい正整数である。
【００１９】
また、コア層の符号化ビットの後に、拡張層の通し番号の大きさに従って通し番号が小さい拡張層のビットを先にビットストリームマルチプレクサーMUXに書き込み、次に、通し番号が大きい拡張層のビットをさらにビットストリームマルチプレクサーMUXに書き込み、即ち先に拡張層iのビットを書き込み、拡張層i+1のビットをMUXに書き込むこと、
同一の拡張層において、先に該拡張層のサイド情報ビットをMUXに書き込み、次に、該拡張層の周波数領域係数の符号化サブバンドの振幅エンベロープ符号化ビットをMUXに書き込み、次に、該拡張層の符号化信号の符号化ビットをMUXに書き込むこと、
要求されたビットレートによってビットレート要求を満たすビット数を復号化側に伝送すること
というストリーム形式に従って多重化してパッキングする。
【００２０】
また、規定最大符号化ビットレートのビット数に従って符号化する必要があるすべての周波数帯域範囲内に、コア層と拡張層1から拡張層Mまでを符号化し、符号化周波数帯域範囲内に規定最大符号化ビットレートに達させること、
コア層の符号化ビットの後に、通し番号が小さい拡張層のビットを優先的にビットストリームマルチプレクサーに書き込み、同一の拡張層において符号化サブバンド重要性の初期値が大きい符号化サブバンドの符号化ビットを優先的にビットストリームマルチプレクサーに書き込むこと、
それぞれの拡張層を、各階層のビットレート設計要求によって、ビットストリームマルチプレクサーの後に必要がないビットを取り除き、即ち符号化サブバンド重要性の初期値が小さい符号化サブバンドの符号化ビットを先に取り除く原則に従って、ビットレート要求を満たすビット数を復号化側に伝送すること、
コア層が対応するビットレートをL0層とし、規定のビットレートの伝送要求によって各拡張層が対応する最大ビットレートをそれぞれL1_K1層、L2_K2層、…LM_KM層までとし、そのうち、LM_KM層のビットレートは符号化器が要求する最大ビットレートであること、
拡張層iと拡張層i+1との間に、取り除いたビット数によってさらにビットレート層を具体化し、即ちLi_Ki層とLi+1_Ki+1層との間に取り除いたビット数によってLi+1_1層、Li+1_2層、…Li+1_Ki+1層まで区分すること、
という符号化ビットレート階層方法を採用してビットレート要求を満たすビット数を復号化側に伝送する。
【００２１】
また、符号化周波数帯域範囲が0〜20kHzで、最大符号化ビットレートが96kbpsである際に、
符号化周波数帯域の範囲0〜20kHzに0〜6.4kHz内のMDCT周波数領域係数をコア層に区分し、コア層が対応する最大ビットレートが32kbpsで、L0層とすること、
拡張層1の符号化周波数帯域範囲が0〜13.6kHzで、その最大ビットレートが64kbpsで、L1_5層とし、拡張層2の符号化周波数帯域範囲が0〜20kHzで、その最大ビットレートが96kbpsで、L2_2層とすること、
復号化側に伝送する前に、取り除いたビット数によってL1_5層とL2_2層の間をさらに80kbpsに対応するL2_1層、及び96kbpsに対応するL2_2層に分けること、
という符号化ビットレート階層方法を採用してビットレート要求を満たすビット数を復号化側に伝送する。
【００２２】
本発明はさらに、階層的オーディオ復号化方法を提供し、
符号化側が伝送してきたビットストリームを逆多重化し、コア層の周波数領域係数の振幅エンベロープ符号化ビットを復号化し、コア層の各符号化サブバンドの振幅エンベロープ値を取得すること、
コア層の各符号化サブバンドの振幅エンベロープ値によってコア層の各符号化サブバンドをビット割り当てし、コア層の残差信号の振幅エンベロープ値を算出すること、拡張層の周波数領域係数の振幅エンベロープ符号化ビットを復号化し、拡張層の周波数領域係数の振幅エンベロープ値を取得すること、コア層の残差信号の振幅エンベロープ値と拡張層の周波数領域係数の振幅エンベロープ値によって拡張層の各符号化サブバンドをビット割り当てすること、及び
コア層のビット割り当て数と拡張層のビット割り当て数によって、コア層の周波数領域係数符号化ビットと拡張層の符号化信号の符号化ビットをそれぞれ復号化し、コア層の周波数領域係数と拡張層の符号化信号を取得し、拡張層の符号化信号を周波数帯域の順序に従って改めてソートし、コア層の周波数領域係数を加えて、帯域幅全体の周波数領域係数を取得し、帯域幅全体の周波数領域係数に修正離散コサイン逆変換IMDCTを行い、出力したオーディオ信号を取得することを含む。
【００２３】
また、残差信号の振幅エンベロープ値を計算する方法は以下のようであり、
コア層の残差信号の振幅エンベロープ値を算出するステップは、
コア層の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、符号化サブバンドに対応する計量化指数修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得すること、
拡張層iの各符号化サブバンド振幅エンベロープとビット割り当て数によって拡張層iの残差信号の各サブバンドの振幅エンベロープ値を算出すること、
各符号化サブバンドの計量化指数の修正値が0の以上で、且つコア層の符号化サブバンドに対応するビット割り当て数が増える際に、減ってないこと、及び
コア層の符号化サブバンドのビット割り当て数が0である際に、計量化指数修正値が0で、符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数である際に、コア層の残差信号が該符号化サブバンドでの振幅エンベロープ値が零であることを含む。
【００２４】
また、符号化サブバンドの計量化指数修正値はコア層ビット割り当て数によって取得し、コア層の符号化サブバンドのビット割り当て数がそれぞれ0、1、1.5、2、2.5、3、3.5、4、4.5、5、6、7または8である際に、該符号化サブバンドが対応する計量化指数修正値がそれぞれ0、1、2、3、4、5、5、6、7、7、9、10または12を取って、
また、コア層の周波数領域係数と拡張層の符号化信号を取得するステップは、
コア層の各符号化サブバンドのビット割り当て数、計量化振幅エンベロープ値及びサイド情報によってコア層の周波数領域係数の符号化ビットを復号化、逆計量化及び逆正規化処理を行って、コア層の周波数領域係数を取得すること、及び
拡張層の各符号化サブバンドのビット割り当て数、拡張層の符号化信号の計量化振幅エンベロープ値及びサイド情報によって該拡張層の符号化信号の符号化ビットを復号化、逆計量化及び逆正規化処理を行って、拡張層の符号化信号を取得することを含む。
【００２５】
また、拡張層の符号化信号の符号化ビットを復号化するステップにおいて、
異なる拡張層において、各層の復号化の順序は先に拡張層通し番号が小さい低拡張層の振幅エンベロープと各符号化サブバンドの符号化ビットを復号化し、次に、さらに拡張層通し番号が大きい高拡張層の振幅エンベロープと各符号化サブバンドの符号化信号を復号化し、復号化過程中に、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に、復号化を停止すること、
同一の拡張層において、各符号化サブバンドの復号化の順序は各符号化サブバンド重要性の初期値によって決められ、重要性が大きい符号化サブバンドを優先的に復号化し、2つの符号化サブバンドが同様の重要性を有すると、低周波符号化サブバンドを優先的に復号化し、復号化過程中に、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に、復号化を停止すること、
という順序に従って拡張層の符号化信号の符号化ビットを復号化する。
【００２６】
また、符号化側から復号化側に伝送するビットレートが64kbpsである際に、復号化側で異なるビット数を切り取って復号化し、36kbps、40kbps、48kbps、56kbpsまたは64kbpsの復号化ビットレートに達することができる。
【００２７】
符号化側から復号化側に伝送するビットレートが96kbpsである際に、復号化側で異なるビット数を切り取って復号化し、80kbpsまたは96kbpsの復号化ビットレートに達することができる。
【００２８】
本発明はさらに階層的オーディオ符号化システムを提供し、修正離散コサイン変換MDCTユニット、振幅エンベロープ計算ユニット、振幅エンベロープ計量化と符号化ユニット、コア層ビット割り当てユニット、コア層の周波数領域係数ベクトル計量化と符号化ユニット、及びビットストリームマルチプレクサーを含み、拡張層の符号化信号生成ユニット、残差信号振幅エンベロープ生成ユニット、拡張層ビット割り当てユニット、及び拡張層の符号化信号ベクトル計量化と符号化ユニットをさらに含み、その中、
前記MDCTユニットは、入力したオーディオ信号に修正離散コサイン変換を行い、コア層の周波数領域係数と拡張層の周波数領域係数を生成するように設置され、
前記振幅エンベロープ計算ユニットは、前記コア層の周波数領域係数と拡張層の周波数領域係数において符号化しようとする部分をコア層の周波数領域係数の符号化サブバンドと拡張層の周波数領域係数の符号化サブバンドに区分し、且つ各符号化サブバンドの振幅エンベロープ値を計算するように設置され
前記振幅エンベロープ計量化と符号化ユニットは、前記コア層の周波数領域係数の符号化サブバンドと拡張層の周波数領域係数の符号化サブバンドの振幅エンベロープ値に計量化と符号化を行い、コア層の周波数領域係数、拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数、及び振幅エンベロープの符号化ビットを生成するように設置され、
前記コア層ビット割り当てユニットは、コア層をビット割り当てし、コア層の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記コア層の周波数領域係数ベクトル計量化と符号化ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数によって再建するコア層の各符号化サブバンドの計量化振幅エンベロープ値とビット割り当て数を用いてコア層の各符号化サブバンドの周波数領域係数に正規化、ベクトル計量化及び符号化を行い、コア層の周波数領域係数の符号化ビットを取得するように設置され、
前記拡張層の符号化信号生成ユニットは、残差信号を生成し、残差信号と拡張層の周波数領域係数からなる拡張層の符号化信号を取得するように設置され、
前記残差信号振幅エンベロープ生成ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応するビット割り当て数によって、残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置され、
前記拡張層ビット割り当てユニットは、残差信号の各符号化サブバンドの振幅エンベロープ計量化指数と拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層をビット割り当てし、拡張層の符号化信号の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記拡張層の符号化信号ベクトル計量化と符号化ユニットは、拡張層の各符号化サブバンドの振幅エンベロープ計量化指数によって再建する拡張層の各符号化サブバンドの計量化振幅エンベロープ値とビット割り当て数を用いて拡張層の各符号化サブバンドの符号化信号に正規化、ベクトル計量化及び符号化を行い、拡張層の符号化信号の符号化ビットを取得するように設置され、
前記ビットストリームマルチプレクサーは、コア層サイド情報ビット、コア層の各符号化サブバンドの振幅エンベロープの符号化ビット、コア層の周波数領域係数の符号化ビット、拡張層サイド情報ビット、拡張層の周波数領域係数の各振幅エンベロープの符号化ビット及び拡張層の符号化信号の符号化ビットをパッキングするように設置される。
【００２９】
また、前記拡張層の符号化信号生成ユニットは残差信号生成ユニット、拡張層の符号化信号合成ユニットをさらに含み、
前記残差信号生成ユニットは、コア層の周波数領域係数の計量化値を逆計量化し、コア層の周波数領域係数との差を計算し、コア層の残差信号を取得するように設置され、
前記拡張層の符号化信号合成ユニットは、コア層の残差信号と拡張層の周波数領域係数を周波数帯域の順序に従って合成し、拡張層の符号化信号を取得するように設置される。
【００３０】
また、前記残差信号の振幅エンベロープ生成ユニットは計量化指数修正値取得ユニットと残差信号振幅エンベロープ計量化指数計算ユニットをさらに含み、
前記計量化指数修正値取得ユニットは、コア層の各符号化サブバンドビット割り当て数によって残差信号の各符号化サブバンドの計量化指数修正値を計算し、各符号化サブバンドの計量化指数修正値が0の以上で、且つコア層の符号化サブバンドに対応する符号化ビット数が増える際に減ってなく、コア層の符号化サブバンドのビット割り当て数が0であると、計量化指数修正値が0であり、符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数であると、残差信号が該符号化サブバンドでの振幅エンベロープ値が零であるように設置され、
前記残差信号振幅エンベロープ計量化指数計算ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応する計量化指数修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置される。
【００３１】
また、前記ビットストリームマルチプレクサーは、拡張層の符号化信号符号化ビットを各符号化サブバンド重要性の初期値が大きいから小さいまでの順序に従ってストリームに書き込み、同様の重要性を有する符号化サブバンドに対して、低周波符号化サブバンドの符号化ビットを優先的にストリームに書き込むように設置される。
【００３２】
本発明はさらに階層的オーディオ復号化システムを提供し、ビットストリームデマルチプレクサ、コア層振幅エンベロープ復号化ユニット、コア層ビット割り当てユニット、コア層復号化と逆計量化ユニットを含み、拡張層振幅エンベロープ復号化ユニット、コア層の残差信号振幅エンベロープ生成ユニット、拡張層ビット割り当てユニット、拡張層の符号化信号復号化と逆計量化ユニット、周波数領域係数生成ユニット、ノイズ充填ユニット及び修正離散コサイン逆変換IMDCTユニットをさらに含み、
前記コア層振幅エンベロープ復号化ユニットは、前記ビットストリームデマルチプレクサが出力するコア層の符号化サブバンドの振幅エンベロープ符号化ビットを復号化し、コア層の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置され、
前記コア層ビット割り当てユニットは、コア層をビット割り当てし、コア層の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記コア層復号化と逆計量化ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数によってコア層の各符号化サブバンドの計量化振幅エンベロープ値を計算して取得し、コア層の各符号化サブバンドのビット割り当て数と計量化振幅エンベロープ値を用いて前記ビットストリームデマルチプレクサが出力するコア層の周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、コア層の周波数領域係数を取得するように設置され、
前記拡張層振幅エンベロープ復号化ユニットは、ビットストリームデマルチプレクサが出力する拡張層の周波数領域係数の振幅エンベロープ符号化ビットを復号化し、拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置され、
前記コア層の残差信号振幅エンベロープ生成ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応するビット割り当て数によって残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を計算して取得するように設置され、
前記拡張層ビット割り当てユニットは、残差信号の各符号化サブバンドの振幅エンベロープ計量化指数と拡張層の周波数領域係数の各符号化サブバンドの振幅エンベロープ計量化指数によって拡張層をビット割り当てし、拡張層の符号化信号の各符号化サブバンドのビット割り当て数を取得するように設置され、
前記拡張層の符号化信号復号化と逆計量化ユニットは、拡張層の各符号化サブバンドの振幅エンベロープ計量化指数を用いて拡張層の各符号化サブバンドの計量化振幅エンベロープ値を計算して取得し、拡張層の各符号化サブバンドの符号化ビット数と計量化振幅エンベロープ値を用いて前記ビットストリームデマルチプレクサが出力する拡張層の符号化信号の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、拡張層の符号化信号を取得するように設置され、
前記周波数領域係数生成ユニットは、周波数帯域順序に従って前記拡張層の符号化信号復号化と逆計量化ユニットが出力する拡張層の符号化信号を改めてソートし、次に、前記コア層復号化と逆計量化ユニットが出力するコア層の周波数領域係数との和を計算し、周波数領域係数の出力値を取得するように設置され、
前記ノイズ充填ユニットは、符号化過程中に割り当てしない符号化ビットの符号化サブバンドにノイズ充填を行うように設置され、
IMDCTユニットは、ノイズ充填を行った後すべての周波数領域係数にIMDCTを行い、出力したオーディオ信号を取得するように設置される。
【００３３】
また、前記コア層の残差信号振幅エンベロープ生成ユニットは、計量化指数修正値取得ユニット、残差信号振幅エンベロープ計量化指数計算ユニットをさらに含み、
前記計量化指数修正値取得ユニットは、コア層の各符号化サブバンドビット割り当て数によって残差信号の各符号化サブバンドの計量化指数修正値を計算し、符号化サブバンドの周波数領域係数に対応する絶対値を調整し、その中、各符号化サブバンドの計量化指数修正値が0の以上で、且つコア層の符号化サブバンドに対応する符号化ビット数が増える際に減ってなく、コア層の符号化サブバンドのビット割り当て数が0であると、計量化指数修正値が0であり、符号化サブバンドのビット割り当て数が限定された最大ビット割り当て数であると、残差信号が該符号化サブバンドでの振幅エンベロープ値が零であるように設置され、
前記残差信号振幅エンベロープ計量化指数計算ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数と符号化サブバンドに対応する計量化指数修正値との差を計算し、コア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を取得するように設置される。
【００３４】
また、前記拡張層の符号化信号復号化と逆計量化ユニットは、拡張層の符号化信号の各符号化サブバンド復号化の順序が、各符号化サブバンドの重要性の初期値によって決められ、重要性が大きい符号化サブバンドを優先的に復号化し、2つの符号化サブバンドが同様の重要性を有すると、低周波符号化サブバンドを優先的に復号化し、復号化過程中に、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に、復号化を停止するように設置される。
【発明の効果】
【００３５】
以上のように、本発明はコア層と拡張層において同様のサブバンド区分とビット割り当て方法を採用することによって、コア層の振幅エンベロープ情報によって拡張層振幅エンベロープ情報を算出し、コア層と拡張層のビット割り当てにおいて、いずれも信号の自分の分布特性を考え、コア層と拡張層との間を緊密に繋がれ、且つ拡張層のストリームにおいて残差信号の振幅エンベロープ情報を含まなく、階層的オーディオの符号化復号化の効率を向上させるとともに、コード利用率を向上させる。
【図面の簡単な説明】
【００３６】
【図１】図1は本発明の第1の実施例における強化型の階層的オーディオ符号化方法のフローチャートである。
【図２】図2は本発明の実施例がベクトル計量化した後にビット割り当て修正を行う方法のフローチャートである。
【図３】図3は本発明の第1の実施例における強化型の階層的オーディオ符号化システムの構成模式図である。
【図３ａ】図3aは本発明の第1の実施例における階層的符号化ストリームの模式図である。
【図４】図4は本発明の第1の実施例における強化型の階層的オーディオ復号化方法のフローチャートである。
【図５】図5は本発明の第1の実施例における強化型の階層的オーディオ復号化システムの構成模式図である。
【図６】図6は本発明の第2の実施例における拡張型の階層的オーディオ符号化方法のフローチャートである。
【図６ａ】図6aは本発明の第2の実施例における階層的符号化ストリームの模式図である。
【図７】図7は本発明の第2の実施例における拡張型の階層的オーディオ符号化システムの構成模式図である。
【図８】図8は本発明の第2の実施例における拡張型の階層的オーディオ復号化方法のフローチャートである。
【図９】図9は本発明の第2の実施例における拡張型の階層的オーディオ復号化システムの構成模式図である。
【図１０】図10は本発明において周波数帯域範囲での階層及びビットレートによる階層を用いる関係模式図である。
【発明を実施するための形態】
【００３７】
本発明の趣旨は、コア層の計量化ノイズを補償し、コア層と拡張層において同様のサブバンド区分方法とビット割り当て方法を用いて、コア層振幅エンベロープ情報によってコア層の残差信号の振幅エンベロープ情報を算出し、従って、拡張層ストリームにおいて残差信号の振幅エンベロープ情報を伝送しないでコア層の音質品質を向上させる。
【００３８】
以下で、図面と実施例を参照して本発明について詳しく説明する。
第1の実施例
図1は本発明の第1の実施例における強化型の階層的オーディオ符号化方法のフローチャートである。本実施例において、フレームの長さの20ms、サンプリングレートの32kHzのオーディオストリームを例として、具体的に本発明の階層的オーディオ符号化方法を説明する。他のフレーム長さとサンプリングレートの条件で、本発明の方法は同様に適する。図1に示すように、該方法は、以下のステップを含む。
ステップ101、フレーム長さの20ms、サンプリングレートの32kHzのオーディオストリームにMDCT（Modified Discrete Cosine Transform，修正離散コサイン変換）を実施し、N個の周波数領域サンプリングポイント上の周波数領域係数を取得する。
【００３９】
このステップの具体的な実現方式は、
現在フレームのNポイントのタイムドメインサンプリング信号x(n)と前のフレームのNポイントのタイムドメインサンプリング信号xold(n)とが2Nポイントのタイムドメインサンプリング信号
2013511054.tif 000003
を組成し、2Nポイントのタイムドメインサンプリング信号は下記式によって表してもよく、
2013511054.tif 000004
に対してMDCTを実施し、次のような周波数領域係数を取得し、
2013511054.tif 000005
その中、w(n)がサインウィンドウ関数を表し、式が
2013511054.tif 000006
であり、
また、フレーム長さが20msで、サンプリングレートが32kHzである際に、N=640（他のフレーム長さ及びサンプリングレートが同様に相応のNを算出することができる）であってもよい。
【００４０】
ステップ102、Nポイントの周波数領域係数を若干のサブバンドに区分し、上記サブバンドは均一に区分しても良く、非均一に区分してもよく、本実施例において非均一のサブバンド区分を採用し、それぞれのサブバンドの周波数領域振幅エンベロープ（振幅エンベロープと略称する）を計算する。
【００４１】
このステップは次のようなサブステップによって実現しても良い。
ステップ102a、符号化する必要がある周波数帯域範囲内の周波数領域係数をLのサブバンド（符号化サブバンドとも称する）に区分し、
本実施例において、符号化する必要がある周波数帯域範囲が0〜13.6kHzであり、人間の耳の知覚特性に従って非均一のサブバンド区分を行い、表1に1つの具体的な区分方式を表す。
【００４２】
表1には0〜13.6kHz周波数帯域範囲内の周波数領域係数を28個の符号化サブバンドに区分し、つまり、L=28であり、且つ13.6kHz以上の周波数領域係数を0とする。
【００４３】
本実施例において、コア層の周波数領域範囲をさらに区分する。表1における0〜15番のサブバンドを選択してコア層のサブバンドとして、合計L_core=16のサブバンドを有する。コア層の周波数帯域範囲が0〜6.4kHzである。
2013511054.tif 000007
表1
【００４４】
ステップ102b、以下の数式に従って各符号化サブバンドの振幅エンベロープを計算し、
2013511054.tif 000008
その中、LIndex(j)とHIndex(j)はそれぞれ第j個の符号化サブバンドの開始周波数ポイントと終了周波数ポイントを表し、その具体的な数値は表1に示す。
【００４５】
ステップ103、各符号化サブバンドの振幅エンベロープ値に計量化と符号化を行い、振幅エンベロープの計量化指数と振幅エンベロープの符号化ビットを取得し、振幅エンベロープの符号化ビットをビットストリームマルチプレクサー（MUX）に伝送する必要がある。
【００４６】
次のような数式（5）によって各符号化サブバンド振幅エンベロープを計量化し、各符号化サブバンド振幅エンベロープの計量化指数を取得し、即ち計量化器の出力値であり、
2013511054.tif 000009
その中、
2013511054.tif 000010
は下へ丸めるのを表し、Thq(0)が第1の符号化サブバンドの振幅エンベロープ計量化指数であり、その範囲を[−5,34]内に制限し、即ち、
2013511054.tif 000011
である際に、
2013511054.tif 000012
とし、
2013511054.tif 000013
である際に、
2013511054.tif 000014
とする。
【００４７】
計量化指数によって再建する計量化振幅エンベロープが
2013511054.tif 000015
である。
【００４８】
6ビットで第1の符号化サブバンドの振幅エンベロープ計量化指数を符号化し、即ち6ビットを消耗する。
【００４９】
各符号化のサブバンド振幅エンベロープ計量化指数の間の差分演算値は次の数式によって計算され、
2013511054.tif 000016
2013511054.tif 000017
の範囲が[−15,16]内にあることを保証するように、振幅エンベロープを次のような修正を行っても良く、
2013511054.tif 000018
に対してハフマン（Huffman）符号化を行い、このとき消耗するビット数（ハフマン符号化ビット、Huffman  coded  bitsと称する）を計算する。このときハフマン符号化ビットが固定に割り当てられるビット数（本実施例において (L−1)×5より大きい）の以上であると、ハフマン符号化方式によって
2013511054.tif 000019
に対して符号化を行わなく、ハフマン符号化フラグFlag_huff_rms=0とし、ではないと、ハフマン符号化を用いて
2013511054.tif 000020
を符号化し、ハフマン符号化フラグFlag_huff_rms=1とする。振幅エンベロープ計量化指数の符号化ビット（即ち振幅エンベロープ差分値の符号化ビット）とハフマン符号化フラグはMUXに伝送される。
【００５０】
ステップ104、ビットレート歪みの理論と符号化サブバンド振幅エンベロープ情報によってコア層の各符号化サブバンド重要性の初期値を計算し、各符号化サブバンドの重要性によってコア層をビット割り当てする。
【００５１】
このステップは次のようなサブステップによって実現することができる。
ステップ104a、コア層の単一の周波数領域係数のビット消耗平均値を計算し、
20msのフレーム長さが提供できる総ビット数bits_availableからコア層符号化に用いるビット数bits_available_coreを抽出し、コア層サイド情報が消耗したビット数bit_sides_coreとコア層の符号化サブバンド振幅エンベロープ計量化指数が消耗したビット数bits_Th_coreを差し引き、残りのコア層の周波数領域係数の符号化に用いるビット数bits_left_coreを取得し、即ち、
bits_left_core=bits_available_core−bit_sides_core−bits_Th_core（7）である。
サイド情報はハフマン符号化フラグFlag_huff_rms、Flag_huff_PLVQ及び反復回数countのビットを含む。Flag_huff_rmsはコア層と拡張層符号化のサブバンド振幅エンベロープ計量化指数に対してハフマン符号化を用いるかどうかを標識することに用いられ、Flag_huff_PLVQ_coreは周波数領域係数をベクトル符号化する際にハフマン符号化を用いるかどうかを標識することに用いられ、反復回数countはビット割り当て修正を行う際の反復回数（詳しくのは後述のステップにおける説明である）を用いるかどうかを標識することに用いられる。
【００５２】
コア層の単一の周波数領域係数のビット消耗平均値を計算して
2013511054.tif 000021
であり、
2013511054.tif 000022
その中、
2013511054.tif 000023
はコア層お符号化サブバンドの個数である。
【００５３】
ステップ104b、ビットレート歪みの理論によって最大計量化信号ノイズ比ゲインの条件での最適ビット値を計算し、
ラグランジュの方法で独立したガウス確率変数に基づくビットレート歪みを最適化し、該ビットレート歪み境界で各符号化サブバンドの最大計量化信号ノイズ比ゲイン条件での最適ビット値を計算して取得でき、
2013511054.tif 000024
その中、
2013511054.tif 000025
及び
2013511054.tif 000026
（11）である。
【００５４】
ステップ104c、各符号化サブバンドがビット割り当てを行う際の重要性の初期値を計算し、
上記最適ビット値及び人間の耳の知覚特性に合わせるスケール因子を用いて実際のビット割り当て中にビット割り当てを制御するための各符号化サブバンドの重要性の初期値を取得でき、
2013511054.tif 000027
その中、
2013511054.tif 000028
はスケール因子であり、該因子が符号化ビットレートに関し、統計分析によって取得でき、一般的に
2013511054.tif 000029
であり、本実施例において
2013511054.tif 000030
の取る値が0.4であり、rk(j)はビット割り当てを行う際に第j個の符号化サブバンドの重要性を表す。
ステップ104d、各符号化サブバンドの重要性によってコア層のビット割り当てを行い、具体的な説明は以下の通りであり、
まず、各rk(j)において最大値がある符号化サブバンドを見つけ、仮に該符号化サブバンドの通し番号がjkであり、次に、該符号化サブバンドにおいてそれぞれの周波数領域係数の符号化ビット数
2013511054.tif 000031
を増え、該符号化サブバンドの重要性を下げるとともに、該サブバンド符号化の消耗ビット総数
2013511054.tif 000032
を計算し、最後にすべての符号化サブバンドの消耗ビット数の総和sum(bit_band_used(j)),j=0,…,L_core−1を計算し、消耗ビット数の総和は提供できるビット制限条件での最大値を満たすまで、上記過程を繰り返す。
【００５５】
このステップにおけるビット割り当て方法は次のような擬似コードによって表され、
region_bit(j)=0とし、
2013511054.tif 000033
符号化サブバンド0,1,…,L_core−1に対して：
{
2013511054.tif 000034
region_bit(jk)<分類しきい値であると
{
region_bit(jk)=0であると、
region_bit(jk)=region_bit(jk)+1とし、
bit_band_used(jk)=region_bit(jk)*BandWidth(jk)を計算し、
rk(jk)= rk(jk)1とし、
ではないと、region_bit(jk)>=1であると、
region_bit(jk)=region_bit(jk)+0.5とし、
bit_band_used(jk)=region_bit(jk)*BandWidth(jk)*0.5を計算し、
rk(jk)= rk(jk)0.5とし、
}
ではないと、region_bit(jk)>=分類しきい値であると、
{
region_bit(jk)=region_bit(jk)+1とし、
2013511054.tif 000035
bit_band_used(jk)=region_bit(jk)×BandWidth(jk)を計算し、
}
bit_used_all=sum(bit_band_used(j))を計算し、j=0,1,…,L_core−1、
bit_used_all<bits_left_core24であると、戻して各符号化サブバンドにおいてjkを改めて検索し、ビット割り当て数（又は符号化ビット数と称する）を繰り返して計算し、その中、24が符号化子帯域幅度の最大値である。
ではないと、繰り返しを終了し、ビット割り当て数を計算し、このときのビット割り当て数を出力する。
}
【００５６】
最後に、サブバンドの重要性によって残りの24の以下のビットを次のような原則に従って要求を満たす符号化サブバンドに割り当て、優先的にビット割り当てが1である符号化サブバンドにおいてそれぞれの周波数領域係数に0.5個のビットを割り当てるとともに、該符号化サブバンドの重要性を0.5下げ、ではないと、ビット割り当てが0であるサブバンドにおいてそれぞれの周波数領域係数に1つのビットを割り当てるとともに、該符号化サブバンドの重要性を1下げ、bit_left−bit_used_all<4まで、ビット割り当てを終了する。
【００５７】
上記分類しきい値の取る値範囲が2の以上、且つ8の以下であり、本実施例において5であってもよい。
【００５８】
その中、MaxBitが符号化サブバンドにおいて単一の周波数領域係数に割り当てられることができる最大のビット割り当て数であり、単位がbit/周波数領域係数である。本実施例において、MaxBit=9を用いる。この値がエンコーダ、デコーダの符号化ビットレートによって適当に調整できる。region_bit(j)が第j個の符号化サブバンドにおいて単一の周波数領域係数が割り当てられるビット数であり、つまり、該サブバンドにおいて単一の周波数領域係数の符号化ビット数である。
【００５９】
また、このステップにおいて、
2013511054.tif 000036
を各符号化サブバンドのビット割り当ての重要性の初期値としてコア層のビット割り当てを行っても良く、
2013511054.tif 000037
である。
【００６０】
ステップ105、コア層の各符号化サブバンド計量化指数が再建する計量化振幅エンベロープ値を用いて該符号化サブバンドにおける各周波数領域係数を正規化計算し、次に、正規化された周波数領域係数をグルーピングし、若干のベクトルを組成し、
符号化サブバンドjの計量化振幅エンベロープ
2013511054.tif 000038
を用いて該符号化サブバンドにおいてすべての周波数領域係数Xjに正規化処理を行い、
2013511054.tif 000039
符号化サブバンドにおいて連続の8個の係数をグルーピングして1つの8次元ベクトルに構成する。表1には符号化サブバンドへの区分によって符号化サブバンドjにおける係数はLattice_ D8 (j)個の8次元ベクトルにちょうどグルーピングして構成することができる。それぞれの正規化された後グルーピングされる8次元計量化しようとするベクトルは
2013511054.tif 000040
を表すことができ、その中、mは該8次元ベクトルが符号化サブバンドにおける位置を表し、その範囲が0からLattice_ D8 (j)-1までにある。
【００６１】
ステップ106、符号化サブバンドjに割り当てられたビット数region_bit(j)の大きさを判断し、割り当てたビット数region_bit(j)が分類しきい値より小さいと、ステップ107とステップ109を実行し、即ち該符号化サブバンドにおいて計量化しようとするベクトルに対してピラミッド格子ベクトル計量化方法で計量化と符号化を行い、割り当てたビット数region_bit(j)が該しきい値の以上であると、ステップ108とステップ110を実行し、即ち、該符号化サブバンドにおける計量化しようとするベクトルに対して球格子ベクトル計量化方法で計量化と符号化を行い、本実施例のしきい値は5ビットを用いる。
【００６２】
ステップ107、低ビット符号化サブバンドに対してピラミッド格子ベクトル計量化方法で計量化し、このとき、サブバンドjに割り当てられたビット数は1<=region_bit(j)<5を満たし、
本発明はD8格子ポイントに基づく8次元格子ベクトル計量化を用いて、その中、D8格子ポイントは次のように定義され、
2013511054.tif 000041
その中、
2013511054.tif 000042
は8次元の整数空間を表す。8次元ベクトルをD8格子ポイントにマッピング（即ち計量化）する基本的な方法は次のように説明し、
xを任意の実数とし、f(x)は取得したxと隣接する2つの整数の中に近い整数の丸め計量化を表し、w(x)は取得した隣接する2つの整数の中に遠い整数の丸め計量化を表す。任意のベクトル
2013511054.tif 000043
に対して
2013511054.tif 000044
を同様に定義することができる。f(X)には丸め計量化誤差の絶対値が最大であるコンポーネントにおける最小の下付き文字を選択し、kとし、このように
2013511054.tif 000045
を定義すると、f(X)或いはg(X)において1つ且つ1つだけがD8格子ポイントの数値であり、このとき、計量化器が出力するD8格子ポイントの計量化値が、
2013511054.tif 000046
である。
【００６３】
計量化しようとするベクトルをD8格子ポイントに計量化する方法及びD8格子ポイントのインデックスを解する具体的なステップは以下の通りであり、
ステップ107a、計量化しようとするベクトルをエネルギー標準化し、
計量化する前に計量化しようとするベクトルをエネルギー標準化する必要がある。計量化しようとするベクトル所在の符号化サブバンドjに割り当てられたビット数region_bit(j)によって、表2から該ビット数が対応するコードブック番号（index）とエネルギーのスケーリング因子（scale）を調べ、次に、以下の数式によって計量化しようとするベクトルをエネルギー標準化し、
2013511054.tif 000047
その中、
2013511054.tif 000048
は符号化サブバンドjには第m個の正規化された後の計量化しようとする8次元ベクトルを表し、
2013511054.tif 000049
にエネルギー標準化を行った後の8次元ベクトルを表し、
2013511054.tif 000050
である。
【００６４】
表2、ピラミッド格子ベクトル計量化ビット数がコードブック番号、エネルギーのスケーリング因子及び最大のピラミッド面エネルギーの半径との対応関係
2013511054.tif 000051
ステップ107b、標準化した後のベクトルに格子ポイント計量化を行い、
エネルギー標準化した後の8次元ベクトル
2013511054.tif 000052
をD8格子ポイント
2013511054.tif 000053
に計量化し、
2013511054.tif 000054
その中、
2013511054.tif 000055
はある8次元ベクトルをD8格子ポイントにマッピングする計量化算子を表す。
【００６５】
ステップ107c、D8格子ポイント
2013511054.tif 000056
のピラミッド面エネルギーによって
2013511054.tif 000057
のエネルギーを切り取って、
D8格子ポイント
2013511054.tif 000058
のエネルギーを計算して符号化コードブックにおける最大のピラミッド面エネルギー半径LargeK(index)を比較する。最大のピラミッド面エネルギー半径より大きくないと、該格子ポイントがコードブックにおけるインデックスを計算し、ではないと、エネルギー切り取った後の計量化しようとするベクトルの計量化格子ポイントのエネルギーが最大のピラミッド面エネルギー半径より大きくないまで、該符号化サブバンドが標準化した後の計量化しようとするベクトル
2013511054.tif 000059
にエネルギー切り取りを行って、この際、それがD8格子ポイントに計量化するエネルギーが最大のピラミッド面エネルギー半径を超えるまで、エネルギー切り取った後の計量化しようとするベクトルにその自分の1つの小さいエネルギーを増加し続き、最後のエネルギーが最大のピラミッド面エネルギー半径を超えないD8格子ポイントを取って計量化しようとするベクトルの計量化値とする。具体的な過程は以下の擬似コードによって説明し、
2013511054.tif 000060
のピラミッド面エネルギーを計算し、即ち符号化サブバンドjにおいて第m個のベクトルの各コンポーネントの絶対値の和を求め、
2013511054.tif 000061
この際の
2013511054.tif 000062
は最後のエネルギーが最大のピラミッド面エネルギー半径を超えないD8格子ポイントであり、
2013511054.tif 000063
は該格子ポイントのエネルギーである。
【００６６】
ステップ107d、D8格子ポイント
2013511054.tif 000064
がコードブックにおける計量化インデックスを取得し、
以下のステップによって、計算するによってD8格子ポイント
2013511054.tif 000065
がコードブックにおけるインデックスを取得する。具体的なステップは以下の通りであり、
ステップ1、ピラミッド面エネルギーの大きさによって、各のピラミッド面における格子ポイントをそれぞれ番号標記する。
次元数がLである整数格子ポイントグリッド
2013511054.tif 000066
に対して、エネルギー半径がKであるピラミッド面が、
2013511054.tif 000067
に定義され、
2013511054.tif 000068
2013511054.tif 000069
における格子ポイントの個数とし、整数格子
2013511054.tif 000070
にとって、
2013511054.tif 000071
が次のような再帰関係を有し、
2013511054.tif 000072
エネルギー半径がKであるピラミッド面における整数格子ポイント
2013511054.tif 000073
に対して、[0,1,….,N(L,K)-1]におけるある数bで標識し、bを該格子ポイントの標記番号と称する。標記番号bを解するステップは次のようであり、
ステップ1.1、b=0、i=1、k=K、l=Lとし、上記の再帰数式によってN(m,n),(m<=L,n<=K)を計算する。
2013511054.tif 000074
を定義し、
ステップ1.2、yi=0であると、b=b+0であり、
2013511054.tif 000075
|yi|>1であると、
2013511054.tif 000076
ステップ1.3、
2013511054.tif 000077
l=l-1、i=i+1、このときk=0であると、捜索を停止し、bがYの標記番号であり、ではないと、ステップ1.2)を続く。
【００６７】
ステップ2、すべてのピラミッド面における格子ポイントを統一に番号標記する。
それぞれのピラミッド面の格子ポイント数と各の格子ポイントがそれぞれ自身ピラミッド面における標記番号によって各の格子ポイントがピラミッド面全体における標記番号を計算し、
2013511054.tif 000078
その中、kkが偶数である。このときのindex_b(j,m)はD8格子ポイント
2013511054.tif 000079
がコードブックにおけるインデックスである。つまり、符号化サブバンドjにおいて第m個の8次元ベクトルのインデックスである。
【００６８】
ステップ107e、ステップ107a〜107dを繰り返し、すべての符号化ビットが0より大きい符号化サブバンドのそれぞれの8次元ベクトルはいずれもインデックスの生成を完成するまで、ステップ109に転入する。
【００６９】
ステップ108、高ビット符号化サブバンドに対して球格子ベクトル計量化方法で計量化し、このとき、サブバンドjに割り当てられたビット数は5<=region_bit(j)<=9を満たし、
ここで同様にD8格に基づく8次元格子ベクトル計量化を用いる。
【００７０】
ステップ108a、符号化サブバンドjにおいて単一の周波数領域係数に割り当られたビット数region_bit(j)によって該符号化サブバンドの正規化した後の第m個の計量化しようとするベクトル
2013511054.tif 000080
に次のようなエネルギー標準化を行い、
2013511054.tif 000081
2013511054.tif 000082
は符号化サブバンドにおいて単一の周波数領域係数のビット割り当て数が
2013511054.tif 000083
である際のエネルギーのスケーリング因子を表し、表3によってそれらの対応関係を調べることができる。
【００７１】
表3球格子ベクトル計量化のビット割り当て数とエネルギーのスケーリング因子の対応関係
2013511054.tif 000084
【００７２】
ステップ108b、D8格子ポイントのインデックスベクトルを生成する。
符号化サブバンドjにおいてエネルギーのスケーリングを行った後の第m個の計量化しようとするベクトル
2013511054.tif 000085
をD8の格子ポイント
2013511054.tif 000086
にマッピングし、
2013511054.tif 000087
は零ベクトルであるかどうか、即ちその各のコンポーネントがいずれも零であるかどうかを判断し、すべて零であると、零ベクトル条件を満たすことと称し、ではないと、零ベクトル条件を満たさないことと称する。
【００７３】
零ベクトル条件を満たすと、インデックスベクトルは以下のインデックスベクトル生成数式によって
2013511054.tif 000088
を取得することができ、
このときのD8格子ポイント
2013511054.tif 000089
のインデックスベクトルkを出力し、そのうちGがD8格子ポイントの生成行列であり、形式が以下の通りであり、
2013511054.tif 000090
零ベクトル条件を満足しないと、零ベクトル条件
2013511054.tif 000091
が確立されるまで、ベクトル
2013511054.tif 000092
の値は2を割って、且つ
2013511054.tif 000093
自分の小倍数値をwにバックアップし、次に、減らした後のベクトル
2013511054.tif 000094
にバックアップした小倍数値wを足し、さらに、D8格子ポイントに計量化し、零ベクトル条件を満たすかどうかを判断し、零ベクトル条件を満足しないと、インデックスベクトルの計算数式によって最も近い零ベクトル条件を満たすD8格子ポイントのインデックスベクトルkを取得し、ではないと、ベクトル
2013511054.tif 000095
にバックアップした小倍数値wを増加し、次に、零ベクトル条件を満たすまで、さらに、D8格子ポイント
2013511054.tif 000096
に計量化し、最後にインデックスベクトルの計算数式によって最も近い零ベクトル条件を満たすD8格子ポイントのインデックスベクトルkを取得し、D8格子ポイント
2013511054.tif 000097
のインデックスベクトルkを出力する。この過程は以下の擬似コードによって説明することもでき、
2013511054.tif 000098
ステップ110に転入し、
ステップ109、低ビット符号化サブバンドのベクトル計量化インデックスを符号化し、このとき、サブバンドjに割り当てられたビット数は1<=region_bit(j)<5を満たし、
ピラミッド格子ベクトル計量化方法によって各の符号化サブバンドにおいてそれぞれの8次元ベクトルのベクトル計量化インデックスindex_b(j,k)を取得し、そのうちkは符号化サブバンドjの第k個の8次元ベクトルを表す。計量化インデックスindex_b(j,k)にハフマン符号化を行うステップは以下の通りであり、
ステップ109a、単一の周波数領域係数に割り当てられたビット数が1より大きく、5より小さいが、2を除いたすべての符号化サブバンドにおいて、それぞれのベクトルに計量化インデックスを行う自然2進符号において4位ごとに1組に分けて、それをハフマン符号化する。
【００７４】
ステップ109b、単一の周波数領域係数に割り当てられたビット数が2であるすべての符号化サブバンドにおいて、それぞれの8次元ベクトルのピラミッド格子ベクトル計量化インデックスに対して15個のビットで符号化する。15個のビットにおいて、3組の4位ビットと1組の3位ビットにそれぞれハフマン符号化を行う。
【００７５】
ステップ109c、符号化サブバンドの単一の周波数領域係数に割り当てられたビット数が1である際に、計量化インデックスが127より小さいと、計量化インデックスに対して7つのビットで符号化し、7つのビットを1組の3ビットと1組の4ビットに分け、2つの組をそれぞれハフマン符号化し、計量化インデックスが127に等しいと、その自然2進符号値が「1111 1110」であり、前の7つの1を1組の3ビットと1組の4ビットに分け、2つの組をそれぞれハフマン符号化し、計量化インデックスが128に等しいと、その自然2進符号値が「1111  1111」であり、前の7つの1を1組の3ビットと1組の4ビットに分け、2つの組をそれぞれハフマン符号化する。
【００７６】
計量化インデックスを、ハフマン符号化する方法は次のような擬似コードで説明し、
すべてのregion_bit(j)=1.5と2<region_bit(j)<5の符号化サブバンド内に、
{
nが[0，region_bit(j)×8/4−1]の範囲に、ステップサイズが1インクリメントで、次のように繰り返し、
{
index_b(j,k)を右に4*n位移動し、
index_b(j,k)の4ビット位低いtmp、つまり、tmp=and(index_b(j,k)，15)を計算し
tmpのコードブックにおけるコードワード及びそのビット消耗数を計算し、
plvq_codebook(j,k)=plvq_code(tmp+1)、
plvq_count(j,k)=plvq_bit_count(tmp+1)、
その中、plvq_codebook(j,k)とplvq_count(j,k)はそれぞれjサブバンドの第k個の8次元ベクトルのハフマン符号化コードブックにおけるコードワードとビット消耗数であり、plvq_bit_countとplvq_codeは表4によって調べられる。
【００７７】
ハフマン符号化を用いた後のビット消耗総数を更新し、
bit_used_huff_all=bit_used_huff_all+plvq_bit_count(tmp+1);
}
}
region_bit(j)=2の符号化サブバンド内に、
{
nが[0，region_bit(j)×8/4−2]の範囲に、ステップサイズが1であるように逓増し、次のように繰り返し、
{
index_b(j,k)を右に4*n位移動し、
index_b(j,k)の4ビット位低いtmp、つまり、tmp=and(index_b(j,k)，15) を計算し、
tmpのコードブックにおけるコードワード及びそのビット消耗数を計算し、
plvq_count(j,k)=plvq_bit_count(tmp+1)、
plvq_codebook(j,k)=plvq_code(tmp+1)、
その中、plvq_count(j,k)とplvq_codebook(j,k)はそれぞれjサブバンド第k個の8次元ベクトルのハフマンビット消耗数とコードワードであり、plvq_bit_countとplvq_codeは表4によって調べる。
ハフマン符号化を用いた後のビット消耗総数を更新し、
bit_used_huff_all=bit_used_huff_all+plvq_bit_count(tmp+1);
}
{
以下で、3ビットを処理する場合、
index_b(j,k)を右に[region_bit(j)×8/4−2]*4位移動した後に、
index_b(j,k)の3ビット位低いtmp、つまり、tmp=and(index_b(j,k)，7) を計算し、
tmpのコードブックにおけるコードワード及びそのビット消耗を計算し、
plvq_count(j,k)=plvq_bit_count_r2_3(tmp+1)、
plvq_codebook(j,k)=plvq_code_r2_3(tmp+1)、
その中、plvq_count(j,k)とplvq_codebook(j,k)はそれぞれjサブバンド第k個の8次元ベクトルのハフマンビット消耗数とコードワードであり、plvq_bit_count_r2_3とplvq_code_r2_3は表5によって調べる。
【００７８】
ハフマン符号化を用いた後のビット消耗総数を更新し、
bit_used_huff_all=bit_used_huff_all+plvq_bit_count(tmp+1);
}
}
region_bit(j)=1の符号化サブバンド内に、
{
index_b(j,k)<127であると、
{
{
index_b(j,k)の4ビット位低いtmp、つまり、tmp=and(index_b(j,k)，15) を計算し、
tmpのコードブックにおけるコードワード及びそのビット消耗を計算し、
plvq_count(j,k)=plvq_bit_count_r1_4(tmp+1)、
plvq_codebook(j,k)=plvq_code_r1_4(tmp+1)、
その中、plvq_count(j,k)とplvq_codebook(j,k)はそれぞれjサブバンド第k個の8次元ベクトルのハフマンビット消耗数とコードワードであり、plvq_bit_count_r1_4とplvq_code_r1_4は表6によって調べる。
【００７９】
ハフマンを用いた後のビット消耗総数を更新し、
bit_used_huff_all=bit_used_huff_all+plvq_bit_count(tmp+1);
}
{
以下で、3ビットを処理する場合、
index_b(j,k) を右に4位移動し、
index_b(j,k)の3ビット位低いtmp、つまり、tmp=and(index_b(j,k)，7) を計算し
tmpのコードブックにおけるコードワード及びそのビット消耗を計算し、
plvq_count(j,k)=plvq_bit_count_r1_3(tmp+1)、
plvq_codebook(j,k)=plvq_code_r1_3(tmp+1)、
その中、plvq_count(j,k)とplvq_codebook(j,k)はそれぞれjサブバンド第k個の8次元ベクトルのハフマンビット消耗数とコードワードであり、コードブックplvq_bit_count_r1_3とplvq_code_r1_3は表7によって調べる。
ハフマンを用いた後のビット消耗総数を更新し、
bit_used_huff_all=bit_used_huff_all+plvq_bit_count(tmp+1);
}
}
index_b(j,k)=127であると、
{  そのバイナリ値が「1111  1110」であり、
前の3つの「1」と後の4つの「1」に対してそれぞれ表7と表6のハフマンコード表を調べ、計算方法が前のindex_b(j,k)<127での場合と同様である。
ハフマンを用いた後のビット消耗総数を更新し、合計8つのビットを必要とする。
}
index_b(j,k)=128であると、
{  そのバイナリ値が「1111  1111」であり、
前の3つの「1」と後の4つの「1」に対してそれぞれ表7と表6のハフマンコード表を調べ、計算方法が前のindex_b(j,k)<127での場合と同様である。
ハフマンを用いた後のビット消耗総数を更新し、合計8つのビットを必要とする
}
}
【００８０】
表4ピラミッドベクトル計量化ハフマンコード表
2013511054.tif 000099
【００８１】
表5ピラミッドベクトル計量化ハフマンコード表
2013511054.tif 000100
【００８２】
表6ピラミッドベクトル計量化ハフマンコード表
2013511054.tif 000101
【００８３】
表7ピラミッドベクトル計量化ハフマンコード表
2013511054.tif 000102
【００８４】
ステップ109d、ハフマン符号化がビットを節約するかどうかを判断する。
すべての低ビット符号化サブバンドの集合をCとし、Cに属するすべての符号化サブバンドの8次元ベクトルの計量化ベクトルインデックスがハフマン符号化を行った後の消耗ビットの総数
2013511054.tif 000103
を計算する。
2013511054.tif 000104
とCにおけるすべての符号化サブバンドの割り当てビット数の総数
2013511054.tif 000105
であると、ハフマン符号化後の計量化ベクトルインデックスを伝送するとともに、ハフマン符号化フラグFlag_huff_PLVQを1とし、ではないと、直接に計量化ベクトルインデックスを自然符号化し、ハフマン符号化フラグFlag_huff_PLVQを0とする。
【００８５】
ステップ109e、ビット割り当て数の修正。
ハフマン符号化フラグFlag_huff_PLVQが0であると、符号化サブバンドのビット割り当てを修正しない。ハフマン符号化フラグFlag_huff_PLVQが1であると、ハフマン符号化が節約したビットによって符号化サブバンドのビット割り当てを修正する。
【００８６】
図2に示すように、ビット割り当ての修正フローは具体的に次のようなステップを含み、
ステップ109f、ハフマン符号化が節約したビット数を計算し、count=0とし、
2013511054.tif 000106
ステップ109g、diff_huffが零より大きいと、各rk(j)（j=0,…,L−1）において最大値rk(jk)を調べ、数式で、
2013511054.tif 000107
に表し、
ステップ109h、region_bit(jk)+1が9の以下であるかどうかを判断し、YESであると、ステップ109iを実行し、NOであると、jkが対応する符号化サブバンドの重要性を最低（例えばrk(jk)=−100とし）に調整し、該符号化サブバンドのビット割り当て数を修正する必要がないことを表わし、ステップ109gにジャンプする。
【００８７】
ステップ109i、diff_huff−(region_bit(jk)+1)×BandWidth(jk)が0の以上であるかどうかを判断し、0の以上であると、ステップ109jを実行し、即ち符号化サブバンドjkのビット割り当て数
2013511054.tif 000108
を修正し、サブバンドの重要性rk(jk)の値を下げ、ビット割り当て修正反復回数をcount=count+1とし、符号化サブバンドjkにベクトル計量化とハフマン符号化を改めて行い、最後にdiff_huffの値を更新し、ではないと、ビット割り当て修正フローが終了する。
【００８８】
ステップ109j、ビット割り当ての修正過程中に、ビット割り当て数が0である符号化サブバンドに1つのビットを割り当て、ビット割り当ての後の重要性が1低下し、ビット割り当て数が0より大きく且つ5より小さい符号化サブバンドに0.5個のビットを割り当て、ビット割り当ての後の重要性が0.5低下し、ビット割り当て数が5より大きい符号化サブバンドに1つのビットを割り当て、ビット割り当ての後の重要性が1低下する。
【００８９】
ステップ109k、ビット割り当ての修正の反復回数countがMaxcountの以下であるかどうかを判断し、以下であると、ステップ109fにジャンプし、ではないと、ビット割り当て修正フローが終了する。
【００９０】
上記Maxcountがビット割り当ての修正の反復回数の上限値であり、該値は符号化ビットストリーム及びそのサンプリングレートによって決められ、本実施例ではMaxcount=31を採用する。
【００９１】
ステップ111に転入する。
【００９２】
ステップ110、高ビット符号化サブバンドのベクトル計量化インデックスを符号化し、このとき、サブバンドjに割り当てられたビット数は5<=region_bit(j)<=9を満たす。
【００９３】
108の方法によって、符号化ビット数が5から9までの符号化サブバンドにおける8次元ベクトルを計量化した後、ベクトルインデックスk={k1,k2,k3,k4,k5,k6,k7,k8}を取得し、単一の周波数領域係数に割り当てられたビット数によってインデックスベクトルkのそれぞれのコンポーネントを直接に符号化し、該ベクトルの符号化ビットを取得する。
【００９４】
ステップ111、上記コア層ではベクトル計量化を経た周波数領域係数を逆計量化し、元のMDCTを経た後取得した周波数領域係数との差を計算し、コア層の残差信号を取得する。
【００９５】
ステップ112、コア層の残差信号を周波数領域係数と同様であるサブバンド区分を行い、コア層の符号化サブバンドの振幅エンベロープ計量化指数とコア層のビット割り当て数（即ち各region_bit(j)，j=0,…,L_core−1）によってコア層の残差信号サブバンドの振幅エンベロープ計量化指数を算出する。
【００９６】
このステップは次のようなサブステップによって実現することができ、
ステップ112a、コア層の各符号化サブバンドにおいて単一の周波数領域係数に割り当てられたビット数region_bit(j)、j=0,…,L_core−1によって、コア層の残差信号振幅エンベロープ計量化指数の修正値diff(region_bit(j))、j=0,…,L_core−1を計算して取得し、
その中、region_bit(j)=1，1.5，2，2.5，3，3.5，4，4.5，5，6，7，8，j=0,…,L_core−1、振幅エンベロープ計量化指数の修正値は以下の規則に従って設置されることができ、
2013511054.tif 000109
2013511054.tif 000110
である際に、diff(region_bit(j))はregion_bit(j)値の増加に従って減ってない。
【００９７】
よりよい符号化復号化の効果を取得するために、各ビット割り当て数（region_bit）で算出されたサブバンドの振幅エンベロープ計量化指数と直接に残差信号から算出されたサブバンドの振幅エンベロープ計量化指数の差値を統計し、概率が最高である振幅エンベロープ計量化指数の修正値を取得し、表8に示すように、
2013511054.tif 000111
表8
【００９８】
ステップ112b、コア層において符号化サブバンドjの振幅エンベロープ計量化指数と表8の中の計量化指数修正値によってコア層の残差信号の第j個のサブバンドの振幅エンベロープ計量化指数を算出し、
2013511054.tif 000112
その中、
2013511054.tif 000113
はコア層には符号化サブバンドjの振幅エンベロープ計量化指数である。
【００９９】
注意する必要なのは、コア層にはある符号化サブバンドのビット割り当て数が0であると、コア層の残差信号の符号化サブバンド振幅エンベロープを修正する必要がなく、このとき、コア層の残差信号サブバンド振幅エンベロープ値とコア層の符号化サブバンド振幅エンベロープ値が同様であることである。
【０１００】
また、コア層ではある符号化サブバンドビットの割り当て数がregion_bit(j)=9である際に、コア層の残差信号の第j個の符号化サブバンドの計量化振幅エンベロープ値を零とする。
【０１０１】
ステップ113、拡張層において各符号化サブバンドにビット割り当てを行い、
拡張層の符号化信号はコア層の残差信号とコア層周波数範囲以上のMDCT係数からなる。拡張層サブバンドの区分は表1によって決められる。サブバンド0,…,L_core−1における符号化信号がコア層の残差信号であり、L_core,…,L−1における符号化信号が相応のサブバンドにおけるMDCT係数である。
【０１０２】
算出したコア層の残差信号のサブバンド振幅エンベロープ計量化指数、拡張層におけるMDCT係数によって符号化サブバンドの振幅エンベロープ計量化指数及び拡張層の使用可能なビット数を構成し、コア層と同様であるビット割り当て方案で拡張層の周波数帯域全体の範囲に拡張層の各符号化サブバンド重要性の初期値を計算し、それぞれの符号化サブバンドをビット割り当てする。
【０１０３】
本実施例において、拡張層の周波数帯域の範囲が0〜13.6kHzである。オーディオストリームの総ビットレートが64kbpsであり、コア層のビットレートが32kbpsであると、拡張層の最大ビットレートが64kbpsである。コア層ビットレートと拡張層の最大ビットレートによって拡張層において総の使用可能なビット数を算出し、次に、ビットが完全に消耗するまでビット割り当てする。
【０１０４】
ステップ114、拡張層の各符号化サブバンドの振幅エンベロープ計量化指数と相応のビット割り当て数によって拡張層の符号化信号に正規化、ベクトル計量化と符号化を行い、符号化信号の符号化ビットを取得する。その中、拡張層では符号化信号のベクトル構成、ベクトル計量化方法及び符号化方法はそれぞれコア層において周波数領域係数のベクトル構成、ベクトル計量化方法及び符号化方法と同様である。
【０１０５】
ステップ115、図3aに示すように、次のような方式で階層的符号化ストリームを構造し、まず、コア層のサイド情報を次のような順序に従ってビットストリームマルチプレクサーMUXに書き込み、Flag_huff_rms、Flag_huff_PLVQ_core及びcountであり、次に、コア層の符号化サブバンドの振幅エンベロープ符号化ビットをMUXに書き込み、次に、コア層の周波数領域係数の符号化ビットをMUXに書き込み、次に、拡張層のベクトル符号化のハフマン符号化フラグFlag_huff_PLVQ_extと拡張層の反復回数count_extをMUXに書き込み、次に、拡張層ではMDCT係数からなる符号化サブバンド（L_core,…,L−1）の振幅エンベロープ符号化ビットをMUXに書き込み、次に、拡張層の符号化信号の符号化ビットをMUXに書き込み、最後に、上記順序に従って書き上げた階層的ストリームを復号化側に伝送し、
その中、拡張層の符号化信号の符号化ビットの書き込み順序を各符号化サブバンド重要性の初期値に従ってソートする。即ち重要性の初期値が大きい符号化サブバンドの符号化ビットを優先的にストリームに書き込み、同様の重要性を有する符号化サブバンドに対して、低周波符号化サブバンドを優先にする。
【０１０６】
拡張層における残差信号の振幅エンベロープはコア層の振幅エンベロープとビット割り当て数により算出したため、復号化側に伝送する必要がない。このように、コア層の帯域幅の符号化精度を増加するだけでなく、ビットを加えて残差信号の振幅エンベロープ値を伝送する必要がない。
【０１０７】
ステップ116、ビットレートの大きさによってビットレート層を構造する。
要求の伝送するビットレートによって、ビットストリームマルチプレクサーの後部に不必要なビットを取り除いた後、ビットレート要求を満たすビット数を復号化側に伝送する。即ち、符号化サブバンドの重要性が小さいから大きいまでの順序に従って不必要なビットを取り除く。
【０１０８】
本実施例において、符号化周波数帯域の範囲が0〜13.6kHzであり、最大のビットレートが64kbpsであり、ビットレート階層の方法は以下の通りであり、
符号化周波数帯域の範囲0〜6.4kHz内のMDCT周波数領域係数をコア層に区分し、コア層が対応する最大ビットレートが32kbpsで、L0層とし、拡張層の符号化周波数帯域の範囲が0〜13.6kHzで、その最大ビットレートが64kbpsで、L1_5層とし、
復号化側に伝送する前に、取り除いたビット数の多少によって、ビットレートを、36kbpsに対応するL1_1層、40kbpsに対応するL1_2層、48kbpsに対応するL1_3層、56kbpsに対応するL1_4層及び64kbpsに対応するL1_5層に区分することができる。
【０１０９】
図10は周波数帯域の範囲による階層とビットレートによる階層の関係を表す。
【０１１０】
図3は本発明の第1の実施例における強化型階層的オーディオ符号化システムの構成模式図であり、図3に示すように、該システムは、MDCTユニット301、振幅エンベロープ計算ユニット302、振幅エンベロープ計量化と符号化ユニット303、コア層ビット割り当てユニット304、コア層の周波数領域係数ベクトル計量化と符号化ユニット305、拡張層の符号化信号生成ユニット306、残差信号振幅エンベロープ生成ユニット307、拡張層ビット割り当てユニット308、拡張層の符号化信号ベクトル計量化と符号化ユニット309、ビットストリームマルチプレクサー（MUX）310を含み、
MDCTユニットは、入力したオーディオストリームにMDCTを行い、周波数領域係数を生成するように設置され、
振幅エンベロープ計算ユニットは、MDCTユニットが出力した周波数領域係数をサブバンド区分し、各符号化サブバンドの周波数領域の振幅エンベロープ値を計算する。振幅エンベロープが対応するサブバンド位置によって、コア層の振幅エンベロープと拡張層の振幅エンベロープに区分してもよいように設置され、
振幅エンベロープ計量化と符号化ユニットは、振幅エンベロープ計算ユニットが出力した各符号化サブバンドの振幅エンベロープ値に計量化と符号化を行い、サブバンド振幅エンベロープの計量化指数と振幅エンベロープ計量化指数の符号化ビットを生成するように設置され、
コア層ビット割り当てユニットは、振幅エンベロープ計量化と符号化ユニットが出力したサブバンド振幅エンベロープの計量化指数によって各符号化サブバンド重要性の初期値を計算し、各符号化サブバンドの重要性によってコア層をビット割り当てするように設置され、
コア層の周波数領域係数ベクトル計量化と符号化ユニットは、計量化した後の各符号化サブバンドの振幅エンベロープ値を用いて該符号化サブバンドの中の周波数領域係数を正規化処理を行い、次に、符号化する必要がある周波数領域係数にベクトル計量化と符号化を行い、周波数領域係数のベクトル計量化値と符号化ビットを生成するように設置され、
拡張層の符号化信号生成ユニットは、上記のベクトル計量化を経た周波数領域係数を逆計量化し、MDCTユニットが出力したコア層周波数帯域範囲以内の周波数領域係数との差を計算し、コア層の残差信号を取得するように設置される。コア層の残差信号とMDCTユニットが出力したコア層範囲以上の周波数領域係数が拡張層の符号化信号を構成する。
【０１１１】
残差信号振幅エンベロープ生成ユニットは、残差信号に周波数領域係数と同様のサブバンド区分を行い、コア層の各符号化サブバンドの振幅エンベロープ計量化指数とビット割り当て数によって残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を算出するように設置され、
拡張層ビット割り当てユニットは、拡張層では各符号化サブバンドをビット割り当てし、拡張層の各符号化サブバンドのビット割り当て数を生成するように設置され、
符号化信号ベクトル計量化と符号化ユニットは、拡張層の符号化信号サブバンドの振幅エンベロープ計量化指数と相応のビット割り当て数によって符号化信号に正規化、ベクトル計量化及び符号化を行って、符号化信号の符号化ビットを取得するように設置され、
ビットストリームマルチプレクサーは、サイド情報、符号化サブバンド振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット、拡張層の符号化信号の符号化ビットを復号化側に伝送するように設置される。
【０１１２】
図3における各ユニット（モジュール）の具体的な機能は図1に示すフローの説明を詳しく参照する。
【０１１３】
図4は本発明の第1の実施例における強化型階層的オーディオ復号化方法のフローチャートである。図4に示すように、該方法は以下のステップを含む。
【０１１４】
ステップ401、符号化側から伝送してきた階層的ストリームにおいて（即ちビットストリームデマルチプレクサDeMUXから）1つのフレームの符号化ビットを抽出し、
符号化ビットを抽出した後、まず、サイド情報を復号化し、次に、Flag_huff_rmsの値によって該フレームにおいてコア層の各振幅エンベロープ符号化ビットをハフマン復号化し或いは直接に復号化し、コア層の各符号化サブバンドの振幅エンベロープ計量化指数Thq(j)，j=0,…,L_core−1を取得する。
【０１１５】
ステップ402、コア層の各符号化サブバンドの振幅エンベロープ計量化指数によってコア層の各符号化サブバンド重要性の初期値を算出し、サブバンドの重要性によってコア層の各符号化サブバンドをビット割り当てし、コア層のビット割り当て数を取得し、復号化側のビット割り当て方法は符号化側のビット割り当て方法と完全に同様である。ビット割り当て過程中に、ビット割り当てのステップサイズ及びビット割り当てした後符号化サブバンドの重要性が低下するステップサイズが変わる。  
【０１１６】
上記ビット割り当て過程を完成した後に、符号化側にコア層のビット割り当て修正回数count値と各符号化サブバンドの重要性によって符号化サブバンドに再びcount回のビット割り当てを行い、次に、ビット割り当ての全過程が終了する。
【０１１７】
ビット割り当て過程中に、ビット割り当て数が0である符号化サブバンド割り当てビットのステップサイズが1つのビットであり、ビット割り当てした後重要性が低下するステップサイズが1であり、ビット割り当て数が0より大きい且つあるしきい値より小さい符号化サブバンドに割り当てビットを追加する際のビット割り当てのステップサイズが0.5個のビットであり、ビット割り当てした後重要性が低下するステップサイズも0.5であり、ビット割り当て数が該しきい値の以上の符号化サブバンドに割り当てビットを追加する際のビット割り当てのステップサイズが1であり、ビット割り当てした後重要性が低下するステップサイズも1であり、
ステップ403、コア層のビット割り当て数と各符号化サブバンドの計量化振幅エンベロープ値を用いて、Flag_huff_PLVQ_coreによって周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、コア層の周波数領域係数を取得する。
【０１１８】
ステップ404、周波数領域係数の符号化ビットに復号化、逆計量化を行う際に、コア層符号化サブバンドビット割り当て数によってそれぞれの符号化サブバンドを低ビットサブバンドと高ビットサブバンドに分け、低ビットサブバンドと高ビットサブバンドにピラミッド格子ベクトル計量化逆計量化方法と球格子ベクトル計量化逆計量化方法をそれぞれ用いて逆計量化し、ステップ405とステップ406に転入する。
【０１１９】
ステップ405、サイド情報によって低ビット符号化サブバンドをハフマン復号化し或いは直接に自然復号化して低ビット符号化サブバンドのピラミッド格子ベクトル計量化のインデックスを取得し、すべてのピラミッド格子ベクトル計量化のインデックスに逆計量化及び逆正規化を行い、該符号化サブバンドの周波数領域係数を取得し、ステップ407に転入する。
【０１２０】
405a) Flag_huff_PLVQ=0であると、直接に復号化して低ビット符号化サブバンドjの第m個のベクトル計量化のインデックスindex_b(j,m) を取得し、Flag_huff_PLVQ=1であると、符号化サブバンドの単一の周波数領域係数のビット割り当て数は対応するハフマン符号化コードによって、低ビット符号化サブバンドjの第m個のベクトル計量化のインデックスindex_b(j,m)を取得し、
符号化サブバンドの単一の周波数領域係数に割り当てられたビット数が1である際に、計量化インデックスの自然2進符号値が「1111  111」より小さいと、自然2進符号値に従って計量化インデックスを計算し、計量化インデックスの自然2進符号値は「1111  111」に等しいと、次の位のビットを読み込み続き、次の位のビットが0であると、計量化インデックス値が127であり、次の位のビットが1であると、計量化インデックス値が128である。
【０１２１】
405b)該計量化インデックスのピラミッド格子ベクトル逆計量化の過程は実際にベクトル計量化過程107の逆過程であり、逆計量化過程は以下の通りであり、
405c)ベクトル計量化インデックス所在のエネルギーピラミッド面及び該エネルギーピラミッド面での標記番号を確定し、
ピラミッド面エネルギーが2からLargeK(region_bit(j))までの中からkkを調べ、以下の不等式を満たし、
N(8,kk)<=index_b(j,m)<N(8,kk+2)，
このようなkkを見つけると、K=kkは計量化インデックスindex_b(j,m)が対応するD8格子ポイント所在のピラミッド面のエネルギーであり、b=index_b(j,m)-N(8,kk)が該D8格子ポイントが所在のピラミッド面でのインデックス標記番号であり、
このようなkkを見つけないと、計量化インデックスindex_b(j,m)が対応するD8格子ポイントのピラミッド面エネルギーK=0及びインデックス標記番号b=0であり、
405d)ピラミッド面エネルギーがKであり及びインデックス標記番号がbであるD8格子ポイントベクトルY=(y1,y2y3,y4,y5,y6,y7,y8,)を解する具体的なステップは以下の通りであり、
ステップ1、Y=(0,0,0,0,0,0,0,0)、xb=0,i=1,k=K,l=8とし、
ステップ2、b=xbであると、yi=0であり、ステップ6にジャンプし、
ステップ3、b<xb+N(l-1,k)であると、yi=0であり、ステップ5にジャンプし、
ではないと、xb=xb+N(l-1,k)であり、j=1とし、
ステップ4、b<xb+2*N(l-1,k-j)であると、
xb<=b<xb+N(l-1,k-j) であると、yi=jであり、
b>=xb+N(l-1,k-j)であると、yi=-j、xb=xb+N(l-1,k-j)であり、
ではないと、xb=xb+2*N(l-1,k-j),j=j+1であり、このテップを続き、
ステップ5、k=k-|yi|、l=l-1、i=i+1を更新し、k>0であると、ステップ2にジャンプし、
ステップ6、k>0であると、y8=k-|yi|、Y=(y1,y2,…,y8)が求めた格子ポイントである。
【０１２２】
405e)求めたD8格子ポイントにエネルギー逆標準化を行って、
2013511054.tif 000114
を取得し、
その中、
2013511054.tif 000115
であり、
2013511054.tif 000116
はスケーリング因子であり、表2から調べることができる。
【０１２３】
2013511054.tif 000117
に逆正規化処理を行い、復号化側に回復した符号化サブバンドjの第m個のベクトルの周波数領域係数を取得し、
2013511054.tif 000118
その中、Thq(j)が第j個の符号化サブバンドの振幅エンベロープ計量化指数である。
【０１２４】
ステップ406、高ビット符号化サブバンドを直接に復号化し、高ビット符号化サブバンドのベクトル計量化インデックスを取得し、すべてのベクトル計量化インデックスに逆計量化及び逆正規化を行い、該符号化サブバンドの周波数領域係数を取得する。
【０１２５】
高ビット符号化サブバンドの符号化ビットを直接に自然復号化し、高ビット符号化サブバンドjの第m個のインデックスベクトルkを取得し、該インデックスベクトルに球格子ベクトル計量化を行う逆計量化過程は実際に計量化過程の逆過程であり、具体的なステップは以下の通りであり、
406a）x=k*Gを計算し、且つytemp=x/(2^(region_bit(j)) を計算し、その中、kがベクトル計量化のインデックスベクトルであり、
2013511054.tif 000119
は符号化サブバンドjにおいて単一の周波数領域係数のビット割り当て数を表し、GがD8格子ポイントの生成行列であり、形式が以下の通りであり、
2013511054.tif 000120
406b）y=x-f D8 (ytemp)*(2^(region_bit(j))を計算し、
406c）求めたD8格子ポイントにエネルギー逆標準化を行い、
2013511054.tif 000121
を取得し、
その中、
2013511054.tif 000122
であり、
2013511054.tif 000123
はスケーリング因子であり、表3から調べることができる。
【０１２６】
2013511054.tif 000124
に逆正規化処理を行い、復号化側に回復した符号化サブバンドjの第m個のベクトルの周波数領域係数を取得し、
2013511054.tif 000125
その中、Thq(j)が第j個の符号化サブバンドの振幅エンベロープ計量化指数である。
【０１２７】
ステップ407、コア層の各符号化サブバンドの振幅エンベロープ計量化指数とコア層のビット割り当て数を用いてコア層の残差信号のサブバンド振幅エンベロープ計量化指数を計算し、復号化側の計算方法が符号化側の計算方法と完全に同様である。
【０１２８】
Flag_huff_rmsの値によってコア層の周波数領域範囲以上の各振幅エンベロープ符号化ビットをハフマン復号化し或いは直接に復号化し、拡張層の相応の符号化サブバンドの振幅エンベロープ計量化指数Thq(j)、j=,L_core,…,L−1を取得する。
【０１２９】
ステップ408、拡張層の符号化信号はコア層の残差信号と拡張層の周波数領域係数からなり、拡張層の各符号化サブバンドの振幅エンベロープ計量化指数によって各符号化サブバンド重要性の初期値を計算し、各符号化サブバンドの重要性で拡張層の各符号化サブバンドをビット割り当てし、拡張層の各符号化サブバンドのビット割り当て数を取得し、復号化側の符号化サブバンド重要性の初期値の計算とビット割り当て方法は符号化側の符号化サブバンド重要性の初期値の計算方法とビット割り当て方法に同様である。
【０１３０】
ステップ409、拡張層の符号化信号を計算する。
拡張層のビット割り当て数で符号化信号の符号化ビットに復号化、逆計量化を行い、拡張層の各符号化サブバンドの計量化振幅エンベロープ値によって逆計量化した後のデータを逆正規化し、拡張層の符号化信号を取得する。
拡張層の復号化及び逆計量化の方法はコア層の復号化及び逆計量化の方法に同様である。
【０１３１】
このステップにおいて、各符号化サブバンド復号化の順序がそれぞれの符号化サブバンド重要性の初期値によって決められる。2つの符号化サブバンドが同様の重要性を有すると、低周波符号化サブバンドを優先的に復号化するとともに、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に復号化を停止する。
【０１３２】
例えば、符号化側から復号化側に伝送するビットレートが64kbpsであるが、ネットワーク原因により復号化側にストリームの前の48kbpsの情報だけを取得し、或いは復号化側に48kbpsの復号化だけをサポートするから、復号化側に48kbpsに復号化する際に復号化を停止する。
【０１３３】
ステップ410、拡張層が復号化して取得した符号化信号を周波数の大きさに従って改めてソートし、同様の周波数でのコア層の周波数領域係数と拡張層の符号化信号を加えて周波数領域係数の出力値を取得する。
【０１３４】
ステップ411、符号化過程中に割り当てない符号化ビットのサブバンド或いは伝送過程中に失ったサブバンドにノイズ充填を行う。
【０１３５】
ステップ412、ノイズ充填を行った後の周波数領域係数にIMDCT（Inverse  Modified  Discrete  Cosine  Transform、修正離散コサイン逆変換）を行い、最後のオーディオ出力信号を取得する。
【０１３６】
図5は本発明の第1の実施例における強化型階層的オーディオ復号化システムの構成模式図であり、図5に示すように、該システムは、ビットストリームデマルチプレクサ（DeMUX）501、コア層振幅エンベロープ復号化ユニット502、コア層ビット割り当てユニット503、コア層復号化と逆計量化ユニット504、コア層の残差信号振幅エンベロープ生成ユニット505、拡張層振幅エンベロープ復号化ユニット506、拡張層ビット割り当てユニット507、拡張層の符号化信号復号化と逆計量化ユニット508、周波数領域係数生成ユニット509、ノイズ充填ユニット510、IMDCTユニット511を含み、
ビットストリームデマルチプレクサは、振幅エンベロープ符号化ビット、周波数領域係数符号化ビット及び拡張層の符号化信号符号化ビットを出力するように設置され、
コア層振幅エンベロープ復号化ユニットは、サイド情報におけるFlag_huff_rms値によってビットストリームデマルチプレクサが出力したコア層の振幅エンベロープ符号化ビットをハフマン復号化し或いは直接に復号化し、コア層の各符号化サブバンドの振幅エンベロープ計量化指数Thq(j)、j=0,…,L_core-1を取得するように設置され、
コア層ビット割り当てユニットは、コア層振幅エンベロープ復号化ユニットが出力したコア層の各符号化サブバンドの振幅エンベロープ計量化指数によって各符号化サブバンド重要性の初期値を計算し、各符号化サブバンドの重要性によってコア層の各符号化サブバンドをビット割り当てし、コア層のビット割り当て数を取得するように設置され、
コア層復号化と逆計量化ユニットは、コア層のビット割り当て数と計量化振幅エンベロープ値を用いて、サイド情報におけるFlag_huff_PLVQ_core値によって周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、コア層の周波数領域係数を取得するように設置され、
コア層の残差信号振幅エンベロープ生成ユニットは、コア層の各符号化サブバンドの振幅エンベロープ計量化指数とコア層のビット割り当て数によってコア層の相応の符号化サブバンド残差信号の振幅エンベロープ計量化指数を計算するように設置され、
拡張層振幅エンベロープ復号化ユニットは、サイド情報におけるFlag_huff_rms値によってビットストリームデマルチプレクサが出力したコア層範囲以上の振幅エンベロープ符号化ビットにハフマン復号化し或いは直接に復号化し、拡張層には相応の符号化サブバンドの振幅エンベロープ計量化指数Thq(j)、j=L_core,…,L-1を取得するように設置され、
拡張層ビット割り当てユニットは、拡張層の各符号化サブバンド符号化信号の振幅エンベロープ計量化指数によって各符号化サブバンド重要性の初期値を計算し、各符号化サブバンドの重要性で拡張層の各符号化サブバンドをビット割り当てし、拡張層のビット割り当て数を取得するように設置され、
拡張層の符号化信号復号化と逆計量化ユニットは、拡張層のビット割り当て数によって拡張層の符号化信号の符号化ビットを復号化し、拡張層の符号化信号符号化サブバンドの計量化振幅エンベロープ値によって復号化して取得したデータにベクトル逆計量化と逆正規化を行い、拡張層の符号化信号を取得するように設置され、
周波数領域係数生成ユニットは、コア層復号化と逆計量化ユニットが出力したコア層の周波数領域係数に拡張層の符号化信号復号化と逆計量化ユニットが出力した拡張層の符号化信号を加え、周波数領域係数の出力値を取得するように設置され、
ノイズ充填ユニットは、周波数領域係数生成ユニットが出力した周波数領域係数の出力値には割り当てないビットのサブバンドをノイズ充填するように設置され、
IMDCTユニットは、ノイズ充填した後の周波数領域係数にIMDCTを行い、最後のオーディオの出力信号を取得するように設置される。
【０１３７】
第2の実施例
図6は本発明の第2の実施例における拡張された階層的オーディオ符号化方法のフローチャートである。本実施例において、フレーム長さが20msで、サンプリングレートが48kHzであるオーディオストリームを例として、具体的に本発明における階層的オーディオ符号化方法を説明数する。他のフレーム長さとサンプリングレートの条件で、本発明の方法は同様に適用する。図6に示すように、該方法は、以下のステップを含み、
ステップ601、フレーム長さが20msで、サンプリングレートが48kHzであるオーディオストリームにMDCT（Modified  Discrete  Cosine  Transform，修正離散コサイン変換）を実施してNポイントの周波数領域係数を取得し、本実施例においてN=960である。
【０１３８】
このステップの具体的な実現方法はステップ101を参照することができる。
ステップ602、Nポイントの周波数領域係数を若干の非均一サブバンドに分け、各符号化サブバンドの振幅エンベロープ（振幅エンベロープと略称する）を計算する。
【０１３９】
102a、符号化する必要がある周波数帯域範囲内の周波数領域係数をLのサブバンド（符号化サブバンドとも言われる）に分け、
本実施例において、符号化する必要がある周波数帯域範囲が0〜20kHzであり、人間の耳の知覚特性に従って非均一サブバンド区分を行い、表9に1つの具体的な区分方式を挙げる。
【０１４０】
表9において0〜20kHz周波数帯域範囲内の周波数領域係数を36個の符号化サブバンドに区分し、つまり、L=36であり、20kHz以上の周波数領域係数を0とする。
【０１４１】
本実施例において、さらに、コア層の周波数領域範囲を区分する。表9の中の0〜15番サブバンドを選択してコア層の符号化サブバンドとして、合計L_core=16のサブバンドを有し、コア層の周波数帯域範囲が0〜6.4kHzであり、表9の中の0~27番サブバンドを選択して拡張層1の符号化サブバンドとして、合計L1=28個の符号化サブバンドを有し、拡張層1の周波数範囲が0~13.6kHzであり、表9の中の0~35番サブバンドを選択して拡張層2の符号化サブバンドとして、合計L=36個のサブバンドであり、拡張層2周波数範囲が0~20kHzである。
【０１４２】
表9  実施例2における符号化サブバンド
2013511054.tif 000126
【０１４３】
各符号化サブバンドの振幅エンベロープを計算する具体方法はステップ102を参照することができる。
【０１４４】
ステップ603、各符号化サブバンドの振幅エンベロープ値に計量化と符号化を行い、各符号化サブバンドの振幅エンベロープ計量化指数と振幅エンベロープの符号化ビットを取得し、振幅エンベロープの符号化ビットをMUXに伝送する必要がある。
このステップの具体的な実現方法はステップ103を参照することができる。
【０１４５】
ステップ604、ビットレート歪みの理論と符号化サブバンド振幅エンベロープ情報によって各符号化サブバンド重要性の初期値を計算し、コア層の各符号化サブバンドの重要性によってコア層をビット割り当てする。
このステップの具体的な実現方法はステップ104を参照することができる。
【０１４６】
ステップ605、コア層の各符号化サブバンドの計量化振幅エンベロープ値
2013511054.tif 000127
によって該符号化サブバンドにおける各周波数領域係数を正規化計算し、次に、正規化の周波数領域係数を組分け、若干のベクトルを組成し、上記ベクトルにベクトル計量化と符号化を行い、周波数領域係数のベクトル計量化値と符号化ビットを生成し、周波数領域係数の符号化ビットをMUXに伝送する必要がある。
このステップの具体的な実現方法はステップ105〜110を参照することができる。
【０１４７】
ステップ606、上記のベクトル計量化を経たコア層の周波数領域係数を逆計量化し、元のMDCTを経た後取得した周波数領域係数との差を計算し、コア層の残差信号を取得し、残差信号1とし、残差信号1と拡張層1の周波数領域係数により拡張層1の符号化信号を構成し、同様に、拡張層k−1の符号化信号とベクトル計量化を経た拡張層k−1の符号化信号の逆計量化値との差を計算し、拡張層k−1の残差信号を取得し、残差信号kとし、残差信号kと拡張層kの周波数領域係数により拡張層kの符号化信号を構成する。
【０１４８】
ステップ607、残差信号kに拡張層k−1の符号化信号と同様のサブバンド区分を行い、残差信号kのサブバンド振幅エンベロープ計量化指数を計算する。
【０１４９】
コア層のサブバンド振幅エンベロープ計量化指数とコア層のビット割り当て数によって残差信号1の符号化サブバンド振幅エンベロープ計量化指数を算出できる。同様に、高拡張層における残差信号の符号化サブバンド振幅エンベロープ計量化指数は低拡張層の残差信号の符号化サブバンドのエンベロープ計量化指数と低拡張層のビット割り当て数によって計算でき、つまり、拡張層k（k>1）における残差信号kのサブバンドエンベロープ計量化指数は拡張層k−1の符号化信号の符号化サブバンドエンベロープ計量化指数と相応の修正値によって算出された。
このステップの具体的な実現方法はステップ112を参照することができる。
【０１５０】
ステップ608、各拡張層において各符号化サブバンドにビット割り当て（即ち各拡張層の符号化信号の各符号化サブバンドにビット割り当てを行う）を行う。
【０１５１】
算出した拡張層の符号化信号の振幅エンベロープ計量化指数によって、コア層と同様のビット割り当て方案を採用して各拡張層には各符号化サブバンド重要性の初期値を計算し、各符号化サブバンドをビット割り当てし、本実例においてオーディオストリームの総ビットレートが96kbpsであり、コア層のビットレートが32kbpsであり、拡張層1の最大ビットレートが64kbpsであり、拡張層2の最大ビットレートが96kbpsである。それぞれ各拡張層が提供できる符号化ビット数を計算し、次に、ビットを完全に消耗するまで、ビット割り当てを行う。各拡張層のビット割り当て方法はコア層のビット割り当て方法と同様である。
【０１５２】
ステップ609、算出した拡張層の符号化信号の符号化サブバンドの計量化振幅エンベロープ値と相応のビット割り当て数によって符号化信号に正規化、ベクトル計量化と符号化を行い、符号化信号の符号化ビットを取得する。その中、各拡張層の符号化信号のベクトル構成、ベクトル計量化方法及び符号化方法はいずれもそれぞれコア層には周波数領域係数のベクトル構成、ベクトル計量化方法及び符号化方法と同様である。
【０１５３】
ステップ610、図6aに示すように、次のような方法によって階層的符号化ストリームを構造し、まず、コア層のサイド情報を次のような順序に従ってビットストリームマルチプレクサーMUXに書き込み、Flag_huff_rms、Flag_huff_PLVQ_core及びcountであり、次に、コア層の符号化サブバンドの振幅エンベロープ符号化ビットをMUXに書き込み、次に、コア層の周波数領域係数の符号化ビットをMUXに書き込み、次に、各拡張層の順序に従って拡張層におけるFlag_huff_PLVQとcountをMUXにに書き込んだ後に、拡張層の周波数領域係数の符号化サブバンド振幅エンベロープ符号化ビットをMUXに書き込み、次に、符号化信号の符号化ビットをMUXに書き込み、最後に上記順序に従って書き上げた階層的ストリームを復号化側に伝送し、
その中、符号化信号の符号化ビットの書き込み順序は拡張層が低いから高いまでの順序に従ってそれぞれの拡張層の符号化ビットをストリームに書き込み、即ち、先に第k−1つの拡張層のサイド情報、周波数領域係数の符号化サブバンドの振幅エンベロープ符号化ビット及び符号化信号符号化ビットを書き上げた後さらに第k個の拡張層のサイド情報、周波数領域係数の符号化サブバンドの振幅エンベロープ符号化ビット及び符号化信号符号化ビットを書き込む。各拡張層において、符号化信号符号化ビットを書き込む順序は各サブバンドの初期重要性によってソートし、即ち初期重要性が大きいサブバンドの符号化信号の符号化ビットを優先的にストリームに書き込む。
【０１５４】
ステップ611、ビットレートの大きさによってビットレート層を構造する。
要求の伝送するビットレートによってビットストリームマルチプレクサーの後に不必要なビットを取り除いた後、ビットレート要求を満たすビット数を復号化側に伝送する。即ち符号化サブバンドの重要性が小さいから大きいまでの順序に従って不必要なビットを取り除く。
【０１５５】
本実施例において、符号化周波数帯域範囲が0〜20kHzであり、最大ビットレートが96kbpsであり、ビットレート階層による方法は以下の通りであり、
符号化周波数帯域範囲0〜6.4kHz内のMDCT周波数領域係数をコア層に区分し、コア層が対応する最大ビットレートが32kbpsであり、L0層とし、
拡張層1の符号化周波数帯域の範囲が0〜13.6kHzであり、その最大ビットレートが64kbpsであり、L1_5層とし、拡張層2の符号化周波数帯域範囲が0〜20kHzであり、その最大ビットレートが96kbpsであり、L2_2層とする。
【０１５６】
復号化側に伝送する前に、取り除いたビット数の多少によってL1_5層とL2_2層との間を80kbpsに対応する L2_1層及び96kbpsに対応するL2_2層に区分する。
【０１５７】
図10は周波数帯域範囲による階層とビットレートによる階層の関係を表す。
【０１５８】
図7は本発明の第2の実施例における拡張された階層的オーディオ符号化システムの構成模式図であり、図7に示すように、該システムは、MDCTユニット701、振幅エンベロープ計算ユニット702、振幅エンベロープ計量化と符号化ユニット703、コア層ビット割り当てユニット704、周波数領域係数ベクトル計量化と符号化ユニット705、拡張層の符号化信号生成ユニット、残差信号振幅エンベロープ生成ユニット、拡張層ビット割り当てユニット、符号化信号ベクトル計量化と符号化ユニット、マルチプレクサー706を含む。
【０１５９】
図7において各拡張層との間のデータ交互関係を明らかに説明するために、拡張層の符号化信号生成ユニットを、拡張層の符号化信号生成ユニット1から拡張層の符号化信号生成ユニットKまでにさらに区分し、残差信号振幅エンベロープ生成ユニットを、残差信号振幅エンベロープ生成ユニット1から残差信号振幅エンベロープ生成ユニットKまでにさらに区分し、拡張層ビット割り当てユニットを、拡張層ビット割り当てユニット1から拡張層ビット割り当てユニットKまでにさらに区分し、符号化信号ベクトル計量化と符号化ユニットを、符号化信号ベクトル計量化と符号化ユニット1から符号化信号ベクトル計量化と符号化ユニットKまでにさらに区分する。
【０１６０】
MDCTユニットは、入力したオーディオストリームにMDCTを行い、周波数領域係数を生成するように設置され、
振幅エンベロープ計算ユニットは、MDCTユニットが出力した周波数領域係数にサブバンド区分を行い、各符号化サブバンドの周波数領域エンベロープ値を計算するように設置され、
振幅エンベロープ計量化と符号化ユニットは、振幅エンベロープ計算ユニットが出力した各符号化サブバンドの振幅エンベロープ値に計量化と符号化を行い、各符号化サブバンドの振幅エンベロープ計量化指数と振幅エンベロープの符号化ビットを生成するように設置され、
コア層ビット割り当てユニットは、振幅エンベロープ計量化と符号化ユニットが出力したコア層の各符号化サブバンドの振幅エンベロープ計量化指数によってコア層をビット割り当てするように設置され、
周波数領域係数ベクトル計量化と符号化ユニットは、コア層の各符号化サブバンドの計量化振幅エンベロープ値によって該サブバンドにおける周波数領域係数を正規化処理し、次に、符号化する必要がある周波数領域係数にベクトル計量化と符号化を行い、コア層の周波数領域係数のベクトル計量化値と符号化ビットを生成するように設置され、
拡張層の符号化信号生成ユニット1は、周波数領域係数ベクトル計量化と符号化ユニットが出力したベクトル計量化を経た周波数領域係数を逆計量化し、MDCTユニットが出力した周波数領域係数との差を計算し、コア層の残差信号（残差信号1とし）を取得し、残差信号1と拡張層1の周波数領域係数により拡張層1の符号化信号（符号化信号1とし）を構成するように設置され、
拡張層の符号化信号生成ユニットi+1は、拡張層iの符号化信号ベクトル計量化と符号化ユニットiが出力したベクトル計量化を経た符号化信号Iを逆計量化し、それは拡張層の符号化信号生成ユニットiが出力したベクトル計量化を経てない符号化信号iとの差を計算し、拡張層iの残差信号（残差信号i+1とし）を取得し、残差信号i+1と拡張層i+1の周波数領域係数により拡張層i+1の符号化信号（符号化信号i+1とし）を構成し、その中、i=1,…,K−1、Kが拡張層個数であるように設置される。
【０１６１】
残差信号振幅エンベロープ生成ユニット1は、コア層の残差信号にコア層の周波数領域係数と同様のサブバンド区分を行い、コア層の符号化サブバンドの振幅エンベロープ計量化指数とコア層のビット割り当て数によってコア層の残差信号（残差信号1）の符号化サブバンドの振幅エンベロープ計量化指数を算出するように設置され、
残差信号振幅エンベロープ生成ユニットi+1は、拡張層iの符号化サブバンドの振幅エンベロープ計量化指数とビット割り当て数によって拡張層iの残差信号（残差信号i+1）の符号化サブバンド振幅エンベロープ計量化指数を算出し、その中、i=1,…,K−1、Kが拡張層個数であるように設置され、
拡張層ビット割り当てユニットiは、拡張層iにおいて各符号化サブバンドをビット割り当てし、拡張層iの各符号化サブバンドのビット割り当て数を生成し、その中、i=1,…,Kであり、Kが拡張層個数であるように設置され、
符号化信号ベクトル計量化と符号化ユニットiは、拡張層iの符号化信号の符号化サブバンド計量化振幅エンベロープ値と相応のビット割り当て数によって符号化信号に正規化、ベクトル計量化及び符号化を行い、符号化信号iの符号化ビットを取得し、その中、i=1,…,Kであり、Kが拡張層個数であるように設置され、
マルチプレクサーは、サイド情報、周波数領域係数の各符号化サブバンドの振幅エンベロープ符号化ビット、コア層の周波数領域係数の符号化ビット、各拡張層的サイド情報及び符号化信号の符号化ビットを復号化側に伝送するように設置される。
【０１６２】
図8は本発明の第2の実施例における拡張された階層的オーディオ復号化方法のフローチャートである。図8に示すように、該方法は以下のステップを含み、
ステップ801、符号化側から伝送してきた階層的ストリームにおいて（即ちデマルチプレクサDeMUXから）1つのフレームの符号化ビットを抽出し、
符号化ビットを抽出した後、まず、サイド情報を復号化し、次に、Flag_huff_rmsの値によって該フレームにおける各振幅エンベロープ符号化ビットをハフマン復号化し或いは直接に復号化し、コア層の各符号化サブバンドの振幅エンベロープ計量化指数Thq(j)、j=0,…,L_core−1を取得する。
【０１６３】
ステップ802、コア層の各符号化サブバンドの振幅エンベロープ計量化指数によってコア層の各符号化サブバンド重要性の初期値を算出し、サブバンド重要性によってコア層の各符号化サブバンドをビット割り当てし、コア層のビット割り当て数（即ちRegion_bit(j)、j=0,…,L_core−1）を取得し、復号化側のビット割り当て方法は符号化側のビット割り当て方法と完全に同様である。ビット割り当て過程中に、ビット割り当てのステップサイズ及びビット割り当てした後符号化サブバンドの重要性が低下するステップサイズが変わる。
【０１６４】
上記ビット割り当て過程を完成した後に、符号化側にコア層のビット割り当て修正回数count値と各符号化サブバンドの重要性によって符号化サブバンドに再びcount回のビット割り当てを行い、次に、ビット割り当ての全過程が終了する。
【０１６５】
ビット割り当て過程中に、ビット割り当て数が0である符号化サブバンド割り当てビットのステップサイズが1つのビットであり、ビット割り当てした後重要性が低下するステップサイズが1であり、ビット割り当て数が0より大きく且つあるしきい値より小さい符号化サブバンドに割り当てビットを追加する際にビット割り当てのステップサイズが0.5個のビットであり、ビット割り当てした後重要性が低下するステップサイズも0.5であり、ビット割り当て数が該しきい値の以上である符号化サブバンドに割り当てビットを追加する際にビット割り当てのステップサイズが1であり、ビット割り当てした後重要性が低下するステップサイズも1であり、
ステップ803、コア層のビット割り当て数と各符号化サブバンドの計量化振幅エンベロープ値
2013511054.tif 000128
Flag_huff_PLVQによってコア層の周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、コア層の周波数領域係数を取得する。
【０１６６】
ステップ804、コア層の各符号化サブバンドの振幅エンベロープ計量化指数とコア層のビット割り当て数によってコア層の残差信号の各符号化サブバンドの振幅エンベロープ計量化指数を計算し、復号化側の計算方法は符号化側の計算方法と完全に同様である。コア層の残差信号と拡張層1の周波数領域係数は拡張層1の符号化信号を構成する。
【０１６７】
同様に、高拡張層における残差信号の符号化サブバンド振幅エンベロープ計量化指数は、低拡張層の符号化信号の符号化サブバンドの振幅エンベロープ計量化指数と低拡張層ビット割り当て数によって算出され、即ち拡張層i-1の残差信号のサブバンドエンベロープ計量化指数は拡張層i−1の符号化信号の符号化サブバンドの振幅エンベロープ計量化指数と相応の修正値により算出された。拡張層i-1の残差信号と拡張層iの周波数領域係数は拡張層iの符号化信号を構成する。
【０１６８】
ステップ805、各拡張層の各符号化サブバンド符号化信号の振幅エンベロープ計量化指数によって各符号化サブバンドの重要性の初期値を計算し、各符号化サブバンドの重要性によって該拡張層の各符号化サブバンドをビット割り当てし、該拡張層のビット割り当て数を取得し、復号化側の符号化サブバンドの重要性の初期値の計算とビット割り当て方法は符号化側の各符号化サブバンド重要性の初期値の計算方法がビット割り当て方法と同様である。
【０１６９】
ステップ806、拡張層の符号化信号を計算する。
拡張層のビット割り当て数によって符号化信号の符号化ビットに復号化とベクトル逆計量化を行い、且つ拡張層の符号化信号の各符号化サブバンドの計量化振幅エンベロープ値によって逆計量化データを逆正規化し、拡張層の符号化信号を取得する。
【０１７０】
このステップにおいて、各拡張層の符号化信号復号化の順序は低拡張層から高拡張層までであり、同一の拡張層において各符号化サブバンドの符号化信号の復号化の順序がそれぞれの符号化サブバンド重要性の初期値によって決められる。2つの符号化サブバンドが同様の重要性を有すると、低周波符号化サブバンドを優先的に復号化するとともに、復号化されたビット数を計算し、復号化されたビット数が総ビット数要求を満たす際に復号化を停止する。
【０１７１】
ステップ807、コア層の周波数領域係数に各拡張層の符号化信号を加え、周波数領域係数の出力値を取得する。
【０１７２】
ステップ808、符号化過程中に割り当てない符号化ビットのサブバンドにノイズ充填を行う。
【０１７３】
ステップ809、ノイズ充填した後の周波数領域係数にIMDCTを行い、最後のオーディオ出力信号を取得する。
【０１７４】
図9は本発明の第2の実施例における拡張された階層的オーディオ復号化システムの構成模式図であり、図9に示すように、該システムは、ビットストリームデマルチプレクサ（DeMUX）901、振幅エンベロープ復号化ユニット902、コア層ビット割り当てユニット903、コア層復号化と逆計量化ユニット904、残差信号振幅エンベロープ生成ユニット、拡張層ビット割り当てユニット、符号化信号復号化と逆計量化ユニット、周波数領域係数生成ユニット905、ノイズ充填ユニット906及びIMDCTユニット907を含む。
【０１７５】
図9には各拡張層との間のデータ交互関係を明らかに説明するために、残差信号振幅エンベロープ生成ユニットを残差信号振幅エンベロープ生成ユニット1から残差信号振幅エンベロープ生成ユニットKまでにさらに区分し、拡張層ビット割り当てユニットを拡張層ビット割り当てユニット1から拡張層ビット割り当てユニットKまでにさらに区分し、符号化信号復号化と逆計量化ユニットを符号化信号復号化と逆計量化ユニット1から符号化信号復号化と逆計量化ユニットKまでにさらに区分する。
【０１７６】
ビットストリームデマルチプレクサは、振幅エンベロープ符号化ビット、周波数領域係数符号化ビット及び各拡張層の符号化信号符号化ビットを出力するように設置され、
振幅エンベロープ復号化ユニットは、サイド情報におけるFlag_huff_rms値によってビットストリームデマルチプレクサが出力した振幅エンベロープ符号化ビットをハフマン復号化し或いは直接に復号化し、コア層の各符号化サブバンドの振幅エンベロープ計量化指数Thq(j)j=0,…,L_core−1を取得するように設置され、
コア層ビット割り当てユニットは、振幅エンベロープ復号化ユニットが出力したコア層の各符号化サブバンドの振幅エンベロープ計量化指数によってコア層の各符号化サブバンド重要性の初期値を算出し、サブバンド重要性によってコア層の各符号化サブバンドをビット割り当てし、コア層のビット割り当て数（即ちRegion_bit(j)、j=0,…,L_core−1）を取得するように設置され、
コア層復号化と逆計量化ユニットは、コア層のビット割り当て数と各符号化サブバンドの計量化振幅エンベロープ値
2013511054.tif 000129
を利用してサイド情報におけるFlag_huff_PLVQ値によって周波数領域係数の符号化ビットに復号化、逆計量化及び逆正規化処理を行い、コア層の周波数領域係数を取得するように設置され、
残差信号振幅エンベロープ生成ユニット1は、コア層の各符号化サブバンドの振幅エンベロープ計量化指数とコア層のビット割り当て数を利用してコア層の各符号化サブバンド残差信号の振幅エンベロープ計量化指数を計算するように設置され、
残差信号振幅エンベロープ生成ユニットi+1は、拡張層iにおいて各符号化サブバンドの振幅エンベロープ計量化指数と拡張層iのビット割り当て数によって拡張層iの各符号化サブバンド残差信号の振幅エンベロープ計量化指数を計算し、その中、i=1,…,K−1であり、Kが拡張層個数であるように設置され、
拡張層ビット割り当てユニットiは、拡張層iの各符号化サブバンド符号化信号の振幅エンベロープ計量化指数によって拡張層iの各符号化サブバンド重要性の初期値を計算し、拡張層iの各符号化サブバンド重要性で拡張層iの各符号化サブバンドをビット割り当てし、拡張層iのビット割り当て数を取得し、その中、i=1,…,Kであり、Kが拡張層個数であるように設置され、
符号化信号復号化と逆計量化ユニットiは、拡張層iのビット割り当て数によって符号化信号iの符号化ビットに復号化とベクトル逆計量化を行い、拡張層iの符号化信号の符号化サブバンドの計量化振幅エンベロープ値によって逆計量化データを逆正規化し、拡張層iの符号化信号を取得し、その中、i=1,…,Kであり、Kが拡張層個数であるように設置され、
周波数領域係数生成ユニットは、コア層復号化と逆計量化ユニットが出力したコア層の周波数領域係数に符号化信号復号化と逆計量化ユニットが出力した各拡張層の符号化信号を加え、周波数領域係数の出力値を取得するように設置され、
ノイズ充填ユニットは、周波数領域係数生成ユニットが出力した周波数領域係数の出力値における割り当てない符号化ビットのサブバンドにノイズ充填を行うように設置され、
IMDCTユニットは、ノイズ充填した後の周波数領域係数にIMDCTを行い、最後のオーディオの出力信号を取得するように設置される。
【０１７７】
当業者にとっては、上記方法における全部或いは一部のステップはプログラムによって関連ハードウェアの完成を指令することができ、上記プログラムはコンピュータの読み取り可能な記憶媒体、例えば、読み取り専用メモリ、ディスク或いはCD等に記憶されることができることが理解される。選択的に、上記実施例における全部或いは一部のステップは、1つ或いは複数の集積回路を用いて実現することもできる。相応的に、上記実施例における各モジュール/ユニットはハードウェアの形式で実現でき、ソフトウェア機能モジュールの形式で実現しても良い。本発明はいずれかの特定形式のハードウェアとソフトウェアとの結合に限られない。
【産業上の利用可能性】
【０１７８】
本発明が提供する階層的オーディオ符号化、復号化方法及びシステムは、コア層と拡張層において同様のサブバンド区分とビット割り当て方法を採用し、コア層振幅エンベロープ情報によって拡張層の振幅エンベロープ情報を算出し、コア層と拡張層のビット割り当てにはいずれも信号の自分の分布特性を十分に考え、コア層と拡張層との間を緊密に繋がら、且つ拡張層ストリームには残差信号の振幅エンベロープ情報を含まなく、階層的オーディオ符号化、復号化の効率を向上させるとともに、コードの利用率もを向上させる。
【図１】
2013511054.tif 000130
【図２】
2013511054.tif 000131
【図３】
2013511054.tif 000132
【図３ａ】
2013511054.tif 000133
【図４】
2013511054.tif 000134
【図５】
2013511054.tif 000135
【図６】
2013511054.tif 000136
【図６ａ】
2013511054.tif 000137
【図７】
2013511054.tif 000138
【図８】
2013511054.tif 000139
【図９】
2013511054.tif 000140
【図１０】
2013511054.tif 000141
【国際調査報告】
2013511054.tif 000142
2013511054.tif 000143
2013511054.tif 000144
2013511054.tif 000145
2013511054.tif 000146
2013511054.tif 000147