JPWO2013118476A1 - 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法 - Google Patents

音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法 Download PDF

Info

Publication number
JPWO2013118476A1
JPWO2013118476A1 JP2013557416A JP2013557416A JPWO2013118476A1 JP WO2013118476 A1 JPWO2013118476 A1 JP WO2013118476A1 JP 2013557416 A JP2013557416 A JP 2013557416A JP 2013557416 A JP2013557416 A JP 2013557416A JP WO2013118476 A1 JPWO2013118476 A1 JP WO2013118476A1
Authority
JP
Japan
Prior art keywords
codebook
bits
instruction
subvector
consumes
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.)
Pending
Application number
JP2013557416A
Other languages
English (en)
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.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Priority to JP2013557416A priority Critical patent/JPWO2013118476A1/ja
Publication of JPWO2013118476A1 publication Critical patent/JPWO2013118476A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • 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/16Vocoder architecture
    • 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/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders

Abstract

分割マルチレート格子ベクトル量子化の量子化パラメータを効率的に符号化する音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法を提供すること。本発明では、はじめにコードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、利用可能な総ビット数および他のサブベクトルのビット使用状況についての情報に基づいて、そのコードブックの値を推定する。実際の値と推定値との差分値を計算する。最後に、最も多くのビットを消費するコードブック指示を送信する代わりに、コードブック指示が最も多くのビットを消費するサブベクトルの位置、および実際の値と推定値との差分値を送信する。本発明の方法を適用することにより、コードブック指示からビットを節減することができる。

Description

本発明は、ベクトル量子化を使用した、音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法に関する。
音響および音声の符号化には、主として変換符号化と線形予測符号化の2種類の符号化方式がある。
変換符号化は、離散フーリエ変換(DFT: Discrete Fourier Transform)または修正離散コサイン変換(MDCT: Modified Discrete Cosine Transform)などを使用して、信号を時間領域からスペクトル領域に変換するものである。スペクトル係数を量子化し、符号化する。量子化または符号化の過程では、通常は音響心理学モデルを適用してスペクトル係数の知覚的重要度を判断した後、その知覚的重要度に応じてスペクトル係数を量子化または符号化する。広く使用される変換コーデックには、MPEG MP3、MPEG AAC(非特許文献1参照)、およびDolby AC3がある。変換符号化は、音楽または一般的な音響信号に有効である。変換コーデックの単純な構成を図1に示す。
図1に示すエンコーダでは、離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、時間領域信号S(n)を周波数領域信号S(f)に変換する(101)。
周波数領域信号S(f)に音響心理学モデル解析を行って、マスキング曲線を導出する(103)。音響心理学モデル解析で導出されたマスキング曲線に従って周波数領域信号S(f)を量子化して、量子化ノイズが不可聴になるようにする(102)。
量子化パラメータを多重化し(104)、デコーダ側に送信する。
図1に示すデコーダでは、はじめにすべてのビットストリーム情報が逆多重化される(105)。量子化パラメータを逆量子化して、復号周波数領域信号S~(f)を復元する(106)。
逆離散フーリエ変換(IDFT: Inverse Discrete Fourier Transform)または逆修正離散コサイン変換(IMDCT: Inverse Modified Discrete Cosine Transform)などの周波数から時間領域への変換方法を使用して、復号周波数領域信号S~(f)を変換して時間領域に戻すことにより、復号時間領域信号S~(n)を復元する(107)。
一方、線形予測符号化は、時間領域で音声信号が予測可能である性質を利用し、入力音声信号に線形予測を適用することによって残差励振信号を取得する。音声信号、特に、共振効果と、ピッチ周期の倍数であるタイムシフトに伴う高い類似度とを持つ有声領域に対しては、このモデル化で非常に効率的な音声表現が生成される。線形予測の後、残差励振信号は、主として2つの異なる方法、TCXおよびCELPで符号化される。
TCX(非特許文献2参照)では、残差励振信号は周波数領域で効率的に変換および符号化される。広く使用されるTCXコーデックには、3GPP AMR−WB+、MPEG USACがある。TCXコーデックの単純な構成を図2に示す。
図2に示すエンコーダでは、入力信号にLPC解析を行って、時間領域における信号の予測可能性を利用する(201)。LPC解析で得られたLPCパラメータを量子化し(202)、量子化インデックスを多重化して(207)、デコーダ側に送信する。逆量子化部(203)によって逆量子化されたLPCパラメータを使用して、入力信号S(n)にLPC逆フィルタリングを適用することにより、残差(励振)信号S(n)を得る(204)。
離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、残差信号S(n)を周波数領域信号S(f)に変換する(205)。
(f)を量子化し(206)、量子化パラメータを多重化して(207)、デコーダ側に送信する。
図2に示すデコーダでは、はじめにすべてのビットストリーム情報を逆多重化する(208)。
量子化パラメータを逆量子化して、復号周波数領域残差信号S~(f)を復元する(210)。
逆離散フーリエ変換(IDFT)または逆修正離散コサイン変換(IMDCT)などの周波数から時間領域への変換方法を使用して、復号周波数領域残差信号Sr~(f)を変換して時間領域に戻すことにより、復号時間領域残差信号S~(n)を復元する(211)。
逆量子化部(209)によって逆量子化されたLPCパラメータを使用して、復号時間領域残差信号S~(n)をLPC合成フィルタ(212)で処理して復号時間領域信号S~(n)を得る。
CELP符号化では、何らかの所定のコードブックを使用して残差励振信号を量子化する。そして、音質をさらに向上させるために、元の信号とLPC合成信号との差分信号を周波数領域に変換し、さらに符号化するのが一般的である。広く使用されるCELPコーデックには、ITU−T G.729.1(非特許文献3参照)、ITU−T G.718(非特許文献4参照)がある。CELP符号化および変換符号化の階層符号化(層化符号化、埋め込み符号化)の単純な構成を図3に示す。
図3に示すエンコーダでは、入力信号にCELP符号化を行って、時間領域における信号の予測可能性を利用する(301)。CELPパラメータを用いて、CELPローカルデコーダ(302)で合成信号を復元する。入力信号から合成信号を減算することにより予測誤差信号S(n)(入力信号と合成信号との差分信号)を得る。
離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、予測誤差信号S(n)を周波数領域信号S(f)に変換する(303)。
(f)を量子化し(304)、量子化パラメータを多重化して(305)、デコーダ側に送信する。
図3に示すデコーダでは、はじめにすべてのビットストリーム情報を逆多重化する(306)。
量子化パラメータを逆量子化して、復号周波数領域残差信号S~(f)を復元する(308)。
逆離散フーリエ変換(IDFT)または逆修正離散コサイン変換(IMDCT)などの周波数から時間領域への変換方法を使用して、復号された周波数領域残差信号S~(f)を変換して時間領域に戻すことにより、復号時間領域残差信号S~(n)を復元する(309)。
CELPパラメータを使用して、CELPデコーダ(307)で合成信号Ssyn(n)を復元し、CELP合成信号Ssyn(n)と復号予測誤差信号S~(n)とを加算することにより、復号時間領域信号S~(n)を復元する。
変換符号化および線形予測符号化の変換符号化部分は、通常、何らかの量子化方法を利用して行われる。
ベクトル量子化方法の1つは、分割マルチレート格子VQまたは代数VQ(AVQ)(非特許文献5参照)と呼ばれるものである。AMR−WB+(非特許文献6参照)では、分割マルチレート格子VQを使用してTCX領域でLPC残差を量子化する(図4に示す)。新たに標準化された音声コーデックITU−T G.718でも、分割マルチレート格子VQを使用して、MDCT領域で残差符号化レイヤ3としてLPC残差を量子化する。
分割マルチレート格子VQは、格子量子化器に基づくベクトル量子化方法である。具体的には、AMR−WB+(非特許文献6参照)で使用される分割マルチレート格子VQの場合は、RE8格子と呼ばれるGosset格子のサブセットからなるベクトルコードブックを使用して、8個のスペクトル係数からなるブロックにスペクトルを量子化する(非特許文献5参照)。
所与の格子のすべての点は、格子のいわゆる二乗生成行列Gからc=s・Gとして生成することができる。ここで、sは整数値の行ベクトルであり、cは生成される格子点である。
所与のレートでベクトルコードブックを形成するために、所与の半径の球(8次元)の内側にある格子点だけを取り出す。従って、半径が異なる球の内側にある格子点のサブセットを取得することによって、マルチレートのコードブックを形成することができる。
TCXコーデックで分割マルチレートベクトル量子化を利用する単純な構成を図4に示す。
図4に示すエンコーダでは、入力信号にLPC解析を行って時間領域における信号の予測可能性を利用する(401)。LPC解析で得られるLPCパラメータを量子化し(402)、量子化インデックスを多重化して(407)、デコーダ側に送信する。逆量子化部(403)によって逆量子化されたLPCパラメータを使用して、入力信号S(n)にLPC逆フィルタリングを適用することにより残差(励振)信号S(n)を得る(404)。
離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、残差信号S(n)を周波数領域信号S(f)に変換する(405)。
(f)に分割マルチレート格子ベクトル量子化方法を適用し(406)、量子化パラメータを多重化して(407)、デコーダ側に送信する。
図4に示すデコーダでは、はじめにすべてのビットストリーム情報が逆多重化される(408)。
分割マルチレート格子ベクトル逆量子化方法で量子化パラメータを逆量子化して、復号された周波数領域残差信号S~(f)を得る(410)。
逆離散フーリエ変換(IDFT)または逆修正離散コサイン変換(IMDCT)などの周波数から時間領域への変換方法を使用して、復号周波数領域残差信号S~(f)を変換して時間領域に戻すことにより、復号時間領域残差信号S~(n)を復元する(411)。
逆量子化部(409)によって逆量子化されたLPCパラメータを使用して、復号時間領域残差信号S~(n)をLPC合成フィルタ(412)で処理して、復号時間領域信号S~(n)を得る。
図5に、分割マルチレート格子VQの工程を示す。この工程では、入力スペクトルS(f)をいくつかの8次元ブロック(またはベクトル)に分割し(501)、各ブロック(またはベクトル)をマルチレート格子ベクトル量子化方法で量子化する(502)。量子化ステップでは、利用可能なビット数と全スペクトルのエネルギーレベルに従って総ゲインを計算する。次いで、ブロック(ベクトル)ごとに、元のスペクトルと総ゲインとの比をいくつかの異なるコードブックで量子化する。分割マルチレート格子VQの量子化パラメータは、総ゲインの量子化インデックス、各ブロック(またはベクトル)のコードブック指示、および各ブロック(またはベクトル)のコードベクトルインデックスである。
図6は、AMR−WB+(非特許文献6参照)で採用される分割マルチレート格子VQのコードブックのリストをまとめたものである。表中、コードブックQ0、Q2、Q3、およびQ4がベースコードブックである。所与の格子点がそれらのベースコードブックに含まれていない場合は、ベースコードブックのQ3またはQ4部分のみを使用してボロノイ拡張(非特許文献7参照)を適用する。例として、表では、Q5がQ3のボロノイ拡張であり、Q6がQ4のボロノイ拡張である。
各コードブックは、いくつかのコードベクトルで構成される。コードブックのコードベクトルインデックスはいくつかのビットで表される。ビット数は下記の式(1)によって導出される。
Figure 2013118476
ここで、Nbitsはコードベクトルインデックスで消費されるビット数であり、Ncvはコードブック中のコードベクトルの数である。
コードブックQ0には1つのみのベクトルである零ベクトルがあり、これはベクトルの量子化値が0であることを意味する。したがって、このコードベクトルインデックスにはビットが必要とされない。
分割マルチレート格子VQの場合は、総ゲインのインデックス、コードブック指示、およびコードベクトルインデックスの3つの量子化パラメータのセットがある。ビットストリームは通常2つの方式で形成される。第1の方法を図7に示し、第2の方法を図8に示す。
図7では、はじめに入力信号S(f)がいくつかのベクトルに分割される。次いで、利用可能なビット数とスペクトルのエネルギーレベルに従って、総ゲインを導出する。総ゲインをスカラー量子化器で量子化し、S(f)/Gをマルチレート格子ベクトル量子化器で量子化する。ビットストリームが形成される際には、総ゲインのインデックスが第1の部分を形成し、すべてのコードブック指示が共にまとめられて第2の部分を形成し、コードベクトルのすべてのインデックスが共にまとめられて最後の部分を形成する。
図8では、はじめに入力信号S(f)がいくつかのベクトルに分割される。次いで、利用可能なビット数とスペクトルのエネルギーレベルに従って、総ゲインを導出する。総ゲインをスカラー量子化器で量子化し、S(f)/Gをマルチレート格子ベクトル量子化器で量子化する。ビットストリームが形成される際には、総ゲインのインデックスが第1の部分を形成し、コードブック指示とその後に続く各ベクトルのコードベクトルインデックスが第2の部分を形成することになる。
Karl Heinz Brandenburg, "MP3 and AAC Explained", AES 17th International Conference, Florence, Italy, September 1999. Lefebvre, et al., "High quality coding of wideband audio signals using transform coded excitation (TCX)", IEEE International Conference on Acoustics, Speech, and Signal Processing, vol. 1, pp. I/193-I/196, Apr. 1994 ITU-T Recommendation G.729.1 (2007) "G.729-based embedded variable bit-rate coder: An 8-32kbit/s scalable wideband coder bitstream interoperable with G.729" T. Vaillancourt et al, "ITU-T EV-VBR: A Robust 8-32 kbit/s Scalable Coder for Error Prone Telecommunication Channels", in Proc. Eusipco, Lausanne, Switzerland, August 2008 M. Xie and J.-P. Adoul, "Embedded algebraic vector quantization (EAVQ) with application to wideband audio coding" IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Atlanta, GA, U.S.A, 1996, vol. 1, pp. 240-243 3GPP TS 26.290 "Extended AMR Wideband Speech Codec (AMR-WB+)" S. Ragot, B. Bessette and R. Lefebvre, "Low-complexity Multi-Rate Lattice Vector Quantization with Application to Wideband TCX Speech Coding at 32kbit/s," Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), Montreal, QC, Canada,May,2004, vol. 1, pp. 501-504
入力スペクトルは、通常はすべてのサブベクトルが同じエネルギーを有するのではなく、サブベクトルの一部にエネルギーが集中している。一例として、図9に示すスペクトルの場合は、8個のサブベクトルのうちサブベクトルv3のエネルギーが最も大きく、分割マルチレート格子ベクトル量子化の処理に従うと、v3のコードブックは、サブベクトルの中で最も大きいコードブック番号を持つ(ここでは、Qnの整数nをコードブック番号と呼ぶ)。
図6のコードブック指示表に示すように、コードブック番号が大きいほどコードブック指示が消費するビット数が多くなる。よって、この例では、サブベクトルv3がコードブック指示に最も多くのビットを消費する。コードブック番号が大きいコードブックは過度に多くのビットを消費する場合があるため(例えば、コードブック番号が小さいコードブックのコードブック指示の数倍)、コードブック番号が大きいコードブックのコードブック指示の消費ビット数を減らすことが望ましい。
非特許文献7では、TCX音声コーデックに分割マルチレート格子VQを使用し、サブベクトルの数Nsv=8と、利用可能なビット数Bitsavailable=132ビットがパラメータとなる。そして、実際には、最高で「11」のコードブック番号が計測されたことが述べられている。
図9のスペクトルの場合に、v3がQ11のコードブックを利用し、v4がQ3のコードブックを利用し、それ以外のすべてのサブベクトルのコードブックがQ2であると仮定する。このビット消費情報をまとめると図10のようになる。
図10に示すように、v3のコードブック指示は11ビットを消費し、v4のコードブック指示は3ビットを消費し、その他のベクトルのコードブック指示は2ビットを消費する。v3のコードブック指示は、v1(v2、v5、v6、v7、またはv8)のコードブック指示の5倍以上のビットを消費する。
従来技術では、コードブック指示およびコードベクトルインデックスを直接2進数に変換してビットストリームを形成する。そのため、全ベクトルの総消費ビット数は以下のように計算することができる。
Figure 2013118476
ここで、Bitstotalは、総消費ビット数であり、Bitsgain_qは、総ゲインを量子化するための消費ビット数であり、Bitscb_indicationは、各ベクトルのコードブック指示に消費されるビット数であり、Bitscv_indexは、各ベクトルのコードベクトルインデックスに消費されるビット数であり、Nは、スペクトル全体の合計ベクトル数である。
ビットを多く消費し過ぎるため、コードブック番号が大きいコードブックのコードブック指示によるビット消費を減らすことが望ましい。
本発明では、分割マルチレート格子ベクトル量子化の量子化パラメータを効率的に符号化するための発想を導入する。まず、コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、利用可能な総ビット数および他のサブベクトルのビット使用状況についての情報に基づいて、そのコードブックの値を推定する。実際の値と推定値との差分値を計算する。そして、最も多くのビットを消費するコードブック指示を送信する代わりに、そのコードブックを使用するサブベクトルの位置、および実際の値と推定値との差分値を送信する。本発明の方法を適用することにより、コードブック指示のビットを節減することができる。
エンコーダにおける詳細な工程は以下の通りである。
1)すべてのサブベクトルのコードブック指示を算出する。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、その位置を符号化する。そして、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を符号化する。
デコーダにおける詳細な工程は以下の通りである。
1)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
2)それ以外のすべてのサブベクトルのコードブック指示を復号する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を復号する。
5)推定値と差分を加算することにより、復号された値を算出する。
図9のスペクトルを詳細な説明のための例として使用する。
1)図6のコードブック指示表を参照して、すべてのサブベクトルのコードブック指示を算出する。この詳細な結果を図11に示す。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、その位置を符号化する。そして、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。図11に示すように、サブベクトルv3のコードブック指示が最も多くのビットを消費する。一例として、図12に示すコードブックを使用して位置を符号化する。図12を参照すると、v3の位置は「010」に符号化される。
3)以下の式に従って、指示が最も多くのビットを消費するコードブックを推定する。
Figure 2013118476
ここで、cb’maxは、最も多くのビットを消費するコードブックの推定値であり、Bitsavailableは利用可能な総ビット数であり、Bitscbviは、コードブック指示viのビット消費である。
4)実際の値と推定値との差分を符号化する。差分値は下記の式(4)に従って計算し、図13の表を参照して符号化する。図13に示すように、差分が取り得る値は負になる。その理由は、推定値は、すべての利用可能なビット数が量子化で使用されることを想定して計算されるためである。利用可能なビット数を超えるビットが量子化で消費されることは起こりえない。推定値は最大の可能な値である。したがって、実際の値が推定値より大きくなることは決してない。
Figure 2013118476
ここで、cb’maxは、最も多くのビットを消費するコードブックの推定値であり、cbmaxは、最も多くのビットを消費するコードブックの実際の値であり、cbdiffは、実際の値と推定値との差分値である。
デコーダにおける詳細な工程は以下の通りである。
1)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。図12の表を参照すると、「010」がv3に対応する。
2)v3以外のすべてのサブベクトルのコードブック指示を復号する。
3)指示が最も多くのビットを消費するコードブックを推定する。これは式(3)により行う。
4)実際の値と推定値との差分を復号する。差分値は図13の表を参照して復号し、差分のコード0は差分0に対応する。
5)推定値と差分を加算することにより、復号された値を算出する。詳細な計算は次の式(5)で得られる。
Figure 2013118476
ここで、cb’maxは、最も多くのビットを消費するコードブックの推定値であり、cbmaxは、最も多くのビットを消費するコードブックの実際の値であり、cbdiffは、実際の値と推定値との差分値である。
本発明の方法を適用することにより、消費するビットを節減することができる。
本発明で提案される方法による節減ビット数は以下の式(6)のように計算される。
Figure 2013118476
ここで、Bitssaveは、本発明で提案される方法による節減ビット数であり、Bitscbmaxは最も多くのビットを消費するコードブックのビット消費であり、Bitsposition_cbmaxは、最も多くのビットを消費するコードブックの位置に消費されるビット数であり、Bitscbdiffは差分値を符号化するために消費されるビット数である。
上記の式(6)で、最も多くのビットを消費するコードブックのビット消費は、そのコードブック番号に比例する。通常は、スペクトルに利用可能なビットが多い場合、最大のコードブック番号は大きい値になる。上記の例に示すように、最大のコードブック番号は11であり、そのコードブック指示に消費されるビット数は11ビットである。
最も多くのビットを消費するコードブックの位置のビット消費は、固定されたビット数(Bitsposition_cbmax=log(Nsv))を消費する。上記例に示すように、サブベクトルの数は8個である。最大のコードブックの位置を知らせるためのビット消費は3ビットとなる。
差分値の消費ビット数は、最も多くのビットを消費するコードブックの消費ビット数より少ない。これは、差分値はコードブック指示より小さいためである。上記の例に示すように、差分値を符号化するための消費ビット数は1ビットである。
この例における節減ビット数は、以下の式(7)のように計算される。
Figure 2013118476
変換コーデックの単純な構成を示す図 TCXコーデックの単純な構成を示す図 階層コーデック(CELP符号化と変換符号化の組み合わせ)の単純な構成を示す図 分割マルチレート格子ベクトル量子化を利用するTCXコーデックの構成の図 分割マルチレート格子ベクトル量子化の工程を説明する図 分割マルチレート格子VQのコードブックの表を示す図 ビットストリーム形成の1方式を説明する図 ビットストリーム形成の別の方式を説明する図 入力スペクトルの例を示す図 図9のスペクトルのコードブック情報を示す図 すべてのサブベクトルについてのコードブック指示を示す図 コードブック指示が最も多くのビットを消費するサブベクトルの位置についてのコード表を示す図 差分値のコード表を示す図 本発明の実施の形態1に係るコーデックの構成を説明する図 本発明の実施の形態2に係るコーデックの構成を説明する図 本発明の実施の形態3に係るコーデックの構成を説明する図 スペクトルの一部のみを符号化する一例を示す図 図17の例の場合のv2以外の符号化パラメータを示す図 実施の形態7で提案される符号化工程のフローチャート 実施の形態7で提案される復号工程のフローチャート 従来の分割マルチレート格子VQのフローチャート 実施の形態8で提案される分割マルチレートVQのフローチャート
この項では、本発明の基本となる原理を図14〜図16を参照して説明する。当業者は、本発明の主旨から逸脱しない範囲で、本発明を改変および適合することができる。説明の助けとして図示を提供する。
(実施の形態1)
図14に本発明のコーデックを示す。このコーデックは、分割マルチレート格子ベクトル量子化を適用するエンコーダおよびデコーダを備える。
図14に示すエンコーダでは、離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、時間領域信号S(n)を周波数領域信号S(f)に変換する(1401)。
周波数領域信号S(f)に音響心理学モデル解析を行ってマスキング曲線を得る(1402)。音響心理学モデル解析で導出されたマスキング曲線に従って、周波数領域信号S(f)に分割マルチレート格子ベクトル量子化を適用して、量子化ノイズが不可聴になるようにする(1403)。
分割マルチレート格子ベクトル量子化では、総ゲインの量子化インデックス、コードブック指示、およびコードベクトルインデックスの3つの量子化パラメータセットが生成される。
コードブック指示は、以下の要領で変換される(1404)。
1)すべてのサブベクトルのコードブック指示を計算する。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、その位置を符号化する。そして、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を符号化する。
総ゲインインデックス、コードベクトルインデックス、最大のコードブックの位置、実際の値と推定値との差分値、および他のサブベクトルのコードブック指示を多重化し(1405)、デコーダ側に送信する。
図14に示すデコーダでは、はじめにすべてのビットストリーム情報を逆多重化部(1406)で逆多重化する。
最大のコードブックの位置および実際の値と推定値との差分値を、コードブック指示変換部(1407)で最大のコードブック指示に変換する。
コードブック指示変換部(1407)における詳細な工程は以下の通りである。
1)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
2)それ以外のすべてのサブベクトルのコードブック指示を復号する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を復号する。
5)推定値と差分を加算することにより、復号された値を計算する。
総ゲインインデックス、コードベクトルインデックス、および元のコードブック指示を分割マルチレート格子ベクトル逆量子化方法で逆量子化して、復号周波数領域信号S~(f)を復元する(1408)。
逆離散フーリエ変換(IDFT)または逆修正離散コサイン変換(IMDCT)などの周波数から時間領域への変換方法を使用して、復号周波数領域信号S~(f)を変換して時間領域に戻すことにより、復号時間領域信号S~(n)を復元する(1409)。
この実施の形態では、スペクトルに関して最大のコードブックの値を推定し、最大のコードブック指示を、最大のコードブックの位置、および、実際の値と推定値との差分値に変換することにより、消費ビット数を減らすことができる。
(実施の形態2)
この実施の形態の特徴は、本発明の方法をTCXコーデックで適用する点である。
図15に示すエンコーダでは、入力信号にLPC解析を行って、時間領域における信号の予測可能性を利用する(1501)。LPC解析で得られたLPCパラメータを量子化し(1502)、量子化インデックスを多重化して(1508)、デコーダ側に送信する。逆量子化部(1503)によって量子化されたLPCパラメータを使用して、入力信号S(n)にLPC逆フィルタリングを適用することにより、残差(励振)信号S(n)を得る(1504)。
離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、残差信号S(n)を周波数領域信号S(f)に変換する(1505)。
周波数領域信号S(f)に分割マルチレート格子ベクトル量子化を適用する(1506)。
分割マルチレート格子ベクトル量子化では、総ゲインの量子化インデックス、コードブック指示、およびコードベクトルインデックス、の3つの量子化パラメータのセットが生成される。
コードブック指示は、以下の要領で変換される(1507)。
1)すべてのサブベクトルのコードブック指示を算出する。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、その位置を符号化する。そして、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を符号化する。
総ゲインインデックス、コードベクトルインデックス、最大のコードブックの位置、実際の値と推定値との差分値、およびその他のサブベクトルのコードブック指示を多重化し(1508)、デコーダ側に送信する。
図15に示すデコーダでは、はじめにすべてのビットストリーム情報を逆多重化部(1509)で逆多重化する。
最大のコードブックの位置および実際の値と推定値との差分値を、コードブック指示変換部(1510)で最大のコードブック指示に変換する。
コードブック指示変換部(1510)における詳細な工程は以下の通りである。
1)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
2)それ以外のすべてのサブベクトルのコードブック指示を復号する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を復号する。
5)推定値と差分を加算することにより、復号された値を計算する。
総ゲインインデックス、コードベクトルインデックス、および元のコードブック指示を分割マルチレート格子ベクトル逆量子化方法で逆量子化して、復号周波数領域信号S~(f)を復元する(1511)。
逆離散フーリエ変換(IDFT)または逆修正離散コサイン変換(IMDCT)などの周波数領域から時間領域への変換方法を使用して、復号周波数領域残差信号S~(f)を変換して時間領域に戻すことにより、復号時間領域残差信号S~(n)を復元する(1512)。
逆量子化部(1513)によって逆量子化されたLPCパラメータを使用して、復号時間領域残差信号S~(n)をLPC合成フィルタ(1514)で処理して復号時間領域信号S~(n)を得る。
(実施の形態3)
この実施の形態の特徴は、CELP符号化および変換符号化の階層符号化(層化符号化、埋め込み符号化)においてスペクトルクラスタ解析法を適用する点である。
図16に示すエンコーダでは、入力信号にCELP符号化を行って、時間領域における信号の予測可能性を利用する(1601)。CELPパラメータを用いて、CELPデコーダ(1602)で合成信号を復元し、CELPパラメータを多重化し(1606)、デコーダ側に送信する。入力信号から合成信号を減算することにより、予測誤差信号S(n)(入力信号と合成信号との差分信号)を得る。
離散フーリエ変換(DFT)または修正離散コサイン変換(MDCT)などの時間から周波数領域への変換方法を使用して、予測誤差信号S(n)を周波数領域信号S(f)に変換する(1603)。
周波数領域信号S(f)に分割マルチレート格子ベクトル量子化を適用する(1604)。
分割マルチレート格子ベクトル量子化では、総ゲインの量子化インデックス、コードブック指示、およびコードベクトルインデックスの3つの量子化パラメータセットが生成される。
コードブック指示は、以下の要領で変換される(1605)。
1)すべてのサブベクトルのコードブック指示を算出する。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、その位置を符号化する。そして、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を符号化する。
総ゲインインデックス、コードベクトルインデックス、最大のコードブックの位置、実際の値と指定値との差分値、および他のサブベクトルのコードブック指示を多重化し(1606)、デコーダ側に送信する。
図16に示すデコーダでは、はじめにすべてのビットストリーム情報を逆多重化部(1607)で逆多重化する。
最大のコードブックの位置および実際の値と推定値との差分値を、コードブック指示変換部(1608)で最大のコードブック指示に変換する。
コードブック指示変換部(1608)における詳細な工程は以下の通りである。
1)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
2)それ以外のすべてのサブベクトルのコードブック指示を復号する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を復号する。
5)推定値と差分を加算することにより、復号された値を計算する。
総ゲインインデックス、コードベクトルインデックス、および元のコードブック指示を分割マルチレート格子ベクトル逆量子化方法で逆量子化して、復号周波数領域信号S~(f)を復元する(1609)。
逆離散フーリエ変換(IDFT)または逆修正離散コサイン変換(IMDCT)などの周波数から時間領域への変換方法を使用して、復号周波数領域信号S~(f)を変換して時間領域に戻すことにより、復号時間領域信号S~(n)を復元する(1610)。
CELPパラメータを使用して、CELPデコーダで合成信号Ssyn(n)を復元し(1611)、CELP合成信号Ssyn(n)と復号予測誤差信号S~(n)とを加算することにより、復号時間領域信号S~(n)を復元する。
(実施の形態4)
この実施の形態では、本発明の新規の方法が、元となった分割マルチレート格子VQ法よりも多くのビットを消費する可能性を防ぐための発想を説明する。
実施の形態1、実施の形態2および実施の形態3で提案した構成では、最大のコードブックがそれほど多くのビットを消費しない場合には、本発明の新規の方法のビット消費が従来の方法よりも多くなる可能性がある。式(6)に示すように、Bitscbmax<Bitsposition_cbmax+Bitscbdiffの場合は、本発明の新規の方法のビット消費が従来の方法より多くなる。この問題を防ぐために、この実施の形態では1つの発想を提案する。
この発想は、最も多くのビットを消費するコードブックの位置を示すための消費ビット数を減らすというものである。エンコーダ側で、固定されたサブベクトルのコードブック、例えば、最後のサブベクトルのコードブックを、利用可能な総ビット数およびすべての他のサブベクトルのビット使用状況に基づいて推定する。実際のコードブックの代わりに、実際のコードブック指示と推定値との差分値を符号化し、デコーダ側に送信する。分割マルチレートVQでは、総ゲインの計算により、割り振られたビットの大半がサブベクトルの符号化で利用され、すべてのビットが利用されるという想定で計算される推定コードブック指示が実際の値に非常に近くなり、差分の絶対値が実際のコードブック指示より小さくなり、差分値を符号化するための消費ビット数が実際の値より小さくなることが保証される。
詳細な符号化工程は以下の通りである。
1)すべてのサブベクトルのコードブック指示を算出する。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定する。
3)コードブック指示を所定の閾値と比較する(閾値は、本発明の方法のビット消費が従来の方法よりも確実に少なくなるように、大きなデータベースに基づいて計算された所定の値である)。
A.コードブック指示が閾値より大きい場合は、以下を行う。
a)指示が最も多くのビットを消費するコードブック指示のコードブックインデックスを推定する。
b)実際の値と推定値との差分を符号化する。
c)コードブック指示が最も多くのビットを消費するサブベクトルの位置を符号化し、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
B.コードブック指示が閾値以下の場合は、以下を行う。
a)最後のサブベクトルのコードブック指示を推定する。
b)実際の値と推定値の差分を符号化し、最後のサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
詳細な符号化工程は以下の通りである。
1)すべての他のサブベクトルのコードブック指示を復号する。
2)コードブック指示が変換されたサブベクトルのコードブック指示を推定する。
3)実際の値と推定値との差分を復号する。
4)推定値と差分を加算することにより、復号された値を計算する。
5)復号された値を所定の閾値と比較する。
A.復号された値が閾値より大きい場合は、以下を行う。
a)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
B.復号された値が閾値以下の場合は、cblast=cbmaxを行う。
この実施の形態では、最大のビット数を消費するコードブック指示を何らかの所定の閾値と比較することにより、本発明の方法によって実現される消費ビット数が、元となった分割マルチレートVQより多くなる状況を回避する。これにより、ビット節減が常に実現されることが保証される。
なお、固定サブベクトルは、最後のサブベクトルに限定されず、入力スペクトルの特性に応じて決定してよい。例として、最初のサブベクトルのコードブックが統計的に他のサブベクトルより大きい場合は、最初のサブベクトルを選択することができる。
この実施の形態では、最大のコードブックの消費ビット数がそれほど多くない状況では、最後のコードベクトルが最大のコードブックとして符号化され、その位置が固定されるため、最大のコードブックの位置を知らせるためのビット消費が回避される。そして、本発明の方法による節減ビット数が正の値になることを保証することができる。
(実施の形態5)
従来技術では、コードブック指示はコードブック使用の確率に応じて設計されるのではなく、単に、図6に示すようなコードブック指示表が広く使用される。
ビットレートまたはサブベクトル数が異なるなど、状況が異なると、コードブックの使用についての統計は変化する。
非特許文献7におけるRE8コードブックの使用の統計を図17にまとめている(コードブック番号についての統計(単位%))。
この統計情報から、図6のコードブック指示表の設計は非特許文献7で適用するには効率的でないことが見て取れる。Q0の指示は消費ビット数が最も少ない(1ビット)が、その確率は非常に低く、わずか3%である。Q2の使用確率は最も高い(29%)が、その消費ビット数は最小ではない。
したがって、各コードブックの確率に従って、固定された条件(同じビットレート、同じ数の量子化サブベクトル)ごとに、ハフマン表設計方法を使用してコードブック指示を設計し、そのコードブック指示にビットを割り振ることが望ましく、確率が高いコードブックにより少ないビットを割り振り、確率が低いコードブックにより多くのビットを割り振ることが基本方針となる。
そして、本発明の方法を、最大のコードブック番号を持つコードブック指示ではなく、最も多くのビットを消費するコードブック指示に適用する。
エンコーダにおける詳細な工程は以下の通りである。
1)すべてのサブベクトルのコードブック指示を符号化する。
2)コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、符号化する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を符号化する。
デコーダにおける詳細な工程は以下の通りである。
1)コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
2)それ以外のすべてのサブベクトルのコードブック指示を復号する。
3)指示が最も多くのビットを消費するコードブックを推定する。
4)実際の値と推定値との差分を復号する。
5)推定値と差分を加算することにより、復号された値を算出する。
(実施の形態6)
この実施の形態の特徴は、本発明のコードブック指示変換方法で節減されたビットを利用して、量子化されたベクトルのゲイン精度を向上させる点である。
この実施の形態では、コードブック指示変換方法で節減されたビットを利用して、スペクトルを小さいバンドに分割し、各バンドに「ゲイン補正率」を割り当てることにより、総ゲインにより細かい分解能を与える。節減されたビットを利用してゲイン補正率を送信することにより、量子化の性能を向上させ、音質を向上させることができる。
本発明のコードブック指示変換方法は、ステレオ信号または多チャネル信号の符号化に適用することができる。例えば、本発明の方法をサイド信号の符号化に適用し、節減されたビットを主信号の符号化に使用する。主信号は、サイド信号よりも知覚的に重要であるため、これにより主観的な音質の向上が得られる。
さらに、本発明のコードブック指示変換方法は、複数のフレーム単位(または複数のサブフレーム単位)でスペクトル係数を符号化するコーデックに適用することができる。この応用例では、コードブック指示変換方法で節減されたビットを蓄積し、次の符号化段階でスペクトル係数または何らかの他のパラメータを符号化する際に利用することができる。
さらに、コードブック指示変換方法で節減されたビットをFEC(フレーム消去隠蔽)で利用することにより、フレーム損失のある状況で音質を維持することができる。
なお、上記の各実施の形態では、すべて分割マルチレート格子ベクトル量子化を使用して説明したが、本発明は、分割マルチレート格子ベクトル量子化の使用に限定されず、他のスペクトル係数符号化方法も適用することができる。当業者は、本発明の主旨から逸脱しない範囲で本発明を改変および適合することができる。
(実施の形態7)
この実施の形態では、実際のコードブック指示cbmaxと推定されるコードブック指示cb’maxとの差分cbdiffが正になる可能性を防ぐための発想である。
実施の形態1、実施の形態2および実施の形態3で提案した構成では、すべてのサブベクトルをAVQで量子化することを前提としている。すべてのサブベクトルがAVQで量子化される場合、cbdiffのすべての取り得る値は負になる。その理由は、推定コードブック指示は、すべての利用可能なビット数が量子化で使用されることを想定して計算されるためである。利用可能なビット数を超えるビットが量子化で消費されることは起こりえない。推定コードブック指示は最大の可能な値である。従って、実際のコードブック指示が推定コードブック指示より大きくなることは決してない。
ただし、サブベクトルのすべてがAVQで量子化される訳ではない場合は、cbdiffが正になる可能性がある。特に、エネルギーがスペクトルの低周波数部分に集中している場合は、ビットはすべて低周波数のサブベクトルに分散され、高周波数のサブベクトルにはビットが割り振られない。例として、8個のサブベクトルスペクトルを量子化するために割り振られる合計ビット数は72ビットであり、すべてのサブベクトルのコードブック指示を図17に示す。最後の2つのサブベクトルでは、それらのコードブック指示を符号化するためのビットが残らないことが分かる。この場合は、本発明の方法を適用するために、最後の2つのサブベクトルのコードブック指示を送信する必要があり、2ビットがそれらの指示に利用される。
コードブック指示が最も多くのビットを消費するサブベクトルであるv2以外のすべてのサブベクトルのビット消費を図18に示す。v2のコードブックを下記の式(8)で推定する。
Figure 2013118476
実際のコードブック指示と推定コードブック指示の差分は、以下の式(9)により計算する。
Figure 2013118476
この問題を解決するために、この実施の形態でいくつかの発想を提案する。
単純な方法は、cbdiffについて正の値をコードブックに含めるものである。ただし、この方法ではcbdiffを符号化するためのビット消費が増大する。
別の発想は、サブベクトルのすべてがAVQで量子化されるのではない場合に、本発明が提案する発想を無効にするものである。問題点は、提案される発想を有効にするか否かを示すためのフラグが必要となることである。フラグの送信を回避するために、入手可能な情報からこの情報を引き出すことができる発想を導入する。
この発想は、従来行われるようにエンコーダ側でAVQパラメータを符号化し、デコーダ側でビットの使用情報を使用して、本発明の提案する方法を有効にするか否かを判断するものである。
詳細な符号化工程は以下の通りである(図19のフローチャート参照)。ステップ(以下、「ST」と省略する)1701では、すべてのサブベクトルの合計消費ビット数N’bitsを計算する。
ST1702では、利用可能なビット数Nbitsが、すべてのサブベクトルのAVQパラメータを符号化するのに十分であるかどうか(Nbits≧N’bits)を調べる。利用可能なビット数がすべてのサブベクトルのAVQパラメータを符号化するのに十分である場合は、ST1703に移行し、十分ではない場合は、ST1713に移行する。
ST1703では、コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定する。
ST1704では、コードブック指示を所定の閾値と比較し、コードブック指示が閾値より大きい場合は、ST1705に移行し、コードブック指示が閾値以下の場合は、ST1709に移行する。
ST1705では、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
ST1706では、コードブック指示を最も多くのビットを消費するサブベクトルのコードブック指示と推定する。
ST1707では、実際のコードブック指示(cbmax)と推定コードブック指示(cb’max)との差分(cbdiff)を計算する。
ST1708では、コードブック指示が最も多くのビットを消費するサブベクトルの位置を符号化し、差分cbdiffを符号化する。
ST1704において、コードブック指示が閾値以下の場合、ST1709において、所定のサブベクトル、例えば、最後のサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化する。
ST1710では、所定のサブベクトル、例えば、最後のサブベクトルのコードブック指示cblastを推定する。
ST1711では、実際のコードブック指示(cblast)と推定コードブック指示(cb’last)との差分(cbdiff)を計算する。
ST1712では、差分cbdiffを符号化する。
ST1702において、利用可能なビット数がすべてのサブベクトルのAVQパラメータを符号化するのに十分でない場合は、ST1713において、残りのビットがなくなるまで、サブベクトルのコードブック指示を符号化する。
詳細な復号工程は以下の通りである(図20のフローチャート参照)。ST1801では、i=0に初期化し、ST1802では、サブベクトルsv(i)のコードブック指示を復号し、ST1803では、残りのビット数を計算する。
ST1804では、すべてのサブベクトルが復号される前に残りのビット数が0になる場合は、以降の処理を行わず、復号工程を終了する。一方、すべての他のサブベクトルが復号された後に残りのビット数が0より大きい場合は、ST1805に移行する。
ST1805では、iがサブベクトル数Nsvから1減算した値より小さい(i<Nsv−1)かどうかを調べ、小さい場合にはST1806においてiをインクリメントしてST1802に戻り、i≧Nsv−1である場合にはST1807に移行する。
ST1807では、コードブック指示が変換されたサブベクトルのコードブック指示を推定する。すなわち、推定コードブック指示cb’maxを計算する。
ST1808では、実際のコードブック指示と推定コードブック指示との差分cbdiffを復号する。
ST1809では、推定コードブック指示と差分を加算することにより、復号されたコードブック指示を計算する。
ST1810では、復号されたコードブック指示を所定の閾値と比較し、復号されたコードブック指示が閾値より大きい場合は、ST1811に移行し、復号されたコードブック指示が閾値以下の場合は、ST1812に移行する。
ST1811では、コードブック指示が最も多くのビットを消費するサブベクトルの位置を復号する。
ST1810において、復号されたコードブック指示が閾値以下の場合は、ST1812において、cbmaxを所定のサブベクトル、例えば、最後のサブベクトルに割り当てる(cblast=cbmax)。
この実施の形態では、デコーダ側で各サブベクトルが復号された後に残るビット数の情報を利用することにより、フラグ情報を用いずに、cbdiffの値が正になる問題を解決する。
(実施の形態8)
この実施の形態では、本発明の新規の方法が、元となった分割マルチレート格子VQ法よりも多くのビットを消費する可能性を防ぐための発想を説明する。
実施の形態1、実施の形態2および実施の形態3で提案した構成では、未使用ビット数がかなり多い場合には、本発明の新規の方法のビット消費が従来の方法よりも多くなる可能性がある。非特許文献5では、ビットの使用量が割り振られたビット数より少ない場合があることも述べられている。式(6)に示すように、Bitscbmax<Bitsposition_cbmax+Bitscbdifffの場合は、本発明の新規の方法のビット消費が従来の方法より多くなり、多数の未使用ビットがあると、cbdiffの値が大きくなり、したがってその消費ビット数も多くなり、本発明の新規の方法のビット消費が従来の方法より多くなる可能性がある。この実施の形態ではこの問題を防止するための発想を提案する。
この発想は、割り振られたビットをすべてベクトル量子化で利用するというものである。可能な方式の1つは、未使用ビットを利用して最大のエネルギーを有するサブベクトルのコードブック番号を増大させるものであり、別の可能な方式は、未使用ビットを利用して、零ベクトルとして符号化されるサブベクトルを符号化するものである。
エンコーダ側において、推定総ゲインでビット消費を推定した後に未使用ビット数を計算し、最も大きなエネルギーを有するサブベクトル、または零ベクトルとして符号化されるサブベクトルに、未使用ビットを配分する。元となった分割マルチレート格子VQのフローチャートを図21に示し、本発明が提案する方法のフローチャートを図22に示す。
図22において、ST1901では、スペクトルを8次元のサブベクトルに分割し、ST1902では、総ゲインgを推定する。
ST1903では、推定した総ゲインgを使用してサブベクトルを正規化し、ST1904では、正規化したサブベクトルをRE8格子に量子化する。
ST1905では、コードブック指示およびコードベクトルインデックスを計算し、ST1906では、合計消費ビット数N’bitsを計算する。
ST1907では、未使用ビット数を計算し、ST1908では、最大のエネルギーを有するサブベクトル(選択されたサブベクトル)に未使用ビットを配分し、この選択されたサブベクトルのコードブックおよびコードベクトルを更新する。
この実施の形態では、未使用ビットを選択されたサブベクトルに配分することにより、2つの技術的利益が得られる。1つは、割り振られたビットの大半が現在のフレームのサブベクトルの符号化に利用されることである。2つ目は、差分値cbdiffが非常に小さくなり、そのため、差分値の符号化に使用されるビット数が減ることである。その結果、より多くのビットが節減される。
2012年2月10日出願の特願2012−027702の日本出願に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
本発明にかかる音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法は、移動通信システムのワイヤレス通信端末装置、基地局装置、遠隔会議端末装置、テレビ会議端末装置、およびボイスオーバーインターネットプロトコル(VoIP)端末装置に適用することができる。
1401、1505、1603 T/F変換部
1402 音響心理学的モデル解析部
1403、1506、1604 分割マルチレート格子VQ部
1404、1407、1507、1510、1605、1608 コードブック指示変換部
1405、1508、1606 多重化部
1406、1509、1607 逆多重化部
1408、1511、1609 分割マルチレート格子VQ−1
1409、1512、1610 F/T変換部
1501 LPC解析部
1502 量子化部
1503、1513 逆量子化部
1504 LPC逆フィルタ
1514 LPC合成フィルタ
1601 CELPエンコーダ
1602 CELPローカルデコーダ
1611 CELPデコーダ

Claims (11)

  1. 時間領域入力信号を周波数スペクトルに変換する時間周波数領域変換部と、
    前記周波数スペクトルの入力信号をサブバンドに分割し、サブバンドに分割した入力信号を量子化して、コードブック指示を生成するベクトル量子化部と、
    前記コードブック指示を変換するコードブック指示変換部と、
    を具備し、
    前記コードブック指示変換部は、
    前記コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、特定した位置、および、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化し、
    前記コードブック指示が最も多くのビットを消費するコードブックを推定し、
    実際のコードブック指示と推定されたコードブック指示との差分を符号化する、
    音響/音声符号化装置。
  2. 前記コードブック指示変換部は、前記コードブック指示が前記閾値より大きい場合、
    前記コードブック指示が最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化し、
    利用可能な総ビット数および他のサブベクトルのビット使用状況の情報に基づいて、最も多くのビットを消費するコードブック指示を推定し、
    実際のコードブック指示と推定されたコードブック指示との差分と、前記コードブック指示が最も多くのビットを消費するサブベクトルの位置とを符号化する、
    請求項1に記載の音響/音声符号化装置。
  3. 前記コードブック指示変換部は、前記コードブック指示が前記閾値以下である場合、
    所定のサブバンド以外のすべてのサブバンドのコードブック指示を符号化し、
    利用可能な総ビット数および他のサブベクトルのビット使用状況の情報に基づいて、前記所定のサブバンドのコードブック指示を推定し、
    実際のコードブック指示と推定されたコードブック指示との差分を符号化する、
    請求項1に記載の音響/音声符号化装置。
  4. 前記コードブック指示変換部は、総消費ビット数が割り振られた総ビット数より大きい場合、
    残りのビットがなくなるまで前記サブベクトルのコードブック指示を符号化する、
    請求項1に記載の音響/音声符号化装置。
  5. 前記コードブック指示変換部は、
    最も大きなエネルギーを有するサブベクトルに未使用ビットを配分し、前記未使用ビットを配分したサブベクトルのコードブックおよびコードベクトルを更新する、
    請求項2に記載の音響/音声符号化装置。
  6. 前記コードブック指示変換部は、
    零ベクトルとして符号化されるサブベクトルに前記未使用ビットを配分し、前記未使用ビットを配分したサブベクトルのコードブックおよびコードベクトルを更新する、
    請求項2に記載の音響/音声符号化装置。
  7. 音響/音声符号化装置によって符号化されたコードブック指示が最も多くのビットを消費するサブベクトルの位置を復号し、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を復号し、前記コードブック指示が最も多くのビットを消費するコードブック指示を推定し、実際のコードブック指示と推定したコードブック指示との差分を復号し、推定した前記コードブック指示に復号した前記差分を加算してコードブック指示を復号するコードブック指示変換部と、
    復号された前記コードブック指示を含む各サブベクトルのスペクトル係数を逆量子化するベクトル逆量子化部と、
    前記逆量子化されたスペクトル係数を時間領域に変換する周波数時間領域変換部と、
    を具備する音響/音声復号装置。
  8. 前記コードブック指示変換部は、
    サブベクトルのコードブック指示を順次復号し、すべてのサブベクトルのコードブック指示が復号される前に残りのビット数が0より大きい場合、利用可能な総ビット数と他のサブベクトルのビット使用状況に基づいて、前記音響/音声符号化装置によって符号化されたコードブック指示を推定し、前記残りのビット数が0になる場合、復号処理を終了する、
    請求項7に記載の音響/音声復号装置。
  9. 前記コードブック指示変換部は、
    復号された前記コードブック指示が所定の閾値より大きい場合、サブベクトルの位置を復号し、復号された前記コードブック指示を対応するサブベクトルに割り当て、
    復号された前記コードブック指示が前記閾値以下である場合、復号された前記コードブック指示を所定のサブバンドに割り当てる、
    請求項8に記載の音響/音声復号装置。
  10. 時間領域入力信号を周波数スペクトルに変換する時間周波数領域変換工程と、
    前記周波数スペクトルの入力信号をサブバンドに分割し、サブバンドに分割した入力信号を量子化して、コードブック指示を生成するベクトル量子化工程と、
    前記コードブック指示を変換するコードブック指示変換工程と、
    を具備し、
    前記コードブック指示変換工程は、
    前記コードブック指示が最も多くのビットを消費するサブベクトルの位置を特定し、特定した位置、および、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を符号化し、
    前記コードブック指示が最も多くのビットを消費するコードブックを推定し、
    実際のコードブック指示と推定されたコードブック指示との差分を符号化する、
    音響/音声符号化方法。
  11. 音響/音声符号化装置によって符号化されたコードブック指示が最も多くのビットを消費するサブベクトルの位置を復号し、最も多くのビットを消費するサブベクトル以外のすべてのサブベクトルのコードブック指示を復号し、前記コードブック指示が最も多くのビットを消費するコードブック指示を推定し、実際のコードブック指示と推定したコードブック指示との差分を復号し、推定した前記コードブック指示に復号した前記差分を加算してコードブック指示を復号するコードブック指示変換工程と、
    復号された前記コードブック指示を含む各サブベクトルのスペクトル係数を逆量子化するベクトル逆量子化工程と、
    前記逆量子化されたスペクトル係数を時間領域に変換する周波数時間領域変換工程と、
    を具備する音響/音声復号方法。
JP2013557416A 2012-02-10 2013-02-01 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法 Pending JPWO2013118476A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013557416A JPWO2013118476A1 (ja) 2012-02-10 2013-02-01 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012027702 2012-02-10
JP2012027702 2012-02-10
JP2013557416A JPWO2013118476A1 (ja) 2012-02-10 2013-02-01 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法

Publications (1)

Publication Number Publication Date
JPWO2013118476A1 true JPWO2013118476A1 (ja) 2015-05-11

Family

ID=48947247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013557416A Pending JPWO2013118476A1 (ja) 2012-02-10 2013-02-01 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法

Country Status (4)

Country Link
US (1) US9454972B2 (ja)
EP (1) EP2814028B1 (ja)
JP (1) JPWO2013118476A1 (ja)
WO (1) WO2013118476A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3457400T3 (pl) 2012-12-13 2024-02-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Urządzenie do kodowania głosowego audio, urządzenie do dekodowania głosowego audio, sposób kodowania głosowego audio i sposób dekodowania głosowego audio
TWM487509U (zh) * 2013-06-19 2014-10-01 杜比實驗室特許公司 音訊處理設備及電子裝置
US9418671B2 (en) * 2013-08-15 2016-08-16 Huawei Technologies Co., Ltd. Adaptive high-pass post-filter
US10095468B2 (en) 2013-09-12 2018-10-09 Dolby Laboratories Licensing Corporation Dynamic range control for a wide variety of playback environments
JPWO2021256082A1 (ja) * 2020-06-18 2021-12-23
JPWO2022201632A1 (ja) * 2021-03-23 2022-09-29
CN113766237A (zh) * 2021-09-30 2021-12-07 咪咕文化科技有限公司 一种编码方法、解码方法、装置、设备及可读存储介质
WO2023100494A1 (ja) * 2021-12-01 2023-06-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法、及び、復号方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370502B1 (en) * 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
CA2388358A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for multi-rate lattice vector quantization
CA2457988A1 (en) 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
US20070147518A1 (en) 2005-02-18 2007-06-28 Bruno Bessette Methods and devices for low-frequency emphasis during audio compression based on ACELP/TCX
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
CN102081927B (zh) * 2009-11-27 2012-07-18 中兴通讯股份有限公司 一种可分层音频编码、解码方法及系统
TW201209805A (en) 2010-07-06 2012-03-01 Panasonic Corp Device and method for efficiently encoding quantization parameters of spectral coefficient coding
US9786292B2 (en) * 2011-10-28 2017-10-10 Panasonic Intellectual Property Corporation Of America Audio encoding apparatus, audio decoding apparatus, audio encoding method, and audio decoding method

Also Published As

Publication number Publication date
US20150025879A1 (en) 2015-01-22
EP2814028A1 (en) 2014-12-17
EP2814028A4 (en) 2015-05-06
EP2814028B1 (en) 2016-08-17
WO2013118476A1 (ja) 2013-08-15
US9454972B2 (en) 2016-09-27

Similar Documents

Publication Publication Date Title
WO2013118476A1 (ja) 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法
JP5357055B2 (ja) 改良形デジタルオーディオ信号符号化/復号化方法
JP6170520B2 (ja) オーディオ及び/またはスピーチ信号符号化及び/または復号化方法及び装置
CA2923218C (en) Adaptive bandwidth extension and apparatus for the same
KR101139172B1 (ko) 스케일러블 음성 및 오디오 코덱들에서 양자화된 mdct 스펙트럼에 대한 코드북 인덱스들의 인코딩/디코딩을 위한 기술
JP5695074B2 (ja) 音声符号化装置および音声復号化装置
TWI619116B (zh) 產生帶寬延伸訊號的裝置及方法、及非暫時性電腦可讀記錄媒體
JP6027538B2 (ja) 音声符号化装置、音声復号装置、音声符号化方法及び音声復号方法
JP6980871B2 (ja) 信号符号化方法及びその装置、並びに信号復号方法及びその装置
JP2014170232A (ja) 適応的正弦波パルスコーディングを用いるオーディオ信号の符号化及び復号化方法及び装置
JP5629319B2 (ja) スペクトル係数コーディングの量子化パラメータを効率的に符号化する装置及び方法
JP5863765B2 (ja) 符号化方法および装置、そして、復号化方法および装置
WO2009022193A2 (en) Devices, methods and computer program products for audio signal coding and decoding

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161018

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170613

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170830

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180206