JP4508490B2 - Encoding device and decoding device - Google Patents
Encoding device and decoding device Download PDFInfo
- Publication number
- JP4508490B2 JP4508490B2 JP2001271001A JP2001271001A JP4508490B2 JP 4508490 B2 JP4508490 B2 JP 4508490B2 JP 2001271001 A JP2001271001 A JP 2001271001A JP 2001271001 A JP2001271001 A JP 2001271001A JP 4508490 B2 JP4508490 B2 JP 4508490B2
- Authority
- JP
- Japan
- Prior art keywords
- sequence
- spectrum
- quantized
- cyclic
- spectral
- 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.)
- Expired - Fee Related
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、符号化装置および復号化装置に関する。さらに詳細には、オーディオ信号の音質を保持しながら符号化時の情報量を少なくする符号化装置および復号化装置に関する。
【0002】
【従来の技術】
音声信号または音楽信号を含むオーディオ信号の符号化方法および復号化方法は、現在までに非常に多くの方式が開発されている。特に最近では、それらの中でもISO/IECで国際標準化されたIS13818−7が認知され、高音質および高効率な符号化方法として評価されている。この符号化方法はAACと呼ばれている。近年、AACはMPEG4と呼ばれる標準規格にも採用され、IS13818−7に対していくつかの拡張機能を有するMPEG4−AACと呼ばれる方式が定められている。符号化過程の一例は、INFOMATIVE PARTにその記述がある。
【0003】
ここで、従来の符号化方法を使用する符号化装置について説明する。
【0004】
図16は、従来の符号化装置1600を示す構成図である。符号化装置1600は、スペクトル正規化部1601と、スペクトル増幅部1602と、スペクトル量子化部1603と、ハフマン符号化部1604と、符号化列転送部1605とを含む。
【0005】
オーディオ信号をサンプリングすることによって得られたオーディオ離散信号(PCMデータ)は、時間周波数変換部(図示せず)において、直交変換等の手法を使用して、オーディオ信号の時間軸上のデータからオーディオ信号の周波数スペクトルデータに変換される。オーディオ信号の時間軸上のデータは、時間に対するオーディオ信号の離散データであり、オーディオ信号の周波数スペクトルデータは、周波数に対するオーディオ信号の離散データである。オーディオ信号の周波数スペクトルデータは、スペクトル正規化部1601に入力される。
【0006】
スペクトル正規化部1601は、オーディオ信号を複数の周波数帯域に分割したうちの1つの周波数帯域の周波数スペクトルデータである周波数スペクトル列を受け取り、スケールファクタを用いて、周波数スペクトル列の平均値を特定のレンジ内の値に正規し、浮動小数点で表現する正規化スペクトル列を生成する。
スケールファクタは、例えば、2の巾乗における乗算係数である。
【0007】
スペクトル増幅部1602は、正規化スペクトル列を受け取り、正規化スペクトル列のそれぞれの値が特定範囲の値になるように、補正ゲインを用いて補正した増幅スペクトル列を生成する。
【0008】
スペクトル量子化部1603は、増幅スペクトル列を受け取り、増幅スペクトル列を所定の変換式を用いて量子化した量子化スペクトル列を生成する。スペクトル量子化部1603は、AAC方式の場合、量子化によって、浮動小数点で表現されているスペクトルデータを整数値に丸めこむ。
【0009】
ハフマン符号化部1604は、量子化スペクトル列をハフマン符号列に変換する。
【0010】
符号化列転送部1605は、スペクトル正規化部1601から出力されるスケールファクタと、スペクトル増幅部1602から出力される補正ゲインと、ハフマン符号化部1604から出力されるハフマン符号列とを外部装置1608に転送する。外部装置1608は、例えば、記録媒体または復号化装置である。
【0011】
【発明が解決しようとする課題】
近年、符号化時の情報量をより少なくするために、オーディオ信号の圧縮率をより高くすることが望まれている。
【0012】
符号化装置1600において、情報の圧縮の性能はハフマン符号化部1604に依存する。符号化装置1600において、オーディオ信号を高い圧縮率、すなわち、少ない情報量で符号化する場合、スペクトル増幅部1602の補正ゲインを制御して量子化スペクトル列の値を小さくし、それにより、ハフマン符号化部1604によって符号化される情報量を小さくする。
【0013】
しかしながら、このような動作を行なうと、ハフマン符号列を復号化した周波数スペクトルに、非常に多くの振幅(量子化値)ゼロの値が現れ、十分な音質を確保できないという課題がある。
【0014】
本発明は、このような従来の課題を鑑みてなされたものであり、音質を確保しながら、少ない情報量でオーディオ信号を符号化列に符号化する符号化装置、および、符号化列から周波数スペクトル列を復号化する復号化装置を実現することを目的とする。
【0015】
【課題を解決するための手段】
本発明の符号化装置は、オーディオ信号に基づいて、所定の量子化精度で量子化した量子化スペクトル列を生成する量子化スペクトル列生成部と、前記量子化スペクトル列に最も類似する循環型量子化スペクトル列が基準スペクトル列をいくつ循環させることにより得られるかを示す循環位置識別情報を含むスペクトル列コードを出力する循環型コードベクトル量子化部とを備え、前記循環型コードベクトル量子化部は、前記基準スペクトル列を循環させた複数の循環型量子化スペクトル列を有するコードブックを含み、前記複数の循環型量子化スペクトル列のうち、前記量子化スペクトル列との内積が最大を示す循環型量子化スペクトル列を、前記量子化スペクトル列に最も類似する循環型量子化スペクトル列とする。
本発明の符号化装置は、オーディオ信号に基づいて、所定の量子化精度で量子化した量子化スペクトル列を生成する量子化スペクトル列生成部と、前記量子化スペクトル列に最も類似する循環型量子化スペクトル列が基準スペクトル列をいくつ循環させることにより得られるかを示す循環位置識別情報を含むスペクトル列コードを出力する循環型コードベクトル量子化部とを備え、前記循環型コードベクトル量子化部は、前記基準スペクトル列を循環させた複数の循環型量子化スペクトル列を有するコードブックを含み、前記複数の循環型量子化スペクトル列のうち、前記量子化スペクトル列との内積変形関数が最大を示す循環型量子化スペクトル列を、前記量子化スペクトル列に最も類似する循環型量子化スペクトル列とする。
【0016】
前記量子化スペクトル列を変換したハフマン符号列を出力するハフマン符号化部と、前記量子化スペクトル列を受け取り、前記量子化スペクトル列を前記循環型コードベクトル量子化部または前記ハフマン符号化部のいずれに出力するかを所定の条件に基づいて切り換える符号化切換部とさらに備えてもよい。
【0020】
前記複数の循環型量子化スペクトル列は、
P0=(c0、c1、c2、...、cn-1、cn)
P1=(cn、c0、c1、...、cn-2、cn-1)
P2=(cn-1、cn、c0、...、cn-3、cn-2)
・・・・・
Pn=(c1、c2、c3、...、cn、c0)
で表現され、ここで、前記基準スペクトル列はP0であり、前記複数の循環型量子化スペクトル列のそれぞれが有する要素はc0、c1、c2、...、cn-1、cnであり、前記複数の循環型量子化スペクトル列のそれぞれの要素の数はn+1であってもよい。
【0021】
前記複数の循環型量子化スペクトル列のそれぞれの要素c0、c1、c2、...、cn-1、cnのうちの幾つかが0であってもよい。
【0022】
前記複数の循環型量子化スペクトル列のそれぞれの要素c0、c1、c2、...、cn-1、cnのうちの一定の間隔の要素が0であってもよい。
【0023】
前記量子化スペクトル列生成部は、前記オーディオ信号を複数の周波数帯域に分割したうちの1つの周波数帯域のスペクトルデータである周波数スペクトル列に基づいて前記量子化スペクトル列を生成し、前記所定の条件は、前記周波数スペクトル列が、前記複数の周波数帯域のうちのどの周波数帯域のスペクトルデータであるかに基づていもよい。
【0024】
前記周波数スペクトル列の周波数帯域の情報量の配分が大きい場合、前記符号化切換部は前記量子化スペクトル列を前記ハフマン符号化部に出力してもよい。
【0025】
前記周波数スペクトル列の周波数帯域の情報量の配分が小さい場合、前記符号化切換部は前記量子化スペクトル列を前記循環型コードベクトル量子化部に出力してもよい。
【0026】
前記コードブックは、前記複数の循環型量子化スペクトル列が有する全ての要素の正負の符号を反転させた第2の複数の循環型量子化スペクトル列をさらに含んでもよい。
【0027】
前記複数の循環型量子化スペクトル列は、前記量子化スペクトル列が有する要素の数と等しい要素の数を有する複数の基準スペクトル列のそれぞれを循環させた循環型量子化スペクトル列を含んでもよい。
【0028】
本発明の復号化装置は、上述した本発明の符号化装置から出力された符号化列を復号化する復号化装置であって、前記基準スペクトル列を有し、前記基準スペクトル列と、前記符号化列に含まれるスペクトル列コードとに基づいて、前記量子化スペクトル列を生成する循環型コードベクトル逆量子化部と、前記量子化スペクトル列を受け取り、補正ゲインを用いて前記量子化スペクトル列を逆増幅して増幅スペクトル列を生成するスペクトル逆増幅部と、前記増幅スペクトル列を受け取り、スケールファクタを用いて前記増幅スペクトル列を変換して周波数スペクトル列を生成するスペクトル逆正規化部とを備え、前記スペクトル列コードは、前記基準スペクトル列をいくつ循環させることにより前記量子化スペクトル列が得られるかを示す循環位置識別情報を含む。
【0029】
本発明の復号化装置は、上述した本発明の符号化装置から出力された符号化列を復号化する復号化装置であって、前記基準スペクトル列を有し、前記基準スペクトル列と、前記符号化列に含まれるスペクトル列コードとに基づいて、前記量子化スペクトル列を生成する循環型コードベクトル逆量子化部と、前記符号化列に含まれるハフマン符号列を受け取り、前記ハフマン符号列を変換して前記量子化スペクトル列を生成するハフマン逆量子化部と、前記量子化スペクトル列を受け取り、補正ゲインを用いて前記量子化スペクトル列を逆増幅して増幅スペクトル列を生成するスペクトル逆増幅部と、前記増幅スペクトル列を受け取り、スケールファクタを用いて前記増幅スペクトル列を変換して周波数スペクトル列を生成するスペクトル逆正規化部と、前記符号化列に含まれるスペクトル列コードが前記循環型コードベクトル逆量子化部に出力され、前記符号化列に含まれるハフマン符号列が前記ハフマン逆量子化部に出力されるよう、前記スペクトル列コードおよび前記ハフマン符号列を切り換える復号化切換部とを備えている。
【0030】
【発明の実施の形態】
以下、本発明の実施の形態における符号化装置および復号化装置について、図面を参照しながら説明する。
【0031】
(実施の形態1)
図1は、本発明による符号化装置100を示す構成図である。符号化装置100は、オーディオ信号に基づいて所定の量子化精度で量子化した量子化スペクトル列を生成する量子化スペクトル列生成部110と、量子化スペクトル列に基づいてスペクトル列コードを出力する循環型コードベクトル量子化部104と、量子化スペクトル列生成部110および/または循環型コードベクトル量子化部104からの出力を外部装置108に転送する符号化列転送部105とを備える。
【0032】
量子化スペクトル列生成部110は、スペクトル正規化部101と、スペクトル増幅部102と、スペクトル量子化部103とを含む。
【0033】
量子化スペクトル列生成部110は、オーディオ信号から以下に示すように量子化スペクトル列を生成する。
【0034】
オーディオ信号をサンプリングすることによって得られたオーディオ離散信号(PCMデータ)は、時間周波数変換部(図示せず)において、直交変換等の手法を使用して、オーディオ信号の時間軸上のデータからオーディオ信号の周波数スペクトルデータに変換される。オーディオ信号の時間軸上のデータは、時間に対するオーディオ信号の離散データであり、オーディオ信号の周波数スペクトルデータは、周波数に対するオーディオ信号の離散データである。オーディオ信号の周波数スペクトルデータは、スペクトル正規化部101に入力される。
【0035】
スペクトル正規化部101は、周波数スペクトル列xを受け取り、受け取った周波数スペクトル列xを、スケールファクタを用いて、前記周波数スペクトル列の平均値、または最大値を特定のレンジ内の値に正規化し、浮動小数点で表現する正規化スペクトル列yを生成する。周波数スペクトル列xは、オーディオ信号を複数の周波数帯域に分割したうちの1つの周波数帯域のスペクトルデータであり、所定数のデータを含む。スケールファクタは、例えば、2の巾乗における乗算係数である。
【0036】
スペクトル増幅部102は正規化スペクトル列yのそれぞれの値が特定の範囲の値になるように、補正ゲインαを用いて増幅した増幅スペクトル列y・αを生成する。補正ゲインαは、予め決められた周波数帯域ごとに特定の範囲の値になるように補正するために使用される。
【0037】
スペクトル量子化部103は、増幅スペクトル列y・αを所定の変換式を用いて、所定の量子化精度で量子化した量子化スペクトル列zを生成する。AAC方式の場合、スペクトル量子化部103は、量子化によって、浮動小数点で表現されている増幅スペクトル列y・αを整数値に丸めこみ、整数値のデータを有する量子化スペクトル列zを生成する。
【0038】
なお、当業者には明らかであるように、量子化スペクトル列生成部110において、周波数スペクトル列と、正規化スペクトル列と、増幅スペクトル列と、量子化スペクトル列のそれぞれの要素の数は等しい。
【0039】
本実施の形態において、循環型コードベクトル量子化部104は、コードブック104aと、格納部115とを含む。コードブック104aは、量子化スペクトル列zの要素と同じ数の要素を有する1つの基準スペクトル列を循環させた複数の循環型量子化スペクトル列を有する。格納部115は、コードブック104aの循環型量子化スペクトル列の要素を格納する。
【0040】
循環型コードベクトル量子化部104は、複数の循環型量子化スペクトル列のそれぞれと量子化スペクトル列zとを比較して、複数の循環型量子化スペクトル列のうちの量子化スペクトル列zと最も類似する循環型量子化スペクトル列を判定し、量子化スペクトル列zと最も類似する循環型量子化スペクトル列が基準スペクトル列をいくつ循環させることにより得ることができるかを示す循環位置識別情報を含むスペクトル列コードを出力する。このように、循環型コードベクトル量子化部104は、量子化スペクトル列z(正確には、量子化スペクトル列zに最も類似する循環型量子化スペクトル列)をスペクトル列コードに変換して符号化転送部105に出力する。
【0041】
符号化列転送部105は、スペクトル正規化部101から出力されるスケールファクタと、スペクトル増幅部102から出力される補正ゲインと、循環型コードベクトル量子化部104から出力されるスペクトル列コードとを外部装置108に転送する。外部装置108は、例えば、記録媒体または復号化装置である。
【0042】
符号化列転送部105は、スペクトル正規化部101と、スペクトル増幅部102と、スペクトル量子化部103と、循環型コードベクトル量子化部104のうちの任意のいずれかからの信号に基づいて符号化列を生成し、符号化装置100に入力される周波数スペクトル列xに対応するスペクトル列コードを外部装置108に出力する。符号化列転送部105は、循環型コードベクトル量子化部104からのスペクトル列コードをのみを外部装置108に出力することもあり得る。
【0043】
以下に、符号化装置100の動作についてさらに詳細に説明する。
【0044】
オーディオ離散データ(PCMデータ)は、時間周波数変換部(図示せず)においてある時間間隔ごとに周波数スペクトルデータに変換される。この周波数スペクトルデータは、予め設定された複数の周波数帯域ごとに分割され、周波数スペクトル列xが生成される。正規化部101は、この周波数スペクトル列xを受け取る。
【0045】
スペクトル正規化部101は、周波数帯域ごとに入力される周波数スペクトル列xのエネルギーを算出し、算出したエネルギーの平均値を特定のレンジ内の値に正規化する。スペクトル正規化部101は生成された正規化スペクトル列yをスペクトル増幅部102に出力し、スケールファクタを符号化転送部105に出力する。
【0046】
スペクトル増幅部102は、正規化スペクトル列yのそれぞれの値が、予め決定された範囲内になるように補正ゲインαを用いて増幅し、増幅スペクトル列y・αを生成する。スペクトル増幅部102は、増幅スペクトル列y・αをスペクトル量子化部103に出力し、補正ゲインαを符号化転送部105に出力する。
【0047】
スペクトル量子化部103は、増幅スペクトル列y・αに予め決められた変換式を用いて量子化を行なう。変換式は、例えば、以下の式(1)である。
【0048】
zi=(int)(yi・α) (1)
式(1)において、ziは量子化スペクトル列zのi番目の要素であり、yiは正規化スペクトル列yのi番目の要素である。αは補正ゲインであり、補正ゲインは、分割された周波数帯域ごとに設定される。(int)は、式の値を整数に量子化する関数である。
【0049】
式(1)によって、増幅スペクトル列y・αは、整数値の量子化スペクトル列zに変換される。スペクトル量子化部103は、量子化スペクトル列zを、循環型コードベクトル量子化部104に出力する。
【0050】
循環型コードベクトル量子化部104は、上述したように、基準スペクトル列を循環させた複数の循環型量子化スペクトル列のうちの、量子化スペクトル列zと最も類似する循環型量子化スペクトル列を判定する。上記複数の循環型量子化スペクトル列のうちのどれが量子化スペクトル列zと最も類似であるかの判定は、上記複数の循環型量子化スペクトル列のそれぞれと量子化スペクトル列zとの内積によって求めることができる。この動作について、図2を参照して詳細に説明する。
【0051】
図2は、循環型コードベクトル量子化部104の動作を示すフローチャートである。
【0052】
量子化スペクトル列zが循環型コードベクトル量子化部104に入力されると、初期化ステップ201において、iを0、最大値maxを0に初期化する。
【0053】
次いで、EPi計算ステップ202において、スペクトル量子化部103から入力される量子化スペクトル列zと、コードブック104aに含まれる循環型量子化スペクトル列との内積を計算する。ここで、量子化スペクトル列zの要素数は、循環型量子化スペクトル列の要素数と同じである。例えば、量子化スペクトル列zの要素の数が16である場合、循環型量子化スペクトル列の要素の数も16である。これにより、量子化スペクトル列zと循環型量子化スペクトル列との類似度を示すEPi(iは要素数)を計算する。以下、量子化スペクトル列および基準スペクトル列、すなわち、循環型量子化スペクトル列のそれぞれの要素数が16である場合の具体例を説明する。
【0054】
図3は、本実施の形態の符号化装置に用いられるコードブック104aの循環型量子化スペクトル列を示す。基準スペクトル列を表すコードをP0、基準スペクトル列を循環させた複数の循環型量子化スペクトル列をコードPnで表す。
【0055】
なお、本明細書において、基準スペクトル列を循環させた複数の循環型量子化スペクトル列は、基準スペクトル列そのものも含む。基準スペクトル列は、基準スペクトル列を0回循環させた循環型量子化スペクトル列である。
【0056】
図3に示されるコードPn(ここで、n=0、1、2、...、15)のそれぞれの要素数は16である。
【0057】
図3に示されるように、0番目のコードP0は、{c0、c1、c2、...、c15}というベクトルからなり、1番目のコードP1は、{c15、c0、c1、...、c14}というベクトルからなる。上述したように、コードP0は基準スペクトル列であり、1番目のコードP1は、コードP0に対して各要素が1つずつ右側にシフトし、さらに、1番目のコードP1の要素位置0には、0番目のコードP0の要素位置15の要素c15が循環した構成となる。2番目以降のコードP2〜15も、同様に0番目のコードP0の各要素が対応した数だけ循環した構成をしている。したがって、コードP0の各要素が判明すれば、他のコードP1〜15はコードP0を循環させて一意に決定する。
【0058】
なお、図3に示す複数の循環型量子化スペクトル列は、右側に循環しているが、本発明はこれに限定されず、左側に循環していてもよい。
【0059】
EPi計算ステップ202において、量子化スペクトル列zと循環型量子化スペクトル列を表すコードPiとのベクトル内積EPiを計算する。
【0060】
EP0=z・P0=c0z0+c1z1+・・・+c15z15
EP1=z・P1=c15z0+c0z1+・・・+c14z15
EP2=z・P2=c14z0+c15z1+・・・+c13z15
・・・・・
EP15=z・P15=c1z0+c2z1+・・・+c0z15 (2)
式(2)は、EPn(n=0、1、2、...、15)は、各コードPn(n=0、1、2、...、15)と、入力される量子化スペクトル列zの要素zn(n=0、1、2、...、15)との内積値である。
【0061】
最大値判定ステップ203において、循環型コードベクトル量子化部104は、ステップ202の計算結果がいままで計算した結果のうちの最大かどうかを判定する。最大値判定ステップ203は、例えば、以下の(3)式を用いる。
【0062】
【数1】
ここで、ncodeは、EPiが最大値maxとなる場合の循環値iである。
【0063】
最大値判定ステップ203の判定の結果、ステップ202の計算結果が最大と判定される場合(最大値判定ステップ203のY)、保存ステップ204に進む。保存ステップ204において、計算したEPiを最大値maxとして更新する。また循環数iを循環型コードベクトル量子化部104内の格納部115に保存する。ただし、循環数iを循環型コードベクトル量子化部104内の任意の格納部に格納されてもよい。次いで、終端判定ステップ205に進む。
【0064】
最大値判定ステップ203における判定の結果、ステップ202の計算結果が最大でない場合(最大値判定ステップ203のN)、終端判定ステップ205に進む。
【0065】
なお、iが0の場合、初期化ステップ201において、最大値maxは0に初期化されているので、最大値判定ステップ203において、EP0は最大と判定され、保存ステップ204において、EP0は循環型コードベクトル量子化部104の格納部115に保存される。
【0066】
終端判定ステップ205において、基準スペクトル列を循環させた複数の循環型量子化スペクトル列のすべての計算が終了したかどうかを判定する。すなわち、終端判定ステップ205において、iが最大値かどうかを判定する。
【0067】
iが最大値である場合(ステップ205のY)、この動作を終了する。
【0068】
iが最大値でない場合(ステップ205のN)、更新ステップ206において、iを1つインクリメントし、ステップ202に戻る。
【0069】
次いで、循環型コードベクトル量子化部104内は、インクリメントされたiに対してステップ202〜206の動作を繰り返す。
【0070】
終了判定ステップ205において、基準スペクトル列を循環させた複数の循環型量子化スペクトル列の全てを計算した場合、すなわち、iが最大値まで到達して終了と判定される場合(終了判定ステップ205のY)、循環型コードベクトル量子化部104は、保存ステップ204において保存された最大EPi値の循環値iをスペクトル列コードとして符号列転送部105に出力する。ここで、循環値iは、量子化スペクトル列と最も類似する循環型量子化スペクトル列が基準スペクトル列からi個循環させることにより得られることを意味し、本明細書において循環位置識別情報とよぶ。上記説明では、量子化スペクトル列zの要素は16であるので、循環値iが取り得る値も16個である。従って、循環位置識別情報は、4ビットの符号で表現することができる。
【0071】
図4は、符号化列転送部105から外部装置108に出力される符号化列400の構造の一例を示す。符号化列400は、一般に、低い周波数帯域から高い周波数帯域の順番に符号化されたスペクトル列コードを含む。ここで、周波数帯域nに対応する符号化列400、すなわち、スペクトル列コード401について説明する。
【0072】
スペクトル列コード401は、周波数帯域nに対応する循環位置識別情報402を含む。ここで、上述したように、量子化スペクトル列の要素が16個である場合、循環位置識別情報は4ビットで表現することができる。
【0073】
また、スペクトル列コード401は、周波数帯域nの符号として、スペクトル正規化部101から出力されるスケールファクタと、スペクトル増幅部102から出力される補正ゲインとをさらに含んでもよい。
【0074】
このように構成された符号化装置を用いることで、少ない固定ビットで符号化を行なうことができる。また、コードブック104aの各コード(循環型量子化スペクトル列)が循環構造で作成されていることから、c0、c1、・・・、c15の16個の要素のみを符号化装置および復号化装置が有すればよく(例えば、循環型コードベクトル量子化部104の格納部115)、それにより、要素を記憶するための格納部の容量を小さくすることができる。
【0075】
なお、上記説明では、量子化スペクトル列および循環型量子化スペクトル列の要素の数が16個の場合を説明したが、本発明はこれに限定されない。量子化スペクトル列および循環型量子化スペクトル列の要素の数は任意でよい。
【0076】
なお、上記の説明では、量子化スペクトル列zと最も類似の循環型量子化スペクトル列を判定するために内積を使用した。しかし、本発明はこれに限定されない。例えば、内積変形関数を使用してもよい。本明細書において、内積変形関数とは、内積の係数に重み付けがしていある関数を意味する。具体的には、図2に示されるEPi計算ステップ202において、量子化スペクトル列zと循環型量子化スペクトル列を表すコードPiとのベクトル内積変形関数EPiを計算する。
【0077】
EP0’=3c0z0+2c1z1+・・・+0.3c15z15
EP1’=3c15z0+2c0z1+・・・+0.3c14z15
EP2’=3c14z0+2c15z1+・・・+0.3c13z15
・・・・・
EP15’=3c1z0+2c2z1+・・・+0.3c0z15 (4)
式(4)は、EPn’(n=0、1、2、...、15)は、各コードPn(n=0、1、2、...、15)と、入力される量子化スペクトル列zの要素zn(n=0、1、2、...、15)との内積変形関数値である。
【0078】
内積においては、すべての係数が1であるため、ある周波数帯域内の周波数スペクトルデータの重要度も均一として計算される。しかし、式(4)に示すように、内積変形関数を用いると、ある周波数帯域内の周波数スペクトルデータの重要度を考慮することができる。例えば、より低い周波数の影響をより強く考慮する場合、より低い周波数成分のデータに対応する量子化スペクトル列の係数を大きくすればよい。
【0079】
(実施の形態2)
次に、本発明の実施の形態2における符号化装置について説明する。実施の形態2における符号化装置は、循環型コードベクトル量子化部104の最大値判定ステップ203、保存ステップ204の動作が異なる点を除いて、実施の形態1で説明した符号化装置と同じである。
【0080】
本実施の形態において最大値判定ステップ203(図2参照)は、例えば、式(5)を用いる。
【0081】
【数2】
ここで、abs( )は、( )内の絶対値を出力する関数であり、変数faceは、コードの値が反転されているかどうか示す。本明細書において、変数faceは、位相識別情報とよぶ。上記式において、変数face=1の場合、図5に示されるコードブック104bからの1つのコードが、量子化スペクトル列に最も類似していることを意味し、変数face=0の場合、図3に示されるコードブック104aからの1つのコードが、量子化スペクトル列に最も類似していることを意味する。
【0082】
図2に示される保存ステップ204において、ncodeとfaceの値が保存される。
【0083】
上記に示すように実施の形態2では、最大値判定ステップ203において、内積値ではなく、EPi計算ステップ202において計算した値を用いて内積値の絶対値が最大となる循環値iを求める。これは、図3に示すコードブック104aのコードを計算しながら、同時に、図5に示すコードブック104bのコードを計算しているのと同義である。なぜなら、コードブック104bのコードの各要素は、図3に示すコードの各要素の値の符号を全て反転させたものに対応するからである。ただし、式(5)に示すように計算することで、コードブック104a、104bのコードを順次計算する場合と比べて、大幅に計算時間を短縮することができる。
【0084】
本実施の形態における循環型コードベクトル量子化部104のコードブックは、コードブック104a、104bに示されるコードを有する。コードブック104bの各コードは、コードブック104aの各コードに対して符号をすべて反転させたものである。
【0085】
図6は、符号化列転送部105から外部装置108に出力される符号化列600の構造の一例を示す。符号化列600は、一般に、低い周波数帯域から高い周波数帯域の順番に符号化されたスペクトル列コードを含む。ここで、周波数帯域nに対応する符号化列600、すなわちスペクトル列コード601について説明する。
【0086】
スペクトル列コード601は、周波数帯域nに対応する循環位置識別情報602と位相識別情報603とを含む。ここで、上述したように、量子化スペクトル列の要素が16個である場合、循環位置識別情報は4ビットで表現することができ、位相識別情報は1ビットで表現することができる。
【0087】
また、スペクトル列コード601は、周波数帯域nの符号として、スペクトル正規化部101から出力されるスケールファクタと、スペクトル増幅部102から出力される補正ゲインとをさらに含んでもよい。
【0088】
このように構成された符号化装置では、実施の形態1と比較して計算量が最大値判定ステップ203の部分のみが大きくなるだけであり、また、スペクトル列コード601の観点から位相識別情報603に割り当てるビット数が1だけ増加するのみである。要素の数が16の場合、本実施の形態は5ビットという少ない符号量で符号化を行なうことができる。
【0089】
このように、本実施の形態によれば、少ない固定ビットで符号化を行なうことができる。また、コードブック104bに含まれる複数の循環型量子化スペクトル列は、コードブック104aの基準スペクトル列を循環させた循環型量子化スペクトル列の全ての要素の符号を反転して作成されているため、c0、c1、・・・、c15の16個の要素のみを符号化装置および復号化装置が有すればよく(例えば、循環型コードベクトル量子化部104の格納部115)、それにより、要素を記憶するための格納部の容量を小さくすることができる。
【0090】
(実施の形態3)
次に、本発明の実施の形態3における符号化装置について説明する。実施の形態3における符号化装置は、コードブック104cと、EPi計算ステップ202における動作が異なる点を除いて、実施の形態2で説明した符号化装置と同じである。
【0091】
本実施の形態における循環型コードベクトル量子化部104のコードブック104cを図7に示す。本実施の形態におけるコードブック104cは、要素c0、c1、・・・、cn-1、cnのうち、一定の間隔で0の要素が配置されていることを特徴とする。図7に示す例では、c1、c2、c3、c5、c6、c7、c9、c10、c11、c13、c14、c15の値が0である。これに伴い、EPi計算ステップ202での計算は、式(6)に示すように単純化される。
【0092】
EP0=z・P0=c0z0+c4z4+c8z8+c12z12
EP1=z・P1=c0z1+c4z5+c8z9+c12z13
EP2=z・P2=c0z2+c4z6+c8z10+c12z14
・・・・・
EP15=z・P15=c0z15+c4z3+c8z7+c12z11 (6)
したがって、実施の形態2と比べて、EPi計算ステップ202の計算量を4分の1に減らすことができる。
【0093】
このように構成された符号化装置を用いることにより、少ない固定ビットで符号化を行なうことができる。また、コードブック104cの各コードが循環構造で作成されており、かつ、4つの要素(c0、c4、c8、c12)のみが値を有するので、符号化装置および復号化装置は4つの要素の値のみを有すればよく(例えば、循環型コードベクトル量子化部104の格納部115)、要素を記憶するための格納部の容量を小さくすることができる。
【0094】
また、本実施の形態においても、実施の形態2において説明したのと同様に、循環型コードベクトル量子化部104のコードブックは、コードブック104cに示されるコードだけでなく、図8に示すコードブック104dに示されるコードを有してもよい。
【0095】
なお、上記説明では、0の値を有する要素が連続する場合を説明したが、本発明はこれに限定されない。循環型量子化スペクトル列が有する任意の要素のうちの少なくとも1つ0の値を有する要素があればよい。
【0096】
また、上記説明では、循環型量子化スペクトル列の要素の数が16の場合を説明したが、本発明はこれに限定されない。循環型量子化スペクトル列の要素の数は任意の数であればよい。
【0097】
(実施の形態4)
次に本発明の実施の形態4における符号化装置について説明する。本実施の形態における符号化装置は、ハフマン符号化部と符号化切換部とを備える点を除いて、実施の形態1で説明した符号化装置100と同じ構成を有する。
【0098】
図9は、実施の形態4における符号化装置900を示す構成図である。符号化装置900は、量子化スペクトル列生成部110と、循環型コードベクトル量子化部104と、符号化列転送部105と、ハフマン符号化部106と、符号化切換部107とを備える。量子化スペクトル列生成部110は、スペクトル正規化部101と、スペクトル増幅部102と、スペクトル量子化部103とを含む。
【0099】
なお、量子化スペクトル列生成部110(スペクトル正規化部101と、スペクトル増幅部102と、スペクトル量子化部103)と、循環型コードベクトル量子化部104と、符号化列転送部105と、外部装置108とは、図1に示す符号化装置100と同一であるので、それらの説明を省略する。
【0100】
符号化切換部107は、スペクトル量子化部103で得られた量子化スペクトル列zをハフマン符号化するか、循環型量子化スペクトル列に変換するかを所定の条件に基づいて切り換える。このとき、符号化切換部107は、符号化方式を符号化転送部105に伝える。
【0101】
符号化切換部107が量子化スペクトル列zをハフマン符号部106に入力するように切り換えた場合、ハフマン符号化部106は、量子化スペクトル列zを変換してハフマン符号列を生成する。ハフマン符号化部106は、量子化スペクトルziの複数個をまとめてハフマン符号化する。ハフマン符号化によって符号化されたハフマン符号列を復号化する場合、復号化装置は、量子化スペクトルziを完全に復元することができる(ロスレス復号化)。
【0102】
符号化切換部107が量子化スペクトル列zを循環型コードベクトル量子化部104に入力するように切り換えた場合、循環型コードベクトル量子化部104は、量子化スペクトル列zを、量子化スペクトル列zに最も類似する循環型量子化スペクトル列に変換する。なお、量子化スペクトル列zに最も類似する循環型量子化スペクトル列は、実施形態1〜3に説明したように生成される。
【0103】
このような構成によれば、オーディオ信号が複数の周波数帯域に分割され、周波数帯域ごとに周波数スペクトル列を符号化する場合、符号化切換部107は、所定の条件に基づいて、量子化スペクトル列を循環型コードベクトル量子化部104か、ハフマン符号化部106に出力するかを切り換える。上記所定の条件とは、例えば、その量子化スペクトル列が、オーディオ信号の複数の周波数帯域のどの周波数帯域から派生したかによる。符号化に必要な情報量の配分が小さい場合(すなわち、その周波数帯域が受聴者の聴感に影響の少ない場合)、符号化切換部107は、量子化スペクトル列zを循環型コードベクトル量子化部104に出力するように切り換える。符号化に必要な情報量の配分が大きい場合(すなわち、その周波数帯域が受聴者の聴感に影響する場合)、符号化切換部107は、量子化スペクトル列zをハフマン符号化部106に出力するように切り換える。
【0104】
したがって、循環型コードベクトル量子化部104において、量子化スペクトル列zと、量子化スペクトル列zに最も類似する循環型量子化スペクトル列との類似度がそれほどよくなく、復号化の際に多少のロスが生じても、対象の周波数帯域は受聴者の聴感に影響の少ない。また、音質をある程度保ちながら、少ない情報量で符号化を行なうことができる。
【0105】
(実施の形態5)
次に、本発明の実施の形態5における符号化装置について説明する。実施の形態5における符号化装置は、コードブック104eの内容と、計算ステップ202における動作が異なる点を除いて、実施の形態3で説明した符号化装置と同じである。
【0106】
実施の形態1〜4において、コードブック104a、104b、104c、104dに含まれる複数の循環型量子化スペクトル列は、1つの基準スペクトル列を循環させた循環型量子化スペクトル列であった。しかし、本発明はこれに限定されない。本実施の形態では、コードブック104eが、複数の基準スペクトル列のそれぞれを循環させた循環型量子化スペクトル列を含む場合を説明する。
【0107】
図10は、4つの基準スペクトル列を有するコードブック104eを模式的に示す。コードブック104eは、4つの基準スペクトル列のそれぞれを循環させた複数の循環型量子化スペクトル列を含むが、ここでは、簡略化のため、基準スペクトル列のみを示す。
【0108】
ここで、量子化スペクトル列zに最も類似する循環型量子化スペクトル列は、第2の基準スペクトル列を3つ循環させ、すべての要素を反転させたスペクトルが量子化スペクトル列zに最も類似するスペクトルであると仮定する。図10に示されるように、第2の基準スペクトル列は{2、0、0、0、−2、0、0、0、−1、0、0、0、1、0、0、0}であり、これを3つ循環させて、すべての要素を反転させた循環型量子化スペクトル列は、{0、2、0、0、0、1、0、0、0、−1、0、0、0、−2、0、0}である。したがって、量子化スペクトル列zに最も類似する循環型量子化スペクトル列スペクトルは、{0、2、0、0、0、1、0、0、0、−1、0、0、0、−2、0、0}である。
【0109】
図11は、この場合のスペクトル列コードを示す。ここで、codebookidは基準スペクトル列識別情報であり、code indexは循環位置識別情報であり、phaseは位相識別情報である。基準スペクトル列識別情報は、スペクトル列コードによって表される循環型量子化スペクトル列がコードブック104eのどの基準スペクトルから派生するかを示す情報である。循環位置識別情報は、スペクトル列コードによって表される循環型量子化スペクトル列がその基準スペクトル列をいくら循環することによって得られるかを示す情報である。位相識別情報は、スペクトル列コードによって表される循環型量子化スペクトル列が基準スペクトル列の全ての要素の符号を反転したスペクトル列に対応するか否かを示す情報である。
【0110】
図12は、この場合に、符号化列転送部105から外部装置108に出力される符号化列1200の構造の一例を示す。符号化列1200は、一般に、低い周波数帯域から高い周波数帯域の順番に符号化されたスペクトル列コードを含む。ここで、周波数帯域nに対応する符号化列1200、すなわちスペクトル列コード1201について説明する。
【0111】
スペクトル列コード1201は、周波数帯域nに対応する、追加情報1202と、基準スペクトル列識別情報1203と、循環位置識別情報1204と、位相識別情報1205とを含む。ここで、上述したように、コードブック104eが4個の基準スペクトル列を有する場合、基準スペクトル列識別情報1203は2ビットで表現される。また、周波数スペクトル列の要素が16個である場合、循環位置識別情報1204は4ビットで表現される。また、位相識別情報1205は1ビットで表現される。
【0112】
上述した例の場合、基準スペクトル列識別情報1203と、循環位置識別情報1204と、位相識別情報1205は、10進表記でそれぞれ、1、3、1である。したがって、これらは、2進表記で、それぞれ、01、0011、1と表現される。
【0113】
また、スペクトル列コード1201は、追加情報1202として、周波数帯域nの符号として、スペクトル正規化部101から出力されるスケールファクタ、および/または、スペクトル増幅部102から出力される補正ゲインとをさらに含んでもよい。
【0114】
(実施の形態6)
次に、本発明の実施の形態6として、復号化装置について説明する。本実施の形態の復号化装置は、実施の形態1〜3、5の符号化装置で符号化された符号化列を受け取り、上記符号化列を復号化して、オーディオ信号を得る。
【0115】
図13は、本実施の形態による復号化装置1300の構成を示すブロック図である。復号化装置1300は、循環型コードベクトル逆量子化部1301と、スペクトル逆増幅部1302と、スペクトル逆正規化部1303と、符号化列入力部1304とを備える。
【0116】
符号化列入力部1304は、コードブック1307と、格納部1308とを含む。コードブック1307は、符号化列入力部1304に入力される符号化列を生成する際に使用されたコードと同じコードを含む。したがって、コードブック1307は、基準スペクトル列と、基準スペクトル列を循環させた複数の循環型量子化スペクトル列を含む。格納部1308は、コードブック1307のコードの各要素を格納する。
【0117】
ある場合、符号化列入力部1304は、符号化装置100によって出力された符号化列を受け取る。符号化列入力部1304は、受け取った符号化列から循環型量子化スペクトル列を符号化した循環位置識別情報を抽出する。また、符号化列が、スペクトル正規化部101で用いられたスケールファクタおよび/またはスペクトル増幅部102で用いられた補正ゲインとを含む場合、符号化列入力部1304は、スケールファクタおよび/または補正ゲインを抽出する。
【0118】
循環型コードベクトル逆量子化部1301は、符号化列入力部1304から受け取った循環位置識別情報に基づいて、コードブック1307の循環型量子化スペクトル列から、該当する循環型量子化スペクトル列を量子化スペクトル列として選択し、スペクトル列コードのデータの復元を行なう。
【0119】
ここで、コードブック1307は、図3に示されるコードブック104aと同じであると仮定する。例えば、循環位置識別情報の値iが1の場合のコードブック1307の循環型量子化スペクトル列は(c15、c0、c1、...、c13、c14)であるので、量子化スペクトル列(c15、c0、c1、...、c13、c14)がスペクトル逆増幅部1302に出力する。
【0120】
スペクトル逆増幅部1302は、スペクトル逆増幅部1302から入力されたスペクトル列に、符号化列入力部1304から受け取った補正ゲインを用いて逆増幅し、逆増幅スペクトル列を生成する。具体的には、符号化列入力部1304から受け取った補正ゲインがαであれば、1/α倍に増幅する。
【0121】
スペクトル逆正規化部1303は、逆増幅スペクトル列の各要素に対して、符号化列入力部1304から受け取ったスケールファクタを乗算し、各スペクトルにおける実際のレベル値に変換する。
【0122】
このようにスペクトル逆正規化部1303によって得られた実際のレベル値を示す1つの周波数帯域のスペクトルデータは、低域から高域へと並べられ、オーディオ信号の周波数スペクトルデータとして使用される。次いで、周波数時間変換部(図示せず)を用いて、周波数スペクトルデータを時間軸上のデータ、すなわち、PCMデータに変換する。さらに、このPCMデータをDA変換すると、アナログのオーディオ信号が生成される。
【0123】
なお、上記説明では、スペクトル列コードは循環位置識別情報のみを含む場合を説明したが、本発明はこれに限定されない。以下に、循環型コードベクトル逆量子化部1301は、循環位置識別情報だけでなく、基準スペクトル列識別情報と、位相識別情報とを含むスペクトル列コードから、スペクトル列コードが表す循環型量子化スペクトル列(すなわち、量子化スペクトル列)を生成する場合を説明する。
【0124】
図14は、復号化装置1300に用いられる循環型コードベクトル逆量子化部1301の動作を示すフローチャートである。循環型コードベクトル逆量子化部1301は、スペクトル列コード1201(図12参照)に基づいて量子化スペクトル列を生成する。
【0125】
循環型コードベクトル逆量子化部1301は、ステップ1401において、基準スペクトル列識別情報に基づいて、循環型コードベクトル逆量子化部1301のコードブック1307に含まれる基準スペクトル列を特定する。この場合、コードブック1307は、図10に示されるコードブック104dと同じである。
図12に示されるように基準スペクトル列識別情報の値は10進法表記で1(2進法表記で01)であり、これは、基準スペクトル列識別情報が第2の基準スペクトル列であることを示す。
【0126】
ステップ1402において、循環型コードベクトル逆量子化部1301は、循環位置識別情報に基づいて、量子化スペクトル列を得るための基準スペクトル列循環量を取得する。循環位置識別情報は、図12に示されるように、10進法表記で3(2進法表記で0011)である。
【0127】
循環型コードベクトル逆量子化部1301は、ステップ1403において、位相識別情報から位相の反転情報を取得する。位相識別情報は、図12に示されるように、10進法表記で1(2進法表記で1)である。
【0128】
上記の結果から、復号化装置1300の循環型コードベクトル逆量子化部1301が、スペクトル列コード1201に基づいて生成される量子化スペクトル列は、{0、2、0、0、0、1、0、0、0、−1、0、0、0、−2、0、0}となる。
【0129】
(実施の形態7)
次いで、本発明の実施の形態7による復号化装置を説明する。図15は、本実施の形態による復号化装置1500の構成を示すブロック図である。復号化装置1500は、図9に示される符号化装置900によって符号化された符号化列から、オーディオ信号を得る。
【0130】
復号化装置1500は、循環型コードベクトル逆量子化部1301と、スペクトル逆増幅部1302と、スペクトル逆正規化部1303と、符号化列入力部1304と、復号化切換部1305と、ハフマン逆量子化1306とを備える。循環型コードベクトル逆量子化部1301は、コードブック1307と、格納部1308とを含む。
【0131】
ただし、循環型コードベクトル逆量子化部1301と、スペクトル逆増幅部1302と、スペクトル逆正規化部1303と、符号化列入力部1304は、図13に示される復号化装置1300のものと同一であるで、説明を省略する。
【0132】
符号化列入力部1304は符号化列を受け取ると、ハフマン符号列または循環位置識別情報と、符号化方式とを抽出する。さらに、符号化列入力部1304は、補正ゲインおよびスケールファクタを取り出す。符号化列入力部1304は、符号化方式に関する情報を復号化切換部1305に出力する。復号化切換部1305は、符号化方式に基づいて、循環型コードベクトル逆量子化部1301またはハフマン逆量子化部1306を切り換える。循環位置識別情報は循環型コードベクトル逆量子化部1301に出力され、ハフマン符号列はハフマン逆量子化部1306に出力される。
【0133】
ハフマン逆量子化部1306は、ハフマンコードブックを格納する格納部1309を有する。復号化切換部1305がハフマン逆量子化部1306に切り換えて、ハフマン符号列を出力する場合、ハフマン逆量子化部1306が復号化処理を開始する。ハフマン逆量子化部1306は、ハフマンコードブック名とハフマン符号列が入力されると、ハフマン符号列に対応するインデックス値を読み出し、量子化スペクトル列を復元する。この場合、ロスレス復号化が実現される。
【0134】
復号化切換部1305が循環型コードベクトル逆量子化部1301に切り換えて、位置循環識別情報を出力する場合、実施の形態6で説明したのと同様な復号化処理が行なわれ、量子化スペクトル列が復元される。
【0135】
ハフマン逆量子化部1306または循環型コードベクトル逆量子化部1301によって生成された量子化スペクトル列は、実施の形態6において説明したように周波数スペクトルデータに変換される。
【0136】
次いで、周波数時間変換部(図示せず)は、上記の周波数スペクトルデータを時間軸上のデータ、すなわち、PCMデータに変換する。さらに、このPCMデータをDA変換すると、アナログのオーディオ信号が生成される。
【0137】
なお、上記説明では、循環型コードベクトル逆量子化部1301が、循環位置識別情報のみから量子化スペクトル列を生成する場合を説明したが、本発明はこれに限定されない。実施の形態6で説明したように、循環型コードベクトル逆量子化部1301は、循環位置識別情報だけでなく、基準スペクトル列識別情報と、位相識別情報とを含むスペクトル列コードから、スペクトル列コードが表す循環型量子化スペクトル列(すなわち、量子化スペクトル列)を生成してもよい。
【0138】
【発明の効果】
本発明による符号化装置は、量子化スペクトル列と最も類似する循環型量子化スペクトル列は基準スペクトル列をいくつ循環させたかを示す循環位置識別情報を含むスペクトル列コードを出力することにより、符号化時の情報量を少なくし、かつ、よりよい音質を得ることができる。
【0139】
この符号化装置は、従来の符号化方法と比べて、計算量が少なく、かつ、格納部の容量をを小さくすることができ、その結果、低いビットレートで効率的な符号化列を生成することができる。
【0140】
本発明による復号化装置は、基準スペクトル列を有し、基準スペクトル列と、上記基準スペクトル列をいくつ循環させることにより量子化スペクトル列が得られるかを示す循環位置識別情報とから、量子化スペクトル列を生成することにより、復号化装置が受け取る情報量が少なくでき、かつ、よりよい音質を効率的に得ることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1〜3、5における符号化装置の構成図。
【図2】本発明の実施の形態1〜5における符号化装置に用いられる循環型コードベクトル量子化部の動作を示すフローチャート。
【図3】実施の形態1の符号化装置に用いられるコードブック中の循環型量子化スペクトル列。
【図4】本発明の実施の形態1による符号化列の構造。
【図5】本発明の実施の形態2による符号化装置に用いられるコードブック中の循環型量子化スペクトル列。
【図6】本発明の実施の形態2による符号化列の構造。
【図7】本発明の実施の形態3による符号化装置に用いられるコードブック中の循環型量子化スペクトル列。
【図8】本発明の実施の形態3による符号化装置に用いられるコードブック中の別の循環型量子化スペクトル列。
【図9】本発明の実施の形態4による符号化装置の構成図。
【図10】本発明の実施の形態5による符号化装置に用いられるコードブック中の複数の基準スペクトル列。
【図11】本発明の実施の形態5によるスペクトル列コード。
【図12】本発明の実施の形態5による符号化列の構造。
【図13】本発明の実施の形態6による復号化装置の構成図。
【図14】本発明の実施の形態6における復号化装置に用いられる循環型コードベクトル逆量子化部の動作を示すフローチャート。
【図15】本発明の実施の形態7による復号化装置の構成図。
【図16】従来の符号化装置の構成図。
【符号の説明】
100 符号化装置
101 スペクトル正規化部
102 スペクトル増幅部
103 スペクトル量子化部
104 循環型コードベクトル量子化部
104a、104b、104c、104d、104e コードブック
105 符号化列転送部
108 外部装置
110 量子化スペクトル列生成部
115 格納部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an encoding device and a decoding device. More specifically, the present invention relates to an encoding device and a decoding device that reduce the amount of information during encoding while maintaining the sound quality of an audio signal.
[0002]
[Prior art]
To date, a great number of methods for encoding and decoding audio signals including audio signals or music signals have been developed. In particular, recently, among them, IS13818-7 internationally standardized by ISO / IEC has been recognized and evaluated as a high sound quality and high efficiency encoding method. This encoding method is called AAC. In recent years, AAC is also adopted in a standard called MPEG4, and a system called MPEG4-AAC having several extended functions is defined with respect to IS13818-7. An example of the encoding process is described in INFOMATATE PART.
[0003]
Here, an encoding apparatus using a conventional encoding method will be described.
[0004]
FIG. 16 is a configuration diagram showing a
[0005]
The audio discrete signal (PCM data) obtained by sampling the audio signal is converted from the data on the time axis of the audio signal by using a method such as orthogonal transformation in a time frequency conversion unit (not shown). It is converted into frequency spectrum data of the signal. The data on the time axis of the audio signal is discrete data of the audio signal with respect to time, and the frequency spectrum data of the audio signal is discrete data of the audio signal with respect to frequency. The frequency spectrum data of the audio signal is input to the
[0006]
The
The scale factor is, for example, a multiplication coefficient in the power of 2.
[0007]
The spectrum amplifying
[0008]
The
[0009]
The Huffman
[0010]
The encoded
[0011]
[Problems to be solved by the invention]
In recent years, in order to reduce the amount of information at the time of encoding, it is desired to increase the compression rate of the audio signal.
[0012]
In the
[0013]
However, when such an operation is performed, a very large value of amplitude (quantization value) zero appears in the frequency spectrum obtained by decoding the Huffman code string, and there is a problem that sufficient sound quality cannot be ensured.
[0014]
The present invention has been made in view of such conventional problems, and an encoding device that encodes an audio signal into an encoded sequence with a small amount of information while ensuring sound quality, and a frequency from the encoded sequence An object of the present invention is to realize a decoding device that decodes a spectrum sequence.
[0015]
[Means for Solving the Problems]
The encoding device of the present invention includes a quantized spectrum sequence generating unit that generates a quantized spectrum sequence quantized with a predetermined quantization accuracy based on an audio signal, and a cyclic quantum sequence most similar to the quantized spectrum sequence. A cyclic code vector quantization unit that outputs a spectral sequence code including cyclic position identification information indicating how many times the standardized spectral sequence is obtained by circulating the reference spectral sequenceThe cyclic code vector quantization unit includes a codebook having a plurality of cyclic quantization spectrum sequences obtained by circulating the reference spectrum sequence, and the quantization spectrum among the plurality of cyclic quantization spectrum sequences. A cyclic quantization spectrum sequence having the maximum inner product with the sequence is set as a cyclic quantization spectrum sequence most similar to the quantization spectrum sequence.
The encoding device of the present invention includes a quantized spectrum sequence generating unit that generates a quantized spectrum sequence quantized with a predetermined quantization accuracy based on an audio signal, and a cyclic quantum sequence most similar to the quantized spectrum sequence. A cyclic code vector quantization unit that outputs a spectral sequence code including cyclic position identification information indicating how many times the standardized spectral sequence is obtained by circulating the reference spectral sequence, and the cyclic code vector quantization unit includes: A codebook having a plurality of cyclic quantization spectrum sequences obtained by circulating the reference spectrum sequence, and the inner product deformation function with the quantization spectrum sequence of the plurality of circulation quantization spectrum sequences is maximum. The cyclic quantization spectrum sequence is a cyclic quantization spectrum sequence most similar to the quantization spectrum sequence.
[0016]
A Huffman encoding unit that outputs a Huffman code sequence obtained by converting the quantized spectrum sequence, and receives the quantized spectrum sequence, and the quantized spectrum sequence is either the cyclic code vector quantization unit or the Huffman encoding unit. And an encoding switching unit that switches based on a predetermined condition.
[0020]
The plurality of cyclic quantization spectrum sequences are:
P0= (C0, C1, C2,. . . , Cn-1, Cn)
P1= (Cn, C0, C1,. . . , Cn-2, Cn-1)
P2= (Cn-1, Cn, C0,. . . , Cn-3, Cn-2)
...
Pn= (C1, C2, CThree,. . . , Cn, C0)
Where the reference spectral sequence is P0And each of the plurality of cyclic quantization spectrum sequences has c0, C1, C2,. . . , Cn-1, CnAnd the number of elements in each of the plurality of cyclic quantization spectrum sequences may be n + 1.
[0021]
Each element c of the plurality of cyclic quantization spectrum sequences0, C1, C2,. . . , Cn-1, CnSome of them may be zero.
[0022]
Each element c of the plurality of cyclic quantization spectrum sequences0, C1, C2,. . . , Cn-1, CnThe elements at regular intervals may be zero.
[0023]
The quantized spectrum sequence generation unit generates the quantized spectrum sequence based on a frequency spectrum sequence that is spectrum data of one frequency band of the audio signal divided into a plurality of frequency bands, and the predetermined condition May be based on which frequency band of the plurality of frequency bands is the spectrum data.
[0024]
When the distribution of the information amount of the frequency band of the frequency spectrum sequence is large, the encoding switching unit may output the quantized spectrum sequence to the Huffman encoding unit.
[0025]
When the distribution of the information amount of the frequency band of the frequency spectrum sequence is small, the coding switching unit may output the quantized spectrum sequence to the cyclic code vector quantization unit.
[0026]
The code book may further include a second plurality of cyclic quantization spectrum sequences obtained by inverting the signs of all elements of the plurality of circulation quantization spectrum sequences.
[0027]
The plurality of cyclic quantized spectral sequences may include a cyclic quantized spectral sequence obtained by circulating each of a plurality of reference spectral sequences having the same number of elements as the number of elements of the quantized spectral sequence.
[0028]
The decoding device of the present inventionA decoding device for decoding the encoded sequence output from the encoding device of the present invention described above,A reference spectrum sequence, and the reference spectrum sequence;Included in the coded sequenceBased on the spectral column codeSaidA cyclic code vector inverse quantization unit that generates a quantized spectrum sequence, and a spectrum inverse amplifying unit that receives the quantized spectrum sequence and deamplifies the quantized spectrum sequence using a correction gain to generate an amplified spectrum sequence And a spectrum denormalization unit that receives the amplified spectrum sequence and converts the amplified spectrum sequence using a scale factor to generate a frequency spectrum sequence, and the spectrum sequence code circulates the reference spectrum sequence in a number of ways. It includes cyclic position identification information indicating whether the quantized spectrum sequence can be obtained.
[0029]
The decoding device of the present inventionA decoding apparatus for decoding the encoded sequence output from the encoding apparatus of the present invention described above, comprising the reference spectrum sequence, and the reference spectrum sequence and a spectrum sequence code included in the encoded sequence A cyclic code vector inverse quantization unit for generating the quantized spectrum sequence based on the code sequence, and included in the encoded sequenceA Huffman inverse quantization unit that receives a Huffman code sequence, converts the Huffman code sequence, and generates the quantized spectrum sequence;A spectrum inverse amplification unit that receives the quantized spectrum sequence, reverse-amplifies the quantized spectrum sequence using a correction gain to generate an amplified spectrum sequence, receives the amplified spectrum sequence, and uses the scale factor to generate the amplified spectrum A spectral denormalization unit that converts the sequence to generate a frequency spectrum sequence;AboveThe spectral sequence code included in the encoded sequence isThe cyclic code vector inverse quantization unitOutput toAboveThe Huffman code sequence included in the encoded sequence isHuffman inverse quantization sectionTo output the spectrum sequence code and the Huffman code sequence.Decoding switching section for switchingHave.
[0030]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an encoding device and a decoding device according to embodiments of the present invention will be described with reference to the drawings.
[0031]
(Embodiment 1)
FIG. 1 is a block diagram showing an
[0032]
The quantized spectrum sequence generation unit 110 includes a
[0033]
The quantized spectrum sequence generation unit 110 generates a quantized spectrum sequence from the audio signal as shown below.
[0034]
The audio discrete signal (PCM data) obtained by sampling the audio signal is converted from the data on the time axis of the audio signal by using a method such as orthogonal transform in a time-frequency conversion unit (not shown). It is converted into frequency spectrum data of the signal. Data on the time axis of the audio signal is discrete data of the audio signal with respect to time, and frequency spectrum data of the audio signal is discrete data of the audio signal with respect to frequency. The frequency spectrum data of the audio signal is input to the
[0035]
The
[0036]
The
[0037]
The
[0038]
As will be apparent to those skilled in the art, in the quantized spectrum sequence generation unit 110, the frequency spectrum sequence, the normalized spectrum sequence, the amplified spectrum sequence, and the number of elements of the quantized spectrum sequence are equal.
[0039]
In the present embodiment, cyclic code
[0040]
The cyclic code
[0041]
The encoded
[0042]
The encoded
[0043]
Hereinafter, the operation of the
[0044]
Audio discrete data (PCM data) is converted into frequency spectrum data at certain time intervals in a time-frequency converter (not shown). This frequency spectrum data is divided into a plurality of preset frequency bands, and a frequency spectrum sequence x is generated. The
[0045]
The
[0046]
The
[0047]
The
[0048]
zi= (Int) (yi・ Α) (1)
In formula (1), ziIs the i-th element of the quantized spectral sequence z and yiIs the i-th element of the normalized spectral sequence y. α is a correction gain, and the correction gain is set for each divided frequency band. (Int) is a function that quantizes the value of the expression into an integer.
[0049]
By the equation (1), the amplified spectrum sequence y · α is converted into an integer-valued quantized spectrum sequence z. The
[0050]
As described above, the cyclic code
[0051]
FIG. 2 is a flowchart showing the operation of the cyclic code
[0052]
When the quantized spectrum sequence z is input to the cyclic code
[0053]
Then EPiIn a
[0054]
FIG. 3 shows a cyclic quantized spectrum sequence of the
[0055]
In the present specification, the plurality of cyclic quantization spectrum sequences obtained by circulating the reference spectrum sequence includes the reference spectrum sequence itself. The reference spectrum sequence is a cyclic quantization spectrum sequence obtained by circulating the reference spectrum sequence 0 times.
[0056]
Code P shown in FIG.n(Here, n = 0, 1, 2,..., 15) has 16 elements.
[0057]
As shown in FIG. 3, the 0th code P0Is {c0, C1, C2,. . . , C15}, The first code P1Is {c15, C0, C1,. . . , C14}. As mentioned above, the code P0Is the reference spectrum sequence and the first code P1Is code P0Each element is shifted to the right by one, and the first code P1In element position 0, the 0th code P0Element c at element position 1515It becomes the structure which circulated. Second and subsequent code P2~15Similarly, the 0th code P0Each of the elements is configured to circulate by the corresponding number. Therefore, the code P0If each element of is found, another code P1~15Is code P0It is determined uniquely by cycling.
[0058]
Note that the plurality of cyclic quantization spectrum sequences shown in FIG. 3 circulate on the right side, but the present invention is not limited to this, and may circulate on the left side.
[0059]
EPiIn the
[0060]
EP0= Z · P0= C0z0+ C1z1+ ... + c15z15
EP1= Z · P1= C15z0+ C0z1+ ... + c14z15
EP2= Z · P2= C14z0+ C15z1+ ... + c13z15
...
EP15= Z · P15= C1z0+ C2z1+ ... + c0z15(2)
Equation (2) is expressed as EPn(N = 0, 1, 2,..., 15)n(N = 0, 1, 2,..., 15) and an input element z of the quantized spectrum sequence znThe inner product value (n = 0, 1, 2,..., 15).
[0061]
In the maximum
[0062]
[Expression 1]
Where ncode is EPiIs the circulation value i when becomes the maximum value max.
[0063]
As a result of the determination in the maximum
[0064]
As a result of the determination in the maximum
[0065]
If i is 0, the maximum value max is initialized to 0 in the
[0066]
In the
[0067]
If i is the maximum value (Y in step 205), this operation is terminated.
[0068]
If i is not the maximum value (N in Step 205), i is incremented by 1 in the
[0069]
Next, in the cyclic code
[0070]
In the
[0071]
FIG. 4 shows an example of the structure of the encoded sequence 400 output from the encoded
[0072]
The spectrum sequence code 401 includes circulation
[0073]
The spectrum sequence code 401 may further include a scale factor output from the
[0074]
By using the encoding apparatus configured as described above, encoding can be performed with a small number of fixed bits. In addition, since each code (cyclic quantization spectrum sequence) of the
[0075]
In the above description, the case where the number of elements of the quantization spectrum sequence and the cyclic quantization spectrum sequence is 16 has been described, but the present invention is not limited to this. The number of elements of the quantization spectrum sequence and the cyclic quantization spectrum sequence may be arbitrary.
[0076]
In the above description, the inner product is used to determine the cyclic quantization spectrum sequence most similar to the quantization spectrum sequence z. However, the present invention is not limited to this. For example, an inner product deformation function may be used. In the present specification, the inner product deformation function means a function in which a coefficient of the inner product is weighted. Specifically, the EP shown in FIG.iIn the
[0077]
EP0'= 3c0z0+ 2c1z1+ ... + 0.3c15z15
EP1'= 3c15z0+ 2c0z1+ ... + 0.3c14z15
EP2'= 3c14z0+ 2c15z1+ ... + 0.3c13z15
...
EP15'= 3c1z0+ 2c2z1+ ... + 0.3c0z15(4)
Equation (4) is expressed as EPn′ (N = 0, 1, 2,..., 15) represents each code Pn(N = 0, 1, 2,..., 15) and an input element z of the quantized spectrum sequence znThe inner product deformation function value (n = 0, 1, 2,..., 15).
[0078]
In the inner product, since all the coefficients are 1, the importance of the frequency spectrum data within a certain frequency band is also calculated as uniform. However, as shown in Equation (4), the importance of the frequency spectrum data within a certain frequency band can be taken into account when the inner product deformation function is used. For example, when considering the influence of the lower frequency more strongly, the coefficient of the quantized spectrum sequence corresponding to the data of the lower frequency component may be increased.
[0079]
(Embodiment 2)
Next, an encoding apparatus according to Embodiment 2 of the present invention will be described. The encoding apparatus in the second embodiment is the same as the encoding apparatus described in the first embodiment except that the operations of the maximum
[0080]
In the present embodiment, the maximum value determination step 203 (see FIG. 2) uses, for example, Equation (5).
[0081]
[Expression 2]
Here, abs () is a function that outputs the absolute value in (), and the variable face indicates whether the value of the code is inverted. In this specification, the variable face is referred to as phase identification information. In the above equation, when the variable face = 1, it means that one code from the
[0082]
In the storing
[0083]
As described above, in the second embodiment, in the maximum
[0084]
The code book of cyclic code
[0085]
FIG. 6 shows an example of the structure of the encoded sequence 600 output from the encoded
[0086]
The spectrum sequence code 601 includes circulation
[0087]
The spectrum sequence code 601 may further include a scale factor output from the
[0088]
In the coding apparatus configured as described above, only the portion of the maximum
[0089]
Thus, according to the present embodiment, encoding can be performed with a small number of fixed bits. In addition, the plurality of cyclic quantization spectrum sequences included in the
[0090]
(Embodiment 3)
Next, an encoding apparatus according to
[0091]
FIG. 7 shows a
[0092]
EP0= Z · P0= C0z0+ CFourzFour+ C8z8+ C12z12
EP1= Z · P1= C0z1+ CFourzFive+ C8z9+ C12z13
EP2= Z · P2= C0z2+ CFourz6+ C8zTen+ C12z14
...
EP15= Z · P15= C0z15+ CFourzThree+ C8z7+ C12z11(6)
Therefore, compared to the second embodiment, EPiThe calculation amount of the
[0093]
By using the encoding apparatus configured as described above, encoding can be performed with a small number of fixed bits. In addition, each code of the
[0094]
Also in the present embodiment, as described in the second embodiment, the codebook of the cyclic code
[0095]
In the above description, the case where elements having a value of 0 are continuous has been described, but the present invention is not limited to this. There may be an element having a value of 0 of at least one of arbitrary elements included in the cyclic quantization spectrum sequence.
[0096]
In the above description, the case where the number of elements in the cyclic quantization spectrum sequence is 16 has been described, but the present invention is not limited to this. The number of elements in the cyclic quantization spectrum sequence may be an arbitrary number.
[0097]
(Embodiment 4)
Next, an encoding apparatus according to Embodiment 4 of the present invention will be described. The encoding apparatus in the present embodiment has the same configuration as that of
[0098]
FIG. 9 is a configuration diagram showing an
[0099]
Note that the quantized spectrum sequence generation unit 110 (
[0100]
The
[0101]
When the
[0102]
When the
[0103]
According to such a configuration, when the audio signal is divided into a plurality of frequency bands and the frequency spectrum sequence is encoded for each frequency band, the
[0104]
Therefore, in the cyclic code
[0105]
(Embodiment 5)
Next, an encoding apparatus according to Embodiment 5 of the present invention will be described. The encoding apparatus in the fifth embodiment is the same as the encoding apparatus described in the third embodiment, except that the contents of the code book 104e and the operation in the
[0106]
In
[0107]
FIG. 10 schematically shows a code book 104e having four reference spectrum sequences. The code book 104e includes a plurality of cyclic quantization spectrum sequences obtained by circulating each of the four reference spectrum sequences, but only the reference spectrum sequence is shown here for the sake of simplicity.
[0108]
Here, the cyclic quantized spectral sequence most similar to the quantized spectral sequence z has three second reference spectral sequences circulated, and the spectrum with all elements inverted is most similar to the quantized spectral sequence z. Assume that it is a spectrum. As shown in FIG. 10, the second reference spectrum sequence is {2, 0, 0, 0, -2, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 0}. The cyclic quantized spectral sequence obtained by circulating three of them and inverting all the elements is {0, 2, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0, -2, 0, 0}. Therefore, the circular quantization spectrum sequence most similar to the quantization spectrum sequence z is {0, 2, 0, 0, 0, 1, 0, 0, 0, −1, 0, 0, 0, −2 , 0, 0}.
[0109]
FIG. 11 shows a spectrum sequence code in this case. Here, codebook is reference spectrum sequence identification information, code index is circulation position identification information, and phase is phase identification information. The reference spectrum sequence identification information is information indicating which reference spectrum of the code book 104e the cyclic quantized spectrum sequence represented by the spectrum sequence code is derived from. The cyclic position identification information is information indicating how much the cyclic quantized spectral sequence represented by the spectral sequence code is obtained by circulating the reference spectral sequence. The phase identification information is information indicating whether or not the cyclic quantization spectrum sequence represented by the spectrum sequence code corresponds to a spectrum sequence obtained by inverting the signs of all the elements of the reference spectrum sequence.
[0110]
FIG. 12 shows an example of the structure of the encoded sequence 1200 output from the encoded
[0111]
The spectrum sequence code 1201 includes
[0112]
In the case of the above-described example, the reference spectrum
[0113]
The spectrum sequence code 1201 further includes, as
[0114]
(Embodiment 6)
Next, a decoding device will be described as a sixth embodiment of the present invention. The decoding apparatus according to the present embodiment receives the encoded sequence encoded by the encoding apparatuses according to the first to third and fifth embodiments, decodes the encoded sequence, and obtains an audio signal.
[0115]
FIG. 13 is a block diagram showing a configuration of
[0116]
The encoded
[0117]
In some cases, the encoded
[0118]
Based on the cyclic position identification information received from the coded
[0119]
Here, the
[0120]
The spectrum
[0121]
The spectrum
[0122]
Thus, the spectrum data of one frequency band indicating the actual level value obtained by the spectrum
[0123]
In the above description, the case where the spectrum sequence code includes only the cyclic position identification information has been described, but the present invention is not limited to this. Hereinafter, the cyclic code vector
[0124]
FIG. 14 is a flowchart showing the operation of the cyclic code vector
[0125]
In
As shown in FIG. 12, the value of the reference spectrum sequence identification information is 1 in decimal notation (01 in binary notation). This is because the reference spectrum sequence identification information is the second reference spectrum sequence. Indicates.
[0126]
In
[0127]
In
[0128]
From the above result, the quantized spectrum sequence generated by the cyclic code vector
[0129]
(Embodiment 7)
Next, a decoding apparatus according to Embodiment 7 of the present invention will be described. FIG. 15 is a block diagram showing a configuration of
[0130]
[0131]
However, cyclic code vector
[0132]
When the encoded
[0133]
The Huffman
[0134]
When decoding
[0135]
The quantized spectrum sequence generated by the Huffman
[0136]
Next, a frequency time conversion unit (not shown) converts the frequency spectrum data into data on the time axis, that is, PCM data. Further, when this PCM data is D / A converted, an analog audio signal is generated.
[0137]
In the above description, the case where the cyclic code vector
[0138]
【The invention's effect】
The encoding apparatus according to the present invention outputs a spectral sequence code including cyclic position identification information indicating how many reference spectral sequences have been circulated from a cyclic quantized spectral sequence that is most similar to the quantized spectral sequence. The amount of information at the time can be reduced, and better sound quality can be obtained.
[0139]
This encoding apparatus has a smaller amount of calculation and a smaller storage capacity than the conventional encoding method, and as a result, generates an efficient encoded sequence at a low bit rate. be able to.
[0140]
The decoding apparatus according to the present invention has a reference spectrum sequence, and a quantized spectrum from the reference spectrum sequence and cyclic position identification information indicating how many times the reference spectrum sequence is circulated to obtain a quantized spectrum sequence. By generating a sequence, the amount of information received by the decoding device can be reduced, and better sound quality can be obtained efficiently.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of an encoding device according to
FIG. 2 is a flowchart showing an operation of a cyclic code vector quantization unit used in the encoding apparatus according to
FIG. 3 shows a cyclic quantized spectrum sequence in a code book used in the coding apparatus according to the first embodiment.
FIG. 4 shows a structure of a coded sequence according to
FIG. 5 shows a cyclic quantized spectrum sequence in a codebook used in an encoding apparatus according to Embodiment 2 of the present invention.
FIG. 6 shows a structure of a coded sequence according to Embodiment 2 of the present invention.
FIG. 7 shows a cyclic quantized spectrum sequence in a codebook used in an encoding apparatus according to
FIG. 8 shows another cyclic quantized spectrum sequence in the codebook used in the encoding apparatus according to
FIG. 9 is a configuration diagram of an encoding apparatus according to Embodiment 4 of the present invention.
FIG. 10 shows a plurality of reference spectrum sequences in a code book used in an encoding apparatus according to Embodiment 5 of the present invention.
FIG. 11 shows a spectrum sequence code according to the fifth embodiment of the present invention.
FIG. 12 shows a structure of a coded sequence according to the fifth embodiment of the present invention.
FIG. 13 is a configuration diagram of a decoding apparatus according to Embodiment 6 of the present invention.
FIG. 14 is a flowchart showing an operation of a cyclic code vector inverse quantization unit used in the decoding apparatus according to Embodiment 6 of the present invention.
FIG. 15 is a configuration diagram of a decoding apparatus according to a seventh embodiment of the present invention.
FIG. 16 is a configuration diagram of a conventional encoding device.
[Explanation of symbols]
100 Encoder
101 Spectral normalization part
102 Spectral amplifier
103 Spectral quantization unit
104 Cyclic code vector quantization section
104a, 104b, 104c, 104d, 104e Codebook
105 Encoded sequence transfer unit
108 External device
110 Quantized spectrum sequence generator
115 Storage unit
Claims (13)
前記量子化スペクトル列に最も類似する循環型量子化スペクトル列が基準スペクトル列をいくつ循環させることにより得られるかを示す循環位置識別情報を含むスペクトル列コードを出力する循環型コードベクトル量子化部とを備え、
前記循環型コードベクトル量子化部は、
前記基準スペクトル列を循環させた複数の循環型量子化スペクトル列を有するコードブックを含み、
前記複数の循環型量子化スペクトル列のうち、前記量子化スペクトル列との内積が最大を示す循環型量子化スペクトル列を、前記量子化スペクトル列に最も類似する循環型量子化スペクトル列とする、
符号化装置。A quantized spectrum sequence generating unit that generates a quantized spectrum sequence quantized with a predetermined quantization accuracy based on the audio signal;
A cyclic code vector quantization unit that outputs a spectral sequence code including cyclic position identification information indicating how many cyclic spectral sequences that are most similar to the quantized spectral sequence are obtained by circulating a reference spectral sequence; equipped with a,
The cyclic code vector quantization unit includes:
A codebook having a plurality of cyclic quantized spectral sequences obtained by circulating the reference spectral sequence;
Among the plurality of cyclic quantization spectral sequences, a cyclic quantization spectral sequence having a maximum inner product with the quantized spectral sequence is set as a cyclic quantized spectral sequence most similar to the quantized spectral sequence,
It marks Goka apparatus.
前記量子化スペクトル列に最も類似する循環型量子化スペクトル列が基準スペクトル列をいくつ循環させることにより得られるかを示す循環位置識別情報を含むスペクトル列コードを出力する循環型コードベクトル量子化部とを備え、
前記循環型コードベクトル量子化部は、
前記基準スペクトル列を循環させた複数の循環型量子化スペクトル列を有するコードブックを含み、
前記複数の循環型量子化スペクトル列のうち、前記量子化スペクトル列との内積変形関数が最大を示す循環型量子化スペクトル列を、前記量子化スペクトル列に最も類似する循環型量子化スペクトル列とする、
符号化装置。 A quantized spectrum sequence generating unit that generates a quantized spectrum sequence quantized with a predetermined quantization accuracy based on the audio signal;
A cyclic code vector quantization unit that outputs a spectral sequence code including cyclic position identification information indicating how many cyclic spectral sequences that are most similar to the quantized spectral sequence are obtained by circulating a reference spectral sequence; With
The cyclic code vector quantization unit includes:
A codebook having a plurality of cyclic quantized spectral sequences obtained by circulating the reference spectral sequence;
Among the plurality of cyclic quantized spectral sequences, a cyclic quantized spectral sequence showing the maximum inner product deformation function with the quantized spectral sequence is a cyclic quantized spectral sequence most similar to the quantized spectral sequence, To
It marks Goka apparatus.
前記量子化スペクトル列を受け取り、前記量子化スペクトル列を前記循環型コードベクトル量子化部または前記ハフマン符号化部のいずれに出力するかを所定の条件に基づいて切り換える符号化切換部と
をさらに備える、請求項1または請求項2に記載の符号化装置。A Huffman encoder that outputs a Huffman code sequence obtained by converting the quantized spectrum sequence;
An encoding switching unit that receives the quantized spectrum sequence and switches whether to output the quantized spectrum sequence to the cyclic code vector quantization unit or the Huffman encoding unit based on a predetermined condition; The encoding apparatus according to claim 1 or 2 .
P0=(c0、c1、c2、...、cn-1、cn)
P1=(cn、c0、c1、...、cn-2、cn-1)
P2=(cn-1、cn、c0、...、cn-3、cn-2)
・・・・・
Pn=(c1、c2、c3、...、cn、c0)
で表現され、
ここで、前記基準スペクトル列はP0であり、前記複数の循環型量子化スペクトル列のそれぞれが有する要素はc0、c1、c2、...、cn-1、cnであり、
前記複数の循環型量子化スペクトル列のそれぞれの要素の数はn+1である、請求項1または請求項2に記載の符号化装置。The plurality of cyclic quantization spectrum sequences are:
P 0 = (c 0 , c 1 , c 2 ,..., C n−1 , c n )
P1 = (c n , c 0 , c 1 ,..., C n−2 , c n−1 )
P2 = (c n-1 , c n , c 0 , ..., c n-3 , c n-2 )
...
Pn = (c 1 , c 2 , c 3 ,..., C n , c 0 )
Expressed in
Here, the reference spectrum sequence is P 0, and the elements of each of the plurality of cyclic quantization spectrum sequences are c 0 , c 1 , c 2 ,. . . , C n-1 , c n ,
The encoding apparatus according to claim 1 or 2 , wherein the number of elements of each of the plurality of cyclic quantization spectrum sequences is n + 1.
前記所定の条件は、前記周波数スペクトル列が、前記複数の周波数帯域のうちのどの周波数帯域のスペクトルデータであるかに基づく、請求項3に記載の符号化装置。The quantized spectrum sequence generating unit generates the quantized spectrum sequence based on a frequency spectrum sequence that is spectrum data of one frequency band of the audio signal divided into a plurality of frequency bands,
The encoding apparatus according to claim 3 , wherein the predetermined condition is based on which frequency band of the plurality of frequency bands the frequency spectrum sequence is.
前記基準スペクトル列を有し、前記基準スペクトル列と、前記符号化列に含まれるスペクトル列コードとに基づいて、前記量子化スペクトル列を生成する循環型コードベクトル逆量子化部と、
前記量子化スペクトル列を受け取り、補正ゲインを用いて前記量子化スペクトル列を逆増幅して増幅スペクトル列を生成するスペクトル逆増幅部と、
前記増幅スペクトル列を受け取り、スケールファクタを用いて前記増幅スペクトル列を変換して周波数スペクトル列を生成するスペクトル逆正規化部と
を備え、
前記スペクトル列コードは、前記基準スペクトル列をいくつ循環させることにより前記量子化スペクトル列が得られるかを示す循環位置識別情報を含む、復号化装置。 A decoding device that decodes an encoded sequence output from the encoding device according to claim 1 or 2,
Has the reference spectral sequence, and the reference spectral sequence, and the based on the spectral sequence code contained in the encoded data stream, circulating code vector inverse quantization unit which generates the quantized spectral sequence,
A spectrum inverse amplification unit that receives the quantized spectrum sequence and deamplifies the quantized spectrum sequence using a correction gain to generate an amplified spectrum sequence;
A spectrum denormalization unit that receives the amplified spectrum sequence and converts the amplified spectrum sequence using a scale factor to generate a frequency spectrum sequence;
The decoding apparatus, wherein the spectrum sequence code includes cyclic position identification information indicating how many times the reference spectrum sequence is circulated to obtain the quantized spectrum sequence.
前記基準スペクトル列を有し、前記基準スペクトル列と、前記符号化列に含まれるスペクトル列コードとに基づいて、前記量子化スペクトル列を生成する循環型コードベクトル逆量子化部と、
前記符号化列に含まれるハフマン符号列を受け取り、前記ハフマン符号列を復号化して前記量子化スペクトル列を生成するハフマン逆量子化部と、
前記量子化スペクトル列を受け取り、補正ゲインを用いて前記量子化スペクトル列を逆増幅して増幅スペクトル列を生成するスペクトル逆増幅部と、
前記増幅スペクトル列を受け取り、スケールファクタを用いて前記増幅スペクトル列を変換して周波数スペクトル列を生成するスペクトル逆正規化部と、
前記符号化列に含まれるスペクトル列コードが前記循環型コードベクトル逆量子化部に出力され、前記符号化列に含まれるハフマン符号列が前記ハフマン逆量子化部に出力されるよう、前記スペクトル列コードおよび前記ハフマン符号列を切り換える復号化切換部と
を備えた、復号化装置。 A decoding device for decoding an encoded sequence output from the encoding device according to claim 3,
A cyclic code vector inverse quantization unit that has the reference spectrum sequence and generates the quantized spectrum sequence based on the reference spectrum sequence and a spectrum sequence code included in the encoded sequence;
A Huffman dequantization unit that receives a Huffman code sequence included in the encoded sequence and decodes the Huffman code sequence to generate the quantized spectrum sequence;
A spectrum inverse amplification unit that receives the quantized spectrum sequence and deamplifies the quantized spectrum sequence using a correction gain to generate an amplified spectrum sequence;
A spectral denormalization unit that receives the amplified spectral sequence and converts the amplified spectral sequence using a scale factor to generate a frequency spectral sequence;
As the spectral sequence code included in the encoded data stream is output to the circulating code vector inverse quantization section, a Huffman code string contained in the encoded data stream is output to the Huffman inverse quantization section, the spectral sequence and a code and decoding switching section for switching the Huffman code sequence, decoding device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001271001A JP4508490B2 (en) | 2000-09-11 | 2001-09-06 | Encoding device and decoding device |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000-275296 | 2000-09-11 | ||
JP2000275296 | 2000-09-11 | ||
JP2001271001A JP4508490B2 (en) | 2000-09-11 | 2001-09-06 | Encoding device and decoding device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002158589A JP2002158589A (en) | 2002-05-31 |
JP4508490B2 true JP4508490B2 (en) | 2010-07-21 |
Family
ID=26599674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001271001A Expired - Fee Related JP4508490B2 (en) | 2000-09-11 | 2001-09-06 | Encoding device and decoding device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4508490B2 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7240001B2 (en) | 2001-12-14 | 2007-07-03 | Microsoft Corporation | Quality improvement techniques in an audio encoder |
JP4728568B2 (en) * | 2002-09-04 | 2011-07-20 | マイクロソフト コーポレーション | Entropy coding to adapt coding between level mode and run length / level mode |
ES2334934T3 (en) | 2002-09-04 | 2010-03-17 | Microsoft Corporation | ENTROPY CODIFICATION BY ADAPTATION OF CODIFICATION BETWEEN LEVEL MODES AND SUCCESSION AND LEVEL LENGTH. |
JP4734859B2 (en) * | 2004-06-28 | 2011-07-27 | ソニー株式会社 | Signal encoding apparatus and method, and signal decoding apparatus and method |
WO2006030288A2 (en) * | 2004-09-13 | 2006-03-23 | Expway | Method for compressing and decompressing a sequence of floating point numbers |
US7599840B2 (en) * | 2005-07-15 | 2009-10-06 | Microsoft Corporation | Selectively using multiple entropy models in adaptive coding and decoding |
US7562021B2 (en) | 2005-07-15 | 2009-07-14 | Microsoft Corporation | Modification of codewords in dictionary used for efficient coding of digital media spectral data |
US7885819B2 (en) | 2007-06-29 | 2011-02-08 | Microsoft Corporation | Bitstream syntax for multi-process audio decoding |
US8179974B2 (en) | 2008-05-02 | 2012-05-15 | Microsoft Corporation | Multi-level representation of reordered transform coefficients |
US8406307B2 (en) | 2008-08-22 | 2013-03-26 | Microsoft Corporation | Entropy coding/decoding of hierarchically organized data |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07261800A (en) * | 1994-03-17 | 1995-10-13 | Nippon Telegr & Teleph Corp <Ntt> | Transformation encoding method, decoding method |
JPH07273658A (en) * | 1994-04-01 | 1995-10-20 | Sony Corp | Signal coding method and device, signal recording medium and signal decoding method and device |
JPH09130260A (en) * | 1995-10-26 | 1997-05-16 | Victor Co Of Japan Ltd | Encoding device and decoding device for acoustic signal |
JPH09179593A (en) * | 1995-12-26 | 1997-07-11 | Nec Corp | Speech encoding device |
JPH09200741A (en) * | 1995-12-27 | 1997-07-31 | Thomson Consumer Electron Inc | System and method for compressing image data |
JPH1166742A (en) * | 1997-08-08 | 1999-03-09 | Matsushita Electric Ind Co Ltd | Signal encoding device |
JP2000114975A (en) * | 1998-10-07 | 2000-04-21 | Sony Corp | Sound signal encoding method and device, sound signal decoding method and device and recording medium |
JP2009501166A (en) * | 2005-07-14 | 2009-01-15 | メルク パテント ゲゼルシャフト ミット ベシュレンクテル ハフトング | Method for producing onium alkylsulfonate |
-
2001
- 2001-09-06 JP JP2001271001A patent/JP4508490B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07261800A (en) * | 1994-03-17 | 1995-10-13 | Nippon Telegr & Teleph Corp <Ntt> | Transformation encoding method, decoding method |
JPH07273658A (en) * | 1994-04-01 | 1995-10-20 | Sony Corp | Signal coding method and device, signal recording medium and signal decoding method and device |
JPH09130260A (en) * | 1995-10-26 | 1997-05-16 | Victor Co Of Japan Ltd | Encoding device and decoding device for acoustic signal |
JPH09179593A (en) * | 1995-12-26 | 1997-07-11 | Nec Corp | Speech encoding device |
JPH09200741A (en) * | 1995-12-27 | 1997-07-31 | Thomson Consumer Electron Inc | System and method for compressing image data |
JPH1166742A (en) * | 1997-08-08 | 1999-03-09 | Matsushita Electric Ind Co Ltd | Signal encoding device |
JP2000114975A (en) * | 1998-10-07 | 2000-04-21 | Sony Corp | Sound signal encoding method and device, sound signal decoding method and device and recording medium |
JP2009501166A (en) * | 2005-07-14 | 2009-01-15 | メルク パテント ゲゼルシャフト ミット ベシュレンクテル ハフトング | Method for producing onium alkylsulfonate |
Also Published As
Publication number | Publication date |
---|---|
JP2002158589A (en) | 2002-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200296375A1 (en) | Method and apparatus for pyramid vector quantization de-indexing of audio/video sample vectors | |
KR101226566B1 (en) | Method for encoding a symbol, method for decoding a symbol, method for transmitting a symbol from a transmitter to a receiver, encoder, decoder and system for transmitting a symbol from a transmitter to a receiver | |
JP5603484B2 (en) | Encoding method, decoding method, encoding device, decoding device, program, recording medium | |
US8558724B2 (en) | Coding method, coding appartaus, decoding method, decoding apparatus, program, and recording medium | |
JP4779098B2 (en) | Method and apparatus for performing variable size vector entropy coding | |
US20100217753A1 (en) | Multi-stage quantization method and device | |
JP4508490B2 (en) | Encoding device and decoding device | |
EP0488803B1 (en) | Signal encoding device | |
US20100017196A1 (en) | Method, system, and apparatus for compression or decompression of digital signals | |
JP3357829B2 (en) | Audio encoding / decoding method | |
US6917712B2 (en) | Encoding apparatus and decoding apparatus | |
WO2015146224A1 (en) | Coding method, coding device, program and recording medium | |
Chaddha et al. | Constrained and recursive hierarchical table-lookup vector quantization | |
WO2020095706A1 (en) | Coding device, decoding device, code string data structure, coding method, decoding method, coding program, and decoding program | |
JP2000165252A (en) | Data compression method and device | |
US11621010B2 (en) | Coding apparatus, coding method, program, and recording medium | |
JP2004246038A (en) | Speech or musical sound signal encoding method, decoding method, encoding device, decoding device, encoding program, and decoding program | |
EP4099573B1 (en) | Encoder, decoder, encoding method, decoding method and program | |
WO2020129718A1 (en) | Conversion device, encoding device, decoding device, methods of conversion device, encoding device, and decoding device, and program | |
Mehrotra et al. | Predictive hierarchical table-lookup vector quantization with quadtree encoding | |
JPH0527798A (en) | Linear predictive parameter encoding method for voice | |
JPS63175899A (en) | Voice analyzer/synthesizer | |
Leis et al. | Adaptive vector quantization for speech spectrum coding | |
JPH0634200B2 (en) | Encoding / decoding method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080627 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100318 |
|
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: 20100405 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100427 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4508490 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |