JP5866307B2 - 符号化法、復号化法、符号器、および復号器 - Google Patents

符号化法、復号化法、符号器、および復号器 Download PDF

Info

Publication number
JP5866307B2
JP5866307B2 JP2013046027A JP2013046027A JP5866307B2 JP 5866307 B2 JP5866307 B2 JP 5866307B2 JP 2013046027 A JP2013046027 A JP 2013046027A JP 2013046027 A JP2013046027 A JP 2013046027A JP 5866307 B2 JP5866307 B2 JP 5866307B2
Authority
JP
Japan
Prior art keywords
index
pulse
track
pulses
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013046027A
Other languages
English (en)
Other versions
JP2013148913A (ja
Inventor
マ、フウェイ
チャン、デジュン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN2007101030235A external-priority patent/CN101295506B/zh
Priority claimed from CN2007101539527A external-priority patent/CN101388210B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2013148913A publication Critical patent/JP2013148913A/ja
Application granted granted Critical
Publication of JP5866307B2 publication Critical patent/JP5866307B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation

Description

本出願は、2007年4月29日付けで中国特許庁に出願された、「Coding Method,Decoding Method,Coder,and Decoder」という名称の中国特許出願第200710103023.5号の優先権、および2007年9月15日付けで中国特許庁に出願された、「Coding Method,Decoding Method,Coder,and Decoder」という名称の中国特許出願第200710153952.7号の優先権を主張するものであり、参照によりそれらの全文が本明細書に組み込まれる。
本発明は符号化法、復号化法、符号器、および復号器に関する。
ベクトル符号化技術において、適応フィルタリング後の残留信号は一般に、代数符号帳を使用して量子化符号化を施される。トラック上の最適な代数符号帳パルスの位置および記号に関する情報が探し出された後で、対応するインデックス値が、符号化によって、復号器がそのインデックス値に従ってパルス順序を再構築することができるように、計算される。代数符号帳パルス符号化法を研究し、開発する主要な目的の1つは、損失なしの再構築を保証するという前提条件で符号化インデックス値によって必要とされるビット数を最小限に抑えることである。
拡張適応マルチレート広帯域(Extended Adaptive Multi−Rate Wideband)(AMR_WB+)符号化法は、従来技術における代数符号帳パルス符号化法である。符号化率に応じて、各トラック上で1対N個のパルスを符号化することができる。符号化パルス数が増加するにつれて、そのような量のパルスを符号化するのに必要とされるビット数も増加する。例えば、M=2m個の位置を有するトラックでは、そのトラック上で1パルスを符号化するのにm+1ビットを必要とし、そのトラック上で6パルスを符号化するのに6m−2ビットを必要とする。
本発明を開発する過程において発明者は、従来技術の代数パルス符号化では、多数のパルスを有する1つの符号化パルスをより少数のパルスを有する複数の符号化パルスに分解するために再帰的な符号化法が適用され、そのため、符号化プロセスがむしろ複雑になることを見出した。他方、トラック上の符号化パルス数が増加するにつれて符号化インデックスの冗長性が生じ、そのため、符号化ビット数の無駄が生じる傾向にある。
本発明の一実施形態では、符号化ビット数を効果的に節約することのできる符号化法、復号化法、符号器、および復号器が開示される。
本発明の一実施形態によれば、符号化法が開示される。この符号化法は、
トラック上で符号化すべきパルスの、そのトラック上のパルス分配を獲得すること、
パルス分配に従ってパルス分配を識別する分配識別子を決定すること、および
分配識別子を含む符号化インデックスを生成すること
を含む。
本発明の一実施形態によれば、復号化法が開示される。この復号化法は、 符号化インデックスを受け取ること、
符号化インデックスから、トラック上で符号化されたすべてのパルスの、そのトラック上のパルス分配を識別するように構成されている分配識別子を獲得すること、
分配識別子に従って、トラック上で符号化されたすべてのパルスの、トラック上のパルス分配を決定すること、および
パルス分配に従ってトラック上のパルス順序を再構築すること
を含む。
本発明の一実施形態によれば、符号器が開示される。この符号器は、
トラック上で符号化すべきすべてのパルスの、そのトラック上のパルス分配を獲得するように適合されたパルス分配獲得ユニットと、
パルス分配獲得ユニットによって獲得されたパルス分配に従ってパルス分配を識別する分配識別子を決定するように適合された分配識別子決定ユニットと、
分配識別子決定ユニットによって決定された分配識別子を含む符号化インデックスを生成するように適合された符号化インデックス生成ユニットと
を含む。
本発明の一実施形態によれば、復号器が開示される。この復号器は、
符号化インデックスを受け取るように適合された符号化インデックス受取ユニットと、
符号化インデックス受取ユニットによって受け取られた符号化インデックスから、トラック上で符号化されたすべてのパルスの、そのトラック上のパルス分配を識別するように構成されている分配識別子を獲得するように適合された分配識別子抽出ユニットと、
分配識別子抽出ユニットによって獲得された分配識別子に従って、トラック上で符号化されたすべてのパルスの、そのトラック上のパルス分配を決定するように適合されたパルス分配決定ユニットと、
パルス分配決定ユニットによって決定されたパルス分配に従ってトラック上のパルス順序を再構築するように適合されたパルス順序再構築ユニットと
を含む。
本発明の各実施形態において、符号化インデックスは、パルス分配を識別する分配識別子を保持し、多数のパルスを有する1つの符号化パルスをより少数のパルスを有する複数の符号化パルスに分解し得る。このようにして、符号化インデックスに含まれる情報がより少なくなり、したがって符号化インデックスに必要なビット数がより少なくて済み、よって符号化プロセスが簡略化され、符号化冗長性が低減され、符号化ビット数が節約される。
本発明の第1の実施形態による符号化法を示すフローチャートである。 本発明の第1の実施形態による5パルスの符号化インデックスの構造を示す図である。 本発明の第2の実施形態による、N=3の場合のXX(N)木の構造を示す図である。 本発明の第3の実施形態による符号化法を示すフローチャートである。 本発明の第3の実施形態による6パルスの符号化インデックスの構造を示す図である。 本発明の第3の実施形態による5パルスの符号化インデックスの構造を示す図である。 本発明の第4の実施形態による、N=2の場合のX(N)木の構造を示す図である。 本発明の第4の実施形態による、N=3の場合のX(N)木の構造を示す図である。 本発明の第5の実施形態による符号化法を示すフローチャートである。 本発明の第7の実施形態による復号化法を示すフローチャートである。 本発明の第9の実施形態による復号化法を示すフローチャートである。 本発明の第11の実施形態による復号化法を示すフローチャートである。 本発明の第13の実施形態による符号器の論理構造を示す図である。 本発明の第14の実施形態による符号器の論理構造を示す図である。 本発明の第15の実施形態による符号器の論理構造を示す図である。 本発明の第16の実施形態による復号器の論理構造を示す図である。 本発明の第17の実施形態による復号器の論理構造を示す図である。 本発明の第18の実施形態による復号器の論理構造を示す図である。
本発明による方法および装置を以下で詳細に説明する。
本発明の第1の実施形態では符号化法が開示される。図1に示すように、符号化法は以下の各ステップを含む。
A1:トラック上のパルス位置の分配を獲得するために、トラック上で符号化すべきパルスの位置に関する統計が収集される。
同じトラック上で符号化すべきパルスの総量は一般に、符号化率に依存する。この実施形態において、pulse_numは、同じトラック上で符号化すべきパルスの総量を表わし、pulse_num=Nと想定され、パルス分配ベクトルQ(N)は、各パルス位置がトラック上でどのように分配されているかを示し、Q(N)={q(0),q(1),…,q(N−1)}であり、q(h)は、トラック上の第(h+1)番目のパルスの位置の通し番号であり、h∈[0,N−1]、q(h)∈[0,M−1]であり、Mはトラック上の位置の総量を表わし、例えば、M=8、M=16などである。
さらに、符号化すべきパルスは、記号、すなわちプラス記号またはマイナス記号も保持する。この場合、位置に従ってトラック上で符号化すべきパルスに関する統計を収集するときに、各パルスのパルス記号情報を獲得する必要がある。この実施形態において、各パルスのパルス記号情報は、パルス記号ベクトル、すなわち、SS(N)={ss(0),ss(1),…,ss(N−1)}によって表わされ、ss(h)は第(h+1)番目のパルスのパルス記号を表わし、q(h)パルスの記号インデックスと呼ばれる。ss(h)で表されるパルス記号は正の値または負の値とすることができる。一般には、単純な符号化モードが適用される。すなわち、ss(h)=0で正のパルスを表わし、ss(h)=1で負のパルスを表わす。とはいえ、パルス記号はパルスを符号化するのに必須の特徴ではない。具体的な要件として、パルスは位置特徴と量特徴だけを有していてもよい。この場合、パルス記号情報に関する統計を収集する必要はない。
Q(N)とSS(N)の間には、明らかに1対1の対応関係が存在し得る。
符号化すべきパルスのQ(N)やSS(N)といったパラメータが統計によって獲得された後で、それらのパラメータをインデックスに符号化することができ、パラメータとインデックスの間に、復号器が対応するインデックスに従ってパラメータを回復することができるように、対応関係が確立される。本発明において、対応関係は2つのモードで表され得る。一方は代数モードで表される計算関係であり、符号器はパラメータに対して順方向計算を行ってインデックスを獲得し、復号器はインデックスに対して逆方向計算を行ってパラメータを獲得する。他方はマッピングモードで表される問い合わせ関係であり、パラメータをインデックスと相関させるマッピング表が、符号器と復号器の両方に格納されている必要がある。対応関係は、パラメータの特性に従って前述の2つの対応関係の中から選択され得る。一般に、データ量が大きいときには、符号器と復号器の記憶空間が節約されるため、計算関係で表される対応関係が好ましい。
A2:分配インデックス(分配識別子ともいう)I4が決定される。I4は次のように計算され得る。現在のパルスの量をNであると仮定して、トラック上のすべてのパルスの位置のあらゆる可能な分配が設定順に転置される。転置の際の転置番号はその分配を指示する分配インデックスI4として使用される。
「設定順」とは、同じ配列計算規則に従って符号器と復号器によって決定されるすべての可能なQ(N)値の順序と理解することができる。
パルス分配ベクトルQ(N)の可能な値の総量は、

であり、式中、PPT=M+N−1であり、Cは組み合わせ関数を計算することを指す。各I4はWQ(N)における1つのパルス分配に対応する。
一般に、WQ(N)は大きなデータ量である。したがって、分配インデックスI4との対応関係としては計算関係が好ましい。とはいえ、対応関係を問い合わせ関係によって表わすことも可能である。明らかに、WQ(N)はI4のすべての可能な値の総量である。I4の値が0から始まる場合、I4∈[0,WQ(N)−1]である。
A3:符号化インデックス、すなわちIndex(N)が生成される。Index(N)は分配インデックスI4に関する情報を含む。
復号器にとって識別可能な任意のモードで、例えば、最も単純なモードとしては、I4を符号化インデックスの設定位置から開始する各位置に配置することなどによって、I4は符号化インデックスに配置され得る。
とはいえ、符号化されるパルスが記号を含む場合には、Index(N)は、各パルスの記号インデックスに関する情報、すなわちss(h)も保持する必要がある。パルス記号ベクトルSS(N)は、単に、長さNのフィールドとして、符号化インデックスの固定位置、例えば符号化インデックスの末尾などに配置されてもよい。
要約すると、Index(N)を構築するモードは次式とすることができる。
Index(N) = I4 x 2N + ss(0) x 2N -1 + ss(1) x 2N -2 + ... + ss(N - 1).
前述の符号化インデックスを構築するモードはこの実施形態の一例にすぎないことは容易に理解できる。実際、例えば、インデックス位置を交換したり、結合し直したりすることなどによって、符号化インデックス構造に関する基本情報から符号化インデックス構造を構築する他のモードを導出することは容易である。符号化インデックスを構築するモードは、本発明の各実施形態に対するいかなる限定も構成するものではない。
本発明の第1の実施形態における符号化インデックスを構築するモードの理解をさらに容易にするために、トラック上の位置の総量がM=16であるものと仮定して、以下に例を示す。
例1:記号付きのN=5パルスが符号化される。図2に符号化インデックスの構造を示す。
符号化インデックス、すなわちIndex(5)は合計19ビットを占有する。すなわち、Index(5)∈[0,219−1]である。図2のIndex(5)の符号化値の範囲は16進数である。この実施形態において、「0x」で始まる値はその値が16進数であることを意味する。他の値は、特に指示しない限り10進数である。
5つの記号インデックス、すなわちss(0)〜ss(4)は末尾の5ビットを占有する。
図2では、I4に対して14ビットの空間が利用可能である。したがって、I4に利用可能な符号化空間長C5は214=16384であり、これは、

であるため十分である。
例2:記号付きのN=4パルスが符号化される。符号化インデックスの構造は以下のとおりである。
符号化インデックス、Index(4)は合計16ビットを占有する。すなわち、Index(4)∈[0,216−1]である。
4つの記号インデックス、すなわちss(0)〜ss(3)は末尾の4ビットを占有する。
I4に対して12ビットの空間が利用可能である。したがって、I4に利用可能な符号化空間長は212=4096であり、これは、

であるため十分である。
例3:記号付きのN=3パルスが符号化される。符号化インデックスの構造は以下のとおりである。
符号化インデックスIndex(3)は合計13ビットを占有する。すなわち、Index(3)∈[0,213−1]である。
3つの記号インデックス、すなわちss(0)〜ss(2)は末尾の3ビットを占有する。
I4に対して10ビットの空間が利用可能である。したがって、I4に利用可能な符号化空間長は210=1024であり、これは、

であるため十分である。
第2の実施形態では符号化法が提供される。この実施形態では、分配インデックスI4を計算する方法が提供され、よって、代数計算により、I4と、Q(N)={q(0),q(1),…,q(N−1)}であるトラック上のパルスの分配との対応関係を決定することを容易にする。
この実施形態では以下のQ(N)配列計算規則が設けられる。
Q(N)はそこに含まれる値の組み合わせによって変化する。したがって、
q(0)≦q(1)≦…≦q(N−1)、またはq(0)≧q(1)≧…≧q(N−1)
であり、等しいとはパルスの位置が反復可能であることを意味するものであると仮定して、Q(N)に含まれる位置の通し番号を転置することができる。q(0)≦q(1)≦…≦q(N−1)であると仮定すると、q(0)∈[0,M]、q(h)∈[q(h−1),M]であり、Mはトラック上の位置の総量である。Q(N)の各次元の値が比較された後で、Q(N)のすべての可能な値が、小さい値から大きい値へ、または大きい値から小さい値へと配列される。
値が小さい値から大きい値へ配列され、配列されたQ(N)に0から始まる通し番号で番号がふられる場合、

であり、Cは組み合わせ関数の計算を指し、Σは総和を指す。
上記の式は以下のように解釈され得る。

は、第1番目のパルスがq(0)の前に位置するときのQ(N)の総量を指し、

は、第1番目のパルスがq(0)に位置し、第2番目のパルスがq(1)の前に位置するときのQ(N)の総量を指し、

は、類推によって解釈される。
上記の式はI4とQ(N)の間の計算関係の一例にすぎないことに留意すべきである。また、同じ配列規則に依存して、計算関係を別の代数モードで同等に表わすこともできる。異なる配列規則が適用される場合に、類似の計算関係を設計することもできる。計算関係を表わすモードは、本発明の各実施形態に対するいかなる限定も構成するものではない。
上記のI4の計算方法をより明確にするために、パルスの相対位置ベクトル、XX(N)={xx(1),xx(2),…,XX(N)}を仮定する。XX(N)とQ(N)の間には以下の1対1対応関係が存在する。
xx(1)=q(0)、および
xx(i)=q(i−1)−q(i−2)
式中、xx(i)は、第i番目のパルスの位置と第(i−1)番目のパルスの位置の間の相対位置関係を表わし、i∈[1,N]である。XX(N)は、Q(N)のすべての可能な値を含むN層木を構築することができる。木の深さはN+1であり、第i層上のサブノードは、第i番目のパルスの相対位置値xx(i)を表わす。xx(i)の値は、左から右へ、小さい値から大きい値へ配列される。終端ノードが、木の底(すなわち終端ノード)において左から右へ符号化される。終端ノードから根ノードまでの各パスはXX(N)の値に対応する。したがって、各終端ノードの符号は、対応するQ(N)値を指示する分配インデックスI4である。
以下に一例を示す。M=16、N=3(Mはトラック上の位置の総量である)と仮定した場合、木構造は図3に示されており、分配インデックスを計算する式は以下のとおりである。
Nの値が異なる場合、対応する木構造は同様であり、I4を計算する式は推定することができ、ここではこれ以上繰り返さない。
この実施形態では計算関係によって分配インデックスI4を獲得する方法が開示されている。符号化インデックスにおいてI4が占有するデータ量は大きいため、この実施形態における計算方法は、符号器および復号器の記憶負荷を最小限に抑える。I4はQ(N)との厳密な1対1関係において連続して符号化され、よって、符号化ビットが最大限に活用され、無駄が省かれる。
第3の実施形態では符号化法が開示される。第3の実施形態は、第1の実施形態における符号化プロセスを第1の符号化モードとみなし、まず、第1の符号化モードの選択肢の中から符号化モードが選択され、次いで、選択された符号化モードでパルスが符号化されるという点において、第1の実施形態とは異なる。図4に示すように、この実施形態における符号化プロセスは以下の各ステップを含む。
B1:同じトラック上で符号化すべきパルスの総量(N)が決定される。
Nの値は一般に符号化率に依存する。
B2:Nの値に従って符号化モードが選択される。符号化モードには第1の符号化モードが含まれる。選択結果に応じて、プロセスはステップB3またはステップB4に進む。
第1の実施形態で説明した符号化モードを、この実施形態では第1の符号化モードと呼ぶ。選択可能な符号化モードには、第1の符号化モードのみならず、従来技術のAMR_WB+といった他の符号化モードも含まれる。この実施形態では、任意選択である第2の符号化モードが開示される。
符号化モードは、決定されたN値に依存し得る。例えば、いくつかのN値には第1の符号化モードが適用され、他のN値には第2の符号化モードが適用される。研究者らによれば、Nの値が3、4、または5であるときには第1の符号化モードが好ましい。
B3:符号化モード選択の結果が判定される。第1の符号化モードが選択されたと判定される場合、パルスは第1の符号化モードで符号化される。
具体的な符号化プロセスは、第1の実施形態での説明、すなわち、第1の実施形態のステップA1、A2、およびA3と同様である。
B4:符号化モード選択の結果が判定される。第2の符号化モードが選択されたと判定される場合、パルスは第2の符号化モードで符号化される。第2の符号化モードは以下の各ステップを含み得る。
B41:パルスを有する位置の量、トラック上のパルスを有する位置の分配、および各パルス位置におけるパルスの量を獲得するために、トラック上で符号化すべきパルスの位置に関する統計が収集される。
第1の実施形態のステップA1と同様に、パルス位置ベクトル、すなわちP(N)={p(0),p(1),…,p(N−1)}でトラック上のパルスを有する位置の分配を表わし、位置記号ベクトル、すなわちS(N)={s(0),s(1),…,s(N−1)}で各パルス位置のパルス記号情報を表わし、パルスを有する各位置上のパルスの量が獲得される。この実施形態では、パルス量ベクトル、すなわちSU(N)={su(0),su(1),…,su(N−1)}でパルスを有する各位置上のパルスの量を表わし、su(n)はp(n)位置におけるパルスの量を表わす。明らかに、su(0)+su(1)+…+su(N−1)=Nである。
明らかに、この実施形態では、P(N)とSU(N)とS(N)との間に1対1対応関係が存在する。
統計によって符号化すべきパルスのN、P(N)、SU(N)、S(N)といったパラメータが獲得された後で、各パラメータをインデックスに符号化する必要があり、パラメータとインデックスの間に、復号器が対応するインデックスに従ってパラメータを回復することができるように、対応関係が確立される。
B42:第1のインデックスI1が、パルスを有する位置の量(すなわちpos_num=N)に従って決定される。第1のインデックスI1は、pos_numが同じであるときのトラック上のパルスを有する位置のすべての可能な分配に対応する。
pos_num値(N)は少し変動する。したがって、第1のインデックスI1との対応関係は、計算関係によって表わされることもあり、問い合わせ関係によって表わされることもある。pos_numとI1との対応関係を確立するときには、この対応関係は、1対1対応関係であるものと仮定される。とはいえ、pos_numが他の値を有するとき、他のパラメータのインデックスはより少ないビット数で済む。そのようなpos_num値は1つのI1を共通して使用してもよく、余分のフラグビットによって区別される。
pos_num値(N)はすべての可能なP(N)値の総量を決定し、この総量は

であり、式中、Cは組み合わせ関数を計算することを指す。したがって、1つのI1がW(N)個の可能なP(N)に対応し、W(N)は自然数である。
B43:第2のインデックスI2が、トラック上のパルスを有する位置の分配に従って決定され、分配はP(N)で表される。第2のインデックスI2は、第1のインデックスI1に対応するすべての可能な分配の中の、現在のパルスを有する位置の分配に対応する分配のインスタンスを指示する。
すべての可能なP(N)値の総量は

である。W(N)は大きなデータ量である。したがって、第2のインデックスI2との対応関係としては計算関係が好ましい。とはいえ、対応関係を問い合わせ関係によって表わすことも可能である。明らかに、W(N)はI2のすべての可能な値の総量である。I2の値が0から始まる場合、I2∈[0,W(N)−1]である。
B44:第3のインデックスI3が、パルスを有する各位置におけるパルスの量を表わすSU(N)に従って決定される。
SU(N)は、その次元がP(N)の次元と同じであるベクトルであるが、su(0)+su(1)+…+su(N−1)=Nに制限され、Nの値は一般に1から6までの範囲である。したがって、第3のインデックスI3との対応関係は、計算関係によって表わされても、問い合わせ関係によって表わされてもよい。さらに、ベクトル形態を考えると、設計がより容易になるため、高次元の場合には問い合わせ関係が好ましく、低次元の場合には、計算関係が好ましい。いくつかの極端な状況において、例えば、N=1またはN=Nの場合、SU(N)はただ1つの可能な値を有し、この値は特定のI3で指示する必要はなく、I3は、最終的な符号化インデックスに影響を及ぼさない任意の値とみなされ得ることに留意すべきである。
B45:符号化インデックス、すなわちIndex(N)が生成される。Index(N)は、第1のインデックスI1、第2のインデックスI2、および第3のインデックスI3に関する情報を含む。
I1、I2、およびI3は、復号器にとって識別可能な任意のモードで、例えば、最も単純なモードである、I1、I2、およびI3を別々に固定フィールドに配置することなどによって、符号化インデックスに配置され得る。同じトラック上で符号化すべきパルスの総量(pulse_num)が一定であるとき、I1で指示されるpos_num値(N)は、I2およびI3の範囲、すなわち、I2およびI3が必要とする符号化ビットの量を決定する。したがって、符号化インデックスは、以下のモードで構築される。
(1)第1のインデックスI1が開始値として使用され、他のインデックスに関する情報がオーバーレイされる。I1の値は符号化インデックスの独立の値の範囲に対応する。このようにして復号器は、符号化インデックスの値の範囲に従って直接pos_num値(N)を決定することができる。
(2)さらに、(一般にある一定のフィールド長に対応する)I1の値の範囲内で、I2およびI3が、復号器にとって識別可能な任意のモードで、例えば、最も単純なモードである、I2およびI3を別々に配置することなどによって配置され得る。一般に、I2もI3も2n(nは整数)で表わすことができない。したがって、符号化ビットを節約す
るために、I2とI3は、以下のように組み合わされ、I1の指定の値の範囲に配置される。

式中、I2の符号化もI3の符号化も0から開始する。すなわち、

であり、I3∈[0,Class(N)−1]であり、Class(N)はSU(N)の可能な値の総量である。明らかに、そのようなモードは、I1の値の範囲をClass(N)個の部分に分割することと等価であり、各部分の長さはW(N)であり、各部分は1つの分配、すなわちSU(N)値に対応する。
(3)とはいえ、符号化されるパルスが記号を含む場合には、Index(N)は、各パルスの記号インデックス、すなわちs(n)に関する情報も保持する必要がある。位置記号ベクトルS(N)は、単に長さNのフィールドとして、符号化インデックスの固定位置に、例えば、符号化インデックスの末尾に配置されてもよい。
要約すると、Index(N)を構築するモードは次式とすることができる。
Index(N)=I1+I23×2N+s(0)×2N-1+s(1)×2N-2+…+
s(N−1)
前述の符号化インデックスを構築するモードがこの実施形態の一例にすぎないことは容易に理解できる。実際、符号化インデックス構造に関する基本情報から、例えば、インデックス位置を交換したり、結合し直したりすることなどによって、符号化インデックス構造を構築する他のモードを導出することは容易である。符号化インデックスを構築するモードは、本発明の各実施形態に対するいかなる限定も構成するものではない。
第2の符号化モードで提供される符号化論理は、符号化すべき任意の量のパルスについて一様に適用することができ、よって、AMR_WB+において適用される再帰的モードの符号化インデックス冗長性の増大が回避され、符号化ビットの高い利用率が保証される。他方、同じ位置において複数のパルスを別々に符号化する必要はない。そうではなく、パルスの位置は符号化する前にマージされ、よって、符号化ビットが節約される。トラック上で符号化すべきパルス数が増加するにつれて、パルス位置がオーバーレイする確率も増加し、本発明の実施形態の利点がより顕著になる。
第2の符号化モードで符号化インデックスを構築するモードの理解をさらに容易にするために、以下に例を示す。トラック上の位置の総量はM=16であり、パルスを有する位置の量はpos_numであり、pos_numは第1のインデックスI1と1対1対応関係にあるものと仮定する。
例1:記号付きのN=6パルスが符号化される。図5に、符号化インデックスの構造を示す。
符号化インデックス、すなわちIndex(6)は合計21ビットを占有する。すなわち、Index(6)∈[0,221−1]である。図5には、pos_num値が変動するときにIndex(6)の異なる部分が占有するビットの量が示されている。より明確にするために、I1(N)、I2(N)、3(N)、およびI23(N)を使用して、Nが特定の値であるときの前述のインデックスが表わされている。I1(N)は、マッピングモードで以下のように決定される。
I1(1)=0x1F0000、I1(2)=0x1E0000、
I1(3)=0x1D0000、I1(4)=0x180000、
I1(5)=0x000000、I1(6)=0x100000
図5は以下のように説明される。
(1)6パルスが1つの位置にあるとき、N=1、W(1)=16、I2(1)∈[0,15]、SU(1)={6}、Class(1)=1、およびI3(1)=0であり、
したがって、I23(1)=I2(1)∈[0,15]、
1つの記号インデックス、すなわちs(0)が末尾の1ビットを占有し、
I23(1)に対してI1(1)が提供する符号化空間長は[221−I1(1)/21
=32768であり、これは明らかに十分である。
(2)6パルスが2つの位置にあるとき、N=2、W(2)=120、I2(2)∈[0,119]、SU(2)={5,1}、{4,2}、{3,3}、{2,4}、{1,5}、Class(2)=5,およびI3(2)∈[0,4]であり、
したがって、I23(2)=I3(2)×120+I2(2)∈[0,599]、
2つの記号インデックス、すなわちs(0)およびs(1)が末尾の2ビットを占有し、
I23(2)にI2(2)が提供する符号化空間長は、[I1(1)−I1(2)]/22=16384であり、これは明らかに十分である。
(3)6パルスが3つの位置にあるとき、N=3、W(3)=560、I2(3)∈[0, 559]、SU(3)={4,1,1}、{1,4,1}、{1,1,4}、{3,2,1}、{3,1,2}、{2,3,1}、{2,1,3}、{1,3,2}、{1,2,3}、{2,2,2}、Class(3)=10、およびI3(3)∈[0,9]であり、
したがって、I23(3)=I3(3)×560+I2(3)∈[0,5599]である。
3つの記号インデックス、すなわちs(0)〜s(2)が末尾の3ビットを占有し、
I23(3)に対してI2(3)が提供する符号化空間長は[I1(2)−I1(3)]/23=8192であり、これは明らかに十分である。
(4)6パルスが4つの位置にあるとき、N=4、W(4)=1820、I2(4)∈[0,1819]、SU(4)={3,1,1,1}、{1,3,1,1}、{1,1,3,1}、{1,1,1,3}、{2,2,1,1}、{2,1,2,1}、{2,1,1,2}、{1,2,2,1}、{1,2,1,2}、{1,1,2,2}、Class(4)=10、およびI3(4)∈[0,9]であり、
したがって、I23(4)=I3(4)×1820+I2(4)∈[0,18199]である。
4つの記号インデックス、すなわちs(0)〜s(3)が末尾の4ビットを占有し、 I23(4)に対してI2(4)が提供する符号化空間長は[I1(3)−I1(4)]/24=20480であり、これは明らかに十分である。
(5)6パルスが5つの位置にあるとき、N=5、W(5)=4368、I2(5)∈[0,4367]、SU(5)={2,1,1,1,1}、{1,2,1,1,1}、{1,1,2,1,1}、{1,1,1,2,1}、{1,1,1,1,2}、Class(5)=5、およびI3(5)∈[0,4]であり、
したがって、I23(5)=I3(5)×4368+I2(5)∈[0,21839]である。
5つの記号インデックス、すなわちs(0)〜s(4)は末尾の5ビットを占有し、
I23(5)に対してI2(5)が提供する符号化空間長は[I1(6)−I1(5)]/25=32768であり、これは明らかに十分である。
(6)6パルスが6つの位置にあるとき、N=6、W(6)=8008、I2(6)∈[0,8007]、SU(6)={1,1,1,1,1,1}、Class(6)=1、およびI3(6)=0であり、
したがって、I23(6)=I2(6)∈[0,8007]である。
6つの記号インデックス、すなわちs(0)〜s(5)が末尾の6ビットを占有し、
I23(6)に対してI2(6)が提供する符号化空間長は[I1(4)−I1(6)]/26=8192であり、これは明らかに十分である。
例2:記号付きのN=5パルスが符号化される。図6に符号化インデックスの構造を示す。
符号化インデックス、Index(5)は合計19ビットを占有する。すなわち、Index(5)∈[0,219−1]である。図6には、pos_num値が変動するときに、Index(5)の異なる部分が占有するビットの量が示されている。I1(N)はマッピングモードで以下のように決定される。
I1(1)=0x78000、I1(2)=0x70000、
I1(3)=0x60000、I1(4)=0x40000、
I1(5)=0x00000
図6に関する詳細な分析は図5に関するものと同様であり、ここではこれ以上繰り返さない。
例3:記号付きのN=4パルスが符号化される。
符号化インデックス、Index(4)は合計16ビットを占有する。すなわち、Index(4)∈[0,216−1]である。図には、pos_num値が変動するときに、Index(4)の異なる部分が占有するビットの量が示されている。I1(N)はマッピングモードで以下のように決定される。
I1(1)=0xE000、I1(2)=0xC000、
I1(3)=0x8000、I1(4)=0x0000
例4:記号付きのN=3パルスが符号化される。
符号化インデックス、Index(3)は合計13ビットを占有する。すなわち、Index(3)∈[0,213−1]である。図には、pos_num値が変動するときに、Index(3)の異なる部分が占有するビットの量が示されている。I1(N)は、マッピングモードで以下のように決定される。 I1(1)=0x1C00、I1(2)=0x1800、
I1(3)=0x0000
例5:記号付きのN=2パルスが符号化される。
符号化インデックス、Index(2)は合計9ビットを占有する。すなわち、Index(2)∈[0,29−1]である。図には、pos_num値が変動するときに、I
ndex(2)の異なる部分が占有するビットの量が示されている。I1(N)は、マッピングモードで以下のように決定される。
I1(1)=0x1E0、I1(2)=0x000
例6:記号付きのN=1パルス符号化される。
符号化インデックス、Index(1)は合計5ビットを占有する。すなわち、Index(1)∈[0,25−1]である。N≡1を考えれば、Index(1)は、インデ
ックスI23(1)=I2(1)と、p(0)の記号インデックスであるs(0)のみを含む。
第4の実施形態では符号化法が開示される。より具体的には、この実施形態では、第2の符号化モードで第2のインデックスI2を計算し、よって、代数計算により、I2と、P(N)={p(0),p(1),…,p(N−1)}であるトラック上のパルスを有する位置の分配との対応関係を決定することを容易にする方法が提供される。
この実施形態では、I2を計算する方法は次のとおりである。Nを第1のインデックスI1に対応するパルスを有する位置の量とする、すべての可能なP(N)値が、設定順に転置される。転置の際の転置番号は分配を指示する第2のインデックスI2として使用される。
「設定順」とは、同じ配列計算規則に従って符号器および復号器によって決定されるすべての可能なP(N)値の順序として理解され得る。この実施形態では、以下の配列計算規則が設けられる。
P(N)は、そこに含まれる値の組み合わせによって変化する。したがって、
p(0)<p(1)<…<p(N−1)、またはp(0)>p(1)>…>p(N−1)
であると仮定して、P(N)に含まれる各位置の通し番号を転置することができる。
p(0)<p(1)<…<p(N−1)であると仮定すると、p(0)∈[0,M−N]、p(n)∈[p(n−1)+1,M−N+N]であり、Mはトラック上の位置の総量である。P(N)の各次元の値が比較された後で、P(N)のすべての可能な値が、小さい値から大きい値へ、または大きい値から小さい値へと配列される。
値が小さい値から大きい値へと配列されており、配列されたP(N)値に0から始まる通し番号で番号がふられている場合、

であり、Cは組み合わせ関数を計算することを指し、Σは総和を指す。
上記の式は以下のように解釈され得る。

は、第1番目のパルスがp(0)の前に位置するときのP(N)の総量を指し、

は、第1番目のパルスがp(0)に位置し、第2番目のパルスがp(1)の前に位置するときのP(N)の総量を指し、

は類推によって解釈される。
上記の式はI4をQ(N)に関連付ける計算の一例にすぎないことに留意すべきである。また、同じ配列規則に依存して、計算関係を別の代数モードで同等に表わすこともできる。異なる配列規則が適用される場合に、類似の計算関係を設計することもできる。計算関係を表わすモードは、本発明の各実施形態に対するいかなる限定も構成するものではない。
上記のI2計算方法をより明確にするために、パルスの相対位置ベクトル、X(N)={x(1),x(2),…,x(N)}を仮定する。X(N)とP(N)の間には以下の1対1対応関係が存在する。
x(1)=p(0)、および
x(i)=p(i−1)−p(i−2)
式中、x(i)は第i番目のパルスを有する位置と第(i−1)番目のパルスを有する位置の間の相対位置関係を表わし、i∈[1,N]である。X(N)はP(N)のすべての可能な値を含むN層木を構築することができる。木の深さはN+1であり、第i層上のサブノードは、パルスを有する第i番目の位置の相対位置値x(i)を表わす。x(i)の値は左から右へ、小さい値から大きい値へと配列される。終端ノードが、木の底(すなわち終端ノード)において左から右へ符号化される。終端ノードから根ノードまでの各パスはX(N)の値に対応する。したがって、各終端ノードの符号は、対応するP(N)値を指示する第2のインデックスI2である。
以下に示す例では、トラック上の位置の総量がM=16であるものと仮定する。
例1:パルスを有する位置の量、すなわちpos_numはN=2であり、図7に木構造が示されている。
例2:パルスを有する位置の量、すなわちpos_numはN=3であり、図8に木構造が示されている。
Nの値が4、5、または6であるとき、対応する木構造は同様であり、I2を計算する式は推定することができ、ここではこれ以上繰り返さない。
この実施形態では、計算関係によって第2のインデックスI2を獲得する方法が開示される。符号化インデックスにおいてI2が占有するデータ量は大きいため、この実施形態における計算方法は、符号器および復号器の記憶負荷を最小限に抑える。I2はP(N)との厳密な1対1関係において連続して符号化され、よって、符号化ビットが最大限に活用され、無駄が省かれる。
以下で、第1の符号化モードおよび第2の符号化モードにおける符号化インデックス構築モードの利点を示す。理論上、同じトラック上で符号化すべきパルスの総量(pulse_num)は一定であるという前提条件では、トラック上のすべてのパルスのすべての可能な転置の量は符号化インデックスの最小限の値の範囲であり、対応する符号化ビットの量は理論上の下限である。転置の量が2n(nは整数である)とき、符号化ビットの量
の理論上の下限は整数である。転置の量が2n(nは整数である)でないとき、符号化ビ
ットの量の理論上の下限は小数である。この場合には、ある程度の符号化冗長性が存在する。トラック上の位置の総量がM=16であるとき、以下の表1に示すように、異なるpulse_numの値で、符号化ビットの量の理論上の下限と、AMR_WB+符号化モードで必要とされる符号化ビットの量と、第1の符号化モードおよび第2の符号化モードの符号化インデックス構築モードによって必要とされるビットの量の間で比較を行う。
表1によれば、第2の符号化モードの符号化インデックス構築モードは、理論上の下限が整数であるときに理論上の下限に達し、理論上の下限が小数であるときに理論上の下限の整数部分に1を足した値に到達することがわかる。Nが3、4、または5であるとき、第1の符号化モードは第2の符号化モードの符号化ビット長と等しい符号化ビット長を有する。符号化率が高い場合には、それらの符号化モードはどちらも、AMR_WB+より高い符号化効率を提供し、より多くのビット数を節約することができる。
計算量に関して、AVS−Mモバイルオーディオ規格の参照符号におけるすべての試験順序を試験オブジェクトとして使用して、以下の表2に示すように、AMR_WB+と第1の符号化モードと第2の符号化モードの間で動作時間の比較を行う(符号化プロセスおよび復号プロセスを含めてすべてのサンプル空間がトラバースされ、第1の符号化モードは第2の実施形態で提供される計算モードであり、第2の符号化モードは第4の実施形態で提供される計算モードであり、復号モードは後述する実施形態で提供される対応するモードである)。
表2によれば、第1の符号化モードに伴う動作の複雑さは大部分の状況においてより低く、第2の符号化モードの動作の複雑さはAMR_WB+のものと等しいことがわかる。表1および表2によれば、第1の符号化モードおよび第2の符号化モードを使用することにより、Nが3、4、または5のときには第1の符号化モードの低計算量の効力が発揮され、Nが別の値のときには第2の符号化モードの低符号化ビット長の効力が発揮されることがわかる。
本発明の第5の実施形態では符号化法が開示される。図9に示すように、この符号化法は以下の各ステップを含む。
C1:パルス位置の量、各パルスの位置がトラック上でどのように分配されているかに関するパルス分配、および各パルス位置におけるパルスの量を獲得するために、位置に従って、トラック上で符号化すべきパルスに関する統計が収集される。
ステップC1に関する説明は、第3の実施形態のステップB41に関する説明と同様であり、ここではこれ以上繰り返さない。
C2:パルス位置の量(すなわちpos_num=N)に従って第1のインデックスI1が決定される。第1のインデックスI1は、pos_numが同じであるときのトラック上のパルス位置のすべての可能な分配に対応する。
ステップC2に関する説明は、第3の実施形態のステップB42に関する説明と同様であり、ここではこれ以上繰り返さない。
C3:トラック上のパルス位置の分配に従って第2のインデックスI2が決定され、分配はP(N)で表される。第2のインデックスI2は、第1のインデックスI1に対応するすべての可能な分配の中の、現在のパルスを有する位置の分配に対応する分配のインスタンスを指示する。
ステップC3に関する説明は、第3の実施形態のステップB43に関する説明と同様であり、ここではこれ以上繰り返さない。
C4:各パルス位置におけるパルスの量を表わすSU(N)に従って第3のインデックスI3が決定される。
ステップC4に関する説明は、第3の実施形態のステップB44に関する説明と同様であり、ここではこれ以上繰り返さない。
C5:符号化インデックス、すなわちIndex(^N)が生成される。Index(^N)は、第1のインデックスI1、第2のインデックスI2、および第3のインデックスI3に関する情報を含む。^Nは、

を指す。
ステップC5に関する説明は、第3の実施形態のステップB45に関する説明と同様であり、ここではこれ以上繰り返さない。
第5の実施形態に関する関連する説明は、(各例を含めて)第3の実施形態に関する説明と同様であり、ここではこれ以上繰り返さない。
第6の実施形態では符号化法が開示される。この実施形態では、第5の実施形態のものと同一の符号化論理が適用される。具体的には、この実施形態では、第2のインデックスI2を計算し、よって、代数計算により、I2と、P(N)−{p(0),p(1),…,p(N−1)}であるトラック上のパルス位置の分配との対応関係を決定することを容易にする方法が提供される。詳細な説明は第4の実施形態のものと同様であり、ここではこれ以上繰り返さない。
本明細書で開示される復号化法を以下で詳細に説明する。
第7の実施形態では復号化法が提供される。この実施形態で提供される復号化法は、第1の実施形態における符号化法によって獲得される符号化インデックスを復号する。復号プロセスは符号化プロセスの逆である。図10に示すように、この復号プロセス以下の各ステップを含む。
D1:符号化インデックスIndex(N)が受け取られる。
D2:Index(N)から分配インデックスI4が抽出される。
Index(N)から分配インデックスI4を抽出するプロセスは、符号化時にI4をIndex(N)に配置するプロセスの逆とすることができる。例えば、I4が固定フィールドに配置される場合、I4はそのフィールドから直接抽出され得る。
符号化パルスが記号付きのパルスである場合、Index(N)から各パルスに対応する記号インデックスss(h)を抽出する必要がある。ビットの総量は符号化率によって変化する。したがって、復号器は、同じトラック上で符号化されたパルスの総量、すなわちpulse_num=Nを、符号化インデックスの長さ(ビットの量)に従って直接決定し、次いで、Nに従ってIndex(N)から対応する量の記号インデックスss(h)を抽出することができる。第1の実施形態で提供されるIndex(N)の構造によれば、N個の記号インデックスがIndex(N)の末尾に位置し、したがって、各ss(h)はIndex(N)から直接抽出され得る。
D3:分配インデックスI4に従って、Q(N)で表されるトラック上の各パルス位置の分配が決定される。
I4の復号はI4の符号化の逆である。I4が符号化プロセスにおいて計算関係によって獲得される場合、同じ計算関係が復号プロセスにおいて逆の操作を行うように適用され得る。I4が符号化プロセスにおいて問い合わせ関係によって獲得される場合、同じ対応関係が復号プロセスにおいて問い合わせされ得る。
D4:トラック上の各パルス位置の分配を表わすQ(N)に従って、トラック上のパルス順序が再構築される。
パルスが記号を含む場合、トラック上のパルス順序を再構築するときに、各パルスのパルス記号の正または負の特徴を、各記号インデックスss(h)で保持されるパルス記号情報に従って回復する必要がある。
第8の実施形態では復号化法が開示される。この実施形態で適用される復号論理は、第7の実施形態で適用されるものと同じである。第8の実施形態では、第2の実施形態における符号化法によって獲得される分配インデックスI4を復号する計算方法を開示する。復号器におけるこの計算方法は、第2の実施形態におけるI4を計算する方法の逆である。
I4が、符号化プロセスにおいて、

によって獲得される場合、復号器において以下の計算プロセスが適用される。
(1)

が、小さいq(0)値から大きいq(0)値へと計算され、式中、q(0)∈[0,M]であり、Mはトラック上の位置の総量であり、Nは同じトラック上で符号化されたパルスの総量であり、PPT=M+N−1であり、Cは組み合わせ関数を計算することを指す。T[q(0)]を0より大とする最後のq(0)値が、トラック上の第1番目のパルスの位置v0として記録される。
(2)N>1の場合、

が、小さいq(1)値から大きいq(1)値へと計算され、式中、q(1)∈[v0,M]であり、T1[q(1)]を0より大とする最後のq(1)値が、トラック上の第2番目のパルスの位置v1として記録される。
(3)類推により、

が、小さいq(h)値から大きいq(h)値へと計算され、式中、q(h)∈[v(h−1),M]、h [2,N−1]であり、Th[q(h)]を0より大とする最後のq(h)値が、トラック上の第(h+1)番目のパルス(h+1は序数である)の位置vhとして記録される。
(4)I4の復号が完了し、Q(N)={q(0),q(1),…,q(N−1)}が獲得される。
第9の実施形態では復号化法が提供される。この実施形態で提供される復号化法は、第3の実施形態における符号化法によって獲得される符号化インデックスを復号する。復号プロセスは符号化プロセスの逆である。図11に示すように、この復号プロセスは以下の各ステップを含む。
E1:受け取られたIndex(N)によって同じトラック上で符号化されたパルスの総量(N)が決定される。
復号器は、同じトラック上で符号化されたパルスの総量、すなわちpulse_num=Nを、符号化インデックスの長さ(ビットの量)に従って直接決定することができる。とはいえ復号器は、(例えば、符号化インデックスを受け取る前に相互に情報を交換することなどによって)符号器と一致するモードの符号化インデックスに対応するN値を獲得することもできる。この実施形態では、Nを獲得するモードを指定しない。
E2:Nの値に従って復号モードが選択される。復号モードには第1の復号モードが含まれる。選択結果に応じて、プロセスはステップE3またはステップE4に進む。
この実施形態では、第7の実施形態で説明した復号モードを第1の復号モードという。選択可能な復号モードには、第1の復号モードのみならず、他の復号モードも含まれる。選択可能な各復号モードは符号器で提供される符号化モードに対応する必要がある。この実施形態は、前述の第2の符号化モードに対応する第2の復号モードを提供する。
符号化モードと復号モードの間の整合性を保証するために、復号器は、符号器側で適用される対応する規則を使用して復号モードを選択する必要がある。
E3:復号モード選択の結果が分析される。第1の復号モードが選択されたと判定される場合、パルスは第1の符号化モードで復号される。符号化インデックスから分配インデックスを抽出するステップが行なわれる。
具体的な復号プロセスについては、第7の実施形態の説明を参照する。
E4:復号モード選択の結果が分析される。第2の復号モードが選択されたと判定される場合、パルスは第2の復号モードで復号される。第2の復号モードは以下の各ステップを含み得る。
E41:Index(N)から第1のインデックスI1が抽出される。I1に従ってパルスを有する位置の量、すなわちpos_numが決定される。
総ビットの量は符号化率によって変化する。したがって、復号器は、同じトラック上で符号化されたパルスの総量、すなわちpulse_num=Nを、符号化インデックスの長さ(ビットの量)に従って直接決定することができる。
Index(N)から各インデックスに関する情報を抽出するプロセスは、符号器側でインデックスを組み合わせてIndex(N)にするプロセスの逆とすることができる。例えば、各インデックスが固定フィールドに別々の配置される場合、インデックスはフィールドから直接抽出され得る。
Index(N)が、第3の実施形態で説明したように、I1を開始値として使用し、他のインデックスをオーバーレイする構造である場合、まずI1を抽出し、次いでI1に対応するpos_num値(N)に従ってIndex(N)内の他のインデックスの位置を決定するのが妥当である。この場合、1つのI1がIndex(N)の独立の値の範囲に対応することを考えると、復号器は、複数の設定された独立の値の範囲の中からIndex(N)の値の範囲を判定し、そのような値の範囲の開始値に従って第1のインデックスI1を決定することができる。
E42:Index(N)から第2のインデックスI2および第3のインデックスI3が抽出される。
I1と同様に、I2とI3も、I2とI3を組み合わせてIndex(N)にするプロセスと逆のプロセスにおいて抽出され、I2とI3が符号器において独立に配置される場合には、直接抽出することができる。I2とI3は、第3の実施形態で説明したように符号化プロセスにおいて組み合わされ、オーバーレイされる場合、以下の各ステップにおいて分離することができる。
(1)Index(N)からI2とI3の組み合わせ値、すなわちI23が抽出される。
Index(N)におけるI23の位置は、I1で決定されるN値によって指示され得る。
(2)I2とI3が、I2=I23%W(N)およびI3=Int[I23/W(N)]によって分離される。W(N)は、pos_num=Nの場合のすべての可能なP(N)の総量であり、

であり、式中、Mはトラック上の位置の総量であり、%は残余を取ること指し、Intは整数を取ることを指す。
E43:符号化パルスが記号付きのパルスである場合、Index(N)からパルスを有する各位置に対応する記号インデックスs(N)を抽出する必要がある。
第3の実施形態で提供されるIndex(N)の構造によれば、N個の記号インデックスがIndex(N)の末尾に位置する。したがって、各s(n)は、I1で指示されるN値が獲得された後で、Index(N)から直接分離され得る。
E44:pos_num=Nの場合のトラック上のパルスを有する各位置の分配は第2のインデックスI2に従って決定され、分配はP(N)として表される。
I2の復号はI2の符号化の逆である。I2が符号化プロセスにおいて計算関係によって獲得される場合、同じ計算関係が復号プロセスにおいて逆の操作を行うのに適用され得る。I2が符号化プロセスにおいて問い合わせ関係によって獲得される場合、同じ対応関係が復号プロセスにおいて問い合わせされ得る。
E45:SU(N)は、パルスを有する各位置におけるパルスの量を表わし、第3のインデックスI3に従って決定される。I3を復号する規則はI2を復号する規則と同様である。
E46:トラック上のパルスを有する位置の分配を表わすP(N)、およびパルスを有する各位置におけるパルスの量を表わすSU(N)に従って、トラック上のパルス順序が再構築される。
パルスが記号を含む場合、トラック上のパルス順序を再構築するときに、各記号インデックスs(N)で保持されるパルス記号情報に従って、パルスを有する各位置のパルス記号の正または負の特徴を回復する必要がある。
第10の実施形態では復号化法が開示される。この実施形態で適用される復号論理は、第9の実施形態で適用されるものと同じである。第10の実施形態では、第4の実施形態の符号化法によって獲得される第2のインデックスI2を復号する第2の復号モードの計算方法を開示する。復号器におけるこの計算方法は、第4の実施形態においてI2を計算する方法の逆である。
I2が符号化プロセスにおいて

によって獲得される場合、以下の計算プロセスが復号器において適用される。
(1)

が、I2の残余R(y0)が正の数から負の数に変わるまで、以下のようにI2から1つずつ減じられ、

式中、Mはトラック上の位置の総量であり、Nはパルスを有する位置の量であり、y0∈[1,M−N+1]であり、Cは組み合わせ関数を計算することを指す。p(0)、すなわちトラック上の第1番目のパルスを有する位置の通し番号が記録され、p(0)=y0−1である。
(2)N>1である場合、

が、R[p(0)]の残余R1(x1)が正の数から負の数に変わるまでR[p(0)]から1つずつさらに減じられる。p(1)、すなわちトラック上の第2番目のパルスを有する位置の通し番号が記録され、p(1)=y1−1である。
(3)類推によって、

が、R(n−1)[p(n−1)]の残余Rn(yn)が正の数から負の数に変わるまで、R(n−1)[p(n−1)]から1つずつさらに減じられ、ただし、n≦N−1である。p(n)、すなわちトラック上のn+1番目のパルスを有する位置の通し番号が記録され、p(n)=yn−1である。
(4)I2の復号が完了し、P(N)={p(0),p(1),…,p(N−1)}が獲得される。
第11の実施形態では復号化法が提供される。この実施形態で提供される復号化法は、第5の実施形態の符号化法に従って獲得される符号化インデックスを復号する。復号プロセスは符号化プロセスの逆である。図12に示すように、この復号プロセスは以下の各ステップを含む。
F1:符号化インデックスIndex(^N)が受け取られ、Index(^N)から第1のインデックスI1が抽出される。I1に従ってパルス位置の量、すなわちpos_numが決定される。
ステップF1に関する説明は第9の実施形態におけるステップE41の説明と同様である。
F2:Index(^N)から第2のインデックスI2および第3のインデックスI3が抽出される。
ステップF2に関する説明は第9の実施形態におけるステップE42の説明と同様である。
F3:符号化パルスが記号付きのパルスである場合、Index(^N)から各パルス位置に対応する記号インデックスs()を抽出する必要がある。
ステップF3に関する説明は第9の実施形態におけるステップ43の説明と同様である。
F4:pos_num=Nの場合のトラック上の各パルス位置の分配は第2のインデックスI2に従って決定され、分配はP(N)で表される。
ステップF4に関する説明は第9の実施形態におけるステップE44の説明と同様である。
F5:SU(N)は、各パルス位置におけるパルスの量を表わし、第3のインデックスI3に従って決定される。I3を復号する規則はI2を復号する規則と同様である。ステップF5に関する説明は第9の実施形態におけるステップE45の説明と同様である。
F6:トラック上の各パルス位置の分配を表わすP(N)、および各パルス位置におけるパルスの量を表わすSU(N)に従って、トラック上のパルス順序が再構築される。
ステップF6に関する説明は第9の実施形態におけるステップE46の説明と同様である。
第12の実施形態では復号化法が開示される。この実施形態において適用される復号論理は、第11の実施形態において適用されるものと同じである。第8の実施形態では、第6の実施形態における符号化法によって獲得される第2のインデックスI2を復号する計算方法を開示する。復号器におけるこの計算方法は、第6の実施形態のI2を計算する方法の逆である。詳細な説明は第4の実施形態の説明と同様であり、ここではこれ以上繰り返さない。
前述の各実施形態の各ステップの全部または一部は、ソフトウェア、ハードウェアまたはソフトウェアとハードウェアの両方によって実施され得ることを、当業者は理解できる。本発明の各実施形態はさらに、コンピュータが読取り可能な、もしくは実行可能な命令を保持もしくは格納し、またはデータ命令を格納するコンピュータ可読媒体を含んでいてもよい。プログラムは、ROM/RAM、磁気ディスク、コンパクトディスクといったコンピュータ可読媒体に格納されていてもよい。実行されるときに、記憶媒体に格納された命令から生成されるプログラムは、本発明のいずれかの実施形態における各ステップの一部または全部を含み得る。
以下で、本発明による符号器および復号器を詳細に説明する。
本発明の一実施形態によれば、符号器が開示される。符号器は、
トラック上で符号化すべきすべてのパルスの、そのトラック上のパルス分配を獲得するように適合されたパルス分配獲得ユニットと、
パルス分配獲得ユニットによって獲得されたパルス分配に従って、パルス分配を識別する分配識別子を決定するように適合された分配識別子決定ユニットと、
分配識別子決定ユニットによって決定された分配識別子を含む符号化インデックスを生成するように適合された符号化インデックス生成ユニットと
を含み得る。
パルス分配獲得ユニットによって獲得されるパルス分配は、トラック上のパルス位置の分配に関する情報を含み得る。
分配識別子決定ユニットは、
パルス分配をトラック上のパルス位置のすべての可能な分配と比較するように適合された比較ユニットと、
比較ユニットによって比較されたパルス分配に対応する分配識別子を獲得するように適合された獲得ユニットと
を含むことができ、パルス位置の可能な各分配は分配識別子に対応する。
パルス分配は、パルス位置の量、トラック上のパルス位置の分配、および各パルス位置におけるパルスの量を含み得る。
分配識別子は、第1のインデックス、第2のインデックス、および第3のインデックスに関する情報を保持することができ、その場合、
第1のインデックスは、パルス位置の量が同じであるときのトラック上のパルス位置のすべての可能な分配に関する情報を識別するように適合されており、
第2のインデックスは、第1のインデックスに対応するすべての可能な分配の中の、現在のパルス位置に対応する分配のインスタンスを識別するように適合されており、
第3のインデックスは、各パルス位置におけるパルスの量に関する情報を識別するように適合されている。
分配識別子決定ユニットは、
パルス位置の量に従って第1のインデックスを決定するように適合された第1の決定ユニットと、
トラック上のパルス位置の分配に従って第2のインデックスを決定するように適合された第2の決定ユニットと、
各パルス位置におけるパルスの量に従って第3のインデックスを決定するように適合された第3の決定ユニットと
を含み得る。
符号器は、比較ユニットがパルス分配をトラック上のパルス位置のすべての可能な分配に関する情報と比較する前に、または第2の決定ユニットがトラック上のパルス位置の分配に従って第2のインデックスを決定する前に、現在のパルスの量に関して設定順にトラック上のパルス位置のすべての可能な分配を転置するように適合された転置ユニットをさらに含んでいてもよく、転置の際の転置番号はその分配を指示する分配インデックスとして使用される。
また、パルス分配獲得ユニットは、トラック上で符号化すべきすべてのパルスがそのトラック上でどのように分配されているかに関するパルス分配を獲得するときに、パルスの正と負の特徴を指示するパルス記号情報も獲得し得る。また、分配識別子決定ユニットは、分配識別子を決定するときに、パルス記号情報に対応するパルス記号識別子も決定し得る。また、符号化インデックス生成ユニットによって生成される符号化インデックスは、各パルスに対応するパルス記号識別子も含み得る。
本発明の一実施形態によれば、符号器が開示される。符号器は、
トラック上で符号化すべきパルスの総量を決定するように適合されたパルス総和決定ユニットと、
パルス総和決定ユニットによって決定されたパルスの総量に従って符号化モードを選択するように適合された符号化モード選択ユニットと
符号化モード選択ユニットによって選択された符号化モードで符号化を行うように適合された符号化ユニットと
を含み得る。
符号化ユニットは、
トラック上で符号化すべきすべてのパルスがそのトラック上でどのように分配されているかに関するパルス分配を獲得するように適合されたパルス分配獲得ユニットと、
パルス分配獲得ユニットによって獲得されたパルス分配に従って、パルス分配を識別する分配識別子を決定するように適合された分配識別子決定ユニットと、
分配識別子決定ユニットによって決定された分配識別子を含む符号化インデックスを生成するように適合された符号化インデックス生成ユニットと
を含み得る。
パルス分配は、トラック上のパルス位置の分配に関する情報を含み得る。
分配識別子決定ユニットは、
パルス分配を、トラック上のパルス位置のすべての可能な分配に関する情報と比較するように適合された比較ユニットと、
比較ユニットによって比較されたパルス分配に対応する分配識別子を獲得するように適合された獲得ユニットと
を含んでいてもよく、可能な各分配に関する情報は分配識別子に対応する。
符号器はさらに、比較ユニットがパルス分配をトラック上のパルス位置のすべての可能な分配に関する情報と比較する前に、現在のパルスの量に関して設定順にトラック上のパルス位置のすべての可能な分配を転置するように適合された転置ユニットを含んでいてもよく、転置の際の転置番号はその分配を指示する分配インデックスとして使用される。
パルス分配は、パルス位置の量、トラック上のパルス位置の分配、および各パルス位置上のパルスの量を含み得る。
分配識別子は、第1のインデックス、第2のインデックス、および第3のインデックスに関する情報を保持送することができ、その場合、
第1のインデックスは、パルス位置の量が同じであるときのトラック上のパルス位置のすべての可能な分配に関する情報を識別するように適合されており、
第2のインデックスは、第1のインデックスに対応するすべての可能な分配の中の、現在のパルス位置に対応する分配のインスタンスを識別するように適合されており、
第3のインデックスは、各パルス位置におけるパルスの量に関する情報を識別するように適合されている。
分配識別子決定ユニットは、
パルス位置の量に従って第1のインデックスを決定するように適合された第1の決定ユニットと、
トラック上のパルス位置の分配に従って第2のインデックスを決定するように適合された第2の決定ユニットと、
各パルス位置におけるパルスの量に従って第3のインデックスを決定するように適合された第3の決定ユニットと
を含み得る。
符号器はさらに、第2の決定ユニットがトラック上のパルスの位置の分配に従って第2のインデックスを決定する前に、現在のパルスの量に関して設定順にトラック上のパルス位置のすべての可能な分配を転置するように適合された転置ユニットを含んでいてもよく、転置の際の転置番号はその分配を指示する分配インデックスとして使用される。
また、パルス分配獲得ユニットは、トラック上で符号化すべきすべてのパルスがそのトラック上でどのように分配されているかに関するパルス分配を獲得するときに、パルスの正と負の特徴を指示するパルス記号情報も獲得し得る。また、分配識別子決定ユニットは、分配識別子を決定するときに、パルス記号情報に対応するパルス記号識別子も決定し得る。また、符号化インデックス生成ユニットによって生成される符号化インデックスは、各パルスに対応するパルス記号識別子も含み得る。
本発明の一実施形態によれば、復号器が開示される。復号器は、
符号化インデックスを受け取るように適合された符号化インデックス受取ユニットと、
符号化インデックス受取ユニットによって受け取られた符号化インデックスから、トラック上で符号化すべきすべてのパルスの、そのトラック上の、パルス分配を識別するように構成されている分配識別子を獲得するように適合された分配識別子抽出ユニットと、
分配識別子抽出ユニットによって獲得された分配識別子に従って、そのトラック上で符号化すべきすべてのパルスの、そのトラック上のパルス分配を決定するように適合されたパルス分配決定ユニットと、
パルス分配決定ユニットによって決定されたパルス分配に従ってトラック上のパルス順序を再構築するように適合されたパルス順序再構築ユニットと
を含み得る。
パルス分配はトラック上のパルス位置の分配に関する情報を含み得る。
パルス分配決定ユニットは、
分配識別子を、トラック上のパルス位置のすべての可能な分配に対応する分配識別子と比較するように適合された比較ユニットと、
比較ユニットによって比較された分配識別子に対応する分配を獲得するように適合された獲得ユニットと
を含んでいてもよく、各分配識別子は可能な各分配に関する情報に対応する。
分配識別子は、第1のインデックス、第2のインデックス、および第3のインデックスに関する情報を保持することができ、その場合、
第1のインデックスは、パルス位置の量が同じであるときのトラック上のパルス位置のすべての可能な分配に関する情報を識別するように適合されており、
第2のインデックスは、第1のインデックスに対応するすべての可能な分配の中の、現在のパルス位置に対応する分配のインスタンスを識別するように適合されており、
第3のインデックスは、各パルス位置におけるパルスの量に関する情報を識別するように適合されている。
パルス分配は、パルス位置の量、トラック上のパルス位置の分配、および各パルス位置上のパルスの量を含み得る。
分配識別子抽出ユニットは、
符号化インデックスから第1のインデックスを抽出するように適合された第1の抽出ユニットと、
符号化インデックスから第2のインデックスおよび第3のインデックスを抽出するように適合された第2の抽出ユニットと
を含み得る。
パルス分配決定ユニットは、
第1のインデックスに従ってパルス位置の量を決定するように適合された第1の決定ユニットと、
第1のインデックスに対応するパルス位置の量に関して第2のインデックスに従ってトラック上のパルス位置の分配を決定するように適合された第2の決定ユニットと、
第3のインデックスに従って各パルス位置におけるパルスの量を決定するように適合された第3の決定ユニットと
を含む。
また、分配識別子抽出ユニットは、符号化インデックスから分配識別子を抽出するときに、符号化インデックスからパルスの正と負の特徴を指示するパルス記号識別子も抽出し得る。また、パルス分配決定ユニットは、分配識別子に従ってパルス分配を決定するときに、パルス記号識別子に従って対応するパルス記号情報も決定し得る。パルス順序再構築ユニットは、トラック上のパルス順序を再構築するときに、パルス記号情報に従ってパルスの正または負の特徴を回復し得る。
本発明の一実施形態によれば、復号器が開示される。復号器は、
符号化インデックスを受け取るように適合された符号化インデックス受取ユニットと、
符号化インデックス受取ユニットによって受け取られた符号化インデックスに関してトラック上で符号化されたパルスの総量を決定するように適合されたパルス総和決定ユニットと、 パルス総和決定ユニットによって決定されたパルスの総量に従って復号モードを選択するように適合された復号モード選択ユニットと、
復号モード選択ユニットによって選択された復号モードで復号を行うように適合された復号ユニットと
を含み得る。
復号ユニットは、
符号化インデックス受取ユニットによって受け取られた符号化インデックスから、トラック上で符号化すべきすべてのパルスがそのトラック上でどのように分配されているかに関するパルス分配を識別する分配識別子を抽出するように適合された分配識別子抽出ユニットと、
分配識別子抽出ユニットによって抽出された分配識別子に従って、トラック上で符号化すべきすべてのパルスがそのトラック上でどのように分配されているかに関するパルス分配を決定するように適合されたパルス分配決定ユニットと、
パルス分配決定ユニットによって決定されたパルス分配に従ってトラック上のパルス順序を再構築するように適合されたパルス順序再構築ユニットと
を含み得る。
パルス分配はトラック上のパルス位置の分配に関する情報を含み得る。
パルス分配決定ユニットは、
分配識別子を、トラック上のパルス位置のすべての可能な分配に対応する分配識別子と比較するように適合された比較ユニットと、
比較ユニットによって比較された分配識別子に対応するパルス分配を獲得するように適合された獲得ユニットと
を含んでいてもよく、各分配識別子は可能な分配のインスタンスに関する情報に対応する。
分配識別子は、第1のインデックス、第2のインデックス、および第3のインデックスに関する情報を保持することができ、その場合、
第1のインデックスは、パルス位置の量が同じであるときのトラック上のパルス位置のすべての可能な分配に関する情報を識別するように適合されており、
第2のインデックスは、第1のインデックスに対応するすべての可能な分配の中の、現在のパルス位置に対応する分配のインスタンスを識別するように適合されており、
第3のインデックスは、各パルス位置におけるパルスの量に関する情報を識別するように適合されている。
パルス分配は、パルス位置の量、トラック上のパルス位置の分配、および各パルス位置上のパルスの量を含み得る。
分配識別子抽出ユニットは、
符号化インデックスから第1のインデックスを抽出するように適合された第1の抽出ユニットと、
符号化インデックスから第2のインデックスおよび第3のインデックスを抽出するように適合された第2の抽出ユニットと
を含み得る。
パルス分配決定ユニットは、
第1のインデックスに従ってパルス位置の量を決定するように適合された第1の決定ユニットと、 第1のインデックスに対応するパルス位置の量に関して第2のインデックスに従ってトラック上のパルス位置の分配を決定するように適合された第2の決定ユニットと、
第3のインデックスに従って各パルス位置におけるパルスの量を決定するように適合された第3の決定ユニットと
を含み得る。
また、分配識別子抽出ユニットは、符号化インデックスから分配識別子を抽出するときに、符号化インデックスからパルスの正と負の特徴を指示するパルス記号識別子も抽出し得る。また、パルス分配決定ユニットは、分配識別子に従ってパルス分配を決定するときに、パルス記号識別子に従って対応するパルス記号情報も決定し得る。パルス順序再構築ユニットは、トラック上のパルス順序を再構築するときに、パルス記号情報に従ってパルスの正または負の特徴を回復し得る。
本発明による符号器および復号器を、添付の図面を参照して以下で詳細に説明する。
本発明の第13の実施形態では符号器10が開示される。図13に示すように、符号器は、第1の統計ユニット11と、分配インデックスユニット12と、インデックス生成ユニット13とを含み、
第1の統計ユニット11は、各パルスの位置がトラック上でどのように分配されているかに関する、Q(N)で表されるパルス分配を獲得するために、トラック上で符号化すべきパルスの統計を収集するように適合されている。記号付きのパルスの統計を収集するときに、第1の統計ユニット11は、各パルスのパルス記号の正または負の特徴に従って、対応するパルスのパルス記号を指示する記号インデックスの、各パルスに対応する記号インデックス情報SS(N)を出力し、
分配インデックスユニット12は、第1の統計ユニット11によって獲得されたQ(N)に従って分配インデックスI4を決定するように適合されている。トラック上のすべてのパルスの位置のすべての可能な分配が、現在のパルスの量に関して設定順に転置され、転置の際の転置番号が分配を指示する分配インデックスI4として使用される、というやり方で、I4は計算され、
インデックス生成ユニット13は、分配インデックスユニット12によって決定された分配インデックスI4に関する情報を含む符号化インデックスIndex(N)を生成するように適合されている。記号付きのパルスを符号化するときに、インデックス生成ユニット13は、各パルスに対応する記号インデックス情報SS(N)を組み合わせてIndex(N)にする。
この実施形態で開示される符号化装置は、第1の実施形態および第2の実施形態で開示された符号化法に適用することができる。
第14の実施形態は符号器20を提供する。図14に示すように、符号器は、第1の符号化モジュール21と、第2の符号化モジュール22と、符号化選択ユニット2とを含む。
符号化選択ユニット23は、同じトラック上で符号化すべきパルスの総量(N)を決定し、Nに従って符号化モードを選択するように適合されている。この実施形態では、選択可能な符号化モードに、第1の符号化モードと第2の符号化モードが含まれる。符号化モード選択の結果に応じて、第1の符号化モードが選択された場合には、符号化を行うために第1の符号化モジュール21がトリガされ、第2の符号化モード22が選択された場合には、符号化を行うために第2の符号化モジュール21がトリガされる。
第1の符号化モジュール21は、第1の統計ユニット211と、分配インデックスユニット212と、インデックス生成ユニット213とを含む。各ユニットの論理構造は、第13の実施形態における対応する各ユニットの論理構造と同じである。
第2の符号化モジュール22は、第2の統計ユニット221と、インデックス計算ユニット222と、インデックス組み合わせユニット223とを含む。
第2の統計ユニット221は、位置に従ってトラック上で符号化すべきパルスの統計を収集し、パルスを有する位置の量(N)、トラック上のパルスを有する各位置の分配を表わすP(N)、およびパルスを有する各位置におけるパルスの量を表わすSU(N)を出力するように適合されている。記号付きのパルスの統計を収集するとき、第2の統計ユニット221は、パルスを有する各位置のパルス記号の正または負の特徴に従って対応するパルス記号情報S(N)も出力する。
インデックス計算ユニット222は、第1のインデックスユニット2221と、第2のインデックスユニット2222と、第3のインデックスユニット2223と、インデックス組み合わせユニット223とを含む。
第1のインデックスユニット2221は、パルスを有する位置の量(N)に従って第1のインデックスI1を出力するように適合されている。第1のインデックスI1は、Nが同じであるときのトラック上のパルスを有する位置のすべての可能な分配に対応する。
第2のインデックスユニット2222は、トラック上のパルスを有する位置の、P(N)で表される分配に従って第2のインデックスI2を出力するように適合されている。第2のインデックスI2は、第1のインデックスに対応するすべての可能な分配の中の、現在のパルスを有する位置の分配に対応する分配のインスタンスを指示する。
第3のインデックスユニット2223は、パルスを有する各位置におけるパルスの量に従って、すなわちSU(N)に従って第3のインデックスを出力するように適合されている。
インデックス組み合わせユニット223は、第1のインデックス、第2のインデックス、および第3のインデックスに関する情報を組み合わせて符号化インデックスを生成するように適合されている。符号化すべきパルスが記号を含む場合、インデックス組み合わせユニット223はさらに、対応するパルスを有する位置のパルス記号情報を指示する記号インデックスの、パルスを有する各位置に対応する記号インデックス情報S(N)も組み合わせて符号化インデックスにする。
符号化インデックス構造が第3の実施形態における第2の符号化モードで提供される場合、符号化のためのインデックス組み合わせユニット223は、
第2のインデックスと第3のインデックスが組み合わさったI23、すなわち、W(N)でトラック上のパルスを有する位置のすべての可能な分配の総量を表わし、Nで第1のインデックスに対応するパルスを有する位置の量を表わしたときの、I23=I3×W(N)+I2を出力するように適合された第1の組み合わせユニット2231と、
第1の組み合わせユニット2231の出力に他のインデックスに関する情報をオーバーレイし、符号化インデックスIndex(N)を出力するように適合された第2の組み合わせユニット2232と
を含み得る。
この実施形態で開示される符号化装置は、第3の実施形態および第4の実施形態で開示された符号化法に適用することができる。
第15の実施形態では符号器30が開示される。図15に示すように、符号器は、パルス統計ユニット31と、インデックス計算ユニット32と、インデックス組み合わせユニット33とを含み、
パルス統計ユニット31は、位置に従ってトラック上で符号化すべきパルスの統計を収集し、パルスを有する位置の量(N)、トラック上のパルスを有する各位置の分配を表わすP(N)、およびパルスを有する各位置におけるパルスの量を表わすSU(N)を出力するように適合されている。記号付きのパルスの統計を収集するときに、パルス統計ユニット31は、パルスを有する各位置のパルス記号の正または負の特徴に従って対応するパルス記号情報S(N)も出力し、
インデックス計算ユニット32は、第1のインデックスユニット321、第2のインデックスユニット322、および第3のインデックスユニット323を含み、
第1のインデックスユニット321は、パルスを有する位置の量(N)に従って第1のインデックスI1を出力するように適合されている。第1のインデックスI1はNが同じであるときのトラック上のパルスを有する位置のすべての可能な分配に対応し、
第2のインデックスユニット322は、トラック上のパルスを有する位置の、P(N)で表される分配に従って第2のインデックスI2を出力するように適合されている。第2のインデックスI2は、第1のインデックスに対応するすべての可能な分配の中の、現在のパルスを有する位置の分配に対応する分配のインスタンスを指示し、
第3のインデックスユニット323は、パルスを有する各位置におけるパルスの量、すなわちSU(N)に従って第3のインデックスを出力するように適合されており、
インデックス組み合わせユニット33は、第1のインデックス、第2のインデックス、および第3のインデックスに関する情報を組み合わせて符号化インデックスを生成するように適合されている。符号化すべきパルスが記号を含む場合、インデックス組み合わせユニット33はさらに、対応するパルスを有する位置のパルス記号情報を指示する記号インデックスの、パルスを有する各位置に対応する記号インデックス情報S(N)も組み合わせて符号化インデックスにする。
パルスが第5の実施形態で提供される符号化インデックス構造に従って符号化されるとき、インデックス組み合わせユニット33は、
第2のインデックスと第3のインデックスが組み合わさったI23、すなわち、W(N)でトラック上のパルスを有する位置のすべての可能な分配の総量を表わし、Nで第1のインデックスに対応するパルスを有する位置の量を表わしたときの、I23=I3×W(N)+I2を出力するように適合された第1の組み合わせユニット331と
第1の組み合わせユニット331の出力に他のインデックスに関する情報をオーバーレイし、符号化インデックスIndex(N)を出力するように適合された第2の組み合わせユニット332と
を含み得る。
この実施形態で開示される符号化装置は、第5の実施形態および第6の実施形態で開示された符号化法に適用することができる。
第16の実施形態では復号器40が開示される。図16に示すように、復号器は、
符号化インデックスIndex(N)を受け取るように適合された受取ユニット41と、
受取ユニット41によって受け取られたIndex(N)から分配インデックスI4を抽出するように適合された分配抽出ユニット42と、
分配抽出ユニット42によって抽出された分配インデックスI4に従って、トラック上の各パルス位置の、Q(N)で表される分配を決定するように適合された分配復号ユニット43と、
分配復号ユニット43によって決定された、トラック上の各パルス位置の分配を表わすQ(N)に従ってトラック上のパルス順序を再構築するように適合された分配再構築ユニット44と
を含む。
復号すべきパルスが記号を含む場合、復号器はさらに、
同じトラック上で符号化すべきパルスの総量(N)に従って、受取ユニット31によって受け取られたIndex(N)から、対応するパルスのパルス記号情報を指示する記号インデックスの、各パルスに対応する記号インデックスSS(N)を抽出するように適合された記号抽出ユニット45
を含む必要がある。
この場合、分配再構築ユニット44はさらに、記号抽出ユニット45によって抽出されるSS(N)によって指示されるパルス記号情報に従って、各パルスのパルス記号の正または負の特徴を回復する。
この実施形態で開示される復号装置は、第7の実施形態および第8の実施形態で開示された復号化法に適用することができる。
第17の実施形態は復号器50を提供する。図17に示すように、復号器は、第1の復号モジュール51と、第2の復号モジュール52と、復号選択ユニット53とを含む。
復号選択ユニット53は、受け取られた符号化インデックスIndex(N)によって同じトラック上で符号化されたパルスの総量(N)を決定し、総量Nに従って復号モードを選択するように適合されている。この実施形態の選択可能な復号モードには、第1の復号モードと第2の復号モードが含まれる。復号モード選択の結果に応じて、第1の復号モードが選択された場合には、復号を行うために第1の復号モジュール51がトリガされ、第2の復号モードが選択された場合には、復号を行うために第2の復号モジュール52がトリガされる。
第1の復号モジュール51は、分配抽出ユニット512と、分配復号ユニット513と、分配再構築ユニット514と、記号抽出ユニット515とを含む。各ユニットの論理構造は、第16の実施形態における対応する各ユニットの論理構造と同じである。
第2の復号モジュール52は、
符号化インデックスIndex(N)を受け取り、Index(N)から第1のインデックスI1を抽出し、I1に従ってパルスを有する位置の量(N)を決定するように適合された第1の抽出ユニット521と、
符号化インデックスIndex(N)から第2のインデックスI2と第3のインデックスI3を抽出するように適合された第2の抽出ユニット522と
を含む。
符号化インデックス構造が第3の実施形態における第2の符号化モードで提供される場合、復号のための第2の抽出ユニット522は、
符号化インデックスから第2のインデックスと第3のインデックスの組み合わせ値I23を抽出するように適合された分離サブユニット5221と、
W(N)でトラック上のパルスを有する位置のすべての可能な分配の総量を表わし、Nで第1のインデックスに対応するパルスを有する位置の量を表わし、%で残余を取ること指し、Intで整数を取ることを指したときに、
I2=I23%W(N)、I3=Int[I23/W(N)]
というやり方で、第2のインデックスI2と第3のインデックスI3とを分離し、出力するように適合された解決サブユニット5222と、 I1に対応するパルスを有する位置の量に関して、第2のインデックスI2に従って、トラック上のパルスを有する位置の分配を表わすP(N)を決定するように適合された第1の復号ユニット523と、
第3のインデックスI3に従って、パルスを有する各位置におけるパルスの量を表わすSU(N)を決定するように適合された第2の復号ユニット524と、
トラック上のパルスを有する位置の分配を表わすP(N)とパルスを有する各位置におけるパルスの量を表わすSU(N)に従ってトラック上のパルス順序を再構築するように適合されたパルス再構築ユニット525と
を含み得る。
復号すべきパルスが記号を含む場合、復号器はさらに、
パルスの量(N)に従ってIndex(N)から、対応するパルスを有する位置のパルス記号情報を指示する記号インデックスの、パルスを有する各位置に対応する記号インデックスs(n)を抽出するように適合された第3の抽出ユニット526
を含む必要がある。
この場合、パルス再構築ユニット525は、
トラック上のパルスを有する位置の分配を表わすP(N)と、パルスを有する各位置に対応する記号インデックスを表わすs(n)に従って、パルスを有する各位置のパルス記号の正または負の特徴を回復するように適合された第1の再構築ユニット5251と、
第1の再構築ユニット5251によって出力された、パルスを有する位置の分配および記号と、パルスを有する各位置におけるパルスの量を表わすSU(N)とに従って、トラック上のパルス順序を再構築するように適合された第2の再構築ユニット5252と
を含み得る。
この実施形態で開示される復号装置は、第9の実施形態および第10の実施形態で開示された復号化法に適用することができる。
第18の実施形態では復号器60が開示される。図18に示すように、復号器は、
符号化インデックスIndex(N)を受け取り、Index(^N)から第1のインデックスI1を抽出し、I1に従ってパルスを有する位置の量(N)を決定するように適合された第1の抽出ユニット61と、
符号化インデックスIndex(^N)から第2のインデックスI2および第3のインデックスI3を抽出するように適合された第2の抽出ユニット62と
を含む。
第5の実施形態で提供される符号化インデックス構造を復号する場合、第2の抽出ユニット62は、
符号化インデックスから第2のインデックスと第3のインデックスの組み合わせ値I23を抽出するように適合された分離サブユニット621と、
W(N)でトラック上のパルスを有する位置のすべての可能な分配の総量を表わし、Nで第1のインデックスに対応するパルスを有する位置の量を表わし、%で残余を取ること指し、Intで整数を取ることを指したときの、
I2=I23%W(N)、I3=Int[I23/W(N)]
というやり方で、第2のインデックスI2と第3のインデックスI3とを分離し、出力するように適合された解決サブユニット622と、
I1に対応するパルスを有する位置の量に関して、第2のインデックスI2に従って、トラック上のパルスを有する位置の分配を表わすP(N)を決定するように適合された第1の復号ユニット63と、
第3のインデックスI3に従って、パルスを有する各位置におけるパルスの量を表わすSU(N)を決定するように適合された第2の復号ユニット64と、
トラック上のパルスを有する位置の分配を表わすP(N)とパルスを有する各位置におけるパルスの量を表わすSU(N)に従ってトラック上のパルス順序を再構築するように適合されたパルス再構築ユニット65と
を含み得る。
復号すべきパルスが記号を含む場合、復号器はさらに、
パルスの量(N)に従ってIndex(^N)から、対応するパルスを有する位置のパルス記号情報を指示する記号インデックスの、パルスを有する各位置に対応する記号インデックスs(n)を抽出するように適合された第3の抽出ユニット66
を含む必要がある。
この場合、パルス再構築ユニット65は、
トラック上のパルスを有する位置の分配を表わすP(N)と、パルスを有する位置に対応する記号インデックスを表わすs(n)に従って、パルスを有する各位置のパルス記号の正または負の特徴を回復するように適合された第1の再構築ユニット651と、
第1の再構築ユニット651によって出力された、パルスを有する位置の分配および記号と、パルスを有する各位置におけるパルスの量を表わすSU(N)とに従って、トラック上のパルス順序を再構築するように適合された第2の再構築ユニット652と
を含み得る。
この実施形態で開示される復号装置は、第11の実施形態および第12の実施形態で開示された復号化法に適用することができる。
前述の各実施形態をさらに明確にするために、以下に、符号化および復号化の例を示す。例において、符号化は、第3の実施形態における符号化法(第1の符号化モードが第2の実施形態における計算方法に基づくものであり、第2の符号化モードが第4の実施形態における計算方法に基づくものである)に基づくものであり、復号化は、第9の実施形態における復号化法(第1の復号モードが第8の実施形態における計算方法に基づくものであり、第2の復号モードが第10の実施形態における計算方法に基づくものである)に基づくものであり、第1の符号化/復号モードの選択条件をN=3、4、5とし、トラック上の位置の総量をM=16であると仮定する。
例1:パルス探索結果の符号化および復号化。
A.符号化
(1)N=6、符号化のために第2の符号化モードが決定され、Index(N)は21ビットを占有する必要がある。
(2)N、P(N)、SU(N)、およびS(N)の統計が収集される。
N=1;
P(1)={p(0)}={2};
SU(1)={su(0)}={6};および
S(1)={s(0)}={0}。
(3)I1、I2、I3、およびI23が符号化される。
N=1により、図5を参照してI1=0x1F0000が決定される。
第4の実施形態における計算方法により、I2=2。
Class(1)=1、I3=0、したがって、I23=I2=2。
(4)Index(N)が生成される。
Index(N)=I1+I23×2N+s(0)×2N-1+s(1)×2N-2+…+s
(N−1)
=0x1F0000+2×2+0 =0x1F0004
B.復号
(1)Index(N)=0x1F0004が受け取られる。符号化長に従ってN=6が決定され、復号のために第2の復号モードが決定される。
(2)I1、s(n)およびI23が抽出される。
Index(N)=0x1F0004により、図5を参照して、I1=0x1F0000およびN=1が決定される。
N=1により、Index(N)の最後のビットが分離され、s(0)=0。
I23が分離され、I23=[Index(N)>>1]−I1=2であり、「>>k」は左にkビットシフトされることを表わす。
(3)I23が復号される。
N=1により、

I3=Int[I23/W(1)]=0であり、SU(1)に対応する一意のインスタンスはSU(1)={6}である。
I2=I23%W(1)=2、第8の実施形態における計算方法により、P(1)={p(0)}={2}。
(4)パルス順序が回復される。
P(1)={2}、SU(1)={6}、s(0)=0により、位置2に6個の正のパルスが存在すると決定される。復号プロセスが完了する。
例2:パルス探索結果のための符号化および復号。
A.符号化
(1)N=5、符号化のために第1の符号化モードが決定され、Index(N)は19ビットを占有する必要がある。
(2)Q(N)およびSS(N)の統計が収集される。
Q(5)={q(0),q(1),q(2),q(3),q(4)}={1,1,4,6,6}、及び
SS(5)={ss(0),ss(1),ss(2),ss(3),ss(4)}={0,0,0,0,0}。
(3)I4が符号化される。
第2の実施形態における計算方法により、

(4)Index(N)が生成される。
Index(5)=I4×25+ss(0)×24+ss(1)×24+…+ss(4)
=4215×25+0
=0x20EE0
B.復号化
(1)Index(N)=0x20EE0が受け取られる。符号化長に従ってN=5が決定され、復号のために第1の復号モードが決定される。
(2)Q(N)およびSS(N)が抽出される。
N=5により、Index(N)の最後の5ビットが分離され、ss(0)−ss(4)=0である。 I4が分離される。I4=[Index(N)>>5]=4215。
(3)I4が復号される。
第8の実施形態の計算方法により、Q(5)={1,1,4,6,6}。
(4)パルス順序が回復される。
Q(5)={1,1,4,6,6}およびss(0)〜ss(4)=0により、位置1に2つの正のパルスが存在し、位置4に1つの正のパルスが存在し、位置6に2つの正のパルスが存在すると決定される。復号プロセスが完了する。
以上の各実施形態によれば、符号化すべきパルスは、符号化する前に、トラック上のパルスを有する位置の分配に従って配列され、よって、計算が簡略化される。符号化はその順序に従って行われるため、すべてのパルス分配が連続した符号化に対応し、よって、符号化冗長性が最小限に抑えられ、符号化ビットが節約される。さらに、本発明では、第1の符号化/復号モードが第2の符号化/復号モードと統合される。したがって、異なるN値を有する2つの符号化モードの長所が相互に補完し合い、長所がより顕著になる。
以下に、別の符号化および復号の例を示す。符号化は第2の実施形態における符号化法に基づくものであり、復号は第4の実施形態における復号化法に基づくものであり、トラック上の位置の総量をM=16であると仮定する。
例1:パルス探索結果の符号化および復号。
A.符号化
(1)^N=6、Index(^N)は21ビットを占有する必要がある。
(2)N、P(N)、SU(N)、およびS(N)の統計が収集される。
N=1;
P(1)={p(0)}={2};
SU(1)={su(0)}={6};および
S(1)={s(0)}={0}。
(3)I1、I2、I3、およびI23が符号化される。
N=1により、図5を参照して、I1=0x1F0000が決定される。
第6の実施形態における計算方法により、I2=2。
Class(1)=1、I3=0、したがって、I23=I2=2。
(4)Index(^N)が生成される。
Index(N)=I1+I23×2N+s(0)×2N-1+s(1)×2N-2+…+s
(N−1)
=0x1F0000+2×2+0
=0x1F0004
B.復号化
(1)Index(^N)=0x1F0004が受け取られる。符号化長により、^N=6が決定される。
(2)I1、s(n)、およびI23が抽出される。
Index(^N)=0x1F0004により、I1=0x1F0000およびN=1が決定される。
N=1により、Index(^N)の最後のビットが分離され、s(0)=0。
I23が分離され、I23=[Index(^N)>>1]−I1=2であり、「>>k」は左にkビットシフトされることを表わす。
(3)I23が復号される。
N=1により、


I3=Int[I23/W(1)]=0、SU(1)に対応する一意のインスタンスは、SU(1)={6}である。
I2=I23%W(1)=2、第12の実施形態における計算方法により、P(1)={p(0)}={2}。
(4)パルス順序が回復される。
P(1)={2}、SU(1)={6}、およびs(0)=0により、位置2に6個の正のパルスが存在すると決定される。復号プロセスが完了する。
例2:パルス探索結果の符号化および復号化。
A.符号化
(1)^N=6、Index(^N)は21ビットを占有する必要がある。
(2)N、P(N)、SU(N)、およびS(N)の統計が収集される。
N=2;
P(2)={p(0),p(1)}={2,4};
SU(2)={su(0),su(1)}={2,4};および
S(2)={s(0),s(1)}={0,0}。
(3)I1、I2、13、およびI23が符号化される。
N=2により、図5を参照して、I1=0x1E0000が決定される。
第6の実施形態における計算方法により、I2=30。
Class(2)=5であると考え、SU(2)の5つの可能なインスタンスが、{{5,1}、{4,2}、{3,3}、{2,4}、および{1,5}}という順序で配列されていると仮定すると、SU(2)={2,4}は第4のインスタンスであり、I3=3、したがって、


(4)Index(^N)が生成される。
Index(^N)=I1+I23×2N+s(0)×2N−1+s(1)×2N=2+…+s(N−1)
=0x1E0000+390×4+0+0
=0x1E0618
B.復号化
(1)Index(^N)=0x1E0618が受け取られる。符号化長により、N=6が決定される。
(2)I1、s(n)、およびI23が抽出される。
Index(N)=0x1E0618により、図5を参照して、I1=0x1E0000およびN=2が決定される。
N=2により、Index(^N)の最後の2ビットが分離され、s(0)=0、s(1)=0。
I23が分離される。I23=[Index(^N)>>2]−I1=390。
(3)I23が復号される。
N=2により、


I3=Int[I23/W(2)]=3。符号器において適用されたSU(2)のすべての同じインスタンスの順序により、第4のインスタンス、SU(2)={2,4}がマッチングされる。
I2=I23%W(2)=30であり、第12の実施形態における計算方法により、P(2)={2,4}である。
(4)パルス順序が回復される。
P(2)={2、4}、SU(2)={2、4}、s(0)=0、およびs(1)=0により、位置2に2つの正のパルスが存在し、位置4に4つの正のパルスが存在すると決定される。復号プロセスが完了する。
以上の各実施形態によれば、符号化すべきパルスは、位置に従って組み合わされ、パルスを有する位置の量、トラック上のパルスを有する位置の分配、およびパルスを有する各位置におけるパルスの量が符号化される。本発明による符号化法は、どんな量の符号化すべきパルスにも一律に適用することができ、よって、再帰的モードで生じる符号化インデックスの冗長性の増大が回避され、符号化ビットの高利用率が保証される。他方、同じ位置の複数のパルスを別々に符号化する必要はない。そうではなく、パルスの各位置は符号化する前にマージされ、よって、符号化ビットが節約される。トラック上で符号化すべきパルスが増加するにつれて、パルス位置をオーバーレイする確率も増大し、本発明の実施形態の長所がより顕著になる。
以上が、本発明による符号化法、復号、符号器、および復号器の詳述な説明である。本発明は、いくつかの例示的実施形態によって説明されているが、それらの実施形態だけに限定されるものではない。当業者が、本発明の精神および範囲を逸脱することなく、本発明の様々な改変および変形を実施し得ることは明らかである。本発明は、それらの改変および変形が、添付の特許請求の範囲またはその均等物によって定義される保護範囲に含まれるという条件で、それらの改変および変形を包含するものである。

Claims (18)

  1. 符号化の方法であって、
    トラック上で符号化すべきパルスの、前記トラック上のパルス分配であって、パルスを有する位置の量、前記トラック上のパルスを有する位置の分配、および各パルス位置におけるパルスの量を含む前記パルス分配を獲得すること、および
    前記パルス分配に従って前記パルス分配を識別するための第1のインデックスI1、第2のインデックスI2、及び第3のインデックスI3を含む符号化インデックスを生成すること
    を含む方法であって、
    前記符号化インデックスを生成することは、
    前記パルス位置の量に従って前記第1のインデックスを決定すること、
    トラック上のパルスを有する位置の分配を表わす、P(N)={p(0),p(1),…,p(N−1)}(Nは、トラック上のパルスを有する位置の量を示す)に含まれる位置の通し番号を転置し、P(N)の全ての可能な値が、小さい値から大きい値へp(0)<p(1)<…<p(N−1)と配列されたときに、以下の式に従って、前記第2のインデックスを決定することを含み、前記トラック上のパルスを有する位置の前記パルス分配に従って前記第2のインデックスを決定すること、および
    パルスを有する各位置における前記パルスの量に従って前記第3のインデックスを決定することを含む方法。


    ただし、Cは組み合わせ関数を計算することを指し、Σは総和を指し、Mはトラック上の位置の総量であり、p(0)∈[0,M−N]、p(n)∈[p(n−1)+1,M−N+N]である。
  2. 前記第1のインデックスは、前記パルスを有する位置の量が同じであるとき、前記トラック上の前記パルスを有する位置のすべての可能な分配を識別するように適合される請求項1記載の方法。
  3. 前記第3のインデックスは、パルスを有する各位置における前記パルスの量を識別するように適合される請求項1又は2記載の方法。
  4. 前記パルス分配に従って前記パルス分配を識別するための第1のインデックスI1、第2のインデックスI2、及び第3のインデックスI3を含む符号化インデックスを生成することは、
    値が符号化インデックスの独立の値の範囲に対応する前記第1のインデックスを開始値として使用すること、及び
    前記第2のインデックスI2と前記第3のインデックスI3の組み合わせI23を追加することを含み、
    前記第2のインデックスI2と前記第3のインデックスI3の組み合わせI23は、以下のように組み合わせ、
    I23=I3×W(N)+I2
    式中、W(N)は前記すべての可能な分配P(N)の総量を表わす請求項1〜請求項3の何れか1項に記載の方法。
  5. 前記符号化インデックスの末尾に、Nの長さを有するフィールドとして、位置記号ベクトルS(N)を配置することを更に含む請求項4記載の方法。
  6. 前記パルス分配を獲得する前に、
    同じトラック上で符号化すべきパルスの総量に従って符号化モードを選択し、符号化モードが第2のモードである場合、請求項1に記載の方法の各ステップを実行することを更に含む請求項1〜請求項5のいずれか1項に記載の方法。
  7. 符号化モードが第1のモードである場合、
    トラック上のパルス位置の分配を獲得するために、トラック上で符号化すべきパルスの位置について統計を収集すること、
    第4のインデックスを決定すること、及び
    前記第4のインデックスを含む符号化インデックスを生成することを含み、
    前記第4のインデックスを決定することは、
    Q(^N)={q(0),q(1),…,q(^N−1)}であり、Q(N)に含まれる位置の通し番号が、q(0)≦q(1)≦…≦q(^N−1)、またはq(0)≧q(1)≧…≧q(^N−1)であり、等しいとはパルスの位置が反復可能であることを意味し、^Nは前記同じトラック上に符号化すべきパルスの総量を表わす、トラック上のパルスの分配を表わすQ(^N)に含まれる位置の通し番号を転置すること、及び
    Q(N)の全ての可能な値が、小さい値から大きい値へ配列されたときに、以下の式に従って、第4のインデックスを決定することを含む請求項6記載の方法。


    ただし、q(0)∈[0,M]、q(h)∈[q(h−1),M]であり、Mは前記トラック上の位置の総量であり、Cは組み合わせ関数を計算することを指し、Σは総和を指し、


    は、^Nを指す。
  8. 復号の方法であって、
    符号化インデックスを受け取ること、
    前記符号化インデックスから、第1のインデックスI1を抽出し、前記第1のインデックスI1に従ってパルス位置の量を決定すること、
    前記符号化インデックスから、第2のインデックスI2を抽出し、I2の残余R(y0)が正の数から負の数に変わるまで、前記第2のインデックスI2から、1つずつ、


    の全体値を減じることであって、Mはトラック上の位置の総量であり、Nは、パルスを有する位置の量であり、y0∈[1、M−N+1]であり、Cは組み合わせ関数を計算することを指し、p(0)は、前記トラック上のパルスを有する第1番目の位置の通し番号を記録し、p(0)=y0−1であること、
    N>1の場合、R[p(0)]の残余R1(x1)が正の数から負の数に変わるまで、R[p(0)]から、1つずつ、


    の全体値を減じ、p(1)によって、前記トラック上の第2番目のパルス位置の通し番号が記録することであって、p(1)=y1−1であること、
    類推によって、n≦N−1の場合、R(n−1)[p(n−1)]の残余Rn(yn)が正の数から負の数に変わるまで、R(n−1)[p(n−1)]から、1つずつ、


    の全体値を減じ、p(n)によって、前記トラック上のn+1番目のパルス位置の通し番号を記録することであって、p(n)=yn−1であり、P(N)={p(0),p(1),…,p(N−1)}が得られること、及び
    前記符号化インデックスから第インデックスIを抽出し、パルスを有する各位置におけるパルス量を決定すること、
    を含む方法。
  9. 前記符号化インデックスから、前記第2のインデックスを抽出することは、
    前記符号化インデックスから、前記第2のインデックスI2と第3のインデックスI3の組み合わせI23を抽出すること、
    前記第2のインデックスI2と前記第3のインデックスI3とに、以下のように分離して獲得することを含み、
    I2=I23%W(N)、I3=Int[I23/W(N)]
    式中、I2は前記第2のインデックスを表わし、I3は前記第3のインデックスを表わし、W(N)は前記トラック上のパルスを有する位置のすべての可能な分配P(N)の総量を表わし、Nは、前記第1のインデックスに対応してパルスを有する位置の量を表し、%は、残余を取ることを指し、Intは、整数値を取ることを指す請求項8に記載の方法。
  10. 前記符号化インデックスから、前記パルスの正と負の特徴を指示するパルス記号識別子を抽出すること、
    別子に従ってパルス分配を決定するときに、前記パルス記号識別子に従って、対応するパルス記号情報も決定すること、及び
    前記トラック上のパルス順序を再構築するときに、前記パルス記号情報に従って、前記パルスの前記正と負の特徴を回復すること
    を含む請求項9に記載の方法。
  11. 前記符号化インデックスから前記第1のインデックスを抽出することは、
    いくつかの設定された独立した値の範囲の間で前記符号化インデックスの値の範囲を判定すること、および
    このような値の範囲の開始値に従って前記第1のインデックスを決定すること
    を含む請求項8〜請求項10のいずれか1項に記載の方法。
  12. 符号化インデックスを受け取った後で、前記符号化インデックスから前記I1、I2、I3を獲得する前に、
    前記符号化インデックスに関して前記トラック上で符号化されたパルスの総量を決定すること、
    前記パルスの総量に従って復号モードを選択すること
    復号モードが第2のモードである場合、前記I1、I2、I3を抽出する各ステップを実行すること、及び
    前記復号モードが第1のモードである場合、以下の各ステップ:


    を、小さいq(0)値から大きいq(0)値へと計算することであって、式中、q(0)∈[0,M]であり、Mは前記トラック上の位置の総量であり、^N(^Nは


    を指す)は同じトラック上で符号化されたパルスの総量であり、PPT=M+^N−1であり、Cは組み合わせ関数を計算することを指し、T[q(0)]を0より大とする最後のq(0)値が、トラック上の第1番目のパルスの位置v0として記録されること、
    N>1の場合、更に、


    を、小さいq(1)値から大きいq(1)値へと計算することであって、式中、q(1)∈[v0,M]であり、T1[q(1)]を0より大とする最後のq(1)値が、トラック上の第2番目のパルスの位置v1として記録されること、及び
    類推により、


    を、小さいq(h)値から大きいq(h)値へと計算することであって、式中、q(h)∈[v(h−1),M]、h∈[2,^N−1]であり、Th[q(h)]を0より大とする最後のq(h)値が、前記トラック上の第(h+1)番目のパルス(h+1は序数である)の位置vhとして記録され、前記トラック上のパルス分配を表わすQ(^N)={q(0),q(1),…,q(^N−1)}が獲得されること
    を実行することを更に含む請求項8〜請求項11の何れか1項に記載の方法。
  13. トラック上で符号化すべきパルスの、前記トラック上のパルス分配であって、パルスを有する位置の量、前記トラック上のパルスを有する位置の分配、および各パルス位置におけるパルスの量を含む前記パルス分配を獲得するように構成されたユニット、および
    前記パルス分配に従って前記パルス分配を識別するための第1のインデックスI1、第2のインデックスI2、及び第3のインデックスI3を含む符号化インデックスを生成するように構成されたユニットであって、
    前記パルス位置の量に従って前記第1のインデックスを決定するように構成されたサブユニット、及び
    前記トラック上のパルスを有する位置の前記パルス分配に従って前記第2のインデックスを決定するように構成されたサブユニットであって、トラック上のパルスを有する位置の分配を表わす、P(N)={p(0),p(1),…,p(N−1)}(Nは、トラック上のパルスを有する位置の量を示す)に含まれる位置の通し番号を転置するように構成されたモジュールと、P(N)の全ての可能な値が、小さい値から大きい値へp(0)<p(1)<…<p(N−1)と配列されたときに、以下の式に従って、前記第2のインデックスを決定するように構成されたモジュールとを含むサブユニット、および
    パルスを有する各位置における前記パルスの量に従って前記第3のインデックスを決定するように構成されたサブユニットを含む前記ユニット
    を含む符号器


    ただし、Cは組み合わせ関数を計算することを指し、Σは総和を指し、Mはトラック上の位置の総量であり、p(0)∈[0,M−N]、p(n)∈[p(n−1)+1,M−N+N]である。
  14. 前記パルス分配に従って前記パルス分配を識別するための第1のインデックスI1、第2のインデックスI2、及び第3のインデックスI3を含む符号化インデックスを生成するように構成された前記ユニットは、
    値が符号化インデックスの独立の値の範囲に対応する前記第1のインデックスを開始値として使用するように構成されたサブユニットと、
    前記第2のインデックスI2と前記第3のインデックスI3の組み合わせI23を追加するように構成されたサブユニットとを含み、
    前記第2のインデックスI2と前記第3のインデックスI3の組み合わせI23は、以下のように組み合わせ、
    I23=I3×W(N)+I2
    式中、W(N)は前記すべての可能な分配P(N)の総量を表わす請求項13に記載の符号器。
  15. 前記符号化インデックスの末尾に、Nの長さを有するフィールドとして、位置記号ベクトルS(N)を配置するように構成されたユニットを更に含む請求項14記載の符号器。
  16. 符号化インデックスを受け取るように構成されたユニット、
    前記符号化インデックスから、第1のインデックスI1を抽出し、前記第1のインデックスI1に従ってパルス位置の量を決定するように構成されたユニット、
    前記符号化インデックスから、第2のインデックスI2を抽出し、I2の残余R(y0)が正の数から負の数に変わるまで、前記第2のインデックスI2から、1つずつ、


    の全体値を減じるように構成されたユニットであって、Mはトラック上の位置の総量であり、Nは、パルスを有する位置の量であり、y0∈[1、M−N+1]であり、Cは組み合わせ関数を計算することを指し、p(0)は、前記トラック上のパルスを有する第1番目の位置の通し番号を記録し、p(0)=y0−1である前記ユニット、
    N>1の場合、R[p(0)]の残余R1(x1)が正の数から負の数に変わるまで、R[p(0)]から、1つずつ、


    の全体値を減じ、p(1)によって、前記トラック上の第2番目のパルス位置の通し番号が記録するように構成されたユニットであって、p(1)=y1−1である前記ユニット、
    類推によって、n≦N−1の場合、R(n−1)[p(n−1)]の残余Rn(yn)が正の数から負の数に変わるまで、R(n−1)[p(n−1)]から、1つずつ、


    の全体値を減じ、p(n)によって、前記トラック上のn+1番目のパルス位置の通し番号を記録するように構成されたユニットであって、p(n)=yn−1であり、P(N)={p(0),p(1),…,p(N−1)}が得られる前記ユニット、及び
    前記符号化インデックスから第1インデックスI2を抽出し、パルスを有する各位置におけるパルス量を決定するように構成されたユニット
    を含む復号器。
  17. 前記符号化インデックスから、前記第2のインデックスI2と第3のインデックスI3の組み合わせI23を抽出するように構成されたユニット、及び
    前記第2のインデックスI2と前記第3のインデックスI3とに、以下のように分離して獲得するように構成されたユニットを含み、
    I2=I23%W(N)、I3=Int[I23/W(N)]
    式中、I2は前記第2のインデックスを表わし、I3は前記第3のインデックスを表わし、W(N)は前記トラック上のパルスを有する位置のすべての可能な分配P(N)の総量を表わし、Nは、前記第1のインデックスに対応してパルスを有する位置の量を表し、%は、残余を取ることを指し、Intは、整数値を取ることを指す請求項16に記載の復号器。
  18. 前記符号化インデックスから、前記パルスの正と負の特徴を指示するパルス記号識別子を抽出するように構成されたユニット、
    別子に従ってパルス分配を決定するときに、前記パルス記号識別子に従って、対応するパルス記号情報も決定するように構成されたユニット、及び
    前記トラック上のパルス順序を再構築するときに、前記パルス記号情報に従って、前記パルスの前記正と負の特徴を回復するように構成されたユニット
    を更に含む請求項17に記載の復号器。
JP2013046027A 2007-04-29 2013-03-07 符号化法、復号化法、符号器、および復号器 Active JP5866307B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN200710103023.5 2007-04-29
CN2007101030235A CN101295506B (zh) 2007-04-29 2007-04-29 脉冲编解码方法及脉冲编解码器
CN200710153952.7 2007-09-15
CN2007101539527A CN101388210B (zh) 2007-09-15 2007-09-15 编解码方法及编解码器

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010504431A Division JP5221642B2 (ja) 2007-04-29 2008-04-29 符号化法、復号化法、符号器、および復号器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2016000105A Division JP6239652B2 (ja) 2007-04-29 2016-01-04 符号化の方法および符号化装置

Publications (2)

Publication Number Publication Date
JP2013148913A JP2013148913A (ja) 2013-08-01
JP5866307B2 true JP5866307B2 (ja) 2016-02-17

Family

ID=39943133

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2010504431A Active JP5221642B2 (ja) 2007-04-29 2008-04-29 符号化法、復号化法、符号器、および復号器
JP2013046027A Active JP5866307B2 (ja) 2007-04-29 2013-03-07 符号化法、復号化法、符号器、および復号器
JP2016000105A Active JP6239652B2 (ja) 2007-04-29 2016-01-04 符号化の方法および符号化装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010504431A Active JP5221642B2 (ja) 2007-04-29 2008-04-29 符号化法、復号化法、符号器、および復号器

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2016000105A Active JP6239652B2 (ja) 2007-04-29 2016-01-04 符号化の方法および符号化装置

Country Status (7)

Country Link
US (8) US8294602B2 (ja)
EP (2) EP2827327B1 (ja)
JP (3) JP5221642B2 (ja)
DK (1) DK2827327T3 (ja)
ES (2) ES2817906T3 (ja)
PT (1) PT2827327T (ja)
WO (1) WO2008134974A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK2827327T3 (da) 2007-04-29 2020-10-12 Huawei Tech Co Ltd Fremgangsmåde til excitationsimpulskodning
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
CN102299760B (zh) * 2010-06-24 2014-03-12 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN102623012B (zh) 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
KR101525185B1 (ko) 2011-02-14 2015-06-02 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법
JP5625126B2 (ja) 2011-02-14 2014-11-12 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム
PL3239978T3 (pl) * 2011-02-14 2019-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodowanie i dekodowanie pozycji impulsów ścieżek sygnału audio
CA2827249C (en) 2011-02-14 2016-08-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
FR2972320B1 (fr) * 2011-03-03 2013-10-18 Ass Pour La Rech Et Le Dev De Methodes Et Processus Ind Armines Codage de donnees sans perte pour communication bidirectionnelle dans une session collaborative d'echange de contenu multimedia
US9672838B2 (en) * 2014-08-15 2017-06-06 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US10523244B2 (en) * 2016-08-11 2019-12-31 Zebware Ab Device and associated methodoloy for encoding and decoding of data for an erasure code
KR20210058152A (ko) * 2019-11-13 2021-05-24 엘지전자 주식회사 지능형 보안 디바이스를 제어하는 방법

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4631521A (en) 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
JPH01296195A (ja) 1988-05-25 1989-11-29 Hitachi Ltd 原子炉の建屋
US5754976A (en) 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
JP3350385B2 (ja) 1997-01-24 2002-11-25 京セラ株式会社 符号生成方法および符号化方法
JP2943983B1 (ja) * 1998-04-13 1999-08-30 日本電信電話株式会社 音響信号の符号化方法、復号方法、そのプログラム記録媒体、およびこれに用いる符号帳
JP4008607B2 (ja) 1999-01-22 2007-11-14 株式会社東芝 音声符号化/復号化方法
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding
US7363219B2 (en) 2000-09-22 2008-04-22 Texas Instruments Incorporated Hybrid speech coding and system
US6847929B2 (en) * 2000-10-12 2005-01-25 Texas Instruments Incorporated Algebraic codebook system and method
CA2327041A1 (en) 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
JP2002330075A (ja) 2001-05-07 2002-11-15 Matsushita Electric Ind Co Ltd サブバンドadpcm符号化方法、復号方法、サブバンドadpcm符号化装置、復号装置およびワイヤレスマイクロホン送信システム、受信システム
US6662154B2 (en) 2001-12-12 2003-12-09 Motorola, Inc. Method and system for information signal coding using combinatorial and huffman codes
JP2004120623A (ja) * 2002-09-27 2004-04-15 Ntt Docomo Inc 符号化装置、符号化方法、復号装置及び復号方法
KR100711280B1 (ko) 2002-10-11 2007-04-25 노키아 코포레이션 소스 제어되는 가변 비트율 광대역 음성 부호화 방법 및장치
KR100463419B1 (ko) 2002-11-11 2004-12-23 한국전자통신연구원 적은 복잡도를 가진 고정 코드북 검색방법 및 장치
JP3887598B2 (ja) 2002-11-14 2007-02-28 松下電器産業株式会社 確率的符号帳の音源の符号化方法及び復号化方法
JP2005062453A (ja) 2003-08-12 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> 秘話送信装置、秘話受信装置、秘話プログラム
FR2867648A1 (fr) * 2003-12-10 2005-09-16 France Telecom Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques
KR100656788B1 (ko) * 2004-11-26 2006-12-12 한국전자통신연구원 비트율 신축성을 갖는 코드벡터 생성 방법 및 그를 이용한 광대역 보코더
CN100412948C (zh) * 2005-01-27 2008-08-20 广达电脑股份有限公司 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法
JP4887282B2 (ja) 2005-02-10 2012-02-29 パナソニック株式会社 音声符号化におけるパルス割当方法
ATE513290T1 (de) 2005-03-09 2011-07-15 Ericsson Telefon Ab L M Wenig komplexe codeerregte linearprädiktions- codierung
US20070124381A1 (en) * 2005-11-22 2007-05-31 Zurko Mary E Method and system for providing electronic pickup meetings
LV13528B (en) 2006-09-25 2007-03-20 Ervins Blumbergs Method and apparatus for continuous producing of metallic tifanium and titanium-bases alloys
CN101388210B (zh) 2007-09-15 2012-03-07 华为技术有限公司 编解码方法及编解码器
DK2827327T3 (da) 2007-04-29 2020-10-12 Huawei Tech Co Ltd Fremgangsmåde til excitationsimpulskodning
CN101295506B (zh) 2007-04-29 2011-11-16 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN100530357C (zh) 2007-07-11 2009-08-19 华为技术有限公司 固定码书搜索方法及搜索器
US8566106B2 (en) 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
US20110026581A1 (en) 2007-10-16 2011-02-03 Nokia Corporation Scalable Coding with Partial Eror Protection
US8527265B2 (en) 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8515767B2 (en) 2007-11-04 2013-08-20 Qualcomm Incorporated Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
CN100578619C (zh) * 2007-11-05 2010-01-06 华为技术有限公司 编码方法和编码器
CN101483043A (zh) 2008-01-07 2009-07-15 中兴通讯股份有限公司 基于分类和排列组合的码本索引编码方法
US8386267B2 (en) 2008-03-19 2013-02-26 Panasonic Corporation Stereo signal encoding device, stereo signal decoding device and methods for them
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
US8280729B2 (en) 2010-01-22 2012-10-02 Research In Motion Limited System and method for encoding and decoding pulse indices

Also Published As

Publication number Publication date
US8988256B2 (en) 2015-03-24
US9444491B2 (en) 2016-09-13
WO2008134974A1 (fr) 2008-11-13
US20180152199A1 (en) 2018-05-31
US10666287B2 (en) 2020-05-26
ES2817906T3 (es) 2021-04-08
EP2827327B1 (en) 2020-07-29
US20160344405A1 (en) 2016-11-24
US10425102B2 (en) 2019-09-24
EP2157573B1 (en) 2014-11-26
EP2157573A4 (en) 2010-07-28
US20100049511A1 (en) 2010-02-25
US20150155882A1 (en) 2015-06-04
JP6239652B2 (ja) 2017-11-29
ES2529292T3 (es) 2015-02-18
EP2827327A2 (en) 2015-01-21
US10153780B2 (en) 2018-12-11
US8294602B2 (en) 2012-10-23
US20200007153A1 (en) 2020-01-02
US20190074847A1 (en) 2019-03-07
PT2827327T (pt) 2020-08-27
DK2827327T3 (da) 2020-10-12
JP2010526325A (ja) 2010-07-29
US9912350B2 (en) 2018-03-06
US20130021177A1 (en) 2013-01-24
US20160105198A1 (en) 2016-04-14
EP2827327A3 (en) 2015-05-06
EP2157573A1 (en) 2010-02-24
JP2013148913A (ja) 2013-08-01
JP5221642B2 (ja) 2013-06-26
US9225354B2 (en) 2015-12-29
JP2016103032A (ja) 2016-06-02

Similar Documents

Publication Publication Date Title
JP6239652B2 (ja) 符号化の方法および符号化装置
US9858938B2 (en) Pulse encoding and decoding method and pulse codec
RU2008139887A (ru) Усовершенствованное кодирование/декодирование цифровых сигналов, в частности при векторном квантовании с перестановочными кодами
JP2015534795A (ja) セキュアで損失のないデータ圧縮
JP4758494B2 (ja) ビット長を符号に変換する回路及び方法
CN103886862B (zh) 脉冲编解码方法及脉冲编解码器
JP3350385B2 (ja) 符号生成方法および符号化方法
JP2006270821A (ja) 符号化装置及び符号化方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20140819

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20141119

A59 Written plea

Free format text: JAPANESE INTERMEDIATE CODE: A59

Effective date: 20141226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150414

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160104

R150 Certificate of patent or registration of utility model

Ref document number: 5866307

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250