(58)【調査した分野】(Int.Cl.,DB名)
前記復号器(40)は、明示的なシグナル伝達(signalization)から前記スペクトルの形状に関する前記情報を得るように構成されている請求項1又は2に記載の復号器。
前記復号器(40)は、前もって復号されたスペクトル係数(o)又は前記スペクトルの前もって復号されたLPCベースのスペクトル包絡線から、前記スペクトルの形状に関する前記情報を得るように構成されている請求項1又は2に記載の復号器。
前記復号器(40)は、前記エントロピー復号の依存が、そのスペクトル位置のスペクトル拡散が前記スペクトルの形状に関する前記情報に依存して調整される複数の前もって復号されたスペクトル係数(o)を含むように構成されている請求項1から4のいずれか一項に記載の復号器。
エントロピー復号による前記現在復号すべきスペクトル係数の復号において、前記前もって復号されたスペクトル係数をスカラー関数(82)に従わせることによって、前記現在復号すべきスペクトル係数のための確率分布推定値(56)を求め、前記エントロピー復号に前記確率分布推定値を使用するように構成されている請求項1から6のいずれか一項に記載の復号器。
前記復号器は、前記現在復号すべきスペクトル係数をスペクトル的に及び/又は時間的に予測し、前記エントロピー復号を介して得られる予測残差で前記スペクトル的な及び/又は時間的な予測を補正することにより、前記現在復号すべきスペクトル係数を復号するように構成されている請求項1から8のいずれか一項に記載の復号器。
請求項1から9のいずれか一項に従ってオーディオ信号のスペクトルのスペクトル係数を復号するように構成されている復号器を備えている変換ベースオーディオ復号器。
前記復号器は、スケール係数(114)を使用して前記スペクトルをスケーリングすることによって、前記スペクトルをスペクトル的に整形するように構成されている請求項10に記載の変換ベースオーディオ復号器。
前記スケール係数が線形予測係数情報によって規定される線形予測合成フィルタに依存した伝達関数を表すように、線形予測分析に基づいて前記スケール係数(114)を決定するように構成されている請求項11に記載の変換ベースオーディオ復号器。
前記線形予測係数情報によって規定される前記線形予測合成フィルタに対する前記伝達関数の依存性は、前記伝達関数が知覚的に重み付けされるようなものである請求項12に記載の変換ベースオーディオ復号器。
前記変換ベースオーディオ復号器は、明示的にシグナリングされた長期予測パラメータによって制御される長期予測高調波又はポストフィルタリングをサポートし、前記変換ベースオーディオ復号器は、前記明示的にシグナリングされる長期予測パラメータから前記スペクトルの形状に関する情報を導出するように構成されている請求項10から14のいずれか一項に記載の変換ベースオーディオ復号器。
前記スペクトルの形状に関する情報の増大に伴って前記相対スペクトル距離(28)が増大するように構成されており、前記スペクトルの形状に関する情報はオーディオ信号のピッチ又は周期性の測度(60)によって構成されている請求項20に記載の復号器。
【発明を実施するための形態】
【0009】
図1は、一実施形態によるスペクトル係数符号化器10を示す。符号化器は、オーディオ信号のスペクトルのスペクトル係数を符号化するように構成されている。
図1は、スペクトログラム12の形態の連続スペクトルを示す。より正確に言うと、スペクトル係数14は、時間軸t及び周波数軸fに沿ってスペクトル時間的に配置されているボックスとして示されている。スペクトル時間分解能は一定に維持することが可能であるが、
図1は、スペクトル時間分解能が経時的に変化し得ることを示しており、1つのそのような時刻が
図1において16で示されている。このスペクトログラム12は、スペクトル分解変換の結果であり得る。スペクトル分解変換は、例えば、MDCT又は何らかの他の実数値臨界サンプル変換のような臨界サンプル変換等の、重複変換のような、複数の異なる時刻においてオーディオ信号18に適用される。その限りにおいて、スペクトログラム12は、それぞれが同じ時刻に属する変換係数の系列から構成されるスペクトル20の形態で、スペクトル係数符号化器10によって受信され得る。したがって、スペクトル20はスペクトログラムのスペクトルスライスを表し、
図1では、スペクトログラム12の個々の列として示されている。各スペクトルは、変換係数14の系列によって構成され、例えば、何らかの窓関数24を使用してオーディオ信号18の対応する時間フレーム22から導出されている。特に、時間フレーム22は、前述した時刻に連続して配置されており、スペクトル20の時間系列と関連付けられている。それらは、
図1において示されているように、ちょうど対応する変換窓24がそうであり得るように、互いに重なり得る。すなわち、本明細書において使用される場合、「スペクトル」とは、同じ時刻に属するスペクトル係数を指し、したがって、周波数分解である。「スペクトログラム」は、連続スペクトルから作成される時間周波数分解であり、「Spectra」は複数のスペクトルである。ただし、「スペクトル」がスペクトログラムの同意語として使用されることがある。元の信号が時間領域にあり、変換が周波数変換である場合、「変換係数」は「スペクトル係数」の同意語として使用される。
【0010】
ちょうど概説したように、スペクトル係数符号化器10は、オーディオ信号18のスペクトログラム12のスペクトル係数14を符号化するためのものである。この目的のために、符号化器は所定のコード化/復号順序を適用することができる。当該順序は、例えば、
図1において26で概ね示されているように、1つのスペクトル20内で低周波数から高周波数へとスペクトル的にスペクトル係数14を走査し、その後、時間的に後続するスペクトル20のスペクトル係数へ進むスペクトル時間経路に沿ってスペクトル係数14を通過する。
【0011】
下記により詳細に概説するように、符号化器10は、
図1において小さい円によって例示的に示されている1つ又は複数の前もって符号化されたスペクトル係数にコンテキスト適応的に依存してエントロピー符号化することによって、現在符号化すべきスペクトル係数を符号化するように構成されている。現在符号化すべきスペクトル係数は
図1において小さいx印によって示されている。特に、符号化器10は、スペクトルの形状に関する情報に依存して、以前符号化されたスペクトル係数と現在符号化されているスペクトル係数との間の相対スペクトル距離を調整するように構成されている。その依存関係及びスペクトルの形状に関する情報に関して、詳細を、ちょうど言及した情報に依存した相対スペクトル距離28の適合によって得られる利点に関する考慮事項とともに、以下において説明される。
【0012】
言い換えれば、スペクトル係数符号化器10は、スペクトル係数14を連続的に符号化してデータストリーム30にする。以下により詳細に概説するように、スペクトル係数符号化器10は、変換ベース符号化器の一部分であってもよい。変換ベース符号化器は、データストリーム30がオーディオ信号18を再構築することを可能にするように、スペクトル係数14に加えて、さらなる情報をデータストリーム30に符号化する。
【0013】
図2は、
図1のスペクトル係数符号化器10に適合しているスペクトル係数復号器40を示す。スペクトル係数復号器40の機能は、実質的に
図1のスペクトル係数符号化器10の逆である。スペクトル係数復号器40は、スペクトル12のスペクトル係数14を、例えば復号順序26を使用して、連続的に復号する。
図2内で小さいx印を使用して例示的に示されている、エントロピー復号による現在復号すべきスペクトル係数の復号において、スペクトル係数復号器40は、同じく
図2において小さい円を使用して示されている1つ又は複数の前もって復号されたスペクトル係数にコンテキスト適応的に依存してエントロピー復号を実施する。これを行うにあたって、スペクトル係数復号器40は、スペクトル12の形状に関する前述した情報に依存して、前もって復号されたスペクトル係数と現在復号すべきスペクトル係数との間の相対スペクトル距離28を調整する。上記で示したのと同じように、スペクトル係数復号器40は、データストリーム30からオーディオ信号18を再構築するように構成されている変換ベース復号器の一部分であってもよく、スペクトル係数復号器40は、エントロピー復号を使用してデータストリーム30からスペクトル係数14を復号する。後者の変換ベース復号器は、再構築の一環として、スペクトル12に、例えば逆重複変換のような逆変換を受けさせることができる。逆変換は、例えば、例として重畳加算プロセスによって、スペクトル分解変換からもたらされるエイリアシングを除去するオーバーラップ窓時間フレーム22の系列の再構築をもたらす。
【0014】
以下においてより詳細に説明するように、スペクトル12の形状に関する情報に依存した相対スペクトル距離28の調整によりもたらされる利点は、現在のスペクトル係数xをエントロピー符号化/復号するために使用される確率分布推定値を改善することができるかどうかによる。確率分布推定値が良好であればあるほど、エントロピーコード化はより効率的になる、すなわち、より圧縮される。「確率分布推定値」は、現在のスペクトル係数14の実際の確率分布の推定値、すなわち、現在のスペクトル係数14が仮定し得る値の領域の各値に確率を割り当てる関数である。スペクトル12の形状に関する情報を利用することによって現在のスペクトル係数xの近接スペクトルから確率分布推定値を導出することが可能になり、これによって現在のスペクトル係数xの確率分布のより正確な推定が可能になるため、距離28の適合がスペクトル12の形状に依存することに起因して、実際の確率分布により近密に対応するように、確率分布推定値を決定することができる。これに関連する詳細は、スペクトル12の形状に関する情報の例とともに以下に提示する。
【0015】
前述したスペクトル12の形状に関する情報の具体例に進む前に、
図3及び
図4は、それぞれスペクトル係数符号化器10及びスペクトル係数復号器40の可能性のある内部構造を示す。特に、
図3に示すように、スペクトル係数符号化器10は、確率分布推定値導出器42及びエントロピー符号化エンジン44から構成することができ、同様に、スペクトル係数復号器40は、確率分布推定値導出器52及びエントロピー復号エンジン54から構成することができる。確率分布推定値導出器42及び52は、同じように動作する。すなわち、それらは、1つ又は複数の前もって復号/符号化されたスペクトル係数oの値に基づいて、現在のスペクトル係数xをエントロピー復号/符号化するための確率分布推定値56を導出する。特に、エントロピー符号化/復号エンジン44/54は、導出器42/52から確率分布推定値を受信し、それに従って、現在のスペクトル係数xについてエントロピー符号化/復号を実施する。
【0016】
エントロピー符号化/復号エンジン44/54は、現在のスペクトル係数xの符号化/復号のための、例えばハフマン符号化のような可変長符号化を使用することができ、これに関連して、エンジン44/54は、異なる確率分布推定値56に対して異なるVLC(可変長符号化)テーブルを使用することができる。代替的に、エンジン44/54は、確率分布推定値56を用いて、現在のスペクトル係数xについて算術符号化/復号を使用してもよい。確率分布推定値56は、算術コード化/復号エンジン44/54の内部状態を表す現在の確率区間の確率区間分割を制御する。各部分区間が、現在のスペクトル係数xによって仮定され得る値の目標範囲からの異なる可能な値に割り当てられる。以下において詳細に概説するように、エントロピー符号化エンジン44及びエントロピー復号エンジン54は、スペクトル係数14の値範囲全体を、限定された整数値区間、すなわち、[0...2
N-1]のような目標範囲にマッピングするために、エスケープメカニズムを使用することができる。目標範囲内の整数値の集合、すなわち、{0,...,2
N-1}が、エスケープシンボル{esc}とともに、算術符号化/復号エンジン44/54のシンボル文字、すなわち、{0,...,2
N-1, esc}を定義する。例えば、エントロピー符号化エンジン44は、入来スペクトル係数xを前述した目標間隔[0...2
N-1] 内に入れるために、必要であれば、当該スペクトル係数xに必要な回数だけ2による除算を受けさせ、除算する毎に、エスケープシンボルがデータストリーム30へと符号化され、その後、除算した余り、又は、除算が必要でない場合は元のスペクトル値がデータストリーム30へと算術符号化される。翻って、エントロピー復号エンジン54は、以下のようにエスケープメカニズムを実施する。すなわち、エントロピー復号エンジン54は、データストリーム30から現在のスペクトル係数xを、0個、1個又はより多くのエスケープシンボルesc及びそれに後続する非エスケープシンボルの系列、すなわち、{a},{esc, a},{esc, esc, a}...のうちの1つとして復号する。aは非エスケープシンボルである。エントロピー復号エンジン54は、例えば、非エスケープシンボルを算術復号することによって目標範囲[0...2
N-1]内の値aを求め、現在のスペクトル係数の値を、エスケープシンボルの数のa+2倍に等しくなるように計算することによって、xの係数値を導出する。
【0017】
確率分布推定値56の使用、及び現在のスペクトル係数xを表すために使用されるシンボルの系列への確率分布推定値56の適用について、異なる可能性が存在する。すなわち、確率分布推定値は、例えば、スペクトル係数xのためにデータストリーム30内で搬送される任意のシンボル、すなわち、非エスケープシンボルはもちろん、存在する場合は任意のエスケープシンボルに適用されてもよい。代替的に、確率分布推定値56は、0個以上のエスケープシンボルの系列の最初のシンボル又は最初の2つのシンボル又は最初のn<N個のシンボルのみに使用され、その後非エスケープシンボルでシンボルの系列の任意の後続するシンボルについては、例えば、等しい確率分布のような何らかのデフォルトの確率分布推定値が使用される。
【0018】
図5は、スペクトログラム12からの例示的なスペクトル20を示す。特に、スペクトル係数の大きさが、
図5においてy軸に沿って任意の単位でプロットされ、一方で、水平x軸は任意の単位の周波数に対応する。すでに述べたように、
図5におけるスペクトル20は、特定の時刻におけるオーディオ信号のスペクトログラム上のスペクトルスライスに対応し、スペクトログラム12は、そのようなスペクトル20の系列から構成される。
図5はまた、現在のスペクトル係数xのスペクトル位置をも示す。
【0019】
以下において詳細に概説するように、スペクトル20はオーディオ信号の重み付けされていないスペクトルであってもよいが、以下においてさらに概説する実施形態によれば、例えば、スペクトル20は、知覚合成フィルタ関数の逆関数(inverse)に対応する伝達関数を使用してすでに知覚的に重み付けされている。しかしながら、本出願は、以下においてさらに概説する特定の事例には限定されない。
【0020】
いずれにせよ、
図5は、周波数軸に沿った特定の周期を有するスペクトル20を示す。周波数軸は、周波数方向に沿ったスペクトルにおける極大及び極小の略等距離配置となっている。例示のみを目的として、
図5は、その間に現在のスペクトル係数xが位置付けられているスペクトルの極大の間のスペクトル距離によって定義されるものとして、オーディオ信号のピッチ又は周期性の測度60を示す。当然ながら、測度60は、極大及び/若しくは極小の間の平均ピッチ、又は時間領域信号18の自己相関関数において測定される時間遅延最大値に相当する周波数距離のように、別様に定義され、決定されてもよい。
【0021】
一実施形態によれば、測度60は、スペクトルの形状に関する情報であるか、又はスペクトルの形状に関する情報によって構成される。符号化器10及び復号器40、又はより正確に言うと、確率分布推定値導出器42/52は、例えば、この測度60に依存して、以前のスペクトル係数oと現在のスペクトル係数xとの間の相対スペクトル距離を調整し得る。例えば、相対スペクトル距離28は、測度60が増大するのに伴って距離28が増大するように、測度60に依存して変化し得る。例えば、距離28を、測度60に等しくなるように、又は、その整数倍になるように設定することが好適であり得る。
【0022】
以下において詳細に説明するように、スペクトル12の形状に関する情報がどのようにして復号器に利用可能になるかについては複数の別の可能性がある。通常、測度60のようなこの情報は、スペクトルの形状に関する情報を実際に決定する符号化器10又は確率分布推定値導出器42のみによって明示的に復号器にシグナリングすることができ、又は、スペクトルの形状に関する情報の決定は、スペクトルの前もって復号された部分に基づいて符号器側及び復号器側で並行して実施されるか、又は、すでにビットストリーム内に書き込まれている別の情報から推定することができる。
【0023】
異なる用語を使用すると、測度60は、スペクトル内の前述した極大又は山が互いに高調波を形成することができるため、「高調波間距離の測度」として解釈することもできる。
【0024】
図6は、スペクトルの形状に関する情報の他の例を示す。スペクトル距離28は、スペクトルの形状に関する情報に基づいて、単独で、又は前述したような測度60のような別の測度とともに調整することができる。特に、
図6は、符号化器10及び復号器40によって符号化/復号されたスペクトル係数によって表されるスペクトル12が、知覚的に重み付けされた合成フィルタ関数の逆関数を使用して重み付けされている例示的な事例を示す。スペクトル12のスペクトルスライスは
図6に示されている。すなわち、元のオーディオ信号及び最終的に再構築されたオーディオ信号のスペクトルが、
図6において62で示されている。プリエンファシスされたバージョン(pre-emphasized version)が、点線により64で示されている。プリエンファシスされたバージョン64の線形予測推定スペクトル包絡線が一点鎖線66で示されており、その知覚的に修正されたバージョン、すなわち、知覚によって動機付けられた合成フィルタ関数の伝達関数が、二点鎖線を使用して
図6において68で示されている。スペクトル12は、知覚的に重み付けされた合成フィルタ関数68の逆関数を用いて、元のオーディオ信号スペクトル62のプリエンファシスされたバージョンをフィルタリングした結果であり得る。いずれにせよ、符号化器及び復号器の両方がスペクトル包絡線66にアクセスすることができ、このとき、スペクトル包絡線66は、おおよそ明白なフォルマント70又はバレー72を有し得る。本出願の代替的な実施形態によれば、スペクトルの形状に関する情報は、少なくとも部分的に、スペクトル12のスペクトル包絡線66のこれらのフォルマント70及び/又はバレー72の相対位置に基づいて定義される。例えば、フォルマント70の間のスペクトル距離74を使用して、現在のスペクトル係数xと以前のスペクトル係数oとの間の前述した相対スペクトル距離28を設定することができる。例えば、距離28は好ましくは、距離74に等しくなるように、又は、その整数倍になるように設定することができるが、代替形態も実現可能である。
【0025】
図6に示されているようなLPベースの包絡線の代わりに、スペクトル包絡線はまた、別様に定義されてもよい。例えば、包絡線は、スケール係数を用いて定義され、データストリーム内で送信されてもよい。包絡線を送信する他の方法もまた使用されてもよい。
【0026】
図5及び
図6に関連して上記で概説した様式での距離28の調整に起因して、「基準」スペクトル係数oの値は、例えば、スペクトル的に現在のスペクトル係数xのより近くに存在する他のスペクトル係数と比較して、現在のスペクトル係数xの確率分布推定値を推定するための、実質的に良好なヒントを表す。これに関連して、コンテキストモデル化はほとんどの事例において、一方のエントロピーコード化複雑度と、他方のコード化効率との間の妥協点であることが留意されるべきである。したがって、これまで説明してきた実施形態は、例えば、測度60の増大及び/又はフォルマント間距離74の増大に伴って距離28が増大するような、スペクトルの形状に関する情報に依存した相対スペクトル距離28の適合を提案する。しかしながら、それに基づいてエントロピーコード化/復号のコンテキスト適合が実施される以前の係数oの数は一定であってもよい。すなわち、増大しなくてもよい。それに基づいてコンテキスト適合が実施される以前のスペクトル係数oの数は、例えば、スペクトルの形状に関する情報の変化にかかわりなく一定であってもよい。これは、上記で概説した様式における相対スペクトル距離28の適合が、コンテキストモデル化の実施のオーバヘッドを大幅に増大させることなく、エントロピー符号化/復号をより良好に又はより効率的なものへと導くことを意味する。スペクトル距離28の適合自体だけが、コンテキストモデル化オーバヘッドを増大させる。
【0027】
ちょうど言及した問題をより詳細に例示するために、
図7を参照する。
図7は、スペクトログラム12からのスペクトル時間部分を示しており、当該スペクトル時間部分は、コード化/復号すべき現在のスペクトル係数14を含む。さらに、
図7は、例示的に5つの以前コード化/復号されたスペクトル係数oのテンプレートを示しており、それに基づいて、現在のスペクトル係数xのエントロピーコード化/復号のためのコンテキストモデル化が実施される。テンプレートは、現在のスペクトル係数xの位置に位置付けられており、近接する基準スペクトル係数oを表す。前述したスペクトルの形状に関する情報に依存して、これらの基準スペクトル係数oのスペクトル位置のスペクトル拡散が適合される。これは、
図7において、双頭矢印80、及び、例えば、適合80に依存して基準スペクトル係数のスペクトル位置のスペクトル拡散をスケーリングする事例において基準スペクトル係数の位置を例示的に示す網掛けの小さい円を使用して示されている。すなわち、
図7は、コンテキストモデル化に寄与する基準スペクトル係数の数、すなわち、現在のスペクトル係数xの周囲にあって基準スペクトル係数oを識別するテンプレートの基準スペクトル係数の数が、スペクトルの形状に関する情報のいかなる変化にもかかわりなく一定のままであることを示している。これらの基準スペクトル係数と現在のスペクトル係数との間の相対スペクトル距離のみが、80に従って、かつ基準スペクトル係数自体の間の距離に本質的に従って、適合される。しかしながら、基準スペクトル係数oの数は必ずしも一定のままであるとは限らないことが留意される。一実施形態によれば、基準スペクトル係数の数は、相対スペクトル距離が増大するのに伴って増大し得る。一方、その反対も実現可能である。
【0028】
図7は、現在のスペクトル係数xのコンテキストモデル化が、先行するスペクトル/時間フレームに対応して前もってコード化/復号されたスペクトル係数をも含む例示的な事例を示していることが留意される。しかしながら、これはまた、単に一例として理解されるべきでもあり、そのような時間的に先行する前もってコード化/復号されたスペクトル係数に対する依存は、さらなる実施形態によれば放棄されてもよい。
図8は、確率分布推定値導出器42/52が、1つ又は複数の基準スペクトル係数oに基づいて、現在のスペクトル係数の確率分布推定値をどのように決定することができるかを示す。
図8に示すように、この目的のために、1つ又は複数の基準スペクトル係数oは、スカラー関数82に従い得る。スカラー関数に基づいて、例えば、1つ又は複数の基準スペクトル係数oが、利用可能な確率分布推定値の集合からの、現在のスペクトル係数xに使用されるべき確率分布推定値をインデックス付けするインデックスにマッピングされる。すでに上述したように、利用可能な確率分布推定値は、例えば、算術コード化の事例においてはシンボル文字の異なる確率区間分割に、又は、可変長符号化を使用する事例においては異なる可変長符号化テーブルに対応し得る。
【0029】
上述したスペクトル係数符号化器/復号器の、それぞれの変換ベース符号化器/復号器への可能な統合の説明に進む前に、本明細書では、以下において、これまで説明してきた実施形態がどのように変更され得るかに関するいくつかの可能性を論じる。例えば、
図3及び
図4に関連して上記で簡潔に概説したエスケープメカニズムは例示のみを目的として選択されており、代替的な実施形態によれば放棄されてもよい。下記に説明する実施形態においては、エスケープメカニズムは使用される。その上、以下において概説するさらに限定的な実施形態の説明から明らかになるように、スペクトル係数を個々に符号化/復号する代わりに、スペクトル係数はnタプル単位で、すなわち、スペクトル的に直に近接するn個のスペクトル係数の単位で符号化/復号されてもよい。この事例において、相対スペクトル距離の決定はまた、そのようなnタプル単位で、又は、個々のスペクトル係数の単位で決定されてもよい。
図8のスカラー関数82に関連して、スカラー関数は算術関数又は論理関数であってもよいことが留意される。その上、基準スカラー係数oに対し特別な測度が利用され得る。その基準スカラー係数oは、例えばスペクトルの周波数範囲を超えていることに起因して、又は、例えば現在のスペクトル係数に対応する時刻においてスペクトルがサンプリングされたスペクトル時間分解能とは異なるスペクトル時間分解能においてスペクトル係数によってサンプリングされたスペクトルの部分内に存在することに起因して利用不可能なものである。利用不可能な基準スペクトル値oの値は、例えば、デフォルト値に置き換えられ、その後、他の(利用可能な)基準スペクトル係数とともにスカラー関数82に入力されてもよい。上記で概説したスペクトル距離適合を使用してエントロピーコード化/復号が機能し得る別の方法は以下の通りである。すなわち、例えば、現在のスペクトル係数が2値化を受け得る。例えば、スペクトル係数xは、ビンの系列にマッピングされ得、これらのビンはその後、相対スペクトル距離適合の適合を使用してエントロピー符号化される。復号されるとき、ビンは、有効なビン系列に行き当たるまで連続的にエントロピー復号されることになり、その後、現在のスペクトル係数xのそれぞれの値に再マッピングされ得る。
【0030】
さらに、1つ又は複数の以前のスペクトル係数oに依存したコンテキスト適合は、
図8に示すものとは別様に実施されてもよい。特に、スカラー関数82は、利用可能なコンテキストの集合から1つのコンテキストをインデックス付けするために使用することができ、各コンテキストは、それと関連付けられている確率分布推定値を有していてもよい。その事例において、特定のコンテキストと関連付けられる確率分布推定値は、現在符号化/復号されているスペクトル係数xがそれぞれのコンテキストに割り当てられるたびに、すなわち、この現在のスペクトル係数xの値を使用して、実際のスペクトル係数統計に適合され得る。
【0031】
最後に、
図9a及び
図9bは、スペクトルの形状に関する情報の導出が符号化器と復号器との間でどのように同期され得るかに関する異なる可能性を示す。
図9aは、それに従って、符号化器と復号器との間でスペクトルの形状に関する情報の導出を同期させるように、黙示的シグナリングが使用される可能性を示す。ここで、符号化側及び復号側の両方において、情報の導出は、それぞれビットストリーム30の以前コード化された部分又は前もって復号された部分に基づいて実施され、符号化側における導出は参照符号83を使用して示されており、復号側における導出は参照符号84を使用して示されている。両方の導出は、例えば、導出器42及び52自体によって実施されてもよい。
【0032】
図9bは、それに従って、スペクトルの形状に関する情報を符号化器から復号器へと搬送するために明示的シグナリングが使用される可能性を示している。符号化側における導出83はさらには、コード化損失に起因して復号側では利用可能でないその成分を含む元のオーディオ信号の分析さえも伴う場合がある。そうではなく、データストリーム30内での明示的シグナリングは、スペクトルの形状に関する情報を、復号側で利用可能にするために使用される。言い換えれば、復号側における導出84は、スペクトルの形状に関する情報にアクセスすることができるように、データストリーム30内での明示的シグナリングを使用する。明示的シグナリング30は、差別的にコード化することを含み得る。以下において詳細に概説するように、例えば他の目的のためにデータストリーム30内ですでに利用可能なLTP(長期予測)ラグパラメータを、スペクトルの形状に関する情報として使用することができる。一方、代替的に、
図9bの明示的シグナリングは、すでに利用可能なLTPラグパラメータに関係して、すなわちLTPラグパラメータに対して差別的に、測度60を差別的にコード化してもよい。スペクトルの形状に関する情報を、復号側にとって利用可能にするために、多くの他の可能性が存在する。
上記で提示した代替的な実施形態に加えて、スペクトル係数の符号化/復号は、エントロピー符号化/復号に加えて、現在符号化/復号すべきスペクトル係数をスペクトル的に及び/又は時間的に予測することを含み得ることが留意される。その後、予測残差が、上述したようなエントロピー符号化/復号を受け得る。
【0033】
スペクトル係数符号化器及び復号器の様々な実施形態を説明した後、以下において、当該符号化器及び復号器が変換ベース符号化器/復号器にどのように有利に組み込まれ得るかについて、いくつかの実施形態を説明する。
【0034】
図10aは、例えば、本出願の一実施形態による変換ベースオーディオ符号化器を示す。
図10aの変換ベースオーディオ符号化器は、全体的に参照符号100を使用して示されており、スペクトルコンピュータ102を備え、
図1のスペクトル係数符号化器10がそれに後続している。スペクトルコンピュータ102はオーディオ信号18を受信し、これに基づいてスペクトル12を計算し、そのスペクトル係数が、上述したようにスペクトル係数符号化器10によってデータストリーム30に符号化される。
図10bは、対応する復号器104の構造を示す。復号器104は、上記で概説したように形成される、連結されたスペクトル係数復号器40を備え、
図10a及び
図10bの事例において、スペクトルコンピュータ102は、例えば、スペクトル20への重複変換を実施するだけであってもよく、スペクトル−時間領域コンピュータ106は、それに対応して重複変換の逆を実施するだけである。スペクトル係数符号化器10は、入力されるスペクトル20を損失なく符号化するように構成することができる。それに比べると、スペクトルコンピュータ102は、量子化に起因するコード化損失をもたらす場合がある。
【0035】
量子化雑音をスペクトル的に整形するために、スペクトルコンピュータ102は、
図11aに示すように具現化することができる。ここで、スペクトル12は、スケール係数を使用してスペクトル的に整形される。特に、
図11aによれば、スペクトルコンピュータ102は、連結された変換器108及びスペクトル整形器110を備え、そのうち、変換器108は、入力されたオーディオ信号18に、オーディオ信号18の未整形スペクトル112を得るようにスペクトル分解変換を受けさせ、スペクトル整形器110は、最終的にスペクトル係数符号化器10によって符号化されるスペクトル12を得るように、スペクトルコンピュータ102のスケール係数決定器116から得られるスケール係数114を使用してこの未整形スペクトル112をスペクトル的に整形する。例えば、スペクトル整形器110は、スケール係数決定器116からスケール係数帯域あたり1つのスケール係数114を取得し、スペクトル12を受信するように、それぞれのスケール係数帯域の各スペクトル係数を、それぞれのスケール係数帯域と関連付けられるスケール係数で除算する。スケール係数決定器116は、オーディオ信号18に基づいてスケール係数を決定するように、知覚モデルによって駆動されてもよい。代わりに、線形予測係数情報によって定義される線形予測合成フィルタに依存した伝達関数をスケール係数が表すように、スケール係数決定器116が線形予測分析に基づいてスケール係数を決定してもよい。線形予測係数情報118は、スペクトル20のスペクトル係数とともに符号化器10によってデータストリーム30にコード化される。完全を期すために、その後スペクトル係数符号化器10によって損失なくコード化される量子化スペクトル係数を用いてスペクトル12を得るように、
図11aは、量子化器120をスペクトル整形器110の下流に位置付けられているものとして示している。
【0036】
図11bは、
図10aの符号化器に対応する復号器を示す。ここで、スペクトル−時間領域コンピュータ106はスケール係数決定器122を備える。スケール係数決定器122は、スケール係数が線形予測係数情報118によって定義される線形予測合成フィルタに依存した伝達関数を表すように、データストリーム30内に含まれる線形予測係数情報118に基づいてスケール係数114を再構築する。スペクトル整形器は、スケール係数114に従って、データストリーム30から復号器40によって復号されるものとしてのスペクトル12をスペクトル的に整形する。すなわち、スペクトル整形器124は、それぞれのスケール係数帯域のスケール係数を使用して各スペクトル帯域内のスケール係数をスケーリングする。したがって、スペクトル整形器124の出力において、結果としてオーディオ信号18の未整形スペクトル112が再構築される。そして、
図11bにおいて破線で示されているように、オーディオ信号18を時間領域において再構築するように逆変換器126によってスペクトル112への逆変換を適用することは任意である。
【0037】
図12aは、線形予測ベースのスペクトル整形を使用する事例における、
図11aの変換ベースオーディオ符号化器のより詳細な実施形態を示す。
図11aに示す構成要素に加えて、
図12aの符号化器は、入力されるオーディオ信号18に、最初にプリエンファシスフィルタリングを受けさせるプリエンファシスフィルタ128を備える。プリエンファシスフィルタ128は、例えば、FIRフィルタとして実装されてもよい。プリエンファシスフィルタ128の伝達関数は、例えば、ハイパス伝達関数を表してもよい。一実施形態によれば、プリエンファシスフィルタ128は、例えば、伝達関数H(z)=1 - αz
-1を有する一次ハイパスフィルタのようなn次ハイパスフィルタとして具現化され、αは例えば、0.68に設定されている。したがって、プリエンファシスフィルタ128の出力において、オーディオ信号18のプリエンファシスされたバージョン130がもたらされる。さらに、
図12aは、LP(線形予測)分析器132及び線形予測係数−スケール係数変換器134から構成されているものとして、スケール係数決定器116を示す。LPC分析器132は、オーディオ信号18のプリエンファシスされたバージョンに基づいて線形予測係数情報118をコンピュータ(computer)する。したがって、情報118の線形予測係数は、オーディオ信号18の線形予測ベースのスペクトル包絡線、又はより正確に言うと、オーディオ信号18のプリエンファシスされたバージョン130の線形予測ベースのスペクトル包絡線を表す。LP分析器132の動作モードは、例えば、LP分析されるべき信号130のウィンドウィング部分の系列を得るための、入力される信号130のウィンドウィングと、各ウィンドウィング部分の自己相関を決定するための自己相関決定と、ラグウィンドウ関数を自己相関へと適用するための、任意なラグウィンドウィングと、を含んでいてもよい。その後、自己相関、又はラグウィンドウ出力、すなわちウィンドウィングされた自己相関関数に対し、線形予測パラメータ推定が実施されてもよい。線形予測パラメータ推定は、例えば、自己相関ごとに、すなわち信号130のウィンドウィング部分ごとに線形予測係数を導出するための、(ラグウィンドウィングされた)自己相関に対するWiener-Levinson-Durbin又は他の適切なアルゴリズムの実施を含んでもよい。すなわち、LP分析器132の出力において、LPC係数118がもたらされる。LP分析器132は、線形予測係数を、データストリーム30に挿入するために量子化するように構成されていてもよい。線形予測係数の量子化は、例えば、線スペクトル対又は線スペクトル周波数領域のような、線形予測係数領域とは別の領域において実施されてもよい。しかし、Wiener-Levinson-Durbinアルゴリズム以外のアルゴリズムもまた使用されてもよい。
【0038】
線形予測係数−スケール係数変換器134は、線形予測係数をスケール係数114に変換する。変換器134は、線形予測係数情報118によって定義されるものである線形予測合成フィルタの逆数1/A(z)に対応するように、スケール係数140を決定してもよい。代わりに、変換器134は、例えば、例として1/A(γ・z)、γ = 0.92 ± 10%、のような、この線形予測合成フィルタの知覚によって動機付けられた改変に従うように、スケール係数を決定する。線形予測合成フィルタの知覚によって動機付けられた改変、すなわち、1/A(γ・z)は、「知覚モデル」と呼ばれる場合がある。
【0039】
例示を目的として、
図12aは別の要素を示すが、これは
図12aの実施形態にとっては任意である。この要素は、オーディオ信号が長期予測を受けるように、変換器108から上流に位置付けられているLTP(長期予測)フィルタ136である。好ましくは、LP分析器132は、非長期予測フィルタリングバージョンに対して動作する。言い換えれば、LTPフィルタ136は、オーディオ信号18又はそのプリエンファシスされたバージョン130に対してLTP予測を実施し、LTP残差バージョン138を出力し、それによって、変換器108がプリエンファシス及びLTP予測された残差信号138に対して変換を実施する。LTPフィルタは、例えば、FIRフィルタとして実装されてもよく、LTPフィルタ136は、例えば、LTP予測利得及びLTPラグを含むLTPパラメータによって制御することができる。両方のLTPパラメータ140がデータストリーム30にコード化される。以下において詳細に概説するように、LTP利得は、LTPフィルタリングなしでそれ自体をスペクトル12で完全に明示するピッチ又は周期性を示し、LTPフィルタリングを使用して、LTPフィルタ136によってLTPフィルタリングの強度を制御するLTP利得パラメータに依存した低減の度合いで徐々に低減する強度において、スペクトル12内に生じるため、測度60の一例を表す。
【0040】
図12bは、完全を期すために、
図12aの符号化器に適合する復号器を示す。
図11bの構成要素に加えて、さらには、スケール係数決定器122がLPC−スケール係数変換器142として具現化されるという事実に加えて、
図12bの復号器は、逆変換器126の下流に、逆変換器126によって出力される逆変換に重畳加算プロセスを受けさせる重畳加算段144を備え、それによって、プリエンファシスされLTPフィルタリングされたバージョン138の再構築が得られる。この再構築はその後、LTPポストフィルタリングを受ける。ここで、LTPポストフィルタ146は、その伝達関数がLTPフィルタ136の伝達関数の逆関数に対応する。LTPポストフィルタ146は、例えば、IIRフィルタの形態で実装されてもよい。LTPポストフィルタ146に続いて、
図12bの復号器は、
図12bにおいて例示的に、その下流にディエンファシスフィルタ148を備える。ディエンファシスフィルタ148は、プリエンファシスフィルタ128の伝達関数の逆関数に対応する伝達関数を使用して、時間領域信号に対してディエンファシスフィルタリングを実施する。ディエンファシスフィルタ148もまた、IIRフィルタの形態で具現化されてもよい。オーディオ信号18が、エンファシスフィルタ148の出力においてもたらされる。
【0041】
言い換えれば、上述した実施形態は、算術コード化器コンテキストのようなエントロピーコード化器コンテキストの設計を、信号の周期性のような信号のスペクトルの形状に適合させることによって、トーナル信号及び周波数領域をコード化する可能性を提供する。上述した実施形態は、率直に言えば、近接の概念を超えてコンテキストを拡張し、ピッチ情報に基づくような、オーディオ信号スペクトルの形状に基づいた適応的コンテキスト設計を提案する。そのようなピッチ情報は、加えて復号器に送信されてもよいし、上述したLTP利得のように、他のコード化モジュールからすでに利用可能であってもよい。コンテキストはその後、すでにコード化された係数を指摘するためにマッピングされる。その係数は、入力信号の基本周波数の倍数又はそれに比例する距離によってコード化するために、現在の係数に関係付けられる。
【0042】
図12及び
図12bに従って使用されるLTPプレ/ポストフィルタ概念は、高調波ポストフィルタ概念に置き換えられてもよいことに留意すべきである。当該高調波ポストフィルタ概念によれば、復号器にある高調波ポストフィルタは、符号化器からデータストリーム30を介して復号器に送信されるピッチ(又はピッチ−ラグ)を含むLTPパラメータによって制御される。LTPパラメータは、前述したスペクトルの形状に関する情報を、明示的シグナリングを使用して復号器に別様に送信するための基準として使用することができる。
【0043】
上記で概説した実施形態の方法により、トーナル信号についての予測を放棄することができ、それによって、例えば、望ましくないフレーム間依存が導入されることが回避される。他方、予測残差は依然として何らかの高調波構造を示すため、上記のスペクトル係数のコード化/復号の概念はまた、任意の予測技法と組み合わせることもできる。
【0044】
他の文言を使用して、上述した実施形態を、添付の図面を参照して再び例示する。中でも、
図13は、上記で概説したスペクトル距離適合概念を使用した符号化プロセスの一般的なブロック図を示す。以下の説明とこれまで行ってきた説明との間の一致を容易にするために、参照符号は部分的に再使用する。
【0045】
入力信号18は、まずTD(TD=時間領域)モジュール200内の雑音整形/予測に送られる。モジュール200は、例えば、
図12aの要素128及び136の一方又は両方を包含する。このモジュール200は回避することができ、又は、LPCコード化の使用による短期予測及び/若しくは
図12aに示すような長期予測を実行することができる。すべての種類の予測を構想することができる。それらの時間領域処理の1つが、LTPフィルタ136によって出力されるLTPラグパラメータを用いて上記で簡潔に概説したようなピッチ情報を利用し送信する場合、ピッチベースのコンテキストマッピングのために、そのような情報をその後コンテキストベース算術コード化器モジュールに搬送ことができる。
【0046】
その後、残差及び整形済み時間領域信号202が、変換器108によって、時間−周波数変換を用いて周波数領域へと変換される。DFT又はMDCTを使用することができる。変換長は適用性のあるものとなることができ、遅延を低くするために、先行する変換窓及び次の変換窓との低オーバーラップ領域(cp.24)が使用される。本明細書の残りの部分においては、MDCTを説明例として使用する。
【0047】
変換済み信号112はその後、モジュール204によって周波数領域において整形される。したがって、モジュール204は、例えば、スケール係数決定器116及びスペクトル整形器110を使用して実現される。これは、LPC係数の周波数応答によってなすことができ、かつ心理音響モデルによって駆動されるスケール係数によってなすことができる。時間雑音整形(TNS)、又はピッチ情報を利用し送信する周波数領域予測を適用することも可能である。そのような事例において、ピッチ情報は、ピッチベースのコンテキストマッピングに照らしてコンテキストベース算術コード化モジュールに搬送ことができる。後者の可能性はまた、それぞれ
図10a〜
図12bの上記の実施形態に適用されてもよい。
【0048】
出力スペクトル係数はその後、量子化段120によって量子化された後、コンテキストベースエントロピーコード化器10によって雑音なくコード化される。上述したように、この最後のモジュール10は、例えば、オーディオ信号のスペクトルに関する情報として、入力信号のピッチ推定値を使用する。そのような情報は、時間領域又は周波数領域のいずれかにおいて事前に実施されている雑音整形/予測モジュール200又は204の一方から引き継ぐことができる。情報が利用可能でない場合、ピッチ推定モジュール206などによって、専用ピッチ推定を入力信号に対して実施することができる。ピッチ推定モジュール206はその後、ピッチ情報をビットストリーム30に入れて送信する。
【0049】
図14は、
図13に対応した復号プロセスの一般的なブロック図を示す。このプロセスは、
図13に記載されているものと逆の処理から構成される。スペクトルの形状に関する情報の一例として、
図13及び
図14の事例で使用されているピッチ情報が最初に復号され、算術復号器40に搬送される。必要であれば、情報は、この情報を必要とする他のモジュールにさらに搬送される。
【0050】
特に、データストリーム30からピッチ情報を復号し、
図9bにおける導出プロセス84を担うピッチ情報復号器208に加え、
図14の復号器は、コンテキストベース復号器40の後に、逆量子化器210、FD(周波数領域)における逆雑音整形/予測モジュール212、逆変換器214、及びTDにおける逆雑音整形/予測モジュール216を、その順に備えている。これらはすべて、そのスペクトル係数が復号器40によってビットストリーム30から復号されるスペクトル12からオーディオ信号18を時間領域で再構築するために、互いに直列に接続される。
図14の要素の、例えば、
図12bに示されているものへのマッピングにおいて、逆変換器214は、
図12bの逆変換器126及び重畳加算段144を包含する。加えて、
図14は、例えば、すべてのスペクトル線にとって等しい量子化ステップ関数を使用して符号化器40により出力される復号済みスペクトル係数に対し、逆量子化が適用され得ることを示している。さらに、
図14は、TNS(時間雑音整形)モジュールのようなモジュール212が、スペクトル整形器124と126との間に位置づけられ得ることを示している。時間領域逆雑音整形/予測モジュール216は、
図12bの要素146及び/又は148を包含する。
【0051】
本出願の実施形態によって提供される利点を再び動機付けるために、
図15は、スペクトル係数のエントロピーコード化のための従来のコンテキストを示す。コンテキストは、コード化すべき現在の係数の過去の近接した係数の制限範囲を網羅する。すなわち、
図15は、例えば、MPEG USACにおいて使用されるものとしての、コンテキスト適合を使用したスペクトル係数のエントロピーコード化の一例を示す。したがって、
図15は、
図1及び
図2と同様にスペクトル係数を示すが、スペクトル的に近接するスペクトル係数が、スペクトル係数のnタプルと呼ばれるクラスタにグループ分け又は分割されている。上記で提示した説明との一貫性をそれにもかかわらず維持しながら、そのようなnタプルを個々のスペクトル係数から区別するために、これらのnタプルは参照符号14'を使用して示される。
図15は、一方においてすでに符号化/復号されたnタプルと、まだコード化/復号されていないnタプルとを、前者の形状を矩形輪郭で、後者の形状を円形輪郭で描くことによって区別する。さらに、現在復号/コード化すべきnタプル14'は網掛けの円形輪郭で描かれている。一方、現在処理すべきnタプルに位置付けられている固定近接テンプレートによって位置特定される、すでにコード化/復号されているnタプル14'も網掛けを使用して示されているが、これらは矩形輪郭を有する。したがって、
図15の例によれば、近接するコンテキストテンプレートは、現在処理すべきnタプルに近接する6つのnタプル14'、すなわち、同じ時刻にあるが直に近接するより低いスペクトル線(複数可)にあるnタプル、すなわちc
0、同じスペクトル線(複数可)にあるが、直に先行する時刻にあるnタプル、すなわちc
1、直に近接するより高いスペクトル線にあり、直に先行する時刻にあるnタプル、すなわちc
2などを識別している。すなわち、
図15に従って使用されるコンテキストテンプレートは、現在処理すべきnタプルに対して固定相対距離にある基準nタプル14'、すなわち、直に近接するnタプルを識別する。
図15によれば、スペクトル係数は例示的に、nタプルと呼ばれるn個のブロック内で考慮される。n個の連続する値を組み合わせることによって、係数間依存関係を利用することが可能になる。次元がより高くなると、コード化すべきnタプルの文字サイズ、それゆえ、コードブックサイズが指数関数的に増大する。n=2の次元が本明細書の残りの部分において例示的に使用され、コード化利得とコードブックサイズとの間の妥協点を表す。すべての実施形態において、コード化は、例えば、符号を別個に考慮する。その上、各係数の2つの最上位ビット及び残りの最下位ビットも、別個に処理され得る。コンテキスト適合は、例えば、符号なしのスペクトル値の2つの最上位ビット(MSB)のみに適用され得る。符号及び最下位ビットは均一に分散されていると仮定され得る。2タプルのMSBの16通りの組み合わせとともに、1つの追加のLSBが復号器によって予測されなければならないことを示すために、エスケープシンボルESCが文字に追加される。追加のLSBと同じ数のESCシンボルが送信される。合計で、17個のシンボルがコードの文字を形成する。本発明は、上述したシンボルを生成する方法には限定されない。
【0052】
後者の具体的な詳細を
図3及び
図4の記載に転用すると、これは、エントロピー符号化/復号エンジン44及び54のシンボル文字が、値{0, 1, 2, 3}+エスケープシンボルを包含することができ、符号化すべき入力スペクトル係数(inbound spectral coefficient)が、3を超える場合に、4よりも小さくなるようにするために必要な回数だけ4で除算され、除算ごとにエスケープシンボルが符号化されることを意味する。したがって、0以上のエスケープシンボル及び後続する実際の非エスケープシンボルが各スペクトル係数について符号化され、これらのシンボルの最初の2つのみが、例えば、本明細書において前述したようなコンテキスト適合性を使用してコード化される。この着想を2タプル、すなわち、スペクトル的に直に近接する係数の対に転用すると、シンボル文字はこの2タプルについて16の値の対、すなわち、{(0, 0), (0, 1), (1, 0), ..., (1, 1)}、及び、エスケープシンボルesc(escはエスケープシンボルの略語である)、すなわち、全部で17個のシンボルを含み得る。3を超える少なくとも1つの係数を含むすべての入力スペクトル係数のnタプルは、それぞれの2タプルの各係数に適用される4によって除算される。復号側において、存在する場合、エスケープシンボルの数・4が、非エスケープシンボルから得られる余りの値に加えられる。
【0053】
図16は、上記で概説した概念に従って
図15の概念を修正することにより得られるマッピング済みコンテキストマッピングの構成を示す。それによれば、基準スペクトル係数の相対スペクトル距離28は、例えば、信号の周期性又はピッチ情報を考慮に入れることなどによって、スペクトルの形状に関する情報に応じて適合される。特に、
図16a〜
図16cは、コンテキスト内の前述した相対スペクトル距離28に対応する距離Dを、以下の式によって与えられるD0によっておおまかに推定することができることを示している。
【0054】
ここで、f
sはサンプリング周波数であり、NはMDCTサイズでありLはサンプルにおける遅延期間である。
図16(a)の例において、コンテキストは、コード化すべき現在のnタプルに対してDの倍数だけ離れているnタプルを指摘する。
図16(b)は、従来の近接するコンテキストを、高調波関連コンテキストと組み合わせる。最後に、
図16(c)は、先行するフレームと依存関係を有しないフレーム間マッピング済みコンテキストの一例を示す。すなわち、
図16aは、
図7を参照して上記で述べた可能性に加えて、スペクトルの形状に関する情報に依存した相対スペクトル距離の適合を、コンテキストテンプレートに属する固定数の基準スペクトル係数のすべてに適用することができることを示している。
図16bは、異なる例に従って、例えば、コンテキストテンプレートの低周波数側にあるスペクトル的に最も外側のもののみ、ここではC
3及びC
5のみのような、これらの基準スペクトル係数の部分集合のみが適合性80による変位を受けることを示している。残りの基準スペクトル係数、ここではC
0〜C
4は、現在処理されているスペクトル係数に対する固定位置、すなわち、現在処理すべきスペクトル係数に対して直に近接するスペクトル時間位置に位置付けられ得る。最後に、
図16cは、前もってコード化されたスペクトル係数のみが、現在処理すべきスペクトル係数と同じ時刻に位置付けられるコンテキストテンプレートの基準係数として使用される可能性を示している。
【0055】
図17は、
図16a〜cのマッピング済みコンテキストが、高調波の多いスペクトルX(cp.20)のトーンを予測することができない
図15による従来のコンテキストよりも、どのように効率的であり得るかの例示を与える。
【0056】
その後に、距離Dを効率的に推定及びコード化するための可能なコンテキストマッピングメカニズム及び本発明の例示的な実施形態を詳細に説明する。例示を目的として、以下のセクションにおいて、
図16cによるフレーム間マッピング済みコンテキストを使用する。
【0057】
第1の実施形態:2タプルコード化及びマッピング
【0058】
最初に、最適な距離は、サイズNの現在量子化されているスペクトルx[]をコード化するために必要とされるビット数を最大限に低減するような検索である。初期距離を、以前実施されたピッチ推定において見出された遅延期間LのD0関数によって推定することができる。検索範囲は以下のようにすることができる。
D0−Δ<D<D0+Δ
【0059】
代わりに、D0の倍数を考慮することによって範囲を補正してもよい。拡大範囲は以下のようになる。
{M.D0−Δ<D<M.D0+Δ:M ∈F}
ここで、Mは、例えば、有限集合Fに属する乗法係数である。例えば、Mは、半分及び2倍のピッチを探索するために0.5、1及び2の値を得ることができる。最後に、Dの全数検索も行うことができる。実際には、この最後の手法は複雑になりすぎる場合がある。
図18に検索アルゴリズムの一例を示す。この検索アルゴリズムは、例えば、導出プロセス82又は復号側及び符号化側における導出プロセス82及び84の両方の一部分であってもよい。
【0060】
コストは、コンテキストに対するマッピングが実施されていないときのコストに初期化される。より良好なコストをもたらす距離がない場合、マッピングは実施されない。マッピングが実施される場合をシグナリングするためのフラグが、復号器に送信される。
【0061】
最適な距離Doptが見つかった場合にはこれを送信する必要がある。Lが符号化器の別のモジュールによってすでに送信されている場合、
図9bの前述した明示的なシグナリングに対応する調整パラメータm及びdは、以下のように送信される必要がある。
Dopt=m.D0+d
【0062】
そうでない場合、Doptの絶対値が送信されなければならない。両方の代替形態は、
図9bを参照して上述されている。例えば、サイズN=256及びfs=12800HzのMDCTを考慮した場合、Dを2〜17に制限することによって、30Hz〜256Hzのピッチ周波数をカバーすることができる。整数分解能によって、Dを4ビットでコード化することができ、0.5の分解能について5ビットでコード化することができ、0.25の分解能によって6ビットでコード化することができる。
【0063】
x[]をコード化するために必要とされるビット数としてコスト関数を計算することができ、コンテキストマッピングを生成するためにDが使用される。コスト関数は、スペクトルを算術コード化すること、又は少なくとも、必要とするビット数の良好な推定値を有することを必要とすることから、コスト関数を得ることは通常複雑である。各候補Dについてコスト関数を計算することは複雑になり得るため、代替形態として、値Dからのコンテキストマッピングの導出から直にコストの推定値を得ることを提案する。コンテキストマッピングを導出している間、近接するマッピング済みコンテキストのノルムの差を容易に計算することができる。コンテキストは、算術コード化器において、符号化すべきnタプルを予測するために使用されるため、また、コンテキストは、L1ノルムに基づいて本発明の好ましい実施形態において計算されるため、近接するマッピング済みコンテキスト間のノルムの差の合計は、Dを所与としたマッピングの効率の良好な指標である。最初に、x[]の各2タプルのノルムが以下のように計算される。
【0064】
ここで、本発明ではコンテキスト計算においてL1ノルムを考慮するため、好ましい実施形態においてはNORM=1である。このセクションにおいては、2の分解能、すなわち、2タプルあたり1つのマッピングで機能するコンテキストマッピングを説明している。分解能はr=2であり、コンテキストマッピングテーブルはn/2のサイズを有する。コンテキストマッピング生成及び費用関数計算の擬似コードは下記の通り与えられる。
入力:分解能r
入力:normVect[N/r]
出力:contextMapping[N/r]
【0065】
最適な距離Dが計算されると、スペクトルの高調波位置、バレー及びテールを与えるインデックス置換表も推定される。その後、コンテキストマッピング規則が以下のように推定される。
【0066】
これは、スペクトル内のインデックスiの2タプル(x[2*i],x[2*i+1])について、インデックスcontextMapping[i-1], contextMapping[i-2]... contextMapping[i-l]の2タプルを用いて過去のコンテキストが考慮されることを意味する。ここで、lは2タプルに関するコンテキストのサイズである。1つ又は複数の先行するスペクトルもコンテキストについて考慮される場合、過去のコンテキストに組み込まれているこれらのスペクトルの2タプルはインデックスとしてcontextMapping[i+l],...,contextMapping[i+1],contextMapping[i],contextMapping[i-1], contextMapping[i-l]を有することになり、ここで、2l+1は先行するスペクトルあたりのコンテキストのサイズである。
【0067】
インデックス置換表はまた、トーナル成分のインデックス、及びそれに続く非トーナル成分のインデックスを収集するため、さらなる興味深い情報をも与える。それゆえ、本発明では、対応する振幅が低減していると期待することができる。これは、非ゼロ2タプルに対応する、IndexPermutaion内の最後のインデックスを検出することによって利用することができる。このインデックスは(lastNz/2―1)に対応し、lastNzは以下のように計算される。
lastNz/2は、スペクトル成分の前のceil(log2(n/2))ビット上でコード化される。
【0068】
算術符号化器の擬似コードは以下の通りである。
入力:スペクトルx[N]
入力:contextMapping[N/2]
入力:lastNz
出力:コード化ビットストリーム
【0069】
cum_proba[]テーブルは大きいトレーニングセットに対するオフライントレーニング中に得られる異なる累積モデルである。これは、この特定の事例において17個のシンボルを含む。proba_model_lookup[]は、コンテキストインデックスtを累積確率モデルpkiにマッピングするルックアップテーブルである。このテーブルはまた、トレーニング段階を通じても得られる。cum_equiprob[]は、確率が等しい2つのシンボルの文字についての累積確率テーブルである。
【0070】
第2の実施形態:1タプルマッピングによる2タプル
【0071】
この第2の実施形態において、スペクトル成分は依然としてコード化2タプル・2タプルであるが、コンテキストマッピング(contextMapping)はここでは1タプルの分解能を有する。これは、コンテキストのマッピングにおいてはるかにより多くの可能性及び柔軟性があることを意味する。このとき、マッピング済みコンテキストが所与の信号により良好に適応することができる。最適な距離はセクション3において行われたものと同じように検索されるが、今回の分解能はr=1である。そのためには、MDCTラインごとにnormVect[]が計算されなければならない。
【0072】
このとき、結果としてもたらされるコンテキストマッピングは、次元Nの表によって与えられる。LastNzが先行するセクションにおけるように計算され、符号化は以下のように記述することができる。
入力:lastNz
入力:contextMapping[N]
入力:スペクトルx[N]
出力:コード化ビットストリーム
ローカル:context[N/2]
【0073】
先行するセクションとは逆に、2つの非連続スペクトル係数を同じ2タプル内でまとめることができる。この理由から、2タプルの2つの要素についてのコンテキストマッピングは、コンテキストテーブル内の2つの異なるインデックスを指摘する可能性がある。好ましい実施形態において、本発明では、最低インデックスを有するマッピング済みコンテキストを選択するが、2つのマッピング済みコンテキストの平均のような、異なる規則を有することもできる。同じ理由から、コンテキストの更新も別様に処理されるべきである。2つの要素がスペクトル内で連続している場合、本発明ではコンテキストを計算する従来の方法を使用する。そうでない場合、コンテキストは、それ自体の大きさのみを考慮して、2つの要素について別個に更新される。
【0074】
復号は、以下のステップから構成される。
【0075】
・コンテキストマッピングが実施されるか否かを知るためにフラグを復号する。
・Dopt、又はD0についてのDoptを得るためのパラメータ調整パラメータのいずれかを復号することによって、コンテキストマッピングを復号する。
・lastNzを復号する。
・量子化スペクトルを以下のように復号する。
入力:lastNz
入力:contextMapping[N]
入力:コード化ビットストリーム
ローカル:context[N/2]
出力:量子化スペクトルx[N]
【0076】
このように、上記の実施形態はとりわけ、例えば、トーナル信号の算術コード化のようなエントロピーコード化のためのピッチベースのコンテキストマッピングを明らかにした。
【0077】
いくつかの態様が装置の側面で説明されているが、これらの態様はまた、対応する方法の説明をも表すことは明らかであり、ブロック又はデバイスは、方法ステップ又は方法ステップの特徴に対応する。同様に、方法ステップの側面で説明されている態様はまた、対応する装置の対応するブロック又は項目又は特徴の説明をも表す。方法ステップのいくつか又はすべては、例えば、マイクロプロセッサ、プログラム可能コンピュータ又は電子回路のような、ハードウェア装置によって実行されてもよい(又は使用していてもよい)。いくつかの実施形態において、もっとも重要な方法ステップの何らかの1つ又は複数は、そのような装置によって実行されてもよい。
【0078】
本発明の符号化オーディオ信号は、デジタル記憶媒体上に記憶することができ、又は、インターネットのような、無線送信媒体又は有線送信媒体のような送信媒体上で送信することができる。
【0079】
特定の実施要件に依存して、本発明の実施形態は、ハードウェア又はソフトウェアにおいて実現することができる。実施態様は、それぞれの方法が実施されるようにプログラム可能なコンピュータシステムと協働する(又は協働することが可能である)電子可読制御信号を記憶したデジタル記憶媒体、例えば、フロッピーディスク、DVD、Blu−Ray、CD、ROM、PROM、EPROM、EEPROM又はフラッシュメモリを使用して実施することができる。したがって、デジタル記憶媒体は、コンピュータによって読取り可能であってよい。
【0080】
本発明によるいくつかの実施形態は、本明細書に記載されている方法の1つが実施されるようにプログラム可能なコンピュータシステムと協働することが可能である電子可読制御信号を有するデータキャリアを含む。
【0081】
一般的に、本発明の実施形態は、プログラムコードを有するコンピュータプログラム製品として実現することができ、プログラムコードは、コンピュータプログラム製品がコンピュータ上で動作するときに、本方法の1つを実施するように動作可能である。プログラムコードは、例えば、機械が読取り可能なキャリア上に記憶されてもよい。
【0082】
他の実施形態は、機械が読取り可能なキャリア上に記憶され、本明細書に記載されている方法の1つを実施するためのコンピュータプログラムを含む。
【0083】
言い換えれば、本発明の方法の一実施形態は、コンピュータプログラムがコンピュータ上で動作するときに、本明細書に記載されている方法の1つを実施するためのプログラムコードを有するコンピュータプログラムである。
【0084】
それゆえ、本発明のさらなる実施形態は、本明細書に記載されている方法の1つを実施するためのコンピュータプログラムを記録されて含むデータキャリア(又はデジタル記憶媒体、又はコンピュータが読取り可能な媒体)である。データキャリア、デジタル記憶媒体又は記録媒体は一般的に、有形かつ/又は持続性である。
【0085】
それゆえ、本発明の方法のさらなる実施形態は、本明細書に記載されている方法の1つを実施するためのコンピュータプログラムを表すデータストリーム又は信号系列である。データストリーム又は信号系列は、例えば、データ通信接続、例えば、インターネットを介して転送されるように構成することができる。
【0086】
さらなる実施形態は、本明細書に記載されている方法の1つを実施するように構成又は適合されている処理手段、例えば、コンピュータ又はプログラム可能な論理デバイスを含む。
【0087】
さらなる実施形態は、本明細書に記載されている方法の1つを実施するためのコンピュータプログラムがインストールされたコンピュータを含む。
【0088】
本発明によるさらなる実施形態は、本明細書に記載されている方法の1つを実施するためのコンピュータプログラムを受信機に(例えば、電子的に又は光学的に)転送するように構成されている装置又はシステムを含む。受信機は、例えば、コンピュータ、モバイルデバイス、メモリデバイスなどであってもよい。装置又はシステムは、例えば、コンピュータプログラムを受信機に転送するためのファイルサーバを含んでもよい。
【0089】
いくつかの実施形態において、プログラム可能な論理デバイス(例えば、フィールドプログラマブルゲートアレイ)が、本明細書に記載されている方法の機能のいくつか又はすべてを実施するために使用されてもよい。いくつかの実施形態において、フィールドプログラマブルゲートアレイは、本明細書に記載されている方法の1つを実施するためにマイクロプロセッサと協働してもよい。一般的に、方法は好ましくは、ハードウェア装置によって実施される。
【0090】
上述した実施形態は、本発明の原理の例示にすぎない。本明細書に記載されている構成及び詳細の改変及び変形が当業者には明らかになることが理解される。それゆえ、本明細書における実施形態の記載及び説明によって提示されている特定の詳細によってではなく、添付の特許請求項の範囲のみによって限定されることが意図されている。