本発明の実施形態は、信号の聴覚品質を改善することのできる信号の符号化および復号化の方法および装置を提供する。
第1の態様によれば、信号符号化方法が提供される。本方法は、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定するステップであって、iは正の数であり、kは正の整数である、ステップと、全てのサブバンドの量子化エンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択するステップと、k個のサブバンドのスペクトル係数に対して、1回目の符号化操作を実行するステップと、を有する。
第1の態様に関して、第1の可能な実施方式では、k個のサブバンドのスペクトル係数に対して1回目の符号化操作を実行するステップは、k個のサブバンドのスペクトル係数を正規化して、k個のサブバンドの正規化スペクトル係数を取得するステップと、k個のサブバンドの正規化スペクトル係数を量子化して、k個のサブバンドの量子化スペクトル係数を取得するステップと、を有する。
第1の態様の第1の可能な実施方式に関して、第2の可能な実施方式では、本方法は更に、1回目の符号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるべきm個のベクトルを決定するステップであって、jは正の数であり、mは正の整数である、ステップと、m個のベクトルのスペクトル係数に対して、2回目の符号化操作を実行するステップと、を有する。
第1の態様の第2の可能な実施方式に関して、第3の可能な実施方式では、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるべきm個のベクトルを決定するステップは、残りのビット数および第2の飽和閾値jに従って、2回目の符号化が実行されるべきベクトル数mを決定するステップと、k個のサブバンドの量子化スペクトル係数に従って、候補スペクトル係数を決定するステップであって、候補スペクトル係数は、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの対応する量子化スペクトル係数を引くことによって得られるスペクトル係数を含む、ステップと、候補スペクトル係数が属するベクトルからm個のベクトルを選択するステップと、を有する。
第1の態様の第3の可能な実施方式に関して、第4の可能な実施方式では、候補スペクトル係数が属するベクトルからm個のベクトルを選択するステップは、候補スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得するステップと、ソートされたベクトルから最初のm個のベクトルを選択するステップと、を有する。ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値が全て0であるベクトルに対応し、第2群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルに対応する。
第1の態様の第4の可能な実施方式に関して、第5の可能な実施方式では、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの周波数の低い順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
第1の態様の第4の可能な実施方式に関して、第6の可能な実施方式では、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
第1の態様の第3の可能な実施方式に関して、第7の可能な実施方式では、候補スペクトル係数が属するベクトルからm個のベクトルを選択するステップは、候補スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、候補スペクトル係数の属するベクトルからm個のベクトルを選択するステップ、を有する。
第1の態様の第2の可能な実施方式〜第7の可能な実施方式のうちいずれかの可能な実施方式に関して、第8の可能な実施方式では、m個のベクトルのスペクトル係数に対して2回目の符号化操作を実行するステップは、m個のベクトルのスペクトル係数の大域的ゲインを決定するステップと、m個のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのスペクトル係数を正規化するステップと、m個のベクトルの正規化スペクトル係数を量子化するステップと、を有する。
第1の態様の第4の可能な実施方式〜第6の可能な実施方式のいずれかの可能な実施形式に関して、第9の可能な実施方式では、m個のベクトルのスペクトル係数に対して2回目の符号化操作を実行するステップは、第1群のベクトルのスペクトル係数の大域的ゲインと、第2群のベクトルのスペクトル係数の大域的ゲインとを決定するステップと、第1群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第1群のベクトルに属するベクトルのスペクトル係数を正規化するステップと、第2群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第2群のベクトルに属するベクトルのスペクトル係数を正規化するステップと、m個のベクトルの正規化スペクトル係数を量子化するステップと、を有する。
第1の態様の第3の可能な実施方式〜第9の可能な実施方式のいずれかの可能な実施形式に関して、第10の可能な実施方式では、残りのビット数および第2の飽和閾値jに従って符号化されるべきベクトル数mを決定するステップは、以下の等式
に従ってmを決定するステップを有する。Cは残りのビット数を表し、Mは、各ベクトルに含まれるスペクトル係数の数を表す。
第1の態様または第1の態様の第1の可能な実施方式〜第10の可能な実施方式のうちいずれかの可能な実施方式に関して、第11の可能な実施方式において、利用可能なビット数および第1の飽和閾値iに従って符号化されるべきサブバンド数kを決定するステップは、以下の等式
に従ってkを決定するステップを有する。Bは利用可能なビット数を表し、Lは、各サブバンドに含まれるスペクトル係数の数を表す。
第1の態様または第1の態様の第1の可能な実施方式〜第11の可能な実施方式のいずれかの可能な実施方式に関して、第12の可能な実施方式では、利用可能なビット数および第1の飽和閾値iに従って符号化されるべきサブバンド数kを決定するステップは、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定するステップ、を有する。
第2の態様によれば、信号復号化方法が提供される。本方法は、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定するステップであって、iは正の数であり、kは正の整数である、ステップと、全てのサブバンドの復号化されたエンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択するステップと、1回目の復号化操作を実行して、k個のサブバンドの量子化スペクトル係数を取得するステップと、を有する。
第2の態様に関して、第1の可能な実施方式では、本方法は更に、1回目の復号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、残りのビット数および第2の飽和閾値jに従って、2回目の復号化が実行されるべきベクトルの数mを決定するステップであって、jは正の数であり、mは正の整数である、ステップと、2回目の復号化操作を実行して、m個のベクトルの正規化スペクトル係数を取得するステップと、を有する。
第2の態様の第1の可能な実施方式に関して、第2の可能な実施方式では、本方法は更に、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係を決定するステップ、を有する。
第2の態様の第2の可能な実施方式に関して、第3の可能な実施方式では、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係を決定するステップは、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定するステップ、を有する。m個のベクトルは、第1のタイプのベクトルと1対1の対応関係にある。
第2の態様の第3の可能な実施方式に関して、第4の可能な実施方式では、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定するステップは、k個のサブバンドの量子化スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得するステップであって、ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値が全て0であるベクトルを含み、第2群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルを含む、ステップと、ソートされたベクトルから最初のm個のベクトルを、第1のタイプのベクトルとして選択するステップと、第1のタイプのベクトルとm個のベクトルとの対応関係を確立するステップと、を有する。
第2の態様の第4の可能な実施方式に関して、第5の可能な実施方式では、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの周波数の低い順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
第2の態様の第4の可能な実施方式に関して、第6の可能な実施方式では、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
第2の態様の第3の可能な実施方式に関して、第7の可能な実施方式では、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定するステップは、k個のサブバンドの量子化スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、k個のサブバンドの量子化スペクトル係数の属するベクトルから、m個のベクトルを第1のタイプのベクトルとして選択するステップと、第1のタイプのベクトルとm個のベクトルとの対応関係を確立するステップと、を有する。
第2の態様の第2の可能な実施方式〜第7の可能な実施方式のうちいずれかの実施方式に関して、第8の可能な実施方式では、本方法は更に、m個のベクトルの大域的ゲインを復号化するステップと、m個のベクトルの大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正して、m個のベクトルのスペクトル係数を取得するステップと、を有する。
第2の態様の第4の可能な実施方式〜第6の可能な実施方式のいずれかの実施方式に関して、第9の可能な実施方式では、本方法は更に、第1の大域的ゲインおよび第2の大域的ゲインを復号化するステップと、第1の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第1群のベクトルに対応するスペクトル係数を修正し、第2の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第2群のベクトルに対応するスペクトル係数を修正して、m個のベクトルのスペクトル係数を取得するステップと、を有する。
第2の態様の第8の可能な実施方式または第9の可能な実施方式に関して、第10の可能な実施方式では、本方法は更に、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とを加算して、k個のサブバンドの正規化スペクトル係数を取得するステップと、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行し、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元して、第1の周波数バンドのスペクトル係数を取得するステップであって、第1の周波数バンドは全てのサブバンドを含む、ステップと、全てのサブバンドのエンベロープを用いて、第1の周波数バンドのスペクトル係数を修正して、第1の周波数バンドの正規化スペクトル係数を取得するステップと、第1の周波数バンドの大域的ゲインを用いて、第1の周波数バンドの正規化スペクトル係数を修正して、第1の周波数バンドの最終的な周波数領域信号を取得するステップと、を有する。
第2の態様の第10の可能な実施方式に関して、第11の可能な実施方式では、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とを加算してk個のサブバンドの正規化スペクトル係数を取得するステップは、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係に従って、m個のベクトルのスペクトル係数とk個のサブバンドの量子化スペクトル係数とを加算するステップ、を有する。
第2の態様の第10の可能な実施方式または第11の可能な実施方式に関して、第12の可能な実施方式では、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行するステップは、コア層復号化情報に従って加重値を決定するステップと、加重値を用いて、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に隣接するスペクトル係数とランダムノイズとを加重するステップと、を有する。
第2の態様の第12の可能な実施方式に関して、第13の可能な実施方式では、コア層復号化情報に従って加重値を決定するステップは、コア層復号化情報から信号分類情報を取得するステップと、信号が摩擦信号であると信号分類情報が示す場合、所定の加重値を取得するか、または、信号が摩擦信号以外の別の信号であると信号分類情報が示す場合、コア層復号化情報からピッチ周期を取得し、ピッチ周期に従って加重値を決定するステップと、を有する。
第2の態様の第10の可能な実施方式〜第13の可能な実施方式のうちいずれかの実施方式に関して、第14の可能な実施方式において、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元するステップは、全てのサブバンドから、k個のサブバンド以外の別のサブバンドに隣接するn個のサブバンドを選択し、n個のサブバンドのスペクトル係数に従って、k個のサブバンド以外の別のサブバンドのスペクトル係数を復元するステップであって、nは正の整数である、ステップ、または、k個のサブバンドからp個のサブバンドを選択し、p個のサブバンドのスペクトル係数に従って、k個のサブバンド以外の別のサブバンドのスペクトル係数を復元するステップであって、p個のサブバンドの各サブバンドに割り当てられるビット数は第2のビット数閾値以上であり、pは正の整数である、ステップ、を有する。
第2の態様の第1の可能な実施方式〜第14の可能な実施方式のうちいずれかの実施方式に関して、第15の可能な実施方式では、残りのビット数および第2の飽和閾値jに従って2回目の復号化が実行されるべきベクトルの数mを決定するステップは、以下の等式
に従ってmを決定するステップを有する。Cは残りのビット数を表し、Mは、各ベクトルに含まれるスペクトル係数の数を表す。
第2の態様または第2の態様の第1の可能な実施方式〜第15の可能な実施方式のうちいずれかの実施形式に関して、第16の可能な実施方式では、利用可能なビット数および第1の飽和閾値iに従って復号化されるべきサブバンド数kを決定するステップは、以下の等式
に従ってkを決定するステップを有する。Bは利用可能なビット数を表し、Lは、各サブバンドに含まれるスペクトル係数の数を表す。
第2の態様または第2の態様の第1の可能な実施方式〜第16の可能な実施方式のうちいずれかの実施形式に関して、第17の可能な実施方式では、利用可能なビット数および第1の飽和閾値iに従って復号化されるべきサブバンド数kを決定するステップは、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定するステップ、を有する。
第3の態様によれば、信号符号化装置が提供される。本装置は、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定するように構成される決定ユニットであって、iは正の数であり、kは正の整数である、決定ユニットと、決定ユニットによって決定されたサブバンド数kに従って、全てのサブバンドの量子化エンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択するように構成される選択ユニットと、選択ユニットによって選択されたk個のサブバンドのスペクトル係数に対して、1回目の符号化操作を実行するように構成される符号化ユニットと、を備える。
第3の態様に関して、第1の可能な実施方式では、符号化ユニットは、特に、k個のサブバンドのスペクトル係数を正規化して、k個のサブバンドの正規化スペクトル係数を取得し、k個のサブバンドの正規化スペクトル係数を量子化して、k個のサブバンドの量子化スペクトル係数を取得するように構成される。
第3の態様の第1の可能な実施方式に関して、第2の可能な実施方式では、選択ユニットは更に、1回目の符号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるべきm個のベクトルを決定するように構成される。jは正の数であり、mは正の整数である。符号化ユニットは更に、選択ユニットによって決定されたm個のベクトルのスペクトル係数に対して、2回目の符号化操作を実行するように構成される。
第3の態様の第2の可能な実施方式に関して、第3の可能な実施方式では、選択ユニットは、特に、残りのビット数および第2の飽和閾値jに従って、符号化されるべきベクトル数mを決定するように構成され、k個のサブバンドの量子化スペクトル係数に従って、候補スペクトル係数を決定するように構成され、候補スペクトル係数は、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの対応する量子化スペクトル係数を引くことによって得られるスペクトル係数を含み、候補スペクトル係数が属するベクトルからm個のベクトルを選択するように構成される。
第3の態様の第3の可能な実施方式に関して、第4の可能な実施方式では、選択ユニットは、特に、候補スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得するように構成され、ソートされたベクトルから最初のm個のベクトルを選択するように構成される。ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値が全て0であるベクトルに対応し、第2群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルに対応する。
第3の態様の第3の可能な実施方式に関して、第5の可能な実施方式では、選択ユニットは、特に、候補スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、候補スペクトル係数の属するベクトルからm個のベクトルを選択するように構成される。
第3の態様の第2の可能な実施方式〜第5の可能な実施方式のうちいずれかの実施方式に関して、第6の可能な実施方式では、符号化ユニットは、特に、m個のベクトルのスペクトル係数の大域的ゲインを決定し、m個のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのスペクトル係数を正規化し、m個のベクトルの正規化スペクトル係数を量子化するように構成される。
第3の態様の第4の可能な実施方式に関して、第7の可能な実施方式では、符号化ユニットは、特に、第1群のベクトルのスペクトル係数の大域的ゲインと、第2群のベクトルのスペクトル係数の大域的ゲインとを決定し、第1群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第1群のベクトルに属するベクトルのスペクトル係数を正規化し、第2群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第2群のベクトルに属するベクトルのスペクトル係数を正規化し、m個のベクトルの正規化スペクトル係数を量子化するように構成される。
第3の態様の第3の可能な実施方式〜第7の可能な実施方式のうちいずれかの実施方式に関して、第8の可能な実施方式では、選択ユニットは、特に、以下の等式
に従ってmを決定するように構成される。Cは残りのビット数を表し、Mは、各ベクトルに含まれるスペクトル係数の数を表す。
第3の態様または第3の態様の第1の可能な実施方式〜第8の可能な実施方式のうちいずれかの実施形式に関して、第9の可能な実施方式では、決定ユニットは、特に、以下の等式
に従ってkを決定するように構成される。Bは利用可能なビット数を表し、Lは、各サブバンドに含まれるスペクトル係数の数を表す。
第3の態様または第3の態様の第1の可能な実施方式〜第9の可能な実施方式のうちいずれかの実施形式に関して、第10の可能な実施方式では、決定ユニットは、特に、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定するように構成される。
第4の態様によれば、信号復号化装置が提供される。本装置は、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定するように構成される決定ユニットであって、iは正の数であり、kは正の整数である、決定ユニットと、決定ユニットによって決定されたサブバンド数kに従い、全てのサブバンドの復号化されたエンベロープに従って、全てのサブバンドからからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択するように構成される選択ユニットと、1回目の復号化操作を実行して、選択ユニットによって選択されたk個のサブバンドの量子化スペクトル係数を取得するように構成される復号化ユニットと、を備える。
第4の態様に関して、第1の可能な実施方式では、第1の決定ユニットは更に、1回目の復号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、残りのビット数と、第2の飽和閾値jと、第1群の復号化されたスペクトル係数とに従って、2回目の復号化が実行されるべきベクトルの数mを決定するように構成される。jは正の数であり、mは正の整数である。復号化ユニットは更に、2回目の復号化操作を実行して、m個のベクトルの正規化スペクトル係数を取得するように構成される。
第4の態様の第1の可能な実施方式に関して、第2の可能な実施方式では、本装置は更に、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係を決定するように構成される第2の決定ユニット、を備える。
第4の態様の第2の可能な実施方式に関して、第3の可能な実施方式では、第2の決定ユニットは、特に、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定するように構成される。m個のベクトルは、第1のタイプのベクトルと1対1の対応関係にある。
第4の態様の第3の可能な実施方式に関して、第4の可能な実施方式では、第2の決定ユニットは、特に、k個のサブバンドの量子化スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得するように構成され、ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値が全て0であるベクトルを含み、第2群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルを含み、また、ソートされたベクトルから最初のm個のベクトルを、第1のタイプのベクトルとして選択するように構成され、第1のタイプのベクトルとm個のベクトルとの対応関係を確立するように構成される。
第4の態様の第3の可能な実施方式に関して、第5の可能な実施方式では、第2の決定ユニットは、特に、k個のサブバンドの量子化スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、k個のサブバンドの量子化スペクトル係数の属するベクトルから、m個のベクトルを第1のタイプのベクトルとして選択し、第1のタイプのベクトルとm個のベクトルとの対応関係を確立するように構成される。
第4の態様の第1の可能な実施方式〜第5の可能な実施方式のうちいずれかの実施方式に関して、第6の可能な実施方式では、本装置は更に修正ユニットを備える。復号化ユニットは更に、m個のベクトルの大域的ゲインを復号化するように構成される。修正ユニットは、m個のベクトルの大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正して、m個のベクトルのスペクトル係数を取得するように構成される。
第4の態様の第4の可能な実施方式に関して、第7の可能な実施方式では、本装置は更に修正ユニットを備える。復号化ユニットは更に、第1の大域的ゲインおよび第2の大域的ゲインを復号化するように構成される。修正ユニットは、第1の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第1群のベクトルに対応するスペクトル係数を修正し、第2の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第2群のベクトルに対応するスペクトル係数を修正して、m個のベクトルのスペクトル係数を取得するように構成される。
第4の態様の第6の可能な実施方式または第7の可能な実施方式に関して、第8の可能な実施方式では、本装置は更に、加算ユニットおよび復元ユニットを備える。加算ユニットは、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とを加算して、k個のサブバンドのスペクトル係数を取得するように構成される。復元ユニットは、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行し、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元して、第1の周波数バンドのスペクトル係数を取得するように構成される。第1の周波数バンドは、全てのサブバンドを含む。修正ユニットは更に、全てのサブバンドのエンベロープを用いて、第1の周波数バンドのスペクトル係数を修正して、第1の周波数バンドの正規化スペクトル係数を取得するように構成される。修正ユニットは更に、第1の周波数バンドの大域的ゲインを用いて、第1の周波数バンドの正規化スペクトル係数を修正して、第1の周波数バンドの最終的な周波数領域信号を取得するように構成される。
第4の態様の第8の可能な実施方式に関して、第9の可能な実施方式では、加算ユニットは、特に、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係に従って、m個のベクトルのスペクトル係数とk個のサブバンドの量子化スペクトル係数とを加算するように構成される。
第4の態様の第8の可能な実施方式または第9の可能な実施方式に関して、第10の可能な実施方式では、復元ユニットは、特に、コア層復号化情報に従って加重値を決定し、加重値を用いて、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に隣接するスペクトル係数とランダムノイズとを加重するように構成される。
第4の態様の第10の可能な実施方式に関して、第11の可能な実施方式では、復元ユニットは、特に、コア層復号化情報から信号分類情報を取得し、信号が摩擦信号であると信号分類情報が示す場合、所定の加重値を取得するか、または、信号が摩擦信号以外の別の信号であると信号分類情報が示す場合、コア層復号化情報からピッチ周期を取得し、ピッチ周期に従って加重値を決定するように構成される。
第4の態様の第8の可能な実施方式〜第11の可能な実施方式のうちいずれかの実施方式に関して、第12の可能な実施方式では、復元ユニットは、特に、全てのサブバンドから、k個のサブバンド以外の別のサブバンドに隣接するn個のサブバンドを選択し、n個のサブバンドのスペクトル係数に従って、k個のサブバンド以外の別のサブバンドのスペクトル係数を復元ように構成され、nは正の整数であり、または、k個のサブバンドからp個のサブバンドを選択し、p個のサブバンドのスペクトル係数に従って、k個のサブバンド以外の別のサブバンドのスペクトル係数を復元するように構成され、p個のサブバンドの各サブバンドに割り当てられるビット数は第2のビット数閾値以上であり、pは正の整数である。
第4の態様の第1の可能な実施方式〜第12の可能な実施方式のうちいずれかの実施方式に関して、第13の可能な実施方式では、第1の決定ユニットは、特に、以下の等式
に従ってmを決定するように構成される。Cは残りのビット数を表し、Mは、各ベクトルに含まれるスペクトル係数の数を表す。
第4の態様または第4の態様の第1の可能な実施方式〜第13の可能な実施方式のうちいずれかの実施形式に関して、第14の可能な実施方式では、第1の決定ユニットは、特に、以下の等式
に従ってkを決定するように構成される。Bは利用可能なビット数を表し、Lは、各サブバンドに含まれるスペクトル係数の数を表す。
第4の態様または第4の態様の第1の可能な実施方式〜第14の可能な実施方式のうちいずれかの実施形式に関して、第15の可能な実施方式では、第1の決定ユニットは、特に、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定するように構成される。
本発明の実施形態では、利用可能なビット数および第1の飽和閾値に従って符号化されるべきサブバンド数kが決定され、周波数バンド全体ではなく、全てのサブバンドから選択されたk個のサブバンドに対して符号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
以下、本発明の実施形態において添付の図面を参照して、本発明の実施形態における技術的構成を明確かつ完全に説明する。当然ながら、記載の実施形態は本発明の実施形態の一部であって全部ではない。当業者が本発明の実施形態に基づいて創意工夫なく得た他の実施形態は全て、本発明の保護範囲に包含されるものとする。
符号化技術および復号化技術は、様々な電子デバイス、例えば携帯電話、無線装置、パーソナルデータアシスタント(Personal Data Assistant、PDA)、ハンドヘルドまたはポータブルのコンピューター、全地球測位システム(Global Positioning System、GPS)受信器/ナビゲーター、カメラ、オーディオ/ビデオプレーヤー、ビデオカメラ、ビデオレコーダー、監視装置等に幅広く適用される。一般に、このタイプの電子デバイスは音響符号器または音響復号器を有する。音響符号器または復号器は、デジタル回路またはチップ、例えばデジタル信号プロセッサ(Digital Signal Processor、DSP)チップによって直接的に実現されてよく、或いは、ソフトウェアコードのプロセスを実行するようにプロセッサを駆動するソフトウェアコードによって実現されてよい。
図1は、本発明の実施形態に係る信号符号化方法の概略フローチャートである。図1の方法は、例えば音声符号器や音響符号器のような符号端によって実行される。本発明の本実施形態において、信号は音声信号または音響信号を意味し得る。
符号化プロセスにおいて、符号端はまず、時間領域信号を周波数領域信号に変換してよい。例えば、高速フーリエ変換(Fast Fourier Transform、FFT)アルゴリズムや変形離散コサイン変換(Modified Discrete Cosine Transform、MDCT)アルゴリズム等のアルゴリズムを用いて、時間‐周波数変換が実行されてよい。続いて、符号端は、大域的ゲインを用いて周波数領域信号のスペクトル係数を正規化し、正規化スペクトル係数を分割してサブバンドを取得してよい。
110.利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定する。iは正の数であり、kは正の整数である。
利用可能なビット数は、符号化に用いることのできる総ビット数を意味し得る。
第1の飽和閾値iは予め決定されてよい。例えば、第1の飽和閾値iは、以下の原理に基づいて決定されてよい。すなわち、サブバンドの各スペクトル係数に割り当てられる平均ビット数が第1の飽和閾値i以上である場合、該サブバンドに割り当てられたビットが飽和に達するとみなされてよい。各スペクトル係数に割り当てられる平均ビット数は、サブバンドに割り当てられるビット数とサブバンドのスペクトル係数の数との比であってよい。サブバンドに割り当てられるビットが飽和に達するとは、より多くのビットがサブバンドに割り当てられたとしても、サブバンドのパフォーマンスが明らかには改善されないことを意味し得る。第1の飽和閾値iは正の数であってよい。一般に、i≧1.5である。
更に、第1の飽和閾値iおよびスペクトル係数の数を用いて利用可能なビット数の閾値が決定され、符号化されるべきサブバンド数kが更に決定されてもよい。例えば、i=2であり、総サブバンド数が4であり、スペクトル係数の数が64である2つのサブバンドがあり、スペクトル係数の数が72である2つのサブバンドがあると予め設定する。この場合、3つのサブバンドに含まれるスペクトル係数の最小数は、64+64+72=200である。したがって、利用可能なビット数の閾値は、200×2=400に設定されてよい。利用可能なビット数>400であるとき、kは4である。利用可能なビット数≦400であるとき、kは3である。
120.全てのサブバンドの量子化エンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択する。
例えば、符号端は、全てのサブバンドの量子化エンベロープの大きい順に、全てのサブバンドからk個のサブバンドを選択してよい。或いは、符号端は、心理音響モデルに従ってサブバンドの重要度を決定してよく、サブバンドの重要度の大きい順にk個のサブバンドを選択してよい。
130.k個のサブバンドのスペクトル係数に対して、1回目の符号化操作を実行する。
当然のことながら、1回目の符号化は、ここでは、符号化プロセスにおいて符号端によりスペクトル係数に対して実行される1回目の符号化操作を意味し得る。本発明の本実施形態では、符号化操作は、正規化、量子化、ビットストリーム書込み等の操作を含んでよい。
従来技術では、符号端は周波数バンド全体にビットを割り当ててから、周波数バンド全体を符号化する。よって、周波数スペクトル全体に多くのホールが生じてしまう。本発明の本実施形態では、符号端はまず、利用可能なビット数および第1の飽和閾値に従って、符号化されるべきサブバンド数kを決定し、それから全てのサブバンドからk個のサブバンドを選択し、符号化を実行する。k個のサブバンド以外の残りのサブバンドにはビットを割り当てない。したがって、これらの残りのサブバンドは符号化されない。このように、k個のサブバンドをより良好に符号化することができ、復号端では、復号化によって得られる信号のスペクトルホールを低減することができ、こうして、出力信号の品質が改善される。したがって、本発明の本実施形態は、信号の聴覚品質を改善することができる。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って符号化されるべきサブバンド数kが決定され、周波数バンド全体ではなく、全てのサブバンドから選択されたk個のサブバンドに対して符号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
本発明の本実施形態は、過渡信号、摩擦信号、ロングピッチ信号等の様々なタイプの音声信号や音響信号に適用可能である。
任意に、実施形態として、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、符号端は、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定してよい。
具体的には、符号端は、入力信号が過渡信号、摩擦信号またはロングピッチ信号であるか否かを決定してよい。入力信号が過渡信号、摩擦信号またはロングピッチ信号である場合、図1の方法が実行されてよい。このように、過渡信号、摩擦信号またはロングピッチ信号の符号化品質を改善することができる。
任意に、別の実施形態として、ステップ110において、符号端は、等式(1)、
に従ってサブバンド数kを決定してよい。Bは利用可能なビット数を表してよく、Lはサブバンドのスペクトル係数の数を表してよい。
任意に、別の実施形態として、ステップ130において、符号端は、k個のサブバンドのスペクトル係数を正規化して、k個のサブバンドの正規化スペクトル係数を取得し、k個のサブバンドの正規化スペクトル係数を量子化して、k個のサブバンドの量子化スペクトル係数を取得してよい。
ステップ130において、符号化操作は、スペクトル係数に対する正規化操作および量子化操作を含んでよい。例えば、符号端は、従来技術のプロセスに従って、k個のサブバンドのスペクトル係数を正規化してよい。k個のサブバンドのスペクトル係数を正規化した後、符号端は、k個のサブバンドの正規化スペクトル係数を量子化してよい。例えば、符号端は、代数ベクトル量子化(Algebraic Vector Quantization、AVQ)アルゴリズムや球状ベクトル量子化(Spherical Vector Quantization,、SVQ)アルゴリズム等の一部の格子ベクトル量子化(Lattice Vector Quantization、LVQ)アルゴリズムを用いて、k個のサブバンドの正規化スペクトル係数を量子化してよい。これらのベクトル量子化アルゴリズムには、以下の特徴がある。すなわち、量子化されるベクトルの各群に割り当てられるビット数が決定された後、各ベクトル群に割り当てられるビット数は残りのビット数に従って調整されなくなり、各ベクトル群にビットを割り当てるプロセスは、比較的非依存的になる。割り当てられるビット数は、ベクトル群の値のみに従って決定され、閉ループビット割当ては全てのベクトルに対しては実行されない。
更に、符号化操作は更にビットストリーム書込み操作を含む。例えば、k個のサブバンドのスペクトル係数を正規化および量子化した後、符号端は、k個のサブバンドの量子化スペクトル係数のインデックスをビットストリームに書き込んでよい。ビットストリーム書込み操作は、k個のサブバンドが量子化された後に実行されてよく、或いは、後述する2回目の符号化操作の後に実行されてよく、本発明の本実施形態では限定されない。
任意に、別の実施形態として、ステップ130の後、1回目の符号化の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、符号端は、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるべきm個のベクトルを決定してよい。jは正の数であり、mは正の整数である。そして、符号端は、m個のベクトルのスペクトル係数に対して2回目の符号化操作を実行してよい。
ステップ130において、符号端は、k個のサブバンドのスペクトル係数に対して1回目の符号化操作を実行する。1回目の符号化操作の後、まだ残りのビット数がある可能性がある。符号端は、残りのビット数を第1のビット数閾値と比較してよい。残りのビット数が第1のビット数閾値以上である場合、符号端は更に、残りのビット数を用いて2回目の符号化操作を実行してよい。第1のビット数閾値および第2の飽和閾値jは、両方とも予め設定されてよい。第2の飽和閾値jは第1の飽和閾値iと等しくても等しくなくてもよく、第2の飽和閾値jおよび第1の飽和閾値iは両方とも、同じ原理に基づいて決定されてよい。すなわち、第2の飽和閾値jを決定する原理は以下のようなものであってよい。すなわち、ベクトルの各スペクトル係数に割り当てられる平均ビット数が第2の飽和閾値j以上であるとき、ベクトルに割り当てられるビットが飽和に達するとみなされてよい。一般に、j≧1.5である。
本実施形態では、1回目の符号化操作の後の残りのビット数が第1のビット数閾値以上である場合、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるm個のベクトルが決定され、m個のベクトルのスペクトル係数に対して、2回目の符号化操作が実行される。したがって、残りのビット数を完全に利用することができ、信号の符号化品質を更に改善することができる。
任意に、別の実施形態として、符号端は、残りのビット数および第2の飽和閾値jに従って、符号化されるべきベクトル数mを決定してよい。符号端は、k個のサブバンドの量子化スペクトル係数に従って、候補スペクトル係数を決定し、候補スペクトル係数が属するベクトルからm個のベクトルを選択してよい。候補スペクトル係数は、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの対応する量子化スペクトル係数を引くことによって得られるスペクトル係数を含んでよい。
k個のサブバンドの正規化スペクトル係数は、k個のサブバンドの量子化スペクトル係数と1対1の対応関係にある。したがって、減算操作が実行されるとき、1対1の対応関係の方式で、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの量子化スペクトル係数が引かれる。例えば、k個のサブバンドに5個の正規化スペクトル係数があると仮定すると、ステップ130において、符号端は、5個のスペクトル係数を正規化して、5個の正規化スペクトル係数を取得してよい。続いて、符号端は、5個の正規化スペクトル係数を量子化して、5個の量子化スペクトル係数を取得してよい。符号端は、5個の正規化スペクトル係数から、それぞれ5個の正規化スペクトル係数に対応する量子化スペクトル係数を引いてよい。例えば、符号端は、第1の正規化スペクトル係数から第1の量子化スペクトル係数を引いて、新しいスペクトル係数を取得してよい。同様に、符号端は、5個の新しいスペクトル係数を取得してよい。5個の新しいスペクトル係数は、候補スペクトル係数である。
任意に、別の実施形態として、符号端は、等式(2)、
に従ってベクトル数mを決定してよい。Cは残りのビット数を表してよく、Mは各ベクトルに含まれるスペクトル係数の数を表してよい。
任意に、別の実施形態として、符号端は、候補スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得してよい。符号端は、ソートされたベクトルから最初のm個のベクトルを選択してよい。ソートされたベクトルは、第1群のベクトルと第2群のベクトルとに分割されてよい。第1群のベクトルは、第2群のベクトルの前に配置される。第1群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値が全て0であるベクトルに対応し、第2群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルに対応する。
上記の説明から、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの量子化スペクトル係数を引くことにより、候補スペクトル係数が取得されることが分かるであろう。したがって、候補スペクトル係数の属するベクトルは、正規化スペクトル係数の属するベクトルから量子化スペクトル係数の属するベクトルを引くことによって取得されるものと解釈されてもよい。k個のサブバンドの量子化スペクトル係数の属するベクトルには、値が全て0であるベクトルが存在する可能性があり、値が全て0であるベクトルは、全て0であるスペクトル係数を含むベクトルを意味し得る。符号端は、候補スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得してよい。ソートされたベクトルにおいて、k個のサブバンドの正規化スペクトル係数が属するベクトルのうち値が全て0であるベクトルからk個のサブバンドの量子化スペクトル係数の属するベクトルのうち値が全て0であるベクトルを引くことによって得られるベクトルは、第1群のベクトルとして分類されてよく、k個のサブバンドの正規化スペクトル係数が属するベクトルのうち値の全てが0ではないベクトルからk個のサブバンドの量子化スペクトル係数が属するベクトルのうち値の全てが0ではないベクトルを引くことによって得られるベクトルは、第2群のベクトルとして分類されてよい。
第1群のベクトルは、第2群のベクトルの前に配置されてよい。したがって、符号端は、第1群のベクトルを始点として最初のm個のベクトルを選択してよい。例えば、mが5であると仮定する。第1群のベクトルに4個のベクトルがある場合、符号端は、第1群のベクトルから該4個のベクトルを選択してから、第2群のベクトルから1個のベクトルを選択してよい。第1群のベクトルに7個のベクトルがある場合、符号端は、第1群のベクトルから最初の5個のベクトルを選択してよい。すなわち、2回目の符号化が実行されるべきm個のベクトルが選択されるとき、第1群のベクトルの優先度は第2群のベクトルの優先度よりも高い。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルの位置するサブバンドの周波数の低い順に配列されてよい。同じサブバンドのベクトルは、ベクトルの元の順序で配列されてよい。
ベクトルの元の順序は、該ベクトルの属するサブバンドにおけるベクトルの元の順序を意味し得る。例えば、第1群のベクトルに、ベクトル0、ベクトル1、ベクトル2、ベクトル3、ベクトル4と付番された5個のベクトルがあると仮定する。ベクトル1およびベクトル2はサブバンド0に属し、ベクトル0およびベクトル3はサブバンド1に属し、ベクトル4はサブバンド2に属する。サブバンド0において、ベクトルの元の順序は、ベクトル1がベクトル2の前に配置されるというものである。サブバンド1において、ベクトルの元の順序は、ベクトル0がベクトル3の前に配置されるというものである。3個のサブバンドにおいて、サブバンド0の周波数が最も低く、サブバンド2の周波数が最も高く、サブバンド1の周波数は、サブバンド0の周波数とサブバンド2の周波数との間である。そして、第1群のベクトルの5個のベクトルは、以下の方式でソートされてよい。第1に、異なるサブバンドに属するベクトルが、サブバンドの周波数の低い順にソートされる。すなわち、サブバンド0に属するベクトルが最高位に配置され、サブバンド1に属するベクトルが中間に配置され、サブバンド2に属するベクトルが最下位に配置される。そして、同じサブバンドに属するベクトルは、ベクトルの元の順序でソートされてよい。このように、第1群のベクトルの5個のベクトルは、ベクトル1、ベクトル2、ベクトル0、ベクトル3、ベクトル4の順序でソートされてよい。第2群のベクトルのベクトルは、第1群のベクトルのベクトルがソートされるのと同様の方式でソートされるので、詳細の説明は省略する。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
本実施形態では、異なるサブバンドのベクトルは、サブバンドの量子化エンベロープの順序にソートされる。同じサブバンドのベクトルは、ベクトルの元の順序のままでソートされる。例えば、第1群のベクトルに、ベクトル0、ベクトル1、ベクトル2、ベクトル3、ベクトル4と付番された5個のベクトルがあると仮定する。ベクトル1およびベクトル2はサブバンド0に属し、ベクトル0およびベクトル3はサブバンド1に属し、ベクトル4はサブバンド2に属する。サブバンド0において、ベクトルの元の順序は、ベクトル1がベクトル2の前に配置されるというものである。サブバンド1において、ベクトルの元の順序は、ベクトル0がベクトル3の前に配置されるというものである。3個のサブバンドにおいて、サブバンド2の量子化エンベロープが最小であり、サブバンド1の量子化エンベロープが最大であり、サブバンド0の量子化エンベロープは、サブバンド2の量子化エンベロープとサブバンド1の量子化エンベロープとの間である。このように、第1群のベクトルの5個のベクトルは、ベクトル0、ベクトル3、ベクトル1、ベクトル2、ベクトル4の順序にソートされてよい。
任意に、別の実施形態として、符号端は、候補スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、候補スペクトル係数の属するベクトルからm個のベクトルを選択してよい。
本実施形態では、符号端は、もはや候補スペクトル係数の属するベクトルをグループ化しなくてよく、サブバンドの量子化エンベロープの大きい順に、m個のベクトルを直接選択してよい。例えば、ベクトル0、ベクトル1、ベクトル2、ベクトル3と付番された4個のベクトルがあると仮定する。4個のベクトルは、4個のサブバンドすなわちサブバンド0、サブバンド1、サブバンド2、サブバンド3に属する。サブバンドの量子化エンベロープの大きい順が、サブバンド2>サブバンド1>サブバンド3>サブバンド0であると仮定する。3個のベクトルが2回目の符号化のために選択されるとき、サブバンドの量子化エンベロープの大きい順にベクトル2、ベクトル1およびベクトル3が選択される。
複数のベクトルが同じサブバンドに属する場合、サブバンドにおける該複数のベクトルの元の順序で選択が行われてよい。或いは、サブバンドの複数のベクトルについて、値が全て0であるベクトルが最初に選択されてから、値の全てが0ではないベクトルが選択されてよい。例えば、ベクトル0〜ベクトル4と付番された5個のベクトルがあると仮定する。ベクトル0はサブバンド0に属し、ベクトル1〜ベクトル3がサブバンド1に属し、ベクトル4がサブバンド2に属する。サブバンドの量子化エンベロープの大きい順が、サブバンド2>サブバンド1>サブバンド0であると仮定する。3個のベクトルが2回目の符号化のために選択されるとき、サブバンドの量子化エンベロープの大きい順に、ベクトル4が最初に選択され、それから、サブバンド1のベクトル1〜ベクトル3から残りの2個のベクトルが選択される必要がある。このとき、残りの2個のベクトルは、サブバンド1におけるベクトル1〜ベクトル3の元の順序で選択されてよい。或いは、ベクトル1〜ベクトル3の中で値が全て0であるベクトルが優先的に選択されてから、値の全てが0ではないベクトルが選択されてよい。
m個のベクトルのスペクトル係数に対して2回目の符号化を実行するとき、符号端は、まずm個のベクトルのスペクトル係数を正規化してから、m個のベクトルの正規化スペクトル係数を量子化してよい。例えば、符号端は、AVQアルゴリズムやSVQアルゴリズム等の、1回目の符号化が実行されるときに用いられるベクトル量子化アルゴリズムを用いて、m個のベクトルの正規化スペクトル係数を量子化してよい。m個のベクトルの量子化スペクトル係数が取得された後、符号端は、m個のベクトルの量子化スペクトル係数に対してビットストリーム書込み操作を実行してよい。
m個のベクトルのスペクトル係数を正規化するとき、符号端は、異なる大域的ゲインを用いて、m個のベクトルのスペクトル係数を正規化してよい。
任意に、別の実施形態として、符号端は、m個のベクトルのスペクトル係数の大域的ゲインを決定し、m個のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのスペクトル係数を正規化してよく、それから、m個のベクトルの正規化スペクトル係数を量子化してよい。
任意に、別の実施形態として、符号端は、第1群のベクトルのスペクトル係数の大域的ゲインと、第2群のベクトルのスペクトル係数の大域的ゲインとを決定してよい。符号端は、第1群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第1群のベクトルに属するベクトルのスペクトル係数を正規化し、第2群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第2群のベクトルに属するベクトルのスペクトル係数を正規化してよい。そして、符号端は、m個のベクトルの正規化スペクトル係数を量子化してよい。
例えば、符号端は、2個の群のベクトルのそれぞれの大域的ゲインを用いて、2個の群のベクトルから選択されるベクトルを正規化してもよい。
符号端により信号を符号化するプロセスを説明した。復号化は、符号化の逆のプロセスである。図2は、本発明の別の実施形態に係る信号復号化方法の概略フローチャートである。図2の方法は、復号端、例えば音声復号器や音響復号器によって実行される。
復号化プロセスにおいて、復号端は、符号端から受信されるビットストリームを復号化してよい。例えば、復号端は、コア層(Core)復号化を実行して低周波数バンド情報を取得してよく、高周波数バンドのサブバンドのエンベロープおよび大域的ゲインを復号化してよい。続いて復号端は、復号化によって得られる上記の情報を用いて、高周波数バンドのスペクトル係数に対して復号化操作および復元操作を実行してよい。
210.利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定する。iは正の数であり、kは正の整数である。
ステップ210は図1のステップ110と同様であり、ここでは説明を省略する。第1の飽和閾値iは予め決定されてよい。したがって、符号端および復号端は、同じ第1の飽和閾値iを用いてよい。
220.全てのサブバンドの復号化されたエンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択する。
例えば、復号端は、全てのサブバンドの復号化エンベロープの大きい順に、全てのサブバンドからk個のサブバンドを選択してよい。或いは、復号端は、心理音響モデルに従ってサブバンドの重要度を決定してよく、サブバンドの重要度の大きい順にk個のサブバンドを選択してよい。
230.1回目の復号化操作を実行して、k個のサブバンドの量子化スペクトル係数を取得する。
符号端の場合と同様に、1回目の復号化操作は、復号化プロセスにおいて復号端によりスペクトル係数に対して実行される1回目の復号化操作を意味し得る。1回目の復号化操作は、脱量子化等の操作を含んでよい。復号化操作の具体的なプロセスについては、従来技術を参照されたい。例えば、復号端は、受信されたビットストリームに対して1回目の復号化操作を実行してよい。例えば、復号端は、受信されたビットストリームに基づいて、AVQアルゴリズムやSVQアルゴリズム等の、符号端がk個のサブバンドの正規化スペクトル係数を量子化する際に用いられるベクトル量子化アルゴリズムを用いて、1回目の脱量子化操作を実行して、k個のサブバンドの量子化スペクトル係数を取得してよい。
スペクトル係数を符号化するとき、符号端はまず、利用可能なビット数および第1の飽和閾値に従って、符号化されるべきサブバンド数kを決定してから、全てのサブバンドからk個のサブバンドを選択する。復号化プロセスは符号化プロセスの逆のプロセスであるので、スペクトル係数を復号化するとき、復号端はまず、利用可能なビット数および第1の飽和閾値に従って、復号化されるべきサブバンド数kを決定してから、全てのサブバンドから復号化のためのk個のサブバンドを選択してよい。したがって、復号化によって得られる信号の品質を改善することができ、出力信号の聴覚品質を更に改善することができる。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って復号化されるべきサブバンド数kが決定され、全てのサブバンドから選択されたk個のサブバンドに対して復号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
本発明の本実施形態は、過渡信号、摩擦信号、ロングピッチ信号等の様々なタイプの音声信号や音響信号に適用可能である。
任意に、一実施形態として、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、復号端は、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定してよい。
具体的には、復号端は、復号化される信号のタイプまたは復号化によって得られる低周波数バンド情報から抽出される信号のタイプに従って、復号化される信号が過渡信号、摩擦信号またはロングピッチ信号であるか否かを決定してよい。復号化される信号が過渡信号、摩擦信号またはロングピッチ信号である場合、図2の方法が実行されてよい。このように、過渡信号、摩擦信号またはロングピッチ信号の品質を改善することができる。
任意に、別の実施形態として、ステップ210において、復号端もまた、等式(1)に従ってサブバンド数kを決定してよい。
任意に、別の実施形態として、ステップ230の後、1回目の復号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、復号端は、残りのビット数および第2の飽和閾値jに従って、2回目の復号化が実行されるべきベクトルの数mを決定してよい。jは正の数であり、mは正の整数である。そして、復号端は、2回目の復号化操作を実行して、m個のベクトルの正規化スペクトル係数を取得してよい。
符号端は、1回目の符号化操作の後に2回目の符号化操作を実行した可能性がある。したがって、復号端は、同じ決定方式で、2回目の復号化操作が実行される必要があるか否かを決定してよい。第2の飽和閾値jも予め決定されてよい。したがって、復号端および符号端は、同じ第2の飽和閾値jを用いてよい。第2の飽和閾値jを決定する原理については、図1の実施形態の説明を参照されたい。ここでは詳細の説明を省略する。
2回目の復号化操作は、脱量子化等の操作を含んでよい。例えば、復号端は、受信されたビットストリームに基づいて、AVQアルゴリズムやSVQアルゴリズム等の、1回目の復号化操作が実行されたときに用いられたベクトル量子化アルゴリズムを用いて、2回目の脱量子化操作を実行して、m個のベクトルの正規化スペクトル係数を取得してよい。
任意に、別の実施形態として、復号端も、等式(2)に従ってベクトル数mを決定してよい。
任意に、別の実施形態として、復号端は、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係を決定してよい。
任意に、別の実施形態として、復号端は、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定してよい。m個のベクトルは、第1のタイプのベクトルと1対1の対応関係にある。
図1の実施形態のプロセスから、符号端が候補スペクトル係数の属するベクトルからm個のベクトルを2回目の符号化のために選択し、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの量子化スペクトル係数を引くことにより、候補スペクトル係数が取得されることが分かるであろう。したがって、2回目の復号化によりm個のベクトルの正規化スペクトル係数を取得した後、復号端は、候補スペクトル係数の属するベクトルのうちのどのベクトルが具体的にm個のベクトルであるのかを決定する必要がある。すなわち、m個のベクトルと、k個のサブバンドの量子化スペクトル係数の属するベクトルのうち第1のタイプのベクトルとの、1対1の対応関係を決定する必要がある。
具体的には、復号端は、異なる方式に基づいて、m個のベクトルと、k個のサブバンドの量子化スペクトル係数の属するベクトルのうち第1のタイプのベクトルとの対応関係を決定してよい。当然ながら、復号端によって用いられる方式は、符号端が2回目の符号化のためにm個のベクトルを選択するのと同じ方式でなければならない。
任意に、別の実施形態として、復号端は、k個のサブバンドの量子化スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得してよい。それから、復号端は、ソートされたベクトルから最初のm個のベクトルを、第1のタイプのベクトルとして選択し、第1のタイプのベクトルとm個のベクトルとの対応関係を確立してよい。ソートされたベクトルは、第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、第1群の復号化されたスペクトル係数が属するベクトルにおいて値が全て0であるベクトルを含み、第2群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルを含む。
具体的には、復号端は、k個のサブバンドの量子化スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得してよい。ソートされたベクトルは、2個のベクトルの群を含むものとみなされてよい。第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは値が全て0であるベクトルであり、第2群のベクトルは値の全てが0ではないベクトルである。続いて、復号端は、ソートされたベクトルから最初のm個のベクトルを、第1のタイプのベクトルとして選択してよい。第1のタイプのベクトルが選択されるとき、第1群のベクトルの優先度が第2群のベクトルの優先度よりも高いことが分かるであろう。
各ベクトル群のベクトルは、異なる方式でソートされてもよい。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの周波数の低い順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、復号端は、k個のサブバンドの量子化スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、k個のサブバンドの量子化スペクトル係数の属するベクトルから、m個のベクトルを第1のタイプのベクトルとして選択してよい。復号端は、第1のタイプのベクトルとm個のベクトルとの対応関係を確立してよい。
任意に、別の実施形態として、復号端は、m個のベクトルの大域的ゲインを復号化し、m個のベクトルの大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正して、m個のベクトルのスペクトル係数を取得してよい。
復号端は、第2の復号化されたスペクトル係数の群を修正してよい。ここで復号端は、復号化によって得られるm個のベクトルの大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正してよい。
任意に、別の実施形態として、復号端は、第1の大域的ゲインおよび第2の大域的ゲインを復号化し、第1の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第1群のベクトルに対応するスペクトル係数を修正し、第2の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第2群のベクトルに対応するスペクトル係数を修正して、m個のベクトルのスペクトル係数を取得してよい。
図1の実施形態のプロセスから、符号端は2個の大域的ゲインを用いてm個のベクトルのスペクトル係数を正規化してよいことが分かるであろう。したがって、これに対応して、復号端は、2個の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正してよい。
任意に、別の実施形態として、復号端は、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とを加算して、k個のサブバンドの正規化スペクトル係数を取得してよい。復号端は、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行し、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元して、第1の周波数バンドのスペクトル係数を取得してよい。第1の周波数バンドは、全てのサブバンドを含む。復号端は、全てのサブバンドのエンベロープを用いて、第1の周波数バンドのスペクトル係数を修正して、第1の周波数バンドの正規化スペクトル係数を取得し、第1の周波数バンドの大域的ゲインを用いて、第1の周波数バンドの正規化スペクトル係数を修正して、第1の周波数バンドの最終的な周波数領域信号を取得してよい。
2回の復号化の後、2回の復号化によって得られたスペクトル係数は、ビットが割り当てられるk個のサブバンドに属する。したがって、復号端は、2回の復号化によって得られるスペクトル係数を加算して、k個のサブバンドの正規化スペクトル係数を取得する。具体的には、k個のサブバンドの量子化スペクトル係数は、基本的に、符号端により1回目の正規化処理が実行されたスペクトル係数である。m個のベクトルの正規化スペクトル係数は、基本的に、符号端により2回目の正規化処理が実行されたスペクトル係数である。したがって、復号端は、m個のベクトルの正規化スペクトル係数を修正して、m個のベクトルのスペクトル係数を取得する必要がある。続いて、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とが加算されて、k個のサブバンドの正規化スペクトル係数が取得されてよい。k個のサブバンドの正規化スペクトル係数において値が0であるスペクトル係数について、復号端は、一般に、再構成された音響信号がより自然に聞こえるように、何らかのノイズを充填してよい。加えて、復号端は更に、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元する必要がある。第1の周波数バンドは上記の全てのサブバンドを含むので、第1の周波数バンドのスペクトル係数が取得される。ここで、第1の周波数バンドは、フル周波数バンドを意味してよく、或いはフル周波数バンドの一部の周波数バンドを意味してもよい。すなわち、本発明の本実施形態は、フル周波数バンドの処理に適用されてよく、或いは、フル周波数バンドの一部の周波数バンドの処理に適用されてもよい。
任意に、別の実施形態として、復号端は、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係に従って、m個のベクトルのスペクトル係数とk個のサブバンドの量子化スペクトル係数とを加算してよい。
具体的には、復号端は、対応関係に従って、候補スペクトル係数の属するベクトルのうちどのベクトルがm個のベクトルであるのかを決定してよい。候補スペクトル係数の属するベクトルは、k個のサブバンドの正規化スペクトル係数が属するベクトルから、k個のサブバンドの量子化スペクトル係数が属するベクトルを引くことによって取得される。したがって、k個のサブバンドの正規化スペクトル係数を取得するために、復号端は、対応関係に従って、m個のベクトルのスペクトル係数を、m個のベクトルのスペクトル係数に対応するk個のサブバンドの量子化スペクトル係数に加算してよい。
k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行するために、任意に、別の実施形態として、復号端は、コア層復号化情報に従って加重値を決定してから、加重値を用いて、k個のサブバンドの正規化スペクトル係数において値が0であるスペクトル係数に隣接するスペクトル係数とランダムノイズとを加重してよい。
具体的には、値が0であるスペクトル係数について、復号端は、値が0であるスペクトル係数に隣接するスペクトル係数とランダムノイズとを加重してよい。
任意に、別の実施形態として、復号端は、コア層復号化情報から信号分類情報を取得してよい。信号が摩擦信号であると信号分類情報が示す場合、復号端は、所定の加重値を取得してよい。または、信号が摩擦信号以外の別の信号であると信号分類情報が示す場合、復号端は、コア層復号化情報からピッチ周期を取得し、ピッチ周期に従って加重値を決定してよい。
ノイズ充填が加重方式で実行される場合、復号端は、異なる信号のタイプに対して異なる加重値を用いてよい。例えば、信号が摩擦信号である場合、加重値は予め設定されてよい。摩擦信号以外の別の信号の場合、復号端は、ピッチ周期に従って加重値を決定してよい。一般に、ピッチ周期が長いほど加重値は小さくなる。
任意に、別の実施形態として、復号端は、全てのサブバンドから別のサブバンドに隣接するn個のサブバンドを選択し、n個のサブバンドのスペクトル係数に従って、該別のサブバンドのスペクトル係数を回復してよい。nは正の整数である。或いは、復号端は、k個のサブバンドからp個のサブバンドを選択し、p個のサブバンドのスペクトル係数に従って、該別のサブバンドのスペクトル係数を復元してよい。p個のサブバンドの各サブバンドに割り当てられるビット数は、第2のビット数閾値以上である。
具体的には、復号端は、k個のサブバンド以外の該別のサブバンドに隣接するサブバンドのスペクトル係数を用いて、該別のサブバンドのスペクトル係数を復元してよい。或いは、復号端は、比較的多数のビットが割り当てられるサブバンドのスペクトル係数を用いて、該別のサブバンドのスペクトル係数を復元してよい。例えば、比較的多数のビットが割り当てられることは、ビット数が予め設定された第2のビット数閾値以上であることを意味し得る。
最終的な周波数領域信号を取得した後、復号端は、最終的な周波数領域信号に対して周波数−時間変換を実行して、最終的な時間領域信号を取得してよい。
本発明の本実施形態を、具体的な例を参照して後述する。当然ながら、これらの例は、当業者が本発明の本実施形態をより良く理解できるように提供されるに過ぎず、本発明の本実施形態の範囲を限定する意図はない。
図3は、本発明の実施形態に係る信号符号化方法のプロセスの概略フローチャートである。
301.符号端が、時間領域信号に対して時間‐周波数変換を実行する。
302.符号端が、周波数領域信号のスペクトル係数についてサブバンド分割を実行する。
具体的には、符号端は、大域的ゲインを計算し、大域的ゲインを用いて元のスペクトル係数を正規化し、正規化スペクトル係数を分割して、全てのサブバンドを取得してよい。
303.符号端は、全てのサブバンドのエンベロープを計算し、全てのサブバンドのエンベロープを量子化して、全てのサブバンドの量子化エンベロープを取得する。
304.符号端は、符号化されるべきk個のサブバンドを決定する。
具体的には、符号端は、図1の実施形態のプロセスを用いてk個のサブバンドを決定してよく、ここでは説明を省略する。
305.符号端は、k個のサブバンドのスペクトル係数を正規化および量子化する。
具体的には、符号端は、k個のサブバンドのスペクトル係数を正規化して、k個のサブバンドの正規化スペクトル係数を取得してよい。続いて、符号端は、k個のサブバンドの正規化スペクトル係数を量子化してよい。例えば、符号端は、格子ベクトル量子化アルゴリズムを用いてk個のサブバンドの正規化スペクトル係数を量子化して、k個のサブバンドの量子化スペクトル係数を取得する。
306.符号端は、1回目の符号化の後、利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上であるか否かを決定する。
残りのビット数が第1のビット数閾値未満である場合、ステップ307に進む。
残りのビット数が第1のビット数閾値以上である場合、ステップ308に進む。
307.残りのビット数が第1のビット数閾値未満である場合、符号端はビットストリームを書き込む。
具体的には、残りのビット数が第1のビット数閾値未満である場合、残りのビット数は2回目の符号化に用いることができず、符号端は、1回目の符号化の結果のインデックス、量子化された大域的ゲインのインデックス、全てのサブバンドの量子化エンベロープのインデックス等を、ビットストリームに書き込んでよい。具体的なプロセスについては、従来技術を参照されたい。ここでは詳細の説明を省略する。
308.残りのビット数が第1のビット数閾値以上である場合、符号端は、2回目の符号化が実行されるべきm個のベクトルを決定する。
具体的には、符号端は、k個のサブバンドの量子化スペクトル係数に従って候補スペクトル係数を決定し、候補スペクトル係数が属するベクトルからm個のベクトルを選択してよい。
上記の候補スペクトル係数は、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの対応する量子化スペクトル係数を引くことによって得られるスペクトル係数を含んでよい。
一例として、符号端は、候補スペクトル係数が属するベクトルから最初のm個のベクトルを選択してよい。候補スペクトル係数の属するベクトルは、第1群のベクトルと第2群のベクトルとに分割されてよく、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値が全て0であるベクトルに対応し、第2群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルに対応する。
特定の例を参照して説明を後述する。図4は、本発明の実施形態に係る、2回目の符号化が実行されるベクトルを決定するプロセスの概略図である。
図4において、1回目の符号化が実行されるとき、符号端がサブバンド1〜サブバンド3と付番された3個のサブバンドを決定すると仮定する。サブバンド1〜サブバンド3は、周波数の低い順に配列される。各サブバンドには3個のベクトルがあり、ベクトル1a〜ベクトル1iと付番されてよい。各ベクトルには8個の正規化スペクトル係数があり、これらのスペクトル係数の具体値は図4に示すことができる。例えば、サブバンド1のベクトル1aに含まれる正規化スペクトル係数は、51151151である。
3個のサブバンドの正規化スペクトル係数が量子化されて、量子化スペクトル係数が取得される。量子化スペクトル係数の具体値を図4に示す。一部のスペクトル係数は0に量子化され、一部のスペクトル係数は0でない値に量子化される。これらの量子化スペクトル係数も、ベクトル2a〜ベクトル2iと付番されてよい9個のベクトルに属する。例えば、サブバンド1のベクトル1に含まれる8個の正規化スペクトル係数が量子化されて、8個の量子化スペクトル係数40040240が取得され、8個の量子化スペクトル係数40040240はベクトル2aに属する。サブバンド1のベクトル1bに含まれる8個の正規化スペクトル係数が量子化されて、8個の量子化スペクトル係数00000000が取得され、8個の量子化スペクトル係数00000000はベクトル2bに属する。
対応する量子化スペクトル係数が正規化スペクトル係数から引かれて、候補スペクトル係数が取得される。例えば、サブバンド1のベクトル1aに関して、対応する8個の量子化スペクトル係数40040240が8個の正規化スペクトル係数51151151から引かれて、新しいスペクトル係数11111111が取得される。サブバンド1のベクトル1bに関して、8個の量子化スペクトル係数00000000が8個の正規化スペクトル係数11111111から引かれて、新しいスペクトル係数11111111が取得される。他のスペクトル係数も同じ方式で取得することができる。図4に示されるように、取得された新しいスペクトル係数は全て候補スペクトル係数である。
上述の説明から、候補スペクトル係数の属するベクトルも、正規化スペクトル係数の属するベクトルから量子化スペクトル係数の属するベクトルを引くことによって得られるものとみなされてよいことが分かるであろう。したがって、これに対応して、このような候補スペクトル係数も、図4に示すように、上述の正規化ベクトルおよび量子化ベクトルに対応するためにベクトル3a〜ベクトル3iと付番されてよい9個のベクトルに属する。例えば、量子化ベクトル2aがベクトル1aから引かれて、ベクトル3aが取得され、量子化ベクトル2bがベクトル1bから引かれて、ベクトル3bが取得される。
9個のベクトルは、2個のベクトル群を含んでよい。第1群のベクトルには、4個のベクトルすなわちベクトル3b、ベクトル3e、ベクトル3g、ベクトル3iがある。第2群のベクトルには、5個のベクトルすなわちベクトル3a、ベクトル3c、ベクトル3d、ベクトル3f、ベクトル3hがある。第1群のベクトルは、ベクトル2a〜2iにおいて値が全て0であるベクトルを引くことによって取得される。例えば、ベクトル3bは、ベクトル1bから値が全て0であるベクトル2bを引くことによって取得される。ベクトル3eは、ベクトル1eから値が全て0であるベクトル2を引くことによって取得される。他のベクトルも、同じ方式で取得することができる。第2群のベクトルは、ベクトル2a〜2iにおいて値の全てが0ではないベクトルを引くことによって取得される。例えば、ベクトル3aは、ベクトル1aから値の全てが0ではないベクトル1bを引くことによって取得される。ベクトル3cは、ベクトル1cから値の全てが0ではないベクトル2cを引くことによって取得される。他のベクトルも、同じ方式で取得することができる。
図4に示されるように、各ベクトル群はサブバンドの周波数の低い順に配列されてよく、同じサブバンドのベクトルはベクトルの元の順序で配列されてよい。例えば、第1群のベクトルにおいて、ベクトル3bはサブバンド1に属し、ベクトル3eはサブバンド2に属し、ベクトル3gおよびベクトル3iはサブバンド3に属する。第2群のベクトルにおいて、ベクトル3aおよびベクトル3cはサブバンド1に属し、ベクトル3dおよびベクトル3fはサブバンド2に属し、ベクトル3hはサブバンド3に属する。
符号端は、第1群のベクトルおよび第2群のベクトルを含むベクトル群から、最初のm個のベクトルを2回目の符号化のためのベクトルとして選択してよい。例えば、最初の3個のベクトルすなわちベクトル3b、ベクトル3e、ベクトル3gが、2回目の符号化のために選択されてよい。
当然ながら、図4の具体値は当業者が本発明の本実施形態をより良く理解できるようにするために提供されているに過ぎず、本発明の本実施形態の範囲を限定する意図はない。
更に、図4に示される各ベクトル群のベクトルがソートされる方式に加えて、各ベクトル群では、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列されてもよく、同じサブバンドのベクトルはベクトルの元の順序で配列されてよい。
309.符号端は、m個のベクトルのスペクトル係数を正規化および量子化する。
m個のベクトルのスペクトル係数を正規化および量子化する具体的なプロセスについては、図1の実施形態の説明を参照されたい。ここでは詳細の説明を省略する。
310.符号端は、ビットストリームを書き込む。
具体的には、符号端は、1回目の符号化によって得られたスペクトル係数のインデックス、2回目の符号化によって得られたスペクトル係数のインデックス、量子化された大域的ゲインのインデックス、全てのサブバンドの量子化エンベロープのインデックス等を、ビットストリームに書き込んでよい。具体的なプロセスについては、従来技術を参照されたい。ここでは詳細の説明を省略する。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って符号化されるべきサブバンド数kが決定され、周波数バンド全体ではなく、全てのサブバンドから選択されたk個のサブバンドに対して符号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
具体的な復号化プロセスは、図3に示される符号化プロセスの逆のプロセスである。m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうち第1のタイプのベクトルとの1対1の対応関係をどのように決定するかを、図4の例を参照して後述する。他のプロセスについては、図2の実施形態のプロセスを参照されたい。詳細の説明は省略する。
例えば、復号端は、1回目の復号化により、ベクトル2a〜ベクトル2iのスペクトル係数を取得してよい。残りのビット数および第2の飽和閾値jに従って、mが5であると決定されたと仮定する。復号端は、2回目の復号化により、5個のベクトルすなわちベクトル3b、ベクトル3e、ベクトル3g、ベクトル3i、ベクトル3aのスペクトル係数を取得してよい。復号端は、5個のベクトルのスペクトル係数を、それぞれベクトル2b、ベクトル2e、ベクトル2g、ベクトル2i、ベクトル2aのスペクトル係数に加算する必要がある。しかしながら、復号化によりベクトル3b、ベクトル3e、ベクトル3g、ベクトル3i、ベクトル3aを取得した後、復号端は、ベクトル2a〜ベクトル2iのうちどの5個のベクトルが取得された5個のベクトルに対応するのかを知らない。したがって、復号端はまず、5個のベクトルとベクトル2b、ベクトル2e、ベクトル2g、ベクトル2i、ベクトル2aとの1対1の対応関係を決定する必要がある。すなわち、ベクトル2b、ベクトル2e、ベクトル2g、ベクトル2i、ベクトル2aは、k個のサブバンドの量子化スペクトル係数の属するベクトルのうち第1のタイプのベクトルである。そして、ベクトル3b、ベクトル3e、ベクトル3g、ベクトル3i、ベクトル3aのスペクトル係数が、ベクトル2b、ベクトル2e、ベクトル2g、ベクトル2i、ベクトル2aのスペクトル係数にそれぞれ加算される。具体的には、復号端は図2の実施形態で説明された方式で決定を実行してよく、ここでは説明を省略する。
図5は、本発明の実施形態に係る信号符号化装置の概略ブロック図である。例えば、図5の装置500は、音声符号器または音響符号器である。装置500は、決定ユニット510、選択ユニット520および符号化ユニット530を有する。
決定ユニット510は、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定する。iは正の数であり、kは正の整数である。決定ユニット510によって決定されたサブバンド数kに従って、選択ユニット520は、全てのサブバンドの量子化エンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択する。符号化ユニット530は、選択ユニット520によって選択されたk個のサブバンドのスペクトル係数に対して、1回目の符号化操作を実行する。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って符号化されるべきサブバンド数kが決定され、周波数バンド全体ではなく、全てのサブバンドから選択されたk個のサブバンドに対して符号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
任意に、一実施形態として、符号化ユニット530は、k個のサブバンドのスペクトル係数を正規化して、k個のサブバンドの正規化スペクトル係数を取得し、k個のサブバンドの正規化スペクトル係数を量子化して、k個のサブバンドの量子化スペクトル係数を取得してよい。
任意に、別の実施形態として、1回目の符号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、選択ユニット520は更に、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるべきm個のベクトルを決定してよい。jは正の数であり、mは正の整数である。符号化ユニット530は更に、選択ユニット520によって決定されたm個のベクトルのスペクトル係数に対して、2回目の符号化操作を実行してよい。
任意に、別の実施形態として、選択ユニット520は、残りのビット数および第2の飽和閾値jに従って、符号化されるべきベクトル数mを決定し、k個のサブバンドの量子化スペクトル係数に従って、候補スペクトル係数を決定し、候補スペクトル係数が属するベクトルからm個のベクトルを選択してよい。候補スペクトル係数は、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの対応する量子化スペクトル係数を引くことによって得られるスペクトル係数を含んでよい。
任意に、別の実施形態として、選択ユニット520は、候補スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得してよい。選択ユニット520は、ソートされたベクトルから最初のm個のベクトルを選択してよい。ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値が全て0であるベクトルに対応し、第2群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルに対応する。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルの位置するサブバンドの周波数の低い順に配列されてよく、同じサブバンドのベクトルは、ベクトルの元の順序で配列されてよい。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、選択ユニット520は、候補スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、候補スペクトル係数の属するベクトルからm個のベクトルを選択してよい。
任意に、別の実施形態として、符号化ユニット530は、m個のベクトルのスペクトル係数の大域的ゲインを決定し、m個のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのスペクトル係数を正規化し、m個のベクトルの正規化スペクトル係数を量子化してよい。
任意に、別の実施形態として、符号化ユニット530は、第1群のベクトルのスペクトル係数の大域的ゲインと、第2群のベクトルのスペクトル係数の大域的ゲインとを決定し、第1群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第1群のベクトルに属するベクトルのスペクトル係数を正規化し、第2群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第2群のベクトルに属するベクトルのスペクトル係数を正規化し、m個のベクトルの正規化スペクトル係数を量子化してよい。
任意に、別の実施形態として、選択ユニット520は、等式(2)に従ってmを決定してよい。
任意に、別の実施形態として、決定ユニット510は、等式(1)に従ってkを決定してよい。
任意に、別の実施形態として、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、決定ユニット510は、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定してよい。
図5の装置500の他の機能および操作については、図1、図3および図4の上述の方法実施形態の符号端が関与するプロセスを参照されたい。繰り返しを避けるために、ここでは詳細の説明を省略する。
図6は、本発明の実施形態に係る信号復号化装置の概略ブロック図である。例えば、図6の装置600は、音声復号器または音響復号器である。装置600は、第1の決定ユニット610、選択ユニット620および復号化ユニット630を有する。
第1の決定ユニット610は、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定する。iは正の数であり、kは正の整数である。第1の決定ユニット610によって決定されたサブバンド数kに従い、選択ユニット620は、全てのサブバンドの復号化されたエンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択する。復号化ユニット630は、1回目の復号化操作を実行して、選択ユニット620によって選択されたk個のサブバンドの量子化スペクトル係数を取得する。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って復号化されるべきサブバンド数kが決定され、全てのサブバンドから選択されたk個のサブバンドに対して復号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
任意に、別の実施形態として、1回目の復号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、第1の決定ユニット610は更に、残りのビット数および第2の飽和閾値jに従って、2回目の復号化が実行されるべきベクトルの数mを決定してよい。jは正の数であり、mは正の整数である。復号化ユニット630は更に、2回目の復号化操作を実行して、m個のベクトルの正規化スペクトル係数を取得してよい。
任意に、別の実施形態として、装置600は更に第2の決定ユニット640を有してよい。第2の決定ユニット640は、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係を決定してよい。
任意に、別の実施形態として、第2の決定ユニット640は、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定してよい。m個のベクトルは、第1のタイプのベクトルと1対1の対応関係にある。
任意に、別の実施形態として、第2の決定ユニット640は、k個のサブバンドの量子化スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得し、ソートされたベクトルから最初のm個のベクトルを、第1のタイプのベクトルとして選択し、第1のタイプのベクトルとm個のベクトルとの対応関係を確立してよい。ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、第1群の復号化されたスペクトル係数が属するベクトルにおいて値が全て0であるベクトルを含み、第2群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルを含む。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの周波数の低い順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、第2の決定ユニット640は、k個のサブバンドの量子化スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、k個のサブバンドの量子化スペクトル係数の属するベクトルから、m個のベクトルを第1のタイプのベクトルとして選択し、第1のタイプのベクトルとm個のベクトルとの対応関係を確立してよい。
任意に、別の実施形態として、装置600は更に修正ユニット650を有してよい。
復号化ユニット630は、m個のベクトルの大域的ゲインを復号化してよい。
修正ユニット650は、m個のベクトルの大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正して、m個のベクトルのスペクトル係数を取得してよい。
任意に、別の実施形態として、復号化ユニット630は、第1の大域的ゲインおよび第2の大域的ゲインを復号化してよい。
修正ユニット650は、第1の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第1群のベクトルに対応するスペクトル係数を修正し、第2の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第2群のベクトルに対応するスペクトル係数を修正して、m個のベクトルのスペクトル係数を取得してよい。
任意に、別の実施形態として、装置600は更に、加算ユニット660および復元ユニット670を有してよい。加算ユニット660は、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とを加算して、k個のサブバンドの正規化スペクトル係数を取得してよい。復元ユニット670は、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行し、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元して、第1の周波数バンドのスペクトル係数を取得してよい。第1の周波数バンドは全てのサブバンドを含む。修正ユニット650は、全てのサブバンドのエンベロープを用いて、第1の周波数バンドのスペクトル係数を修正して、第1の周波数バンドの正規化スペクトル係数を取得してよい。修正ユニット650は更に、第1の周波数バンドの大域的ゲインを用いて、第1の周波数バンドの正規化スペクトル係数を修正して、第1の周波数バンドの最終的な周波数領域信号を取得してよい。
任意に、別の実施形態として、復元ユニット670は、コア層復号化情報に従って加重値を決定し、加重値を用いて、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に隣接するスペクトル係数とランダムノイズとを加重してよい。
任意に、別の実施形態として、復元ユニット670は、コア層復号化情報から信号分類情報を取得してよい。信号が摩擦信号であると信号分類情報が示す場合、復元ユニット670は、所定の加重値を取得してよい。または、信号が摩擦信号以外の別の信号であると信号分類情報が示す場合、復元ユニット670は、コア層復号化情報からピッチ周期を取得し、ピッチ周期に従って加重値を決定してよい。
任意に、別の実施形態として、復元ユニット670は、全てのサブバンドから、別のサブバンドに隣接するn個のサブバンドを選択し、n個のサブバンドのスペクトル係数に従って、該別のサブバンドのスペクトル係数を復元してよい。nは正の整数である。または、復元ユニット670は、k個のサブバンドからp個のサブバンドを選択し、p個のサブバンドのスペクトル係数に従って、該別のサブバンドのスペクトル係数を復元してよい。p個のサブバンドの各サブバンドに割り当てられるビット数は、第2のビット数閾値以上であり、pは正の整数である。
任意に、別の実施形態として、第1の決定ユニット610は、等式(2)に従ってmを決定してよい。
任意に、別の実施形態として、第1の決定ユニット610は、等式(1)に従ってkを決定してよい。
任意に、別の実施形態として、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、第1の決定ユニット610は、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定してよい。
図6の装置600の他の機能および操作については、図2の上述の方法実施形態における符号端が関与するプロセスを参照されたい。繰り返しを避けるために、ここでは詳細の説明を省略する。
図7は、本発明の別の実施形態に係る信号符号化装置の概略ブロック図である。例えば、図7の装置700は、音声符号器または音響符号器である。装置700は、メモリ710およびプロセッサ720を有する。
メモリ710の例として、ランダムアクセスメモリ、フラッシュメモリ、リードオンリーメモリ、プログラマブルリードオンリーメモリ、不揮発性メモリ、レジスタ等が挙げられる。プロセッサ720は、中央演算処理装置(Central Processing Unit、CPU)であってよい。
メモリ710は、実行可能命令を格納するように構成される。プロセッサ720は、メモリ710に格納された実行可能命令を実行してよく、また、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定し(iは正の数であり、kは正の整数である)、全てのサブバンドの量子化エンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択し、k個のサブバンドのスペクトル係数に対して1回目の符号化操作を実行するように構成される。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って符号化されるべきサブバンド数kが決定され、周波数バンド全体ではなく、全てのサブバンドから選択されたk個のサブバンドに対して符号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
任意に、一実施形態として、プロセッサ720は、k個のサブバンドのスペクトル係数を正規化して、k個のサブバンドの正規化スペクトル係数を取得し、k個のサブバンドの正規化スペクトル係数を量子化して、k個のサブバンドの量子化スペクトル係数を取得してよい。
任意に、別の実施形態として、1回目の符号化の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、プロセッサ720は更に、残りのビット数と、第2の飽和閾値jと、k個のサブバンドの量子化スペクトル係数に従って、2回目の符号化が実行されるべきm個のベクトルを決定してよい。jは正の数であり、mは正の整数である。プロセッサ720は更に、m個のベクトルのスペクトル係数に対して2回目の符号化操作を実行してよい。
任意に、別の実施形態として、プロセッサ720は、残りのビット数および第2の飽和閾値jに従って、符号化されるべきベクトル数mを決定し、k個のサブバンドの量子化スペクトル係数に従って、候補スペクトル係数を決定し、候補スペクトル係数が属するベクトルからm個のベクトルを選択してよい。候補スペクトル係数は、k個のサブバンドの正規化スペクトル係数からk個のサブバンドの対応する量子化スペクトル係数を引くことによって得られるスペクトル係数を含んでよい。
任意に、別の実施形態として、プロセッサ720は、候補スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得し、ソートされたベクトルから最初のm個のベクトルを選択してよい。ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値が全て0であるベクトルに対応し、第2群のベクトルは、k個のサブバンドの量子化スペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルに対応する。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルの位置するサブバンドの周波数の低い順に配列されてよく、同じサブバンドのベクトルは、ベクトルの元の順序で配列されてよい。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、プロセッサ720は、候補スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、候補スペクトル係数の属するベクトルからm個のベクトルを選択してよい。
任意に、別の実施形態として、プロセッサ720は、m個のベクトルのスペクトル係数の大域的ゲインを決定し、m個のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのスペクトル係数を正規化し、m個のベクトルの正規化スペクトル係数を量子化してよい。
任意に、別の実施形態として、プロセッサ720は、第1群のベクトルのスペクトル係数の大域的ゲインと、第2群のベクトルのスペクトル係数の大域的ゲインとを決定し、第1群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第1群のベクトルに属するベクトルのスペクトル係数を正規化し、第2群のベクトルのスペクトル係数の大域的ゲインを用いて、m個のベクトルのうち第2群のベクトルに属するベクトルのスペクトル係数を正規化し、m個のベクトルの正規化スペクトル係数を量子化してよい。
任意に、別の実施形態として、プロセッサ720は、等式(2)に従ってmを決定してよい。
任意に、別の実施形態として、プロセッサ720は、等式(1)に従ってkを決定してよい。
任意に、別の実施形態として、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、プロセッサ720は、利用可能なビット数および第1の飽和閾値iに従って、符号化されるべきサブバンド数kを決定してよい。
図7の装置700の他の機能および操作については、図1、図3および図4の上述の方法実施形態における符号端が関与するプロセスを参照されたい。繰り返しを避けるために、ここでは詳細の説明を省略する。
図8は、本発明の別の実施形態に係る信号復号化装置の概略ブロック図である。例えば、図8の装置800は、音声復号器または音響復号器である。装置800は、メモリ810およびプロセッサ820を有する。
メモリ810の例として、ランダムアクセスメモリ、フラッシュメモリ、リードオンリーメモリ、プログラマブルリードオンリーメモリ、不揮発性メモリ、レジスタ等が挙げられる。プロセッサ820は、中央演算処理装置(Central Processing Unit、CPU)であってよい。
メモリ810は、実行可能命令を格納するように構成される。プロセッサ820は、メモリ810に格納された実行可能命令を実行してよく、また、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定し(iは正の数であり、kは正の整数である)、サブバンド数kに従い、全てのサブバンドの復号化されたエンベロープに従って、全てのサブバンドからk個のサブバンドを選択するか、または、心理音響モデルに従って、全てのサブバンドからk個のサブバンドを選択し、1回目の復号化操作を実行して、k個のサブバンドの量子化スペクトル係数を取得するように構成される。
本発明の本実施形態では、利用可能なビット数および第1の飽和閾値に従って復号化されるべきサブバンド数kが決定され、全てのサブバンドから選択されたk個のサブバンドに対して復号化が実行される。よって、復号化によって得られる信号のスペクトルホールを低減でき、したがって、出力信号の聴覚品質を改善できる。
任意に、別の実施形態として、1回目の復号化操作の後に利用可能なビット数のうちの残りのビット数が第1のビット数閾値以上である場合、プロセッサ820は更に、残りのビット数および第2の飽和閾値jに従って、2回目の復号化が実行されるべきベクトルの数mを決定してよい。jは正の数であり、mは正の整数である。プロセッサ820は更に、2回目の復号化操作を実行して、m個のベクトルの正規化スペクトル係数を取得してよい。
任意に、別の実施形態として、プロセッサ820は、m個のベクトルの正規化スペクトル係数とk個のサブバンドの量子化スペクトル係数との対応関係を決定してよい。
任意に、別の実施形態として、プロセッサ820は、m個のベクトルとk個のサブバンドの量子化スペクトル係数の属するベクトルのうちの第1のタイプのベクトルとの対応関係を決定してよい。m個のベクトルは、第1のタイプのベクトルと1対1の対応関係にある。
任意に、別の実施形態として、プロセッサ820は、k個のサブバンドの量子化スペクトル係数の属するベクトルをソートして、ソートされたベクトルを取得してよく、ソートされたベクトルから最初のm個のベクトルを、第1のタイプのベクトルとして選択してよく、第1のタイプのベクトルとm個のベクトルとの対応関係を確立してよい。ソートされたベクトルは第1群のベクトルと第2群のベクトルとに分割され、第1群のベクトルは第2群のベクトルの前に配置され、第1群のベクトルは、第1群の復号化されたスペクトル係数が属するベクトルにおいて値が全て0であるベクトルを含み、第2群のベクトルは、第1群の復号化されたスペクトル係数の属するベクトルにおいて値の全てが0ではないベクトルを含む。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの周波数の低い順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、第1群のベクトルおよび第2群のベクトルの各ベクトル群において、異なるサブバンドのベクトルは、ベクトルが位置するサブバンドの量子化エンベロープの大きい順に配列され、同じサブバンドのベクトルは、ベクトルの元の順序で配列される。
任意に、別の実施形態として、プロセッサ820は、k個のサブバンドの量子化スペクトル係数の属するベクトルが位置するサブバンドの量子化エンベロープの大きい順に、k個のサブバンドの量子化スペクトル係数の属するベクトルから、m個のベクトルを第1のタイプのベクトルとして選択し、第1のタイプのベクトルとm個のベクトルとの対応関係を確立してよい。
任意に、別の実施形態として、プロセッサ820は、m個のベクトルの大域的ゲインを復号化し、m個のベクトルの大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数を修正して、m個のベクトルのスペクトル係数を取得してよい。
任意に、別の実施形態として、プロセッサ820は、第1の大域的ゲインおよび第2の大域的ゲインを復号化し、第1の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第1群のベクトルに対応するスペクトル係数を修正し、第2の大域的ゲインを用いて、m個のベクトルの正規化スペクトル係数のうち第2群のベクトルに対応するスペクトル係数を修正して、m個のベクトルのスペクトル係数を取得してよい。
任意に、別の実施形態として、プロセッサ820は、k個のサブバンドの量子化スペクトル係数とm個のベクトルのスペクトル係数とを加算して、k個のサブバンドの正規化スペクトル係数を取得してよい。プロセッサ820は、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に対してノイズ充填を実行し、全てのサブバンドのうちk個のサブバンド以外の別のサブバンドのスペクトル係数を復元して、第1の周波数バンドのスペクトル係数を取得してよい。第1の周波数バンドは、全てのサブバンドを含む。プロセッサ820は、全てのサブバンドのエンベロープを用いて、第1の周波数バンドのスペクトル係数を修正して、第1の周波数バンドの正規化スペクトル係数を取得してよい。プロセッサ820は更に、第1の周波数バンドの大域的ゲインを用いて、第1の周波数バンドの正規化スペクトル係数を修正して、第1の周波数バンドの最終的な周波数領域信号を取得してよい。
任意に、別の実施形態として、プロセッサ820は、コア層復号化情報に従って加重値を決定し、加重値を用いて、k個のサブバンドの正規化スペクトル係数のうち値が0であるスペクトル係数に隣接するスペクトル係数とランダムノイズとを加重してよい。
任意に、別の実施形態として、プロセッサ820は、コア層復号化情報から信号分類情報を取得してよい。信号が摩擦信号であると信号分類情報が示す場合、プロセッサ820は、所定の加重値を取得してよい。または、信号が摩擦信号以外の別の信号であると信号分類情報が示す場合、プロセッサ820は、コア層復号化情報からピッチ周期を取得し、ピッチ周期に従って加重値を決定してよい。
任意に、別の実施形態として、プロセッサ820は、全てのサブバンドから、別のサブバンドに隣接するn個のサブバンドを選択し、n個のサブバンドのスペクトル係数に従って、該別のサブバンドのスペクトル係数を復元してよい。nは正の整数である。または、プロセッサ820は、k個のサブバンドからp個のサブバンドを選択し、p個のサブバンドのスペクトル係数に従って、該別のサブバンドのスペクトル係数を復元してよい。p個のサブバンドの各サブバンドに割り当てられるビット数は、第2のビット数閾値以上であり、pは正の整数である。
任意に、別の実施形態として、プロセッサ820は、等式(2)に従ってmを決定してよい。
任意に、別の実施形態として、プロセッサ820は、等式(1)に従ってkを決定してよい。
任意に、別の実施形態として、信号が過渡信号、摩擦信号またはロングピッチ信号である場合、プロセッサ820は、利用可能なビット数および第1の飽和閾値iに従って、復号化されるべきサブバンド数kを決定してよい。
図8の装置800の他の機能および操作については、図2の上述の方法実施形態における符号端が関与するプロセスを参照されたい。繰り返しを避けるために、ここでは詳細の説明を省略する。
当業者であれば、本明細書に開示された実施形態に記載の例と組み合わせて、ユニットおよびアルゴリズムステップが電子機器またはコンピューターソフトウェアと電子機器との組合わせによって実施できることが分かるであろう。機能がハードウェアによって実行されるかソフトウェアによって実行されるかは、技術的構成の特定の応用および設計制約条件によって決まる。当業者であれば、各特定の応用のために記載の機能を実施する際に異なる方法を採用するかもしれないが、該実施が本発明の範囲を超えるとみなされるべきではない。
当業者であれば明らかに理解できるように、説明を簡便にするために、上述のシステム、装置およびユニットの詳細な作業プロセスについては、上述の方法実施形態の対応するプロセスを参照することができ、ここでは詳細の説明を省略する。
本願において提供されるいくつかの実施形態では、当然ながら、開示のシステム、装置および方法は、他の方式で実施されてよい。例えば、記載の装置実施形態は例示に過ぎない。例えば、ユニットの分割は論理的機能の分割に過ぎず、実際の実施では他の分割であってよい。例えば、複数のユニットまたはコンポーネントが別のシステムとして組み合わされるか統合されてよく、或いは、一部の特徴が省略されてよく、または実行されなくてよい。加えて、図示または記載された相互結合または直接的な結合もしくは通信接続は、いくつかのインターフェースを用いて実施されてよい。装置またはユニット間の間接的な結合または通信接続は、電子的形式、機械的方式その他の形式で実施されてよい。
別々の要素として記載されたユニットは物理的に別々であってもなくてもよく、ユニットとして示された要素は物理的なユニットであってもなくてもよく、1つの場所に位置してもよく、複数のネットワークユニットに分散されてもよい。ユニットの一部または全部は、実施形態の構成の目的を達成するための実際の要件に従って選択されてよい。
加えて、本発明の実施形態における機能的ユニットは1つの処理ユニットに統合されてよく、或いは、各ユニットが物理的に単独で存在してよく、或いは、2以上のユニットが1つのユニットに統合されてよい。
機能がソフトウェア機能ユニットの形式で実施され、独立した製品として販売または利用される場合、機能はコンピューター可読記憶媒体に格納されてよい。このような理解に基づき、本発明の技術的構成は基本的に、或いは従来技術に寄与する部分、或いは技術的構成の一部は、ソフトウェア製品の形式で実施されてよい。コンピューターソフトウェア製品は記憶媒体に格納され、本発明の実施形態に記載の方法のステップの全部または一部を実行するようにコンピューター装置(パーソナルコンピューター、サーバーまたはネットワーク装置であってよい)に命令するためのいくつかの命令を備える。上述の記憶媒体の例として、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリーメモリ(ROM、Read-Only Memory)、ランダムアクセスメモリ(RAM、Random Access Memory)、磁気ディスク、光ディスク等の、プログラムコードを格納することができる任意の媒体が挙げられる。
上述の説明は本発明の具体的な実施方式に過ぎず、本発明の保護範囲を限定する意図はない。当業者が本発明に開示の技術的範囲において容易に想到し得る変形または置換は、本発明の保護範囲に包含されるものとする。したがって、本発明の保護範囲は、特許請求の範囲の保護範囲に依拠するものとする。