Nothing Special   »   [go: up one dir, main page]

JP4861196B2 - Acelp/tcxに基づくオーディオ圧縮中の低周波数強調の方法およびデバイス - Google Patents

Acelp/tcxに基づくオーディオ圧縮中の低周波数強調の方法およびデバイス Download PDF

Info

Publication number
JP4861196B2
JP4861196B2 JP2006553403A JP2006553403A JP4861196B2 JP 4861196 B2 JP4861196 B2 JP 4861196B2 JP 2006553403 A JP2006553403 A JP 2006553403A JP 2006553403 A JP2006553403 A JP 2006553403A JP 4861196 B2 JP4861196 B2 JP 4861196B2
Authority
JP
Japan
Prior art keywords
signal
coding mode
tcx
input response
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006553403A
Other languages
English (en)
Other versions
JP2007525707A (ja
Inventor
ブルノ・ベセット
Original Assignee
ヴォイスエイジ・コーポレーション
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 ヴォイスエイジ・コーポレーション filed Critical ヴォイスエイジ・コーポレーション
Publication of JP2007525707A publication Critical patent/JP2007525707A/ja
Application granted granted Critical
Publication of JP4861196B2 publication Critical patent/JP4861196B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/0204Speech 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 using subband decomposition
    • G10L19/0208Subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/26Pre-filtering or post-filtering
    • G10L19/265Pre-filtering, e.g. high frequency emphasis prior to encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L21/0232Processing in the frequency domain

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は、たとえばディジタル伝送システムおよびディジタル保管システムでのサウンド信号のコーディングおよびデコーディングに関する。排他的ではなく具体的には、本発明は、ハイブリッド変換およびCELP (code-excited linear prediction)コーディングおよびデコーディングに関する。
情報のディジタル表現は、多数の利益をもたらす。サウンド信号の場合に、音声信号または音楽信号などの情報が、たとえばPCM(パルス符号変調)フォーマットを使用してディジタル化される。したがって、信号は、たとえば1サンプルあたり16ビットまたは20ビットを用いてサンプリングされ、量子化される。単純であるが、PCMフォーマットは、高いビットレート(毎秒ビット数またはビット/秒)を必要とする。この制限は、ソースビットレートを減らし、オーディオ品質、コーディング遅延、および複雑さに関する多くの応用例の特定の制約を満足できる効率的なソースコーディング技法の設計の主な動機づけである。
ディジタルオーディオコーダの機能は、サウンド信号をビットストリームに変換することであり、このビットストリームは、たとえば、通信チャネルを介して伝送されるか、記憶媒体に保管される。ここでは、ロッシイソースコーディングすなわちロッシイ信号圧縮を検討する。具体的には、ディジタルオーディオコーダの役割は、よい主観的オーディオ品質を維持しながら、より少ないビット数を用いてサンプル、たとえばPCMサンプルを表すことである。デコーダまたはシンセサイザは、伝送されたか保管されたビットストリームに対して、これをサウンド信号に変換する責任を負う。信号圧縮方法の紹介に関して[Jayant, 1984]および[Gersho, 1992]、現代の音声およびオーディオのコーディング技法の深いカバレッジに関して[Kleijn, 1995]の全般的な章を参照する。
高品質オーディオコーディングで、2つのクラスのアルゴリズムすなわち、主に音声信号をコーディングするために設計されたCELP (Code-Excited Linear Prediction)コーディングと、音楽信号を表すようによく適合された知覚変換(perceptual transform)(またはサブバンド)コーディングを区別することができる。これらの技法は、主観的品質とビットレートの間のよい妥協を達成することができる。CELPコーディングは、電話または会議など、オーディオ信号が通常はたとえば8kHzまたは16kHzでサンプリングされる、低遅延両方向応用の文脈で開発された。知覚変換コーディングは、ほとんど、ストリーミング応用またはストレージ応用のための、たとえば32kHz、44.1kHz、または48kHzでサンプリングされる広帯域高忠実度音楽信号に適用されてきた。
CELPコーディング[Atal, 1985]は、最も現代的な音声コーディング標準規格のコアフレームワークである。このコーディングモデルによれば、音声信号が、フレームと呼ばれるNサンプルの連続するブロックで処理され、Nは、通常はたとえば10〜30msに対応するサンプルの所定の個数である。ビットレートの削減は、線形予測を介して連続する音声サンプルの間の時間的相関を除去し、効果的なベクトル量子化(VQ)を使用することによって達成される。線形予測(LP)フィルタが、フレームごとに計算され、伝送される。LPフィルタの計算は、通常、ルックアヘッド、たとえば後続フレームからの5〜10ms音声セグメントを必要とする。一般に、Nサンプルフレームが、ピッチ予測を適用するために、サブフレームと呼ばれるより小さいブロックに分割される。サブフレーム長は、たとえば、4〜10msの範囲でセットすることができる。各サブフレームで、励振信号が、通常は2つのコンポーネントすなわち、過去の励振の一部と、革新コードブック(innovative codebook)励振または固定コードブック励振とから入手される。過去の励振の一部から形成される成分を、しばしば、適応コードブックまたはピッチ励振と称する。励振信号の特徴を表すパラメータが、コーディングされ、デコーダに送られ、デコーダでは、励振信号が、再構成され、LPフィルタの入力として使用される。CELPコーディングの例が、ACELP (Algebraic CELP)コーディングモデルであり、この場合に、革新コードブックは、インターリーブされた信号パルスからなる。
CELPモデルは、狭帯域音声コーディングに関して開発され、この狭帯域音声コーディングの入力帯域幅は、300〜3400Hzである。50〜7000Hz帯域で定義される広帯域音声信号の場合に、CELPモデルは、通常、スプリットバンド手法で使用され、この場合に、下側帯域が、波形マッチング(CELPコーディング)によってコーディングされ、上側帯域が、パラメトリックにコーディングされる。この帯域幅分割は、次の複数の動機づけを有する。
・フレームのビットのほとんどを、品質を最大にするために下側帯域信号に割り振ることができる。
・計算の複雑さ(フィルタリングなどの)を、全帯域コーディングと比較して減らすことができる。
・また、波形マッチングは、高周波成分に関して非常に効率的ではない。
このスプリットバンド手法は、たとえばETSI AMR-WB広帯域音声コーディング標準規格で使用されている。このコーディング標準規格は、[3GPP TS 26.190]で指定され、[Bessette, 2002]で説明されている。AMR-WB標準規格の実装は、[3GPP TS 26.173]で与えられる。AMR-WB音声コーディングアルゴリズムは、本質的に、入力広帯域信号を下側帯域(0〜6400Hz)および上側帯域(6400〜7000Hz)に分割し、下側帯域だけにACELPアルゴリズムを適用し、帯域幅拡張(bandwidth extension、BWE)を介して上側帯域をコーディングすることからなる。
技術的現状のオーディオコーディング技法、たとえばMPEG-AACまたはITU-T G.722.1は、知覚変換(またはサブバンド)コーディングに基づいて作られている。変換コーディングでは、時間領域オーディオ信号が、適当な長さのウィンドウをオーバーラップさせることによって処理される。ビットレートの削減は、特定の変換の相関除去およびエネルギコンパクト化特性ならびに知覚的に関連する変換係数だけのコーディングによって達成される。ウィンドウイングされた信号は、通常、離散フーリエ変換(DFT)、離散コサイン変換(DCT)、または変形離散コサイン変換(MDCT)によって分解(分析)される。たとえば40〜60msのフレーム長が、通常、よいオーディオ品質を達成するのに必要である。しかし、過渡状態を表し、アタックの前のコーディング雑音(プレエコー)の時間拡散を防ぐために、たとえば5〜10msの短いフレームも、非静止オーディオセグメントを記述するのに使用される。量子化雑音シェーピングが、量子化の前に、スケール係数を用いて変換係数を正規化することによって達成される。正規化された係数は、通常、スカラ量子化およびその後のハフマンコーディングによってコーディングされる。並行して、知覚マスキング曲線を計算して、量子化プロセスを制御し、主観的品質を最適化する。この曲線は、知覚的に最も関連する変換係数をコーディングするのに使用される。
コーディング効率(特に低ビットレートでの)を改善するために、帯域分割を変換コーディングと共に使用することもできる。この手法は、たとえば、aacPlusとも称する新しいHigh Efficiency MPEG-AAC標準規格で使用されている。aacPlusでは、信号が、2つのサブバンドに分割され、下側帯域信号は、知覚変換コーディング(AAC)によってコーディングされ、上側帯域信号は、帯域幅拡張(BWE)の一種である、いわゆるSBR (Spectral Band Replication)によって記述される。
オーディオ/ビデオ会議、マルチメディアストレージ、およびインターネットオーディオストリーミングなどのある種の応用例で、オーディオ信号は、通常、音声、音楽、および混合された内容からなる。その結果、そのような応用例では、このタイプの入力信号に対して堅牢なオーディオコーディング技法が使用される。言い換えると、オーディオコーディングアルゴリズムは、音声および音楽を含む幅広い種類のオーディオ信号に関して、よく、一貫性のある品質を達成しなければならない。それでも、CELP技法は、固有に音声に最適化されていることが既知であるが、音楽信号のコーディングに使用された時に問題を提示する場合がある。その一方で、技術的現状の知覚変換コーディングは、音楽信号に関してよい性能を有するが、特に低ビットレートでの、音声信号のコーディングに適当ではない。
音声と音楽の両方を含む一般的なオーディオ信号を、よい、かなり一定の品質でコーディングするために、複数の手法が検討されてきた。[Moreau, 1992]、[Lefebvre, 1994]、[Chen, 1996]、および[Chen, 1997]に記載の変換予測コーディングは、音声コーディング技法と音楽コーディング技法の両方を単一のフレームワークに含めるためのよい基礎を提供する。この手法では、線形予測コーディングと変換コーディングを組み合わせる。[Lefebvre, 1994]の技法は、TCX (Transform Coded eXcitation)コーディングと呼ばれ、[Moreau, 1992]、[Chen, 1996]、および[Chen, 1997]と同等であるが、次の説明でこれを検討する。
元々、TCXコーディングの2つの変形が設計され[Lefebvre, 1994]、一方は、短いフレームおよびピッチ予測を使用する、音声信号用であり、他方は、長いフレームを使用しピッチ予測を使用しない、音楽信号用である。両方の場合に、TCXコーディングに用いられる処理は、次の2つのステップに分解することができる。
1)オーディオ信号の現在のフレームを、時間フィルタリングによって処理して、いわゆるターゲット信号を入手し、
2)ターゲット信号を変換領域でコーディングする。
ターゲット信号の変換コーディングでは、長方形ウィンドウイングを用いるDFTを使用する。それでも、フレーム境界でのブロッキングアーチファクトを減らすために、小さいオーバーラップを有するウィンドウイングが、[Jbira, 1998]でDFTの前に使用された。[Ramprashad, 2001]では、ウィンドウイング切替を用いるMDCTが、その代わりに使用される。MDCTは、最大限にデシメートされたフィルタバンクでありながら、DFTよりよい周波数分解能をもたらすという利益を有する。しかし、[Ramprashad, 2001]の場合に、コーダは、特にピッチ分析に関して、閉ループでは動作しない。これに関して、[Ramprashad, 2001]のコーダには、TCXの変形形態としての資格を与えることができない。
ターゲット信号の表現は、TCXコーディングで役割を演じるだけではなく、すべてのコーディングフレームで使用可能なビットのほとんどを消費するので、TCXオーディオ品質の一部も制御する。ここで、DFT領域での変換コーディングを参照する。ターゲット信号をこの領域でコーディングするために、複数の方法が提案されており、たとえば、[Lefebvre, 1994], [Xie, 1996]、[Jbira, 1998]、[Schnitzler, 1999]、および[Bessette, 1999]を参照されたい。これらの方法のすべてが、ある形の利得形状量子化を実施し、これは、ターゲット信号のスペクトルが、まず、実際のコーディングの前に、係数または大域利得gによって正規化されることを意味する。[Lefebvre, 1994]、[Xie, 1996]、および[Jbira, 1998]では、この係数gに、スペクトルのRMS(二乗平均平方根)値がセットされる。しかし、一般に、各フレーム内で、たとえば[Schnitzler, 1999]および[Bessette, 1999]に開示されているように、係数gの異なる値をテストすることによって、これを最適化することができる。[Bessette, 1999]は、係数gの実際の最適化を開示していない。TCXコーディングの品質を改善するために、雑音フィルイン(すなわち、量子化されない係数の代わりのコンフォートノイズの注入)が、[Schnitzler, 1999]および[Bessette, 1999]で使用された。
[Lefebvre, 1994]で説明されているように、TCXコーディングは、広帯域信号、たとえば16kHzでサンプリングされた信号を非常に成功裡にコーディングすることができ、オーディオ品質は、音声について16 kbit/sのサンプリングレートで、音楽に関して24 kbit/sのサンプリングレートで、よい。しかし、TCXコーディングは、音声信号のコーディングに関してACELPほど効率的ではない。この理由から、スイッチドACELP/TCXコーディング(switched ACELP/TCX coding)戦略が、[Bessette, 1999]で短く提示された。ACELP/TCXコーディングの概念は、たとえば[Combescure, 1999]のATCELP (Adaptive Transform and CELP)技法に類似する。明らかに、オーディオ品質は、実際にあるタイプの信号をコーディングするように特殊化された異なるモードの間の切替によって最大化することができる。たとえば、CELPコーディングは、音声に特殊化され、変換コーディングは、音楽により適合され、したがって、これらの2つの技法を、各オーディオフレームが最も適当なコーディングツールを用いて適応式にコーディングされるマルチモードフレームワークに組み合わせることが自然である。ATCELPコーディングでは、CELPと変換コーディングの間の切替が、シームレスではなく、遷移モードを必要とする。さらに、開ループモードの判断が適用される、すなわち、モード判断は、使用可能なオーディオ信号に基づいて、コーディングの前に行われる。対照的に、ACELP/TCXは、2つの同種の線形予測モード(ACELPコーディングおよびTCXコーディング)を使用するという利益を提示し、これによって、切替がより簡単になり、さらに、モード判断は閉ループであり、これは、すべてのコーディングモードがテストされ、最良の合成を選択できることを意味する。
[Bessette, 1999]は、スイッチドACELP/TCXコーディング戦略を短く提示したが、[Bessette, 1999]は、ACELP/TCXモード判断と、ACELP/TCXコーディングでのTCXターゲット信号の量子化の詳細とを開示していない。基礎になる量子化方法は、[Xie, 1996]によって導入された、自己スケーラブルマルチレート格子ベクトル量子化に基づくことだけが知られている。
格子ベクトル量子化を紹介するために、[Gibson, 1988]および[Gersho, 1992]を参照する。N次元格子は、N次元(ユークリッド)空間内の点の規則的な配列である。たとえば、[Xie, 1996]は、ゴセット格子と称する8次元格子を使用するが、ゴセット格子は次のように定義される。
RE8 = 2D8 ∪ {2D8 + (1, ..., 1)} (1)
ただし
D8 = {(x1, ..., x8) ∈ Z8 | x1 + ... + x8は奇数} (2)
かつ
D8 + (1, ..., 1) = {(x1 + 1, ..., x8 + 1) ∈ Z8 | (x1, ..., x8) ∈ D8} (3)
この数学構造は、8つの実数のブロックの量子化を可能にする。RE8を、次の特性を検証する点の集合(x1, ..., x8)としてより直観的に定義することもできる。
i. 成分xiは、符号付き整数である(i=1, ..., 8について)
ii. 合計x1 + ... + x8は、4の倍数である。
iii. 成分xiは、同一のパリティを有する(i=1, ..., 8について)、すなわち、これらは、すべて偶数またはすべて奇数のいずれかである。
次に、8次元量子化コードブックを、RE8の有限部分集合を選択することによって入手することができる。通常、平均二乗誤差が、コードブック検索基準である。[Xie, 1996]の技法では、Q0, Q1, ..., Q5と呼ばれる6つの異なるコードブックが、RE8格子に基づいて定義される。各コードブックQnただしn=0, 1, ..., 5に、24n個の点が含まれ、これは、4nビット毎8次元サブベクトルまたはn/2ビット毎サンプルのレートに対応する。次に、スケーリングされた係数gによって正規化されたTCXターゲット信号のスペクトルを、これを8次元サブベクトル(またはサブバンド)に分割することによって量子化する。これらのサブベクトルのそれぞれを、コードブックQ0, Q1, ..., Q5のうちの1つにコーディングする。その結果、係数gによる正規化の後のTCXターゲット信号の量子化は、8次元サブベクトルごとに、どのコードブックQnが使用されたかを示すコードブック番号nと、コードブックQn内の特定のコードベクトルを指定するインデックスiとを作る。この量子化プロセスを、コードブックQnが異なるレートを有するので、マルチレート格子ベクトル量子化と称する。[Bessette, 1999]のTCXモードは、同一の原理に従うが、正規化係数gの計算ならびに量子化インデックスおよびコードブック番号の多重化に関する詳細は、提供されていない。
RE8に基づく[Xie, 1996]の格子ベクトル量子化技法が、効率を高め、複雑さを減らすために、[Ragot, 2002]で拡張された。しかし、[Ragot, 2002]によって説明された概念のTCXコーディングへの適用は、一度も提案されていない。
[Ragot, 2002]のデバイスでは、8次元ベクトルが、{Q0, Q2, Q3, ..., Q36}と表されるRE8コードブックの集合を組み込んだマルチレートクォンタイザを介してコーディングされる。コードブックQ1は、コーディング効率を改善するために、この集合では定義されていない。すべてのコードブックQnが、同一の8次元RE8格子の部分集合として構成され、Qn ⊂ RE8である。1次元あたりのビット数として定義された第nコードブックのビットレートは、4n/8である、すなわち、各コードブックQnに、24n個のコードベクトルが含まれる。マルチレートクォンタイザの構成は、[Ragot, 2002]の教示に従う。所与の8次元入力ベクトルについて、マルチレートクォンタイザのコーダは、RE8内で最も近い近傍を見つけ、対応するコードブックQnのコードブック番号nおよびインデックスiを出力する。コーディング効率は、量子化インデックスすなわち分割のコードブック番号nおよびインデックスiに関してエントロピコーディング技法を適用することによって改善される。[Ragot, 2002]では、コードブック番号nが、n-1個の1と1つの0のストップビットとを含む単項コードとビットストリームを多重化する前に、コーディングされる。この単項コードによって表されるコードブック番号をnEによって表す。コードブックインデックスiについて、エントロピコーディングは使用されない。単項コードとnEおよびiのビット割振りの例を、次の表1に示す。
Figure 0004861196
表1からわかるように、入力ベクトルをコーディングするのに、n = 0の場合に1ビットが必要であり、それ以外の場合に5nビットが必要である。
さらに、オーディオコーディングでの実用的な問題は、ビットストリームのフォーマッティングと、フレームイレージャコンシールメント(frame-erasure concealment)とも称する不良フレームの処理である。ビットストリームは、通常、ビットの連続するフレーム(またはブロック)としてコーディング側でフォーマットされる。チャネル損傷(たとえば、CRC (巡回冗長検査)違反、パケット消失、または遅延など)に起因して、いくつかのフレームが、デコーディング側で正しく受け取られない場合がある。その場合に、デコーダは、通常、フレームイレージャを宣言するフラグを受け取り、不良フレームは、デコーダの過去のヒストリに基づいて外挿することによって「デコード」される。CELPデコーディングで不良フレームを処理する一般的な手順は、過去のLP合成フィルタを再利用することと、以前の励振を外挿することからなる。
フレーム消失に対する堅牢性を改善するために、順方向誤り訂正コーディングすなわちFECコーディングとも称するパラメータ反復を使用することができる。
TCXコーディングまたはスイッチドACELP/TCXコーディングのフレームイレージャコンシールメントの問題は、現在の技術ではまだ対処されていない。
[Jayant, 1984] [Gersho, 1992] [Kleijn, 1995] [Atal, 1985] [3GPP TS 26.190] [Bessette, 2002] [3GPP TS 26.173] [Moreau, 1992] [Lefebvre, 1994] [Chen, 1996] [Chen, 1997] [Jbira, 1998] [Ramprashad, 2001] [Xie, 1996] [Schnitzler, 1999] [Bessette et al, 1999] [Combescure, 1999] [Gibson, 1988] [Ragot, 2002] [Bessette et al, 2002]
本発明によれば、下記が提供される。
(1)複数のブロックにグループ化された変換係数を含む、周波数領域で変換されたサウンド信号のスペクトルを低周波数強調する方法であって、
位置インデックスを有する1ブロックの最大エネルギを計算することと、
最大エネルギを有するブロックの前記位置インデックスより小さい位置インデックスを有するブロックごとに係数を計算することであって、係数の前記計算が、ブロックごとに、
前記ブロックのエネルギを計算することと、
前記計算された最大エネルギおよび前記ブロックの前記計算されたエネルギから前記係数を計算することと
を含む、計算することと、
ブロックごとに、前記ブロックの前記変換係数に適用される利得を前記係数から判定することと
を含む方法。
(2)複数のブロックにグループ化された変換係数を含む、周波数領域で変換されたサウンド信号のスペクトルを低周波数強調するデバイスであって、
位置インデックスを有する1ブロックの最大エネルギを計算する手段と、
最大エネルギを有するブロックの前記位置インデックスより小さい位置インデックスを有するブロックごとに係数を計算する手段であって、前記係数計算手段が、ブロックごとに、
前記ブロックのエネルギを計算する手段と、
前記計算された最大エネルギおよび前記ブロックの前記計算されたエネルギから前記係数を計算する手段と
を含む、手段と、
ブロックごとに、前記ブロックの前記変換係数に適用される利得を前記係数から判定する手段と
を含むデバイス。
(3)複数のブロックにグループ化された変換係数を含む、周波数領域で変換されたサウンド信号のスペクトルを低周波数強調するデバイスであって、
位置インデックスを有する1ブロックの最大エネルギのカリキュレータと、
最大エネルギを有するブロックの前記位置インデックスより小さい位置インデックスを有するブロックごとの係数のカリキュレータであって、前記係数カリキュレータが、ブロックごとに、
前記ブロックのエネルギを計算し、
前記計算された最大エネルギおよび前記ブロックの前記計算されたエネルギから前記係数を計算する
カリキュレータと、
ブロックごとに、前記係数に応答する利得のカリキュレータであって、前記利得が、前記ブロックの前記変換係数に適用される、カリキュレータと、
を含むデバイス。
(4)受け取られたコーディングされたサウンド信号を処理する方法であって、
前記受け取られたコーディングされたサウンド信号からコーディングパラメータを抽出することであって、前記抽出されたコーディングパラメータが、前記サウンド信号の周波数変換の変換係数を含み、前記変換係数が、上で定義した方法を使用して低周波数強調された、抽出することと、
前記サウンド信号を合成するために前記抽出されたコーディングパラメータを処理することであって、前記低周波数強調された変換係数を低周波数デエンファサイズすることを含む、処理することと
を含む方法。
(5)受け取られたコーディングされたサウンド信号を処理するデコーダであって、
前記受け取られたコーディングされたサウンド信号を供給され、前記受け取られたコーディングされたサウンド信号からのコーディングパラメータのエクストラクタを実施する入力デコーダであって、前記抽出されたコーディングパラメータが、前記サウンド信号の周波数変換の変換係数を含み、前記変換係数が、上で定義したデバイスを使用して低周波数強調された、入力デコーダと、
前記サウンド信号を合成するための前記抽出されたコーディングパラメータのプロセッサであって、前記プロセッサが、前記低周波数強調された変換係数を供給される低周波数デエンファシスモジュールを含む、プロセッサと
を含むデコーダ。
(6)全帯域幅サウンド信号のHF信号およびLF信号への分離から得られた前記HF信号を帯域幅拡張方式を介してコーディングするHFコーディング方法であって、
前記LF信号および前記HF信号のスペクトルエンベロープをモデル化するLPC係数を作るために、前記LF信号および前記HF信号に対してLPC分析を実行することと、
前記LPC係数からHFマッチング差の推定値を計算することと、
前記HF信号のエネルギを計算することと、
前記HF信号の合成された版を作るために前記LF信号を処理することと、
前記HF信号の前記合成された版のエネルギを計算することと、
前記HF信号の前記計算されたエネルギと前記HF信号の前記合成された版の前記計算されたエネルギとの間の比を計算し、前記計算された比をHF補償利得として表すことと、
利得訂正を得るために、前記HFマッチング利得の前記推定値と前記HF補償利得との間の差を計算することと
を含み、前記コーディングされたHF信号が、前記LPCパラメータおよび前記利得訂正を含む
HFコーディング方法。
(7)全帯域幅サウンド信号のHF信号およびLF信号への分離から得られた前記HF信号を帯域幅拡張方式を介してコーディングするHFコーディングデバイスであって、
前記LF信号および前記HF信号のスペクトルエンベロープをモデル化するLPC係数を作るために、前記LF信号および前記HF信号に対してLPC分析を実行する手段と、
前記LPC係数からHFマッチング利得の推定値を計算する手段と、
前記HF信号のエネルギを計算する手段と、
前記HF信号の合成された版を作るために前記LF信号を処理する手段と、
前記HF信号の前記合成された版のエネルギを計算する手段と、
前記HF信号の前記計算されたエネルギと前記HF信号の前記合成された版の前記計算されたエネルギとの間の比を計算する手段および前記計算された比をHF補償利得として表す手段と、
利得訂正を得るために、前記HFマッチング利得の前記推定値と前記HF補償利得との間の差を計算する手段と
を含み、前記コーディングされたHF信号が、前記LPCパラメータおよび前記利得訂正を含む
HFコーディングデバイス。
(8)全帯域幅サウンド信号のHF信号およびLF信号への分離から得られた前記HF信号を帯域幅拡張方式を介してコーディングするHFコーディングデバイスであって、
前記LF信号および前記HF信号を供給され、前記HF信号に応答して前記LF信号および前記HF信号のスペクトルエンベロープをモデル化するLPC係数を作るLPC分析手段と、
前記LPC係数に応答するマッチングHF利得の推定値のカリキュレータと、
前記HF信号のエネルギのカリキュレータと、
前記LF信号を供給され、前記LF信号に応答して、前記HF信号の合成された版を作るフィルタと、
前記HF信号の前記合成された版のエネルギのカリキュレータと、
前記HF信号の前記計算されたエネルギと前記HF信号の前記合成された版の前記計算されたエネルギとの間の比のカリキュレータと、
前記計算された比を供給され、前記計算された比をHF補償利得として表すコンバータと、
利得訂正を得るための、前記HFマッチング利得の前記推定値と前記HF補償利得との間の差のカリキュレータと
を含み、前記コーディングされたHF信号が、前記LPCパラメータおよび前記利得訂正を含む
HFコーディングデバイス。
(9)帯域幅拡張方式を介してコーディングされたHF信号をデコードする方法であって、
前記コーディングされたHF信号を受け取ることと、
前記コーディングされたHF信号からLPC係数および利得訂正を抽出することと、
前記抽出されたLPC係数からHF利得の推定値を計算することと、
HF利得を得るために前記HF利得の前記計算された推定値に前記利得訂正を加算することと、
HF励振信号を作るために前記HF利得によってLF励振信号を増幅することと、
前記HF信号の合成された版を作るためにHF合成フィルタを介して前記HF励振信号を処理することと
を含む方法。
(10)帯域幅拡張方式を介してコーディングされたHF信号をデコードするデコーダであって、
前記コーディングされたHF信号を受け取る手段と、
前記コーディングされたHF信号からLPC係数および利得訂正を抽出する手段と、
前記抽出されたLPC係数からHF利得の推定値を計算する手段と、
HF利得を得るために前記HF利得の前記計算された推定値に前記利得訂正を加算する手段と、
HF励振信号を作るために前記HF利得によってLF励振信号を増幅する手段と、
前記HF信号の合成された版を作るためにHF合成フィルタを介して前記HF励振信号を処理する手段と
を含むデコーダ。
(11)帯域幅拡張方式を介してコーディングされたHF信号をデコードするデコーダであって、
前記コーディングされたHF信号を受け取る入力と、
前記コーディングされたHF信号を供給され、前記コーディングされたHF信号からLPC係数を抽出するデコーダと、
前記コーディングされたHF信号を供給され、前記コーディングされたHF信号から利得訂正を抽出するデコーダと、
前記抽出されたLPC係数からのHF利得の推定値のカリキュレータと、
HF利得を得るための前記HF利得の前記計算された推定値と前記利得訂正との加算器と、
HF励振信号を作るための前記HF利得によるLF励振信号の増幅器と、
前記HF励振信号を供給され、前記HF励振信号に応答して前記HF信号の合成された版を作るHF合成フィルタと
を含むデコーダ。
(12)第1サウンド信号コーディングモードに従ってコーディングされた前のフレームと第2サウンド信号コーディングモードに従ってコーディングされた現在のフレームとの接合点で前記第1コーディングモードから前記第2コーディングモードに切り替える方法であって、前記サウンド信号が、前記現在のフレームで重み付き信号を作るために重み付けフィルタを介してフィルタリングされ、
前記重み付けフィルタの0入力応答を計算することと、
前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングすることと、
前記現在のフレームで、前記重み付き信号から前記ウィンドウイングされた0入力応答を除去することと
を含む方法。
(13)第1サウンド信号コーディングモードに従ってコーディングされた前のフレームと第2サウンド信号コーディングモードに従ってコーディングされた現在のフレームとの接合点で前記第1コーディングモードから前記第2コーディングモードに切り替えるデバイスであって、前記サウンド信号が、前記現在のフレームで重み付き信号を作るために重み付けフィルタを介してフィルタリングされ、
前記重み付けフィルタの0入力応答を計算する手段と、
前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングする手段と、
前記現在のフレームで、前記重み付き信号から前記ウィンドウイングされた0入力応答を除去する手段と
を含むデバイス。
(14)第1サウンド信号コーディングモードに従ってコーディングされた前のフレームと第2サウンド信号コーディングモードに従ってコーディングされた現在のフレームとの接合点で前記第1コーディングモードから前記第2コーディングモードに切り替えるデバイスであって、前記サウンド信号が、前記現在のフレームで重み付き信号を作るために重み付けフィルタを介してフィルタリングされ、
前記重み付けフィルタの0入力応答のカリキュレータと、
前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングするウィンドウジェネレータと、
前記現在のフレームで、前記重み付き信号から前記ウィンドウイングされた0入力応答を除去する加算器と
を含むデバイス。
(15)デコードされたターゲット信号から、第1コーディングモードに従ってコーディングされた現在のフレーム内のオーバーラップ加算ターゲット信号を作る方法であって、
前記現在のフレームの前記デコードされたターゲット信号を所与のウィンドウ内でウィンドウイングすることと、
前記ウィンドウの左部分をスキップすることと、
第2コーディングモードに従ってコーディングされた前のフレームの重み付けフィルタの0入力応答を計算し、前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングすることと、
前記オーバーラップ加算ターゲット信号を再構成するために前記計算された0入力応答を前記デコードされたターゲット信号に加算することと
を含む方法。
(16)デコードされたターゲット信号から、第1コーディングモードに従ってコーディングされた現在のフレーム内のオーバーラップ加算ターゲット信号を作るデバイスであって、
前記現在のフレームの前記デコードされたターゲット信号を所与のウィンドウ内でウィンドウイングする手段と、
前記ウィンドウの左部分をスキップする手段と、
第2コーディングモードに従ってコーディングされた前のフレームの重み付けフィルタの0入力応答を計算する手段および前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングする手段と、
前記オーバーラップ加算ターゲット信号を再構成するために前記計算された0入力応答を前記デコードされたターゲット信号に加算する手段と
を含むデバイス。
(17)デコードされたターゲット信号から、第1コーディングモードに従ってコーディングされた現在のフレーム内のオーバーラップ加算ターゲット信号を作るデバイスであって、
前記現在のフレームの前記デコードされたターゲット信号を所与のウィンドウ内でウィンドウイングする第1ウィンドウジェネレータと、
前記ウィンドウの左部分をスキップする手段と、
第2コーディングモードに従ってコーディングされた前のフレームの重み付けフィルタの0入力応答のカリキュレータおよび前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングする第2ウィンドウジェネレータと、
前記オーバーラップ加算ターゲット信号を再構成するために前記計算された0入力応答を前記デコードされたターゲット信号に加算する加算器と
を含むデバイス。
本発明の前述および他の目的、利益、および特徴は、添付図面を例としてのみ参照することによって与えられる、本発明の例示的実施形態の次の非制限的な説明を読んだ時により明白になる。
本発明の非制限的で例示的な実施形態を、ACELP/TCXコーディングモデルおよび自己スケーラブルマルチレート格子ベクトル量子化モデルを使用するオーディオコーディング/デコーディングデバイスに関して開示する。しかし、本発明を、他のタイプのコーディングモデルおよび量子化モデルに同等に適用できることに留意されたい。
コーダの概要
コーダの高水準の説明
本発明によるコーダの一実施形態の高水準概略ブロック図を図1に示す。
図1を参照すると、入力信号が、16kHz以上の周波数でサンプリングされ、Tms、たとえばT = 80msを有する、1.004などのスーパーフレームでコーディングされる。各スーパーフレーム1.004は、たとえばAMR-WBでの前処理に似た形で、前処理され、2つのサブバンドに分割される。1.005などの低周波数(LF)信号が、0〜6400Hz帯で定義され、1.006などの高周波数(HF)信号が、6400〜Fmax Hz帯で定義され、ここで、Fmaxは、ナイキスト周波数である。ナイキスト周波数は、元の信号を歪みなしで再構成することを理論的に可能にする最小サンプリング周波数であり、そのスペクトルが名目上0周波数から最大周波数まで延びる信号について、ナイキスト周波数は、この最大周波数の2倍と等しい。
図1を参照すると、LF信号1.005は、図示の実施例ではAMR-WBコア上で作られたマルチモードACELP/TCXコーディング(モジュール1.002を参照されたい)を介してコーディングされる。AMR-WBは、80msスーパーフレーム内の20msフレームを操作する。ACELPモードは、AMR-WBコーディングアルゴリズムに基づき、したがって、20msフレームを操作する。TCXモードは、80msスーパーフレーム内の20msフレーム、40msフレーム、または80msフレームのいずれでも操作することができる。この例示的実施例では、20ms、40ms、および80msの3つのTCXフレーム長が、それぞれ2.5ms、5ms、および10msのオーバーラップと共に使用される。オーバーラップは、TCXモードでフレーミングの影響を減らすのに必要である(変換コーディングと同様)。
図2は、LF信号のACELP/TCXコーディングのフレームタイプのタイミングチャートの実施例を表す。図2に示されているように、ACELPモードは、80msスーパーフレーム2.005内の第1の2.001、第2の2.002、第3の2.003、および第4の2.004 20ms ACELPフレームのどれにおいても選択することができる。同様に、TCXモードは、80msスーパーフレーム2.005の第1の2.006、第2の2.007、第3の2.008、および第4の2.009 20ms TC xフレームのどれにおいても選択することができる。さらに、最初の2つまたは最後の2つの20msフレームを一緒にグループ化して、TCXモードでコーディングされる40ms TCXフレーム2.011および2.012を形成することができる。最後に、80msスーパーフレーム2.005全体を、1つの単一の80ms TCXフレーム2.010にコーディングすることができる。したがって、ACELPフレームおよびTCXフレームの合計26個の異なる組合せが、2.005などの80msスーパーフレームのコーディングに使用可能である。フレームのタイプすなわちACELPまたはTCXと80msスーパーフレーム内でのその長さは、次の説明で開示するように、閉ループで判定される。
図1を参照すると、HF信号1.006は、帯域幅拡張手法(HFコーディングモジュール1.003を参照されたい)を使用してコーディングされる。帯域幅拡張では、励振フィルタパラメトリックモデルが使用され、ここで、フィルタは、少数のビットを使用してコーディングされ、励振は、デコーダで、受け取られたLF信号励振から再構成される。また、一実施形態で、下側帯域に選択されるフレームタイプ(ACELP/TCX)は、80msスーパーフレームで帯域幅拡張に使用されるフレーム長を直接に指示する。
スーパーフレーム構成
すべての可能なスーパーフレーム構成を、(m1, m2, m3, m4)の形で表2にリストするが、ここで、mkは、80msスーパーフレームの内部の20msのk番目のフレームについて選択されるフレームタイプを表し、
20ms ACELPフレームではmk = 0
20ms TCXフレームではmk = 1
40ms TCXフレームではmk = 2
80ms TCXフレームではmk = 3
である。
たとえば、構成(1, 0, 2, 2)は、80msスーパーフレームが、最初の20msフレームを20ms TCXフレーム(TCX20)としてコーディングし、次に2番目の20msフレームを20ms ACELPフレームとしてコーディングし、最後に最後の2つの20msフレームを単一の40ms TCXフレーム(TCX40)としてコーディングすることによってコーディングされることを示す。同様に、構成(3, 3, 3, 3)は、80ms TCXフレーム(TCX80)が、スーパーフレーム2.005全体を定義することを示す。
Figure 0004861196
モード選択
スーパーフレーム構成は、開ループ判断または閉ループ判断のいずれかによって判定することができる。開ループ手法は、スーパーフレーム構成を選択することと、その後の、全体的な複雑さを減らす形などでのスーパーフレームコーディングの前の分析からなる。閉ループ手法は、すべてのスーパーフレーム構成を試行し、最良の構成を選択することからなる。閉ループ判断は、一般に、開ループ判断と比較して、より高い品質をもたらすが、複雑さのトレードオフがある。閉ループ判断の非制限的な実施形態を、次の表3に要約する。
閉ループ判断のこの非制限的な実施例では、表2の26個のすべての可能なスーパーフレーム構成を、11回の試行だけで選択することができる。表3の左半分(試行)は、11回の試行のそれぞれで各20msフレームにどのコーディングモードが適用されるかを示す。Fr1からFr4は、スーパーフレームのフレーム1からフレーム4を指す。各試行番号(1から11)は、閉ループ判断プロセスの1ステップを示す。最終的な判断は、ステップ11の後でなければわからない。各20msフレームが、11回の試行のうちの4回だけに用いられることに留意されたい。複数のフレームが1つの試行に用いられる(たとえば、試行5、10、および11を参照されたい)場合に、対応する長さのTCXコーディングが適用される(TCX40またはTCX80)。閉ループ判断プロセスの中間ステップを理解するために、表3の右半分に、試行11の後の最終的な判断がTCX80である場合の、閉ループ判断の例を示す。これは、その特定のスーパーフレームの4つすべての20msフレームのモードに関する値3に対応する。表3の右側の例の太字の番号は、閉ループ判断プロセスの中間ステップのどの点でモード選択が行われるかを示す。
Figure 0004861196
表3の閉ループ判断プロセスは、次のように進行する。まず、試行1および2で、ACELP (AMR-WB)コーディングおよびTCX20コーディングを、20msフレームFr1に対して試行する。次に、この2つのモードの間で、フレームFr1について選択を行う。選択基準は、重み付き信号と合成された重み付き信号の間のセグメンタル信号対雑音比(SNR)とすることができる。セグメンタルSNRは、たとえば、5msセグメントを使用して計算され、選択されるコーディングモードは、最良のセグメンタルSNRをもたらすコーディングモードである。表3の例では、表3の右側の太字で示されているように、ACELPモードが保持されたと仮定する。
試行3および4で、同一の比較を、フレームFr2についてACELPとTCX20の間で行う。表3の図示の例では、TCX20がACELPよりよかったと仮定する。やはり、TCX20が、上で説明したセグメンタルSNR尺度を基礎として選択される。この選択は、表3の右側の行4の太字で示されている。
試行5で、フレームFr1およびFr2を一緒にグループ化して、TCX40を使用してコーディングされる40msフレームを形成する。このアルゴリズムは、ここで、第1フレームFr1のACELPおよび第2フレームFr2のTCX20と比較した、最初の2つのフレームFr1およびFr2のTCX40の間で選択しなければならない。表3の例では、表3の右側の行5の太字で示されているように、上で説明したセグメンタルSNR基準に従って、シーケンスACELP-TCX20が選択されたと仮定する。
次に、試行1から5と同一の手順を、試行6から10で第3フレームFr3および第4フレームFr4に適用する。表3の例では、試行10の後に、4つの20msフレームが、フレームFr1についてACELP、フレームFr2についてTCX20、一緒にグループ化されたフレームFr3およびFr4についてTCX40として分類される。
最後の試行11は、4つすべての20msフレームすなわち80msスーパーフレーム全体がTCX80を用いてコーディングされる時に実行される。やはり、セグメンタルSNR基準を5msセグメントを用いて使用して、試行10と11を比較する。表3の例では、最後の閉ループ判断が、スーパーフレーム全体のTCX80であると仮定する。4つの20msフレームのモードビットは、表2で述べた(3, 3, 3, 3)になる。
TCXモードの概要
上で開示した閉ループモード選択は、モード判断を行う前に、ACELPおよびTCXを使用してスーパーフレームのサンプルをコーディングしなければならないことを暗示する。ACELPコーディングは、AMR-WBと同様に実行される。TCXコーディングは、図5A〜Cのブロック図に示されているように実行される。TCXコーディングモードは、20ms、40ms、および80msのTCXフレームに類似するが、ほとんどがウィンドウイングおよびフィルタ補間にかかわる少数の相違がある。TCXコーディングの詳細を、コーダの次の説明で与える。とりあえず、図5A〜CのTCXコーディングは、次のように要約することができる。
入力オーディオ信号を、知覚重み付けフィルタ(AMR-WBでの知覚重み付けフィルタと同一)を介してフィルタリングして、重み付き信号を入手する。重み付けフィルタ係数は、TCXフレーム長に依存する形で補間される。過去のフレームがACELPフレームである場合には、知覚重み付けフィルタの0入力応答(ZIR)を、重み付けされた信号から除去する。次に、この信号をウィンドウイングし(ウィンドウ形状は、次の説明で説明する)、変換を、ウィンドウイングされた信号に適用する。変換領域では、信号は、まず、下側周波数でのコーディング雑音アーチファクトを最小にするために前シェーピングされ、次に、次の説明で開示する特定の格子クォンタイザを使用して量子化される。量子化の後に、逆前シェーピング関数をスペクトルに適用し、次に、このスペクトルを逆変換して、量子化された時間領域信号をもたらす。利得再スケーリングの後に、量子化された信号にウィンドウをもう一度適用して、変換領域での量子化のブロック効果を最小にする。前のフレームもTCXモードである場合には、前のフレームと共にオーバーラップおよび加算を使用する。最後に、適当なフィルタメモリ更新を伴う逆フィルタリングを介して、励振信号を見つける。このTCX励振は、ACELP (AMR-WB)励振と同一の「領域」内にある。
図5A〜Cに示されたTCXコーディングの詳細は、本明細書で下で説明する。
帯域幅拡張(BWE)の概要
帯域幅拡張は、ビットレートと複雑さの両方に関して、低コストでHF信号をコーディングするのに使用される方法である。この非制限的な実施例では、励振フィルタモデルが、HF信号のコーディングに使用される。励振は、伝送されない。そうではなく、デコーダは、受け取ったデコードされたLF励振からHF信号励振を外挿する。HF励振信号を伝送するためのビットは不要であり、HF信号に関連するすべてのビットが、このHF信号のスペクトルエンベロープの近似を伝送するのに使用される。線形LPCモデル(フィルタ)が、図1のダウンサンプリングされたHF信号1.006に対して計算される。これらのLPC係数は、少数のビットを用いてコーディングすることができる。というのは、耳の分解能が、高周波数で下がり、オーディオ信号のスペクトル動力学も、高周波数でより小さくなる傾向があるからである。利得も、20msフレームおきに伝送される。この利得は、LF励振信号から外挿されたHF励振信号とHF信号に関連する伝送されるLPCフィルタとの間のマッチングの欠如を補償するために必要である。LPCフィルタは、ISF (Immitance Spectral Frequencies)領域で量子化される。
低周波数帯域および高周波数帯域でのコーディングは、時間同期式であり、帯域幅拡張が、下側帯域のモード選択に従ってスーパーフレーム上でセグメント化されるようになっている。帯域幅拡張モジュールは、コーダの次の説明で開示する。
コーディングパラメータ
コーディングパラメータは、図1に示された3つのカテゴリすなわち、スーパーフレーム構成情報(またはモード情報)1.007、LFパラメータ1.008、およびHFパラメータ1.009に分類することができる。
スーパーフレーム構成は、異なる手法を使用してコーディングすることができる。たとえば、特定のシステム要件を満足するために、しばしば、それぞれがより少数のビットに対応し、おそらくはより短い持続時間を有するより小さいパケットのシーケンスとして、80msスーパーフレームなどの大きいパケットを送ることが望まれるか必要である。ここで、各80msスーパーフレームは、4つの連続するより小さいパケットに分割される。スーパーフレームを4つのパケットに区分するために、あるスーパーフレーム内の各20msフレームについて選択されるフレームのタイプは、対応するパケットに含まれる2ビットによって示される。これは、整数mk ∈ {0, 1, 2, 3}をそれに対応する2進表現に写像することによって、たやすく達成することができる。mkが、80msスーパーフレーム内のk番目の20msフレームについて選択されたコーディングモードを記述する整数であることを想起されたい。
LFパラメータは、フレームのタイプに依存する。ACELPフレームでは、LFパラメータが、AMR-WBのパラメータと同一であるが、音楽信号でのアタックに対するAMR-WBの性能を高めるための平均エネルギパラメータが追加されている。具体的には、20msフレームがACELPモード(モード0)でコーディングされる場合に、対応するパケットでその特定のフレームについて送られるLFパラメータは、次の通りである。
・ISFパラメータ(AMR-WBから再利用される46ビット)、
・平均エネルギパラメータ(AMR-WBと比較して2つの追加ビット)、
・ピッチラグ(AMR-WBと同様)、
・ピッチフィルタ(AMR-WBと同様)、
・固定コードブックインデックス(AMR-WBから再利用される)、および
・コードブック利得(3GPP AMR-WBと同様)。
TCXフレームでは、ISFパラメータが、ACELPモード(AMR-WB)と同一であるが、TCXフレームごとに1回だけ伝送される。たとえば、80msスーパーフレームが、2つの40ms TCXフレームから構成される場合に、2組のISFパラメータだけが、その80msスーパーフレーム全体について伝送される。同様に、80msスーパーフレームが、1つの80ms TCXフレームだけとしてコーディングされる場合に、1組のISFパラメータだけが、そのスーパーフレームについて送られる。TCX20、TCX40、またはTCX80のどれであれ、TCXフレームごとに、次のパラメータが伝送される。
・1組のISFパラメータ(AMR-WBから再利用される46ビット)、
・マルチレート格子VQの量子化されたスペクトル係数を記述するパラメータ(図6を参照されたい)、
・雑音フィルイン用の雑音係数(3ビット)、および
・大域利得(スカラ、7ビット)。
これらのパラメータおよびそのコーディングを、コーダの次の説明で開示する。TCXフレームのビットバジェット(bit budget)の大きい部分が、格子VQインデックス専用であることに留意されたい。
帯域幅拡張によって提供されるHFパラメータは、通常は、スペクトルエンベロープおよびエネルギに関係する。次のHFパラメータが伝送される。
・フレームごとに1組のISFパラメータ(8、9ビット程度)、ただし、フレームは、20ms ACELPフレーム、TCX20フレーム、TCX40フレーム、またはTCX80フレームとすることができる、
・20msフレーム、40msフレーム、または80msフレームごとに1利得の、4次元利得ベクトルとして量子化されたHF利得(7ビット)、および
・TCX40フレームおよびTCX80フレームの、これらのTCXモードでより粗に量子化されたHF利得を変更するための、HF利得訂正。
一実施形態によるビット割振り
この実施形態によるACELP/TCXコーデックは、5つのビットレートすなわち、13.6kbit/s、16.8kbit/s、19.2kbit/s、20.8kbit/s、および24.0kbit/sで動作することができる。これらのビットレートは、AMR-WBレートのうちのいくつかに関係する。上で述べた5つのビットレートで各80msスーパーフレームをエンコードするためのビット数は、それぞれ1088ビット、1344ビット、1536ビット、1664ビット、および1920ビットである。具体的に言うと、合計8ビットが、スーパーフレーム構成に割り振られ(20msフレームあたり2ビット)、64ビットが、各80msスーパーフレーム内の帯域幅拡張に割り振られる。HF信号およびスペクトルエンベロープをエンコードするために望まれる分解能に応じて、より多数またはより少数のビットを帯域幅拡張に使用することができる。残りのビットバジェットすなわちビットバジェットのほとんどは、図1のLF信号1.005をエンコードするのに使用される。異なるタイプのフレームに関する通常のビット割振りの非制限的な実施例を、表9〜12に示す。帯域幅拡張に関するビット割振りを、表13に示す。これらの表には、異なるパラメータをエンコードするのに通常使用される総ビットバジェットの比率が示されている。それぞれTCX40フレームおよびTCX80フレームに対応する表11および12で、括弧内の数字が、等しいサイズの2つのパケット(表11)または4つのパケット(表12)へのビットの分割を示すことに留意されたい。たとえば、表12は、TCX80モードで、スーパーフレームの46個のISFビット(スーパーフレーム全体について1つのLPCフィルタ)が、第1パケット内の16ビット、第2パケット内の6ビット、第3パケット内の12ビット、および最終パケット内の12ビットに分割されることを示す。
同様に、代数VQビット(TCXモードのビットバジェットのほとんど)は、2つのパケット(表11)または4つのパケット(表12)に分割される。この分割は、量子化されたスペクトルが2つ(表11)または4つ(表12)のインターリーブされたトラックに分割される形で行われ、各トラックには、各2つ(表11)または各4つ(表12)のスペクトルブロックのうちの1つが含まれる。各スペクトルブロックは、4つの連続する複素スペクトル係数からなる。このインターリーブは、パケットが欠けている場合に、それがTCX40フレームおよびTCX80フレームのデコードされたスペクトルのインターリーブされた「穴」だけを引き起こすことを保証する。TCX40フレームおよびTCX80フレームのより小さいパケットへのビットのこの分割は、所与のパケットに書き込む時のオーバーフローを管理するために、注意深く行わなければならない。
コーダの非制限的な例示的実施形態の説明
コーダのこの実施形態では、オーディオ信号が、1サンプルあたり16ビットの分解能で、16kHz以上でPCMフォーマットでサンプリングされると仮定する。コーダの役割は、オーディオ信号に基づいてパラメータを計算し、コーディングし、デコードおよび合成のために、ビットストリームにエンコードされたパラメータを伝送することである。フラグが、何が入力サンプリングレートであるかをコーダに示す。
コーダのこの実施形態の単純化されたブロック図を、図1に示す。
入力信号は、80msの連続するブロックに分割され、このブロックを、次の説明では1.004(図1)などのスーパーフレームと称する。各80msスーパーフレーム1.004は、プリプロセッサおよび分析フィルタバンク1.001によって、AMR-WB音声コーディングに似た技法を使用して、前処理され、その後、2つのサブバンド信号すなわち、LP信号1.005およびHF信号1.006に分割される。たとえば、LF信号1.005およびHF信号1.006は、それぞれ周波数帯0〜6400Hzおよび6400〜11025Hzで定義される。
コーダの概要で開示したように、LF信号1.005は、LF (ACELP/TCX)コーディングモジュール1.002を介してマルチモードACELP/TCXコーディングによってコーディングされて、モード情報1.007および量子化されたLFパラメータ1.008が作られ、HF信号は、HF(帯域幅拡張)コーディングモジュール1.003を介してコーディングされて、量子化されたHFパラメータ1.009が作られる。図1に示されているように、モード情報1.007、量子化されたHFパラメータ1.008、および量子化されたLFパラメータ1.009を含む所与の80msスーパーフレーム内で計算されたコーディングパラメータは、マルチプレクサ1.010を介して、たとえば4つの等しいサイズのパケット1.011に多重化される。
次の説明では、プリプロセッサおよび分析フィルタバンク1.001、LF (ACELP/TCX)コーディングモジュール1.002、およびHFコーディングモジュール1.003を含む図1の図の主要なブロックを、詳細に説明する。
プリプロセッサおよび分析フィルタバンク1.001
図19は、図1のプリプロセッサおよび分析フィルタバンク1.001の概略ブロック図である。図19を参照すると、入力の80msスーパーフレーム1.004が、図1のプリプロセッサおよび分析フィルタバンク1.001の出力で、2つのサブバンド信号、具体的にはLF信号1.005およびHF信号1.006に分割される。
さらに図19を参照すると、HFダウンサンプリングモジュール19.001が、入力の80msスーパーフレームの正しいフィルタリング(たとえばAMR-WBを参照されたい)を用いるダウンサンプリングを実行して、HF信号1.006(80msフレーム)を入手し、LFダウンサンプリングモジュール19.002が、入力の80msスーパーフレームの正しいフィルタリング(たとえばAMR-WBを参照されたい)を用いるダウンサンプリングを実行して、AMR-WBサブバンド分解に似た方法を使用してLF信号(80msフレーム)を入手する。HF信号1.006は、図1のHFコーディングモジュール1.003の入力信号を形成する。LFダウンサンプリングモジュール19.002からのLF信号は、さらに、図1のLFコーディングモジュール1.002に供給される前に、2つのフィルタによって前処理される。まず、モジュール19.002からのLF信号は、50Hzのカットオフ周波数を有する高域フィルタ19.003を介して処理されて、直流成分および超低周波数成分を除去される。次に、高域フィルタ19.003からのフィルタリングされたLF信号が、デエンファシスフィルタ19.004を介して処理されて、高周波数成分が強調される。このデエンファシスは、通常、広帯域音声コーダ内にあり、したがって、本明細書ではさらには説明しない。デエンファシスフィルタ19.004の出力は、LFコーディングモジュール1.002に供給される、図1のLF信号1.005を構成する。
LFコーディング
LFコーダの非制限的な実施例の単純化されたブロック図を、図18に示す。図18は、2つのコーディングモード、排他的ではなく具体的にはACELPモードおよびTCXモードが、すべての80msスーパーフレーム内で競合することを示す。具体的には、ACELPコーダ18.015およびTCXコーダ18.016の出力のセレクタスイッチ18.017が、80msスーパーフレーム内の各20msフレームをACELPモードまたはTCXモードすなわち、TCX20モード、TCX40モード、またはTCX80モードのいずれかでコーディングすることを可能にする。モード選択は、コーダの上の概要で説明したように行われる。
したがって、LFコーディングは、2つのコーディングモードすなわち、20msフレームに適用されるACELPモードとTCXとを使用する。オーディオ品質を最適化するために、TCXモードのフレームの長さは、可変にすることを許容される。上で説明したように、TCXモードは、20msフレーム、40msフレーム、または80msフレームのいずれかを操作する。コーダで使用される実際のタイミング構造を、図2に示す。
図18では、LPC分析が、まず、入力LF信号s(n)に対して実行される。LPC分析のウィンドウのタイプ、位置、および長さを、図3に示すが、図3では、ウィンドウが、LF信号の80msセグメントに所与のルックアヘッドを加えたものに関して位置決めされている。ウィンドウは、20msごとに位置決めされる。ウィンドウイングの後に、LPC係数が、20msごとに計算され、次に、ISP (Immitance Spectral Pairs)表現に変換され、デコーダへの伝送のために量子化される。量子化されたISP係数は、スペクトルエンベロープの漸進的変化を平滑化するために5msおきに補間される。
具体的には、モジュール18.002は、入力LF信号s(n)に対して、20msごとにウィンドウイングおよび自己相関の両方を実行する責任を負う。モジュール18.002にはモジュール18.003が続き、モジュール18.003は、ラグウィンドウイングおよび白色雑音訂正を実行する。ラグウィンドウイングされ白色雑音訂正された信号は、モジュール18.004で実施されるレビンソン-ダービンアルゴリズムを介して処理される。モジュール18.005は、LPC係数のISP変換を実行する。モジュール18.005からのISP係数は、モジュール18.006によって、ISP領域で5msごとに補間される。最後に、モジュール18.007が、モジュール18.006からの補間されたISP係数を、5msごとに、補間されたLPCフィルタ係数A(z)に変換する。
モジュール18.005からのISPパラメータは、ISF (Immitance Spectral Frequencies)領域での量子化(モジュール18.009)の前に、モジュール18.008でISFパラメータに変換される。モジュール18.009からの量子化されたISFパラメータは、ACELP/TCXマルチプレクサ18.021に供給される。
また、モジュール18.009からの量子化されたISFパラメータは、モジュール18.010でISPパラメータに変換され、得られたISPパラメータが、5msごとにモジュール18.011によってISP領域で補間され、補間されたISPパラメータが、5msごとに、量子化されたLPCパラメータA(z)に変換される。
図18のLF入力信号s(n)は、前述の説明で説明したように、すべての可能なフレーム長の組合せで、ACELPコーダ18.015によるACELPモードとTCXコーダ18.016によるTCXモードの両方でエンコードされる。ACELPモードでは、20msフレームだけが80msスーパーフレーム内で考慮されるが、TCXモードでは、20msフレーム、40msフレーム、および80msフレームを考慮することができる。表2のすべての可能なACELP/TCXコーディング組合せが、コーダ18.015および18.016によって生成され、その後、対応する合成された信号を重み付けされた領域で元の信号と比較することによってテストされる。表2に示されているように、最終的な選択は、コーディングされた80msスーパーフレーム内のACELPフレームとTCXフレームの混合物とすることができる。
そのために、LF信号s(n)が、知覚重み付けフィルタ18.013を介して処理されて、重み付けされたLF信号が作られる。同一の形で、スイッチセレクタ18.017の位置に応じてACELPコーダ18.015またはTCXコーダ18.016のいずれかからの合成された信号が、知覚重み付けフィルタ18.018を介して処理されて、重み付けされた合成信号が作られる。減算器18.019が、重み付けされたLF信号から重み付けされた合成信号を引いて、重み付けされた誤差信号を作る。セグメンタルSNR計算ユニット18.020は、フィルタ18.013からの重み付けされたLP信号と重み付けされた誤差信号の両方に対して、セグメンタル信号対雑音比(SNR)を作る責任を負う。セグメンタルSNRは、5msサブフレームごとに作られる。セグメンタルSNRの計算は、当業者に周知であり、したがって、本明細書では詳細には説明しない。80msスーパーフレームに対してセグメンタルSNRを最小にするACELPモードおよび/またはTCXモードの組合せが、最良のコーディングモード組合せとして選択される。やはり、80msスーパーフレームでの26個の可能なACELPモードおよび/またはTCXモードの組合せを定義する表2を参照する。
ACELPモード
使用されるACELPモードは、AMR-WB音声コーディング標準規格の12.8kHzで動作するACELPアルゴリズムに非常に似ている。AMR-WBのACELPアルゴリズムと比較した主な変更は、次の通りである。
・LP分析が、図3に示された、異なるウィンドウイングを使用する。
・コードブック利得の量子化が、次の説明で説明するように、5msサブフレームごとに行われる。
ACELPモードは、5msサブフレームを操作し、ここで、ピッチ分析および代数コードブック検索が、サブフレームごとに実行される。
ACELPモードでのコードブック利得量子化
所与の5ms ACELPサブフレーム内で、ピッチ利得gpおよび固定コードブック利得gcを含む2つのコードブック利得が、AMR-WBの7ビット利得量子化に基づいて共同して量子化される。しかし、AMR-WBで使用される固定コードブック利得gcの移動平均(MA)予測は、明示的にコーディングされる絶対参照値によって置換される。したがって、コードブック利得は、平均除去量子化の形によって量子化される。このメモリレス(非予測)量子化は、よく正当化される。というのは、ACELPモードを、非音声信号、たとえば音楽信号の過度に適用することができ、これが、AMR-WBの予測手法より一般的な量子化を必要とするからである。
絶対参照値の計算および量子化(対数領域での)
μenerと表されるパラメータを、開ループで計算し、フレームごとに1回、2ビットを用いて量子化する。LPC残差の現在の20msフレームr = (r0, r1, ..., rL)(ただし、Lはフレーム内のサンプル数)を、4つの5msサブフレーム、ri = (ri(0), ..., ri(Lsub - 1))に分割するが、i = 0, 1, ..., 3であり、Lsubはサブフレーム内のサンプル数である。パラメータμenerは、LPC残差の現在のフレームに対するサブフレームのエネルギの平均(dB単位)
Figure 0004861196
と単に定義される。ただし、
Figure 0004861196
は、LPC残差の第iサブフレームのエネルギであり、ei(dB) = 10log10{ei}である。定数1を上の式の実際のサブフレームエネルギに加算して、0の対数値の後続計算を防ぐ。
次に、パラメータμenerの平均値を、次のように更新する。
μener (dB) := μener (dB) - 5 * (ρ1 + ρ2)
ただし、ρi (i = 1または2)は、第i開ループピッチ分析の副産物として計算される正規化された相関である。μenerのこの変更によって、発音された音声セグメントの音声品質が改善される。
次に、平均μener (dB)を、2ビットを用いてスカラ量子化する。量子化レベルは、12dBから18dB、30dB、42dB、および54dBのステップを用いてセットされる。量子化インデックスは、次のように単純に計算することができる。
tmp = (μener - 18) / 12
index = floor(tmp + 0.5)
if (index < 0) index = 0, if (index > 3) index = 3
ここで、floorは、浮動小数点数の整数部分をとることを意味する。たとえば、floor(1.2) = 1であり、floor(7.9) = 7である。
したがって、再構成された平均値(dB単位)は、
Figure 0004861196
である。しかし、次に、次のようにインデックスおよび再構成された平均値を更新して、アタックなどの過渡信号のオーディオ品質を改善する。
max = max (e1(dB), e2(dB), e3(dB), e4(dB))
if
Figure 0004861196
かつindex < 3,
index = index + 1、および
Figure 0004861196
コードブック利得の量子化
AMR-WBでは、ピッチ利得および固定コードブック利得gpおよびgcが、(gp, gc * gc0)の形で共同して量子化され、ここで、gc0は、革新コードベクトルのエネルギに関してgcのMA予測と正規化を組み合わせる。
所与のサブフレームの2つの利得gpおよびgcは、(gp, gc*gc0)の形で、AMR-WB音声コーディングと正確に同様に、7ビットを用いて共同して量子化される。唯一の相違は、gc0の計算にある。gc0の値は、量子化された平均エネルギ
Figure 0004861196
だけに基づき、次のように計算される。
Figure 0004861196
ただし、
enerc(dB) = 10*log 10(0.01 + (c(0)*2 + ... + c(Lsub-1)*2)/Lsub)
ここで、c(0), ..., c(Lsub-1)は、長さLsubサンプルのサブフレームのLP残差ベクトルのサンプルである。c(0)は、最初のサンプルであり、c(1)は、2番目のサンプルであり、…、c(Lsub)は、サブフレーム内の最後のLP残差サンプルである。
TCXモード
TCXモード(TCXコーダ18.016)では、次のフレームとのオーバーラップが、TCXターゲット信号の変換コーディングに起因するブロッキングアーチファクトを減らすために定義される。ウィンドウイングおよび信号オーバーラップは、現在のフレームのタイプ(ACELPまたはTCX)およびサイズと、過去のフレームのタイプおよびサイズとの両方に依存する。ウィンドウイングは、次の節で開示する。
TCXコーダ18.016の一実施形態を、図5Aに示す。TCXエンコーディング手順をこれから説明し、その後、スペクトルを量子化するのに使用される格子量子化に関する説明を続ける。
一実施形態によるTCXエンコーディングは、次のように進行する。
まず、図5Aに示されているように、入力信号(TCXフレーム)が、知覚重み付けフィルタ5.001を介してフィルタリングされて、重み付き信号が作られる。TCXモードでは、知覚重み付けフィルタ5.001が、ACELPモードで使用される量子化されていないLPC係数A(z)の代わりに、量子化されたLPC係数
Figure 0004861196
を使用する。これは、合成による分析を使用するACELPと異なって、TCXデコーダが、励振信号を回復するために逆重み付けフィルタを適用しなければならないからである。前にコーディングされたフレームがACELPフレームである場合には、知覚重み付けフィルタの0入力応答(ZIR)が、加算器5.014によって、重み付けされた信号から除去される。一実施形態で、ZIRは、10msまでに切り捨てられ、その振幅が10ms後に0まで単調に減少する形でウィンドウイングされる(カリキュレータ5.100)。複数の時間領域ウィンドウを、この動作に使用することができる。ZIRの実際の計算は、図5Aには示されていない。というのは、CELPタイプコーダで「フィルタリンギング」とも称するこの信号が、当業者に周知であるからである。重み付き信号が計算されたならば、その信号が、図4A〜4Cで説明するウィンドウ選択に従って、適応ウィンドウジェネレータ5.003でウィンドウイングされる。
ジェネレータ5.003によるウィンドウイングの後に、変換モジュール5.004が、高速フーリエ変換(FFT)を使用して、ウィンドウイングされた信号を周波数領域に変換する。
TCXモードでのウィンドウイング - 適応ウィンドウイングモジュール5.003
ACELPフレームとTCXフレームの間のモード切替を、これから説明する。一方のモードから他方のモードへの切替の際の遷移アーチファクトを最小にするために、連続するフレームのウィンドウイングおよびオーバーラップに正しい注意を払わなければならない。適応ウィンドウイングが、プロセッサ6.003によって実行される。図4A〜4Cに、TCXフレーム長および前のフレームのタイプ(TCXのACELP)に依存するウィンドウ形状を示す。
図4Aでは、現在のフレームがTCX20フレームである場合が検討されている。過去のフレームに応じて、適用されるウィンドウは次のようになる。
1)前のフレームが20ms ACELPフレームであった場合に、ウィンドウは、2つのウィンドウセグメントの連結すなわち、20ms持続時間のフラットウィンドウとそれに続く2.5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、重み付き音声の2.5msのルックアヘッドを必要とする。
2)前のフレームがTCX20フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、2.5ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、17.5ms持続時間のフラットウィンドウと、最後に、2.5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の2.5msのルックアヘッドを必要とする。
3)前のフレームがTCX40フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、5ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、15ms持続時間のフラットウィンドウと、最後に、2.5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の2.5msのルックアヘッドを必要とする。
4)前のフレームがTCX80フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、10ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、10ms持続時間のフラットウィンドウと、最後に、2.5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の2.5msのルックアヘッドを必要とする。
図4Bでは、現在のフレームがTCX40フレームである場合が検討されている。過去のフレームに応じて、適用されるウィンドウは次のようになる。
1)前のフレームが20ms ACELPフレームであった場合に、ウィンドウは、2つのウィンドウセグメントの連結すなわち、40ms持続時間のフラットウィンドウとそれに続く5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、重み付き音声の5msのルックアヘッドを必要とする。
2)前のフレームがTCX20フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、2.5ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、37.5ms持続時間のフラットウィンドウと、最後に、5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の5msのルックアヘッドを必要とする。
3)前のフレームがTCX40フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、5ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、35ms持続時間のフラットウィンドウと、最後に、5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の5msのルックアヘッドを必要とする。
4)前のフレームがTCX80フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、10ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、30ms持続時間のフラットウィンドウと、最後に、5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の5msのルックアヘッドを必要とする。
最後に、図4Cでは、現在のフレームがTCX80フレームである場合が検討されている。過去のフレームに応じて、適用されるウィンドウは次のようになる。
1)前のフレームが20ms ACELPフレームであった場合に、ウィンドウは、2つのウィンドウセグメントの連結すなわち、80ms持続時間のフラットウィンドウとそれに続く5ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、重み付き音声の10msのルックアヘッドを必要とする。
2)前のフレームがTCX20フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、2.5ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、77.5ms持続時間のフラットウィンドウと、最後に、10ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の10msのルックアヘッドを必要とする。
3)前のフレームがTCX40フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、5ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、75ms持続時間のフラットウィンドウと、最後に、10ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の10msのルックアヘッドを必要とする。
4)前のフレームがTCX80フレームであった場合に、ウィンドウは、3つのウィンドウセグメントの連結すなわち、10ms持続時間のハニングウィンドウの平方根の左半分(または正弦波ウィンドウの左半分部分)との連結と、70ms持続時間のフラットウィンドウと、最後に、10ms持続時間のハニングウィンドウの平方根の右半分部分(または正弦波ウィンドウの右半分部分)との連結である。コーダは、やはり重み付き音声の10msのルックアヘッドを必要とする。
これらのウィンドウタイプのすべてが、現在のフレームがTCXフレームである時に限って、重み付けされた信号に適用されることに留意されたい。ACELPタイプのフレームは、ターゲット信号の誤差を最小にするために、実質的にAMR-WBコーディングに従って、すなわち、励振信号の合成による分析コーディングを介してエンコードされ、ここで、ターゲット信号は、本質的に、それに対する重み付けフィルタの0入力応答が除去される重み付けされた信号である。また、別のTCXフレームが先行するTCXフレームをコーディングする時に、上で説明したウィンドウによってウィンドウイングされた信号が、本明細書で下で開示するように、変換領域で直接に量子化されることに留意されたい。その後、量子化および逆変換の後に、合成された重み付けされた信号が、フレームの始めでのオーバーラップおよび加算を使用して、先行するフレームの記憶されたルックアヘッドと再組合せされる。
その一方で、ACELPフレームが先行するTCXフレームをエンコードする時には、重み付けフィルタの0入力応答、実際には0入力応答のウィンドウイングされ切り捨てられた版が、まず、ウィンドウイングされた重み付けされた信号から除去される。0入力応答は、フレームの最初のサンプルのよい近似なので、結果の影響は、ウィンドウイングされた信号が、フレームの始め(0入力応答減算のゆえに)とフレームの終り(上で説明し、図4A〜4Cに示したルックアヘッドに適用される半ハニングウィンドウのゆえに)の両方で0に向かう傾向があることである。もちろん、ウィンドウイングされ切り捨てられた0入力応答は、逆変換の後に、量子化された重み付けされた信号に加算される。
したがって、適当な妥協が、TCXフレームで使用される変換の前の最適ウィンドウ(たとえば、ハニングウィンドウ)と、ACELPモードでエンコードする時にターゲット信号に適用しなければならない暗黙の長方形ウィンドウとの間で達成される。これによって、ACELPフレームとTCXフレームの間の滑らかな切替が保証されると同時に、両方のモードでの正しいウィンドウイングが可能になる。
時間-周波数写像 - 変換モジュール5.004
上で説明したウィンドウイングの後に、変換が、変換モジュール5.004内で、重み付けされた信号に適用される。図5Aの実施例では、高速フーリエ変換(FFT)が使用される。
図4A〜4Cに示されているように、TCXモードでは、連続するフレームの間でオーバーラップを使用して、ブロッキングアーチファクトを減らす。このオーバーラップの長さは、TCXモードの長さに依存し、TCXモードがそれぞれ20ms、40ms、および80msのフレーム長を扱う時に、それぞれ2.5ms、5ms、および10msがセットされる(すなわち、オーバーラップの長さには、フレーム長の1/8がセットされる)。オーバーラップのこの選択は、FFTによるDFTの高速計算での基数を単純にする。その結果、TCX20モード、TCX40モード、およびTCX80モードの有効時間サポートは、図2に示されているように、それぞれ22.5ms、45ms、および90msである。12800サンプル毎秒のサンプリング周波数(図1のプリプロセッサおよび分析フィルタバンク1.001によって作られるLF信号の)ならびに22.5ms、45ms、および90msのフレーム+ルックアヘッド持続時間では、FFTの時間サポートが、それぞれ288サンプル、576サンプル、および1152サンプルになる。これらの長さは、9×32、9×64、および9×128として表すことができる。したがって、特殊化されたradix-9 FFTを使用して、フーリエスペクトルをすばやく計算することができる。
前シェーピング(低周波数強調) - 前シェーピングモジュール5.005
フーリエスペクトルを計算(FFT)したならば、適応低周波数強調をスペクトル前シェーピングモジュール5.005によって信号スペクトルに適用して、低周波数の知覚される歪みを最小にする。逆低周波数強調がデコーダでならびにスペクトルデシェーピング(de-shaping)モジュール5.007を介してコーダで適用されて、次のフレームをエンコードするのに使用される励振信号が作られる。適応低周波数強調は、次のように、スペクトルの最初の1/4だけに適用される。
まず、FFT変換モジュール5.004の出力の変換された信号を、Xと呼ぶことにする。ナイキスト周波数でのフーリエ係数に、系統的に0をセットする。次に、NがFFTのサンプル数である(したがって、Nはウィンドウの長さに対応する)場合に、K=N/2個の複素数値フーリエ係数を4つの連続する係数のブロックにグループ化し、8次元実数値ブロックを形成する。8と異なるサイズのブロック長を一般に使用できることに留意されたい。一実施形態で、8のブロックサイズは、スペクトル量子化に使用される8次元格子クォンタイザと一致するように選択されたものである。図20を参照すると、スペクトルの最初の1/4までの各ブロックのエネルギを計算し、最大のエネルギを有するブロックのエネルギEmaxおよび位置インデックスiを保管する(カリキュレータ20.001)。次に、次のように、iより小さい位置インデックスmを有する8次元ブロックごとに、係数Rmを計算する(カリキュレータ20.002)。
・位置インデックスmの8次元ブロックのエネルギEmを計算し(モジュール20.003)、
・比Rm = Emax / Emを計算し(モジュール20.004)、
・Rm > 10の場合に、Rm = 10をセットし(モジュール20.005)、
・Rm > R(m-1)の場合に、Rm = R(m-1)をセットし(モジュール20.006)、
・値(Rm)1/4を計算する(モジュール20.007)。
最後の条件(Rm > R(m-1)の場合に、Rm = R(m-1))は、比関数Rmが単調に減少することを保証する。さらに、比Rmが10以下になるように制限することは、低周波数強調関数のスペクトル成分が20dBを超えて変更されないことを意味する。
iより小さい位置インデックスを有する(および上で説明した制限条件を有する)すべてのブロックの比(Rm)1/4 = (Emax / Em)1/4を計算した後に、これらの比を、変換係数の利得として、各対応するブロックに適用する(カリキュレータ20.008)。これは、最大エネルギEmaxを有するブロックと比較して比較的低いエネルギを有するブロックのエネルギを増やすという効果を有する。量子化の前にこの手順を適用することは、下側帯域でのコーディング雑音のシェーピングという効果を有する。
図5Bに、上で開示した前シェーピングが適用される例のスペクトルを示す。周波数軸は、0と1の間で正規化されており、1はナイキスト周波数である。振幅スペクトルは、dB単位で図示されている。図5Bでは、太線が、前シェーピング前の振幅スペクトルであり、非太線部分が、変更された(前シェーピングされた)スペクトルである。したがって、この例では、非太線に対応するスペクトルだけが変更されている。図5Cには、前シェーピング関数によって各スペクトル成分に適用される実際の利得が図示されている。図5Cから、利得が10までに制限されており、約0.18の正規化された周波数の最大エネルギを有するスペクトル成分(ここではスペクトルの第3高調波)に達する時に1まで単調に減少することがわかる。
分割マルチレート格子ベクトル量子化 - モジュール5.006
低周波数強調の後に、スペクトル係数を、一実施形態で、格子コードに基づく代数量子化モジュール5.006を使用して量子化する。使用される格子は、8次元ゴセット格子であり、これは、8次元ブロックのスペクトル係数の分割を説明するものである。量子化インデックスは、本質的に大域利得であり、スペクトル内の各8次元サブベクトルを量子化するのに使用される実際の格子点を記述する一連のインデックスである。格子量子化モジュール5.006は、構造化された形で、モジュール5.005からのスケーリングされかつプリシェーピングされたスペクトルの各8次元ベクトルと量子化に使用される格子コードブックの点との間の最近近傍検索を実行する。スケール係数(大域利得)は、実際には、ビット割振りおよび平均歪みを決定する。大域利得が大きいほど、より多くのビットが使用され、平均歪みが少なくなる。スペクトル係数の8次元ベクトルごとに、格子量子化モジュール5.006は、インデックスを出力し、このインデックスは、使用される格子コードブック番号と、対応する格子コードブック内で選択された実際の格子点とを示す。次に、デコーダは、各8次元ベクトルを記述するインデックスと一緒に大域利得インデックスを使用することによって、量子化されたスペクトルを再構成することができる。この手順の詳細を、下で開示する。
スペクトルを量子化したならば、利得計算および量子化モジュール5.009の出力からの大域利得と、量子化モジュール5.006の出力からの格子ベクトルインデックス)を、マルチプレクサ(図示せず)を介してデコーダに伝送することができる。
大域利得の最適化および雑音フィル係数の計算
格子ベクトルクォンタイザを使用する際の自明でないステップが、所定のビットバジェット内の正しいビット割振りの判定である。保管されたコードブック(コードブックのインデックスは基本的にテーブル内の位置である)と異なって、格子コードブックのインデックスは、数学(代数)式を使用して計算される。したがって、格子ベクトルインデックスをエンコードするビット数は、入力ベクトルが量子化された後でなければわからない。原理的に、所定のビットバジェット内に留まるためには、複数の大域利得の試行と、ビットの総数を計算するために各異なる利得を用いて正規化されたスペクトルを量子化することとを実行する。所定のビットバジェットを超えずにこれに最も近いビット割振りを達成する大域利得が、最適利得として選択される。一実施形態では、その代わりにヒューリスティック手法を使用して、最適の量子化およびビット割振りを得る前にスペクトルを複数回量子化することを回避する。
説明を明瞭にするために、次の説明に関連する主要な記号は、表5〜7から集められたものである。
図5Aを参照すると、時間領域TCX重み付き信号xが、変換Tおよび前シェーピングPによって処理され、量子化されるべきスペクトルXが作られる。変換Tは、FFTとすることができ、前シェーピングは、上で説明した適応低周波数強調に対応するものとすることができる。
前シェーピングされたスペクトルとしてのベクトルXに言及する。このベクトルが、X = [X0 X1 ... XN-1]Tの形を有し、Nが、変換Tから得られた変換係数の個数である(前シェーピングPは、この係数の個数を変更しない)と仮定する。
前シェーピングされたスペクトルの量子化手順の概要
一実施形態で、前シェーピングされたスペクトルXは、図6に示されているように量子化される。この量子化は、XをエンコードするためのRxビットの使用可能ビットバジェットを仮定して、[Ragot, 2002]のデバイスに基づく。図6に示されているように、Xは、次の3つの主要なステップで、利得形状分割ベクトル量子化によって量子化される。
・以下では大域利得と呼ぶ、推定された大域利得gを、分割エネルギ推定モジュール6.001と大域利得および雑音レベル推定モジュール6.002によって計算し、ディバイダ6.003が、この大域利得gによってスペクトルXを正規化して、X' = X/gを入手するが、ここで、X'は、正規化された前シェーピングされたスペクトルである。
・[Ragot, 2002]のマルチレート格子ベクトル量子化を、分割自己スケーラブルマルチレートRE8コーディングモジュール6.004によって、スペクトルX'を形成する係数の8次元ブロックのすべてに適用し、結果のパラメータを多重化する。この量子化方式を適用できるようにするために、スペクトルX'を同一サイズのK個のサブベクトルに分割し、その結果、X = [X'0 T X'1 T ... X'K-1 T]Tになるようにするが、ここで、K番目のサブベクトル(または分割)は、
X'k = [x'8k ... x'8k+K-1], k=0, 1, ..., K-1.
によって与えられる。[Ragot, 2002]のデバイスは、ある形の8次元ベクトル量子化を実際に実施するので、Kには単純に8をセットする。NはKの倍数であると仮定する。
・雑音フィルイン利得facをモジュール6.002で計算して、後に、スペクトルX'の量子化されていない分割にコンフォートノイズを注入する。量子化されていない分割とは、クォンタイザによって0をセットされた係数のブロックである。雑音の注入は、低ビットレートでのアーチファクトをマスクすることを可能にし、オーディオ品質を改善する。単一の利得facを使用するのは、コーディング雑音が、ターゲット領域で平坦であり、逆知覚フィルタW(z)-1によってシェーピングされることをTCXコーディングが仮定するからである。ここでは前シェーピングを使用するが、量子化および雑音注入は、同一の原理に頼る。
結果として、図6に示されたスペクトルXの量子化は、3種類のパラメータすなわち、大域利得g、(分割)代数VQパラメータ、および雑音フィルイン利得facを作る。ビット割振りまたはビットバジェットRxは、
Rx = Rg + R + Rfac
として分解され、ここで、Rg、R、およびRfacは、それぞれ利得g、代数VQパラメータ、および利得facに割り振られるビット数(またはビットバジェット)である。この例示的実施形態では、Rfac = 0である。
[Ragot, 2002]のマルチレート格子ベクトル量子化は、自己スケーラブルであり、各分割のビット割振りおよび歪みを直接に制御することを許容しない。これが、[Ragot, 2002]のデバイスがXではなくスペクトルX'の分割に適用される理由である。したがって、大域利得gの最適化は、TCXモードの品質を制御する。一実施形態で、利得gの最適化は、分割の対数エネルギに基づく。
次の説明では、図6の各ブロックを1つずつ説明する。
分割エネルギ推定モジュール6.001
分割ベクトルのエネルギ(すなわち、二乗ノルム)が、ビット割振りアルゴリズムで使用され、大域利得ならびに雑音レベルの判定に使用される。N次元入力ベクトルX = [x0, x1 ... xN-1]Tが、K個の分割すなわち8次元サブベクトルに区分され、k番目の分割がxk = [x8k x8k+1 ... x8k+7]T、ただしk = 0, 1, ..., K-1になることを想起されたい。Nが8の倍数であると仮定する。k番目の分割ベクトルのエネルギは、
ek = xk Txk = x8k 2 + ... + x8k+7 2, k = 0, 1, ... K-1
として計算される。
大域利得および雑音レベル推定モジュール6.002
大域利得gは、分割のビット消費を直接に制御し、R(g) ≒ Rから解かれるが、ここで、R(g)は、所与のgの値について分割代数VQのすべてによって使用されるビット数(またはビット消費)である。前述の説明で示したように、Rは、分割代数VQに割り振られたビットバジェットである。その結果、大域利得gは、代数VQのビット消費およびビットバジェットと一致するように最適化される。基礎になる原理を、文献では逆ウォーターフィリング(reverse water-filling)と称する。
量子化の複雑さを減らすために、各分割の実際のビット消費は、計算されるのではなく、分割のエネルギから推定されるだけである。このエネルギ情報は、マルチレートRE8ベクトル量子化の先験的知識と一緒に、gの単純な関数としてR(g)を推定することを可能にする。
大域利得gは、大域利得および雑音レベル推定モジュール6.002でこの基本原理を適用することによって判定される。分割Xkのビット消費推定値は、大域利得gの関数であり、Rk(g)と表される。単位利得g = 1を用いると、ヒューリスティックから、ビット消費推定値として
Rk(1) = 5 log2 (ε + ek)/2, k = 0, 1, ..., K-1
が与えられる。定数ε > 0は、log2 0の計算を防ぎ、たとえば、値ε = 2が使用される。一般に、定数εは、分割のエネルギekと比較して無視できる。
Rk(1)の式は、[Ragot, 2002]のマルチレートクォンタイザおよび基礎になるRE8格子の特性の先験的知識に基づく。
・コードブック番号nk > 1について、多くとも5nkビットのk番目の分割のコーディングに関するビットバジェット要件は、表1から確認することができる。これによって、log2 (ε + ek)/2がコードブック番号の推定値である時の式で係数5が与えられる。
・対数log2は、コードベクトルの平均二乗ノルムが、Qnk+1の代わりにQnkを使用する時にほぼ2倍になるという特性を反映したものである。この特性は、表4から観察することができる。
・ε + ekに適用される係数1/2は、コードブックQ2のコードブック番号推定値を較正する。この特定のコードブック内の格子点の平均二乗ノルムは、約8.0であることがわかっている(表4を参照されたい)。log2 (ε + e2))/2 ≒ log2 (2 + 8.0))/2 ≒ 2なので、コードブック番号推定値は、Q2について実際に正しい。
Figure 0004861196
大域利得gが分割に適用される時に、xk/gのエネルギが、ekをg2で割ることによって得られる。これは、利得スケーリングされた分割のビット消費を、Rk(1)から5 log2g2 = 10 log2 gを引くことによって、Rk(1)に基づいて推定できることを暗示する。
Rk(g) = 5 log2(ε + ek)/2g2
= 5 log2(ε + ek)/2 + 5 log2 g2
= Rk(1) - glog (4)
ここで、glog = 10 log2 gである。推定値Rk(g)は、0を下限とされ、したがって、関係
Rk(g) = max{Rk(1) - glog, 0} (5)
が実際には使用される。
K個の分割のすべてのコーディングのビット消費は、単に、個々の分割の合計
R(g) = R0(g) + R1(g) + ... + RK-1(g) (6)
である。式(6)の非線形性は、所与のビットバジェットR(g) = Rと一致するビット消費を作る大域利得gを分析的に解くことを妨げる。しかし、R(g)はgの単調関数なので、単純な反復アルゴリズムを用いて解を見つけることができる。
一実施形態で、大域利得gは、値glog = 128から開始してglog = 10 log2 gに二分検索を適用することによって効率的に検索される。各反復iterで、R(g)を式(4)、(5)、および(6)を使用して評価し、glogをglog = glog ± 128/2iterとしてそれぞれ調節する。10回の反復が、十分な精度を与える。次に、大域利得を、
Figure 0004861196
としてglogから解くことができる。
図7の流れ図で、大域利得gを判定するのに使用される二分アルゴリズムを説明する。このアルゴリズムは、副産物として雑音レベルも提供する。このアルゴリズムは、動作7.001でビットバジェットRを値0.95(R-K)に調整することによって開始される。この調整は、最適大域利得gの過大推定を避けるために、経験的に決定された。この二分アルゴリズムは、単位大域利得を仮定して、その初期値としてビット消費推定値Rk(1)、ただしk = 0, 1, ..., K - 1を必要とする。これらの推定値は、まず分割ekの二乗ノルムを得た後に、動作7.002で式(4)を使用して計算される。このアルゴリズムは、動作7.004でセットされる初期値iter = 0、glog = 0、およびfac = 128/2iter = 128から開始する。
iter < 10の場合(動作7.004)、二分アルゴリズムの各反復に、動作7.005での増分glog = glog + facと、glogの新しい値を用いる動作7.006および7.007でのビット消費推定値R(g)の評価が含まれる。動作7.008で、推定値R(g)がビットバジェットRを超える場合には、動作7.009でglogを更新する。この反復は、動作7.010でカウンタiterを増分し、ステップサイズfacを半分にすることによって終了する。10回の反復の後に、glogの十分な精度が得られ、大域利得
Figure 0004861196
を動作7.011で解くことができる。雑音レベルgnsは、動作7.012で、判定された大域利得glogを用いて、量子化されないままにされる可能性が高い分割のビット消費推定値の平均をとることによって推定される。
図8に、雑音レベルfacの判定に含まれる動作を示す。雑音レベルは、量子化されないままにされる可能性が高い分割の平均エネルギの平方根として計算される。所与の大域利得glogについて、分割は、その推定されたビット消費が5ビット未満すなわちRk(1) - glog < 5の場合に、量子化されない可能性が高い。そのような分割のすべての総ビット消費Rns(g)は、Rk(1) - glog < 5である分割についてRk(1) - glogを計算することによって得られる。これらの分割の平均エネルギを、対数領域でRns(g)からRns(g)/nbとして計算することができるが、ここで、nbは、これらの分割の個数である。雑音レベルは、
fac = 2Rns(g)/nb-5
である。この式では、指数部の定数-5が、チューニング係数であり、このチューニング係数は、雑音係数を平均エネルギに基づく実際の推定値より3dB(エネルギで)下に調整する。
マルチレート格子ベクトル量子化モジュール5.004
量子化モジュール6.004は、[Ragot, 2002]で開示され、説明されたマルチレート量子化手段である。正規化されたスペクトルの8次元分割X'が、{Q0, Q2, Q3, ...}と表されるRE8コードブックの集合を使用するマルチレート量子化を使用してコーディングされる。コードブックQ1は、コーディング効率を高めるために、この集合では定義されない。n番目のコードブックは、Qnと表され、ここで、nをコードブック番号と称する。すべてのコードブックQnが、同一の8次元RE8格子の部分集合として構成され、Qn ⊂ RE8である。次元あたりのビット数として定義されたn番目のコードブックのビットレートは、4n/8である、すなわち、各コードブックQnに、24n個のコードベクトルが含まれる。マルチレートクォンタイザは、[Ragot, 2002]の教示に従って構成される。
k番目の8次元分割X'kについて、コーディングモジュール6.004は、RE8格子内の最近近傍Ykを見つけ、次を出力する。
・Yk ∈ Qnkである最小のコードブック番号nk、および
・Qnk内のYkのインデックスik
コードブック番号nkは、コードベクトルYkを再構成するためにインデックスikと一緒にデコーダから使用可能にされなければならないサイド情報である。たとえば、インデックスikのサイズは、nk > 1の場合に4nkビットである。このインデックスは、4ビットブロックを用いて表すことができる。
nk = 0の場合に、再構成ykは8次元0ベクトルになり、ikは不要である。
ビットバジェットオーバーフロー処理および分割インデクシングモジュール6.005
所与の大域利得gについて、実際のビット消費は、ビットバジェットを超えるまたはビットバジェットの下に留まるのいずれかになる可能性がある。可能なビットバジェットアンダーフローは、特定の手段によって対処はされないが、使用可能な余分のビットは、0にされ、未使用のままにされる。ビットバジェットオーバーフローが発生した時には、ビット消費は、コードブック番号n0, n1, ..., nK-1のうちのいくつかを0にすることによって、モジュール6.005内でビットバジェットRxに収容される。コードブック番号nk > 0を0にすることによって、総ビット消費が少なくとも5nk-1ビットだけ減る。ビットバジェットオーバーフローの処理で0にされた分割は、デコーダで雑音フィルインによって再構成される。
いくつかの分割のコードブック番号が強制的に0にされた時に発生するコーディング歪みを最小にするために、これらの分割を慎重に選択しなければならない。一実施形態で、ビット消費は、エネルギek = xk Txk、ただしk = 0, 1, ..., K-1の降順で分割を1つずつ処理することによって累算される。この手順は、信号依存であり、大域利得の判定に以前に使用された手段と一致する。
モジュール6.005でのオーバーフロー処理の詳細を調べる前に、マルチレートクォンタイザの出力を表すのに使用されるコードの構造を要約する。nk > 0の単項コードに、k - 1個の1とそれに続く1つの0のストップビットが含まれる。表1に示されているように、ストップビットを除いて、インデックスikおよびコードブック番号nkをコーディングするのに、5nk - 1ビットが必要である。コードブック番号nk = 0には、ストップビットだけが含まれ、0分割が示される。K個の分割がコーディングされる場合に、K - 1個のストップビットだけが必要である。というのは、最後の1が、ビットバジェットRによって暗黙のうちに決定され、したがって冗長であるからである。具体的に言うと、k個の最後の分割が0である場合に、k - 1個のストップビットで十分である。というのは、最後の0の分割を、ビットバジェットRを知ることによってデコードできるからである。
図6のオーバーフロービットバジェット処理モジュール6.005の動作を、図9の流れ図に示す。このモジュール6.005は、eκ(0) ≧ eκ(1) ≧ ... ≧ eκ(K-1)になるように分割の二乗ノルムを降順でソートすることによって、動作9.001で決定される分割インデックスκ(0), κ(1), ..., κ(K-1)を用いて動作する。したがって、インデックスκ(k)は、k番目に大きい二乗ノルムを有する分割xκ(k)を指す。分割の二乗ノルムは、動作9.001の出力としてオーバーフロー処理に供給される。
オーバーフロー処理のk番目の反復は、0分割がオーバーフローを引き起こすことができないので、nκ(k) = 0の時に次の反復に直接に進むことによって、簡単にスキップすることができる。この機能性は、論理動作9.005を用いて実施される。k < Kであり(動作9.003)、κ(k)番目の分割が非0分割であると仮定すると、RE8点yκ(k)が、まず動作9.004でインデクシングされる。マルチレートインデクシングは、コードブック番号nκ(k)およびコードベクトルインデックスiκ(k)の正確な値を提供する。現在のκ(k)番目の分割を含む、この分割までのすべての分割のビット消費を計算することができる。
単項コードの特性を使用すると、現在の分割を含む現在の分割までのビット消費Rkは、動作ブロック9.008で、2項すなわちストップビットを除いたデータに必要なRD,kビットとストップビットのRS,kビットの和として計算される。
Rk = RD,k + RS,k (7)
ここで、nκ(k) > 0について、
RD,k = RD,k-1 + 5nκ(k) -1, (8)
RS,k = max{κ(k), RS,k-1}. (9)
である。必要な初期値には、動作9.002で0がセットされる。ストップビットは、最後の非0分割までの分割だけがこれまでにストップビットを有することが示されていることを考慮に入れて、動作9.007で式(9)からカウントされる。というのは、後続分割が、コードの構成によって0であることがわかっているからである。最後の非0分割のインデックスを、max{κ(0), κ(k), ..., κ(k)}と表すこともできる。
オーバーフロー処理は、式(8)および(9)のRD,kおよびRS,kの0の初期値から開始されるので、現在の分割までのビット消費は、必ずビットバジェットRS,k-1 + RD,k-1 < Rの中におさまる。現在のκ(k)番目の分割を含むビット消費Rkが、論理動作9.008の検証でビットバジェットRを超える場合に、ブロック9.009で、コードブック番号nκ(k)および再構成yκ(k)を0にする。ビット消費カウンタRD,kおよびRD,kは、ブロック9.010でそれ相応に以前の値に更新リセットされる。これの後に、オーバーフロー処理は、動作9.011でkを1つ増分し、論理動作9.003に戻ることによって、次の反復に進むことができる。
動作9.004が、オーバーフロー処理ルーチンの一体化された部分として分割のインデクシングを作ることに留意されたい。このインデクシングを保管し、図6のビットストリームマルチプレクサ6.007にさらに供給することができる。
量子化スペクトルデシェーピングモジュール5.007
スペクトルが、モジュール5.006の分割マルチレート格子VQを使用して量子化されたならば、量子化インデックス(コードブック番号および格子点インデックス)を計算し、マルチプレクサ(図示せず)を介してチャネルに送ることができる。格子内の最近近傍検索およびインデックス計算は、[Ragot, 2002]と同様に実行される。次に、TCXコーダが、モジュール5.005の前シェーピングを逆転する形で、モジュール5.007でスペクトルデシェーピングを実行する。
スペクトルデシェーピングは、量子化されたスペクトルだけを使用して動作する。モジュール5.005の動作を逆転する処理を得るために、モジュール5.007は、次のステップを適用する。
・スペクトルの最初の1/4(低周波数)で最高のエネルギの8次元ブロックの位置iおよびエネルギEmaxを計算する。
・位置インデックスmの8次元ブロックのエネルギEmを計算する。
・比Rm = Emax / Emを計算する。
・Rm > 10の場合には、Rm = 10をセットする。
・また、Rm > R(m-1)の場合には、Rm = R(m-1)とする。
・値(Rm)1/2を計算する。
iより小さい位置インデックスを有するすべてのブロックについて比Rm = Emax / Emを計算した後に、この比の逆数を、各対応するブロックの利得として適用する。モジュール5.005の前シェーピングとの相違は、(a)モジュール5.007のデシェーピングで、比Rmの平方根(べき1/4ではなく)が計算され、(b)この比が、対応する8次元ブロックの除数(乗数ではなく)として使用されることである。モジュール5.006での量子化の影響を無視できる(完全な量子化)場合に、モジュール5.007の出力がモジュール5.005の入力と正確に等しいことを示すことができる。したがって、この前シェーピングプロセスは、可逆プロセスである。
HFエンコーディング
図1のHFコーディングモジュール1.003の動作を、図10Aに示す。図1に関する前述の説明で示したように、HF信号は、入力信号のうちで6400Hzを超える周波数成分からなる。このHF信号の帯域幅は、入力信号サンプリングレートに依存する。低いレートでHF信号をコーディングするために、帯域幅拡張(BWE)方式が、一実施形態で使用される。BWEでは、エネルギ情報が、スペクトルエンベロープおよびフレームエネルギの形でデコーダに送られるが、信号の微細構造は、デコーダで、LF信号から受け取られた(デコードされた)励振信号から外挿され、このLF信号は、一実施形態によれば、スイッチドACELP/TCXコーディングモジュール1.002内でエンコードされる。
プリプロセッサおよび分析フィルタバンク1.001の出力のダウンサンプリングされたHF信号を、図10AではsHF(n)と呼ぶ。この信号のスペクトルは、ダウンサンプリングの前のより高周波数帯域の折り畳まれた版と考えることができる。図18に関して上で説明したLPC分析が、モジュール10.020〜10.022で信号sHF(n)に対して実行されて、この信号のスペクトルエンベロープをモデル化したLPC係数の組が得られる。通常、LF信号の場合より少数のパラメータが必要である。一実施形態で、8つ程度のフィルタが使用される。次に、LPC係数A(z)が、モジュール10.023でISP領域に変換され、その後、モジュール10.004でISP領域からISF領域に変換され、モジュール10.003で量子化されて、マルチプレクサ10.029を介して伝送される。80msスーパーフレームでのLPC分析の回数は、スーパーフレーム内のフレーム長に依存する。量子化されたISF係数が、モジュール10.004でISP係数に変換され、その後、モジュール10.006で量子化されたLPC係数AHF(z)に変換される前に、モジュール10.005で補間される(補間の方法を短く説明することができるか)。
LPCフィルタ係数の組を、変数zの多項式として表すことができる。また、A(z)は、LF信号用のLPCフィルタであり、AHF(z)は、HF信号用のLPCフィルタである。この2つのフィルタの量子化された版が、それぞれ
Figure 0004861196
および
Figure 0004861196
である。図10A及びBのLF信号s(n)から、残差信号が、まず、参照10.014によって識別される残差フィルタ
Figure 0004861196
を介してs(n)をフィルタリングすることによって得られる。次に、この残差信号を、参照10.015によって識別される量子化HF合成フィルタ
Figure 0004861196
を介してフィルタリングする。利得係数までに、これによって、HF信号の合成された版であるがスペクトル的に折り畳まれた版が作られる。実際のHF合成信号は、アップサンプリングが適用された後に回復される。
励振が、LF信号から回復されるので、正しい利得が、HF信号について計算される。これは、参照HF信号sHF(n)のエネルギを、合成されたHF信号のエネルギと比較することによって行われる。エネルギは、5msサブフレームごとに1回計算され、エネルギ一致が、6400Hzサブバンド境界で保証される。具体的には、合成されたHF信号と基準HF信号が、知覚フィルタ(モジュール10.011から10.012および10.024から10.025)を介してフィルタリングされる。図10A及びBの実施形態では、この知覚フィルタが、AHF(z)から導出され、「HF知覚フィルタ」と呼ばれる。この2つのフィルタリングされた信号のエネルギが、それぞれモジュール10.013および10.026で5msごとに計算され、モジュール10.013および10.026によって計算されたエネルギの間の比が、除算器10.027によって計算され、モジュール10.016でdB単位で表される。20msフレーム内に、4つのそのような利得がある(5msサブフレームごとに1つ)。この4利得ベクトルは、HF信号エネルギを正しく一致させるためにHF信号に適用されなければならない利得を表す。
この利得を直接に伝送するのではなく、推定された利得比が、まず、下側帯域からのフィルタの利得
Figure 0004861196
と上側帯域からのフィルタの利得
Figure 0004861196
を比較することによって計算される。この利得比推定値は、図10Bに詳細に示されており、次の説明で説明する。この利得比推定値が、モジュール10.010で、5msごとに補間され、dB単位で表され、測定された利得比から減算される。図10A及びBで
Figure 0004861196
から
Figure 0004861196
と表される結果の利得差または利得相関が、モジュール10.009で量子化される。この利得相関は、4次元ベクトルすなわち20msフレームごとに4つの値として量子化することができ、その後、伝送のためにマルチプレクサ10.029に供給される。
モジュール10.007でフィルタ
Figure 0004861196
および
Figure 0004861196
から計算された利得推定値を、図10Bで説明する。この2つのフィルタは、デコーダ側で使用可能である。サンプルあたりナイキスト周波数πラジアンでの減衰する正弦波の最初の64個のサンプルが、まず、1極フィルタ10.017を介して単位インパルスδ(n)をフィルタリングすることによって計算される。ナイキスト周波数が使用されるのは、目標が、約6400HzですなわちLF信号とHF信号の間の接続周波数でフィルタ利得を一致させることであるからである。ここで、この基準信号の64サンプル長は、サブフレーム長(5ms)である。次に、減衰する正弦波h(n)を、まずフィルタ
Figure 0004861196
10.018を介してフィルタリングして低周波数残差を得、次に、フィルタ
Figure 0004861196
10.019を介してフィルタリングして、HF合成フィルタからの合成信号を得る。フィルタ
Figure 0004861196
および
Figure 0004861196
が、サンプルあたりπラジアンの正規化された周波数で同一の利得を有する場合に、フィルタ10.019の出力x(n)のエネルギは、フィルタ10.018の入力h(n)(減衰する正弦波)のエネルギと同等である。利得が異なる場合には、この利得差を、フィルタ10.019の出力での信号x(n)のエネルギで考慮に入れる。訂正利得は、信号x(n)のエネルギが減る時に実際に増えなければならない。したがって、利得訂正は、モジュール10.028で、対数領域(すなわち、dB単位)で信号x(n)のエネルギの逆数として計算される。真のエネルギ比を得るために、dB単位の減衰する正弦波h(n)のエネルギを、モジュール10.028の出力から除去しなければならない。しかし、このエネルギオフセットは定数なので、モジュール10.009の利得訂正コーダで単純に考慮に入れられる。最後に、モジュール10.007からの利得が、モジュール10.010によって減算される前に、補間され、dB単位で表される。
デコーダでは、HF信号の利得を、デコーダで既知のHFコーディングデバイス1.003の出力をモジュール11.009でコーディングされたデコードされた利得訂正に加算することによって回復することができる。
デコーダの詳細な説明
デコーダの役割は、コーディングされたパラメータをビットストリームから読み取り、再構成されたオーディオスーパーフレームを合成することである。デコーダの高水準ブロック図を図11に示す。
前述の説明で示したように、各80msスーパーフレームは、等しいサイズの4つの連続する2進パケットにコーディングされる。この4つのパケットが、デコーダの入力を形成する。チャネルイレージャに起因して、すべてのパケットが使用可能ではない場合があるので、主デマルチプレクサ11.001は、4つのパケットのうちのどれが受け取られたかを示す4つの不良フレームインジケータBFI = (bfi0, bfi1, bfi2, bfi3)も入力として受け取る。k番目のパケットが受け取られた時にbfik = 0であり、k番目のパケットが失われた時にbfik = 1であると仮定する。4つのパケットのサイズは、コーダによって使用されたビットレートを示す入力bit_rate_flagによってデマルチプレクサ11.001に指定される。
主デマルチプレクシング
デマルチプレクサ11.001は、単純に、コーダのマルチプレクサと逆の動作を行う。パケットkのエンコードされたパラメータに関連するビットは、パケットkが使用可能である時すなわち、bfik = 0である時に抽出される。
前述の説明で示したように、コーディングされたパラメータは、3つのカテゴリすなわち、モードインジケータ、LFパラメータ、およびHFパラメータに分類される。モードインジケータは、コーダでどのエンコーディングモードが使用されたか(ACELP、TCX20、TCX40、またはTCX80)を指定する。主デマルチプレクサ11.001がこれらのパラメータを回復した後に、これらのパラメータは、それぞれモード外挿モジュール11.002、ACELP/TCXデコーダ11.003)、およびHFデコーダ11.004によってデコードされる。このデコーディングは、2つの信号すなわちLF合成信号およびHF合成信号をもたらし、これらの信号が組み合わされて、後処理および合成フィルタバンク11.005のオーディオ出力が形成される。入力フラグFSが、出力サンプリングレートがどれであるかをデコーダに示すと仮定する。一実施形態で、許容されるサンプリングレートは、16kHz以上である。
図11のモジュールを、次の説明で説明する。
LF信号ACELP/TCXデコーダ11.003
LF信号のデコーディングに、本質的にACELP/TCXデコーディングが含まれる。この手順を、図12で説明する。ACELP/TCXデマルチプレクサ12.001が、MODEの値に基づいて、コーディングされたLFパラメータを抽出する。具体的には、LFパラメータが、一方ではISFパラメータ、他方ではACELP固有パラメータまたはTCX固有パラメータに分割される。
LFパラメータのデコーディングは、主ACELP/TCXデコーディング制御ユニット12.002によって制御される。具体的には、この主ACELP/TCXデコーディング制御ユニット12.002は、制御信号をISFデコーディングモジュール12.003、ISP補間モジュール12.005、ならびにACELPデコーダ12.007およびTCXデコーダ12.008に送る。主ACELP/TCXデコーディング制御ユニット12.002は、ACELPデコーダ12.007とTCXデコーダ12.008の間の切替をも、この2つのデコーダへの正しい入力をセットし、スイッチセレクタ12.009をアクティブ化することによって処理する。主ACELP/TCXデコーディング制御ユニット12.002は、さらに、LF信号の出力バッファ12.010を制御し、その結果、ACELPデコードされたフレームまたはTCXデコードされたフレームが80ms出力バッファの正しい時間セグメントに書き込まれるようにする。
主ACELP/TCXデコーディング制御ユニット12.002は、LFデコーダの内部の制御データすなわち、BFI_ISF、nb (ISP補間に関するサブフレーム数)、bfi_acelp、LTCX (TCXフレーム長)、BFI_TCX、switch_flag、およびframe_selector (出力LFバッファ12.010でのフレームポインタをセットするため)を生成する。これらのデータの性質を、下で定義する。
・BFI_ISFは、2D整数ベクトルBFI_ISF = (bfi1st_stage bfi2nd_stage)として展開することができ、ISFデコーディング用の不良フレームインジケータからなる。値bfi1st_stageは、2進数であり、ISFの第1ステージが使用可能である場合にbfi1st_stage = 0、これが失われた場合にbfi1st_stage = 1である。値0 ≦ bfi2nd_stage ≦ 31は、ISF第2ステージの5分割のそれぞれの不良フレームインジケータを提供する5ビットフラグであり、bfi2nd_stage = bfi1st_split + 2 * bfi2nd_split + 4 * bfi3rd_split + 8 * bfi4th_split + 16 * bfi5th_splitであり、ここで、分割kが使用可能な場合にbfikth_split = 0であり、そうでない場合にはbfikth_splitは1と等しい。上で説明したビットストリームフォーマットを用いると、bfi1st_stageの値とbfi2nd_stageの値を、次のようにBFI = ( bfi0 bfi1 bfi2 bfi3)から計算することができる。
パケットkのACELPまたはTCX20について、BFI_ISF = ( bfik )、
パケットkおよびk + 1のTCX40について、BFI_ISF = ( bfik (31*bfik+1) )、
パケットk = 0から3のTCX80について、BFI_ISF = (bfi0 (bfi1 + 6*bfi2 + 20*bfi3))
BFI_ISFのこれらの値は、ISF量子化のビットをパックするのに使用されるビットストリームフォーマットと、ステージおよび分割がコーダタイプ(ACELP/TCX20、TCX40、またはTCX80)に応じて1つまたは複数のパケットにどのように分配されるかとによって直接に説明することができる。
・ISF補間に関するサブフレーム数は、ACELPデコードされたフレームまたはTCXデコードされたフレーム内の5msサブフレーム数を指す。したがって、ACELPおよびTCX20ではnb = 4であり、TCX40では8、TCX80では16である。
・bfi_acelpは、ACELPパケット消失を示す2進フラグである。これは、パケットkのACELPフレームについて、単純にbfi_acelp = bfikとしてセットされる。
・TCXフレーム長(サンプル単位)は、TCX20ではLTCX = 256 (20ms)、TCX40では512 (40ms)、TCX80では1024 (80ms)によって与えられる。これは、ブロッキング効果を減らすためにTCXで使用されるオーバーラップを考慮に入れていない。
・BFI_TCXは、TCXデコーダにパケット消失をシグナリングするのに使用される2進ベクトルであり、パケットkのTCX20ではBFI_TCX = (bfik)、パケットkおよびk + 1のTCX40では( bfik bfik+1 )、TCX80ではBFI_TCX = BFIである。
ACELP/TCXデコーディング制御ユニット12.002によって生成される他のデータは、非常に自己説明的である。スイッチセレクタ12.009は、デコーダフレームのタイプ(ACELPまたはTCX)に従って制御される。frame_selectorデータは、スーパーフレームの正しい20msセグメントへのデコーダフレーム(ACELPもしくはTCX20、TCX40、またはTCX80)の書込を可能にする。図12では、一部の補助データも、ACELP_ZIRおよびrmswsynなどとして現れている。これらのデータは、後続の段落で定義する。
ISFデコーディングモジュール12.003は、AMR-WB音声コーディング標準規格で定義されたISFデコーダに対応し、不良フレームの処理を除いて同一のMA予測テーブルおよび量子化テーブルを使用する。AMR-WBデバイスと比較した相違は、単一の2進不良フレームインジケータの代わりにBFI_ISF = (bfi1st_stage bfi2nd_stage)を使用することである。ISFクォンタイザの第1ステージが失われた(すなわちbfi1st_stage = 1)場合に、ISFパラメータは、AMR-WB ISFデコーダのフレームイレージャコンシールメントを使用して単純にデコードされる。第1ステージが使用可能である(すなわちbfi1st_stage = 0)場合には、この第1ステージがデコードされる。第2ステージ分割ベクトルは、これらが使用可能な場合に限って、デコードされた第1ステージに累算される。再構成されたISF残差が、MA予測およびISF平均ベクトルに加算されて、再構成されたISFパラメータが形成される。
コンバータ12.004は、ISFパラメータ(周波数領域で定義される)をISPパラメータ(コサイン領域で定義される)に変換する。この動作は、AMR-WB音声コーディングから採用されたものである。
ISP補間モジュール12.005は、前にデコードされたフレーム(ACELP/TCX20、TCX40、またはTCX80)のISPパラメータとデコードされたISPパラメータの間の単純な線形補間を実現する。この補間は、ISP領域で行われ、次の式に従って、各5msサブフレームのISPパラメータをもたらす。
ispsubframe-i = i/nb * ispnew + (1-i/nb) * ispold,
ただし、nbは、現在のデコードされたフレーム内のサブフレーム数(ACELPおよびTCX20ではnb = 4、TCX40では8、TCX80では16)であり、i = 0, ..., nb-1は、サブフレームインデックスであり、ispoldは、前にデコードされたフレーム(ACELP、TCX20/40/80)のデコードされたISFパラメータから得られたISPパラメータの組であり、ispnewは、デコーダ12.003でデコードされたISFパラメータから得られたISPパラメータの組である。補間されたISPパラメータは、次に、コンバータ12.006で各サブフレームの線形予測係数に変換される。
ACELPデコーダ12.007およびTCXデコーダ12.008は、全体的なACELP/TCXデコーディングの説明の終りで別々に説明する。
ACELP/TCX切替
ブロック図の形の図12の説明は、図13の流れ図で完了するが、図13では、ACELPとTCXの間の切替がMODEのスーパーフレームモードインジケータに基づいてどのように処理されるかが正確に定義されている。したがって、図13は、図12のモジュール12.003から12.006がどのように使用されるかを説明するものである。
ACELP/TCXデコーディングの主要な態様の1つが、ACELPとTCXの間ならびにTCXフレームの間のシームレスな切替を可能にするために、過去にデコードされたフレームからのオーバーラップを処理することである。図13は、デコーディング側に関するこの主要な特徴を詳細に提示する図である。
オーバーラップは、単一の10msバッファ: OVLP_TCXからなる。過去にデコードされたフレームがACELPフレームである場合に、OVLP_TCX = ACELP_ZIRは、前のACELPフレームの重み付き領域でのLP合成フィルタの0入力応答(ZIR) (1/A(z))を記憶する。過去にデコードされたフレームがTCXフレームである場合に、TCX20では最初の2.5ms (32サンプル)、TCX40では5ms (64サンプル)、TCX80では10ms (128サンプル)だけが、OVLP_TCXで使用される(他のサンプルには0がセットされる)。
図13に示されているように、ACELP/TCXデコーディングは、MODEのモードインジケータの順次解釈に頼る。パケット番号およびデコードされたフレームインデックスkは、0から3まで増分される。動作13.002、13.003、および13.021から13.023によって実現されるループは、80msスーパーフレームの4つのパケットを順次処理することを可能にする。動作13.005、13.006、および13.009から13.011の説明は、スキップする。というのは、これらが、上で説明したISFデコーディング、ISFからISPへの変換、ISP補間、およびISPからA(z)への変換を実現するからである。
ACELPをデコードする時(すなわち、動作13.012の検出でmk=0の時)には、バッファACELP_ZIRを更新し、TCXオーバーラップの長さovp_lenに0をセットする(動作13.013および16.017)。ACELP_ZIRの実際の計算は、ACELPデコーディングを扱う次の段落で説明する。
TCXをデコードする時には、バッファOVLP_TCXを更新し(動作13.014から13.016)、TCXオーバーラップの実際の長さovp_lenに、TCX20、TCX40、およびTCX80についてそれぞれ2.5ms、5ms、および10msに等しいサンプル数にセットする(動作13.018から13.020)。OVLP_TCXの実際の計算は、TCXデコーディングを扱う次の段落で説明する。
ACELP/TCXデコーダは、LF合成の後続のピッチ後フィルタリング用の2つのパラメータすなわち、80msスーパーフレームの5msサブフレームごとのピッチ利得gp = (g0, g1, ..., g15)およびピッチラグT = (T0, T1, ..., T15)も計算する。これらのパラメータは、プロセッサ13.001で初期化される。新しいスーパーフレームごとに、ピッチ利得には、デフォルトでk = 0, ..., 15についてgpk = 0がセットされ、ピッチラグは、すべてが64(すなわち、5ms)に初期化される。これらのベクトルは、動作13.013でACELPによってのみ変更され、パケットkでACELPが定義されている場合には、g4k, g4k+1, ..., g4k+3が、各デコードされたACELPサブフレーム内のピッチ利得に対応し、T4k, T4k+1, ..., T4k+3は、ピッチラグである。
ACELPデコーディング
図14に提示されたACELPデコーダは、AMR-WB音声コーディングアルゴリズム[Bessette et al, 2002]から導出される。AMR-WBのACELPデコーダと比較した新しいブロックまたは変更されたブロックが、図14で強調表示されている(これらのブロックに陰をつけることによって)。
第1ステップで、ACELP固有パラメータが、デマルチプレクサ14.001を介して多重化解除される。
図14を参照すると、ACELPデコーディングは、線形組合せgp p(n) + gc c(n)として励振信号r(n)を再構成することからなり、ここで、gpおよびgcは、それぞれピッチ利得および固定コードブック利得であり、Tはピッチラグであり、p(n)は、ピッチフィルタ14.006を介して適応コードブック14.005から導出されたピッチ寄与であり、c(n)は、デコーダ14.008によってデコードされ、モジュール14.012および14.013を介して処理されたACELP革新コードブックインデックスから得られた革新コードブック14.009の後処理されたコードベクトルであり、p(n)は、乗算器14.007で利得gpをかけられ、c(n)は、乗算器14.014で利得gcをかけられ、積gp p(n)およびgc c(n)が、加算器モジュール14.015で加算される。ピッチラグTが分数である場合に、p(n)に、適応コードブック14.005での補間が含まれる。その後、再構成された励振が、合成フィルタ
Figure 0004861196
14.016を通されて、合成s(n)が得られる。この処理は、補間されたLP係数を基礎としてサブフレームに対して実行され、合成は、出力バッファ14.017を介して処理される。ACELPデコーディング処理全体が、主ACELPデコーディングユニット14.002によって制御される。パケットイレージャ(bfi_acelp = 1によってシグナリングされる)は、スイッチセレクタ14.011が革新コードブック14.009からランダム革新コードブック14.010に切り替え、ピッチパラメータおよび利得パラメータを利得デコーダ14.003および14.004内の過去の値から外挿し、外挿されたLP係数に頼ることによって処理される。
AMR-WBのACELPデコーダと比較した変化は、利得デコーダ14.003、モジュール14.018から14.020での重み付き領域での
Figure 0004861196
の0入力応答(ZIR)の計算、ならびにモジュール14.021および14.022での重み付き合成の二乗平均平方根値(rmswsyn)の更新に関する。利得デコーディングは、bfi_acelp = 0または1の時に既に開示した。これは、平均除去されたVQを適用するために平均エネルギパラメータに基づく。
ここでは、
Figure 0004861196
のZIRが、ブロッキング効果を避けながらACELPフレームからTCXフレームに切り替えるために重み付き領域で計算される。関連する処理は、次の3つのステップに分割され、その結果が、ACELP_ZIRによって指示される10msバッファに保管される。
1)カリキュレータが、
Figure 0004861196
の10ms ZIRを計算するが、ここで、LP係数は、最後のACELPサブフレームからとられる(モジュール14.018)。
2)フィルタが、ZIRに知覚的に重みを付ける(モジュール14.019)。
3)ハイブリッドフラット-三角形ウィンドウイング(ウィンドウジェネレータを介する)をモジュール14.020で10ms重み付きZIRに適用した後に、ACELP_ZIRが見つかる。このステップでは、下で定義される10msウィンドウw(n)を使用する。
n = 0, ..., 63の場合にはw(n) = 1
n = 64, ..., 127の場合にはw(n) = (128-n)/64
モジュール14.020が、必ずOVLP_TCX = ACELP_ZIRとしてOVLP_TCXを更新することに留意されたい。
パラメータrmswsynは、ACELPデコーダで更新される。というのは、これが、パケットイレージャコンシールメントのためにTCXデコーダで使用されるからである。ACELPデコードされたフレームでのこの更新は、サブフレームごとに知覚重み付けフィルタ14.021で重み付きACELP合成sw(n)を計算することと、モジュール14.022で
Figure 0004861196
を計算することからなり、ここで、L=256 (20 ms)は、ACELPフレーム長である。
TCXデコーディング
TCXデコーダの一実施形態を、図15に示す。スイッチセレクタ15.017は、次の2つの異なるデコーディングの事例を処理するのに使用される。
事例1:TCXフレーム長が20msであり、関連するパケットが失われたすなわちBFI_TCX = 1の時の、モジュール15.013から15.016を介するTCX20のパケットイレージャコンシールメントと、
事例2:おそらくはモジュール15.001から15.012を介する部分的パケット消失を伴う通常のTCXデコーディング。
事例1では、TCX20フレームをデコードするための情報が使用可能でない。TCX合成は、
Figure 0004861196
とほぼ同等の非線形フィルタ(モジュール15.014から15.016)を介して、励振バッファ15.013に保管され、Tだけ遅延された、前にデコードされたTCXフレームからの過去の励振を処理することによって行われ、ここで、T = pitch_tcxは、前にデコードされたTCXフレームで推定されたピッチラグである。非線形フィルタをフィルタ
Figure 0004861196
の代わりに使用して、合成でのクリックを防ぐ。このフィルタは、3つのブロックすなわち、Tだけ遅延された励振をTCXターゲット領域に写像する伝達関数
Figure 0004861196
を有するフィルタ15.014と、振幅を±rmswsynに制限するリミッタ15.015と、最後に、合成を見つけるための、伝達関数
Figure 0004861196
を有するフィルタ15.016に分解される。バッファOVLP_TCXには、この事例では0がセットされる。
事例2では、TCXデコーディングに、デマルチプレクサ15.001およびVQパラメータデコーダ15を介して代数VQパラメータをデコードすることが含まれる。このデコーディング動作は、この説明の別の部分で提示する。前述の説明で示したように、変換係数の集合Y = [ Y0 Y1 ... YN-1 ]、ただしTCX20、TCX40、およびTCX80についてそれぞれN = 288、576、および1152 は、格子RE8で表される次元8のK個のサブベクトル(連続する変換係数のブロック)に分割される。サブベクトルの個数kは、TCX20、TCX40、およびTCX80についてそれぞれ36、72、および144である。したがって、係数Yは、Y = [Y0 Y1 .... YK-1]として展開することができ、ここで、Yk= [ Y8k ... Y8k+7]であり、k=0, .., K-1である。
雑音フィルインレベルσnoiseは、コーダで使用された3ビット均一スカラ量子化を逆転することによって、雑音フィルインレベルデコーダ15.003でデコードされる。インデックス0 ≦ idx1 ≦ 7について、σnoiseは、σnoise = 0.1 * (8 - idx1)によって与えられる。しかし、idx1が使用可能でないことがありえる。これは、TCX20でBFI_TCX = (1)、TCX40で(1 x)、TCX80で(x 1 x x)の場合にあてはまり、ここで、xは、任意の2進数値を表す。この場合に、σnoiseには、その最大値がセットされる、すなわち、σnoise = 0.8である。
コンフォートノイズが、0に丸められたサブベクトルYkに注入され、約6400/6 ≒ 1067Hzを超える周波数に対応する(モジュール15.004)。正確には、Zが、Z = Yとして初期化され、K/6 ≦ k ≦ K (だけ)について、Yk = (0, 0, ..., 0)の場合に、Zkが、次の8次元ベクトルによって置換される。
σnoise * [cos(θ1) sin(θ1) cos(θ2) sin(θ2) cos(θ3) sin(θ3) cos(θ4) sin(θ4) ]
ただし、位相θ1、θ2、θ3、およびθ4は、ランダムに選択される。
適応低周波数デエンファシスモジュール15.005は、各サブベクトルZk、ただしk=0, ... K/4-1の変換係数を係数fack (図21のモジュール21.004)だけスケーリングするが、これは、kに伴って次のように変化する。
X'k = fack Zk, k=0, ..., K/4-1.
係数fackは、実際には、kの区分的に一定な単調増加関数であり、所与のk = kmax < K/4について1で飽和する(すなわち、k < kmaxではfack < 1、k ≧ kmaxではfack = 1)。kmaxの値は、Zに依存する。fackを得るために、各サブベクトルZkのエネルギεkを、次のように計算する(モジュール21.001)。
εk = Zk TZk + 0.01
ここで、項0.01は、0エネルギを避けるために任意にセットされる(εkの逆数を後で計算する)。次に、最初のK/4個のサブベクトルのうちの最大エネルギを検索する(モジュール21.002)。
εmax = max(ε0, ..., εK/4-1)
fackの実際の計算は、下の式によって与えられる(モジュール21.003)。
fac0 = max((ε0max)0.5, 0.1)
fack = max((εkmax)0.5, fack-1)、ただしk=1, ..., K/4-1
支配的ピッチの推定は、エスティメータ15.006によって実行され、その結果、次にデコードされるフレームがTCX20に対応し、関連するパケットが失われた場合に、そのフレームを正しく外挿できるようになる。この推定は、TCXターゲットのスペクトルの最大振幅のピークが支配的ピッチに対応するという前提に基づく。最大値Mの検索は、400Hz未満の周波数
M = maxi=1...N/32 (X'2i)2 + (X'2i+1)2
および最小インデックス1 ≦ imax ≦ N/32に制限され、(X'2i)2 + (X'2i+1)2 = Mも見つけられるようになっている。次に、支配的ピッチを、Test = N / imax (この値は整数でない場合がある)として、複数のサンプルの中で推定する。支配的ピッチは、TCX20のパケットイレージャコンシールメントのために計算される。バッファリング問題を避ける(励振バッファ15.013は20msまでに制限されている)ために、Test > 256サンプル(20ms)の場合には、pitch_tcxに256をセットし、そうではなく、Test ≦ 256の場合には、pitch_tcxに
Figure 0004861196
をセットすることによって、20ms内の複数のピッチ期間を回避するが、ここで、
Figure 0004861196
は、-∞に向かって最も近い整数への丸めを表す。
使用される変換は、一実施形態で、DFTであり、FFTとして実装される。TCXコーダで使用される順序付けに起因して、変換係数X' = (X'0, ..., X'N-1)は、次のようになる。
・X'0は、直流係数に対応し、
・X'1は、ナイキスト周波数(すなわち、時間領域ターゲット信号が12.8kHzでサンプリングされるので6400Hz)に対応し、
・係数X'2kおよびX'2k+1、ただしk = 1..N/2-1は、周波数k(/N/2) * 6400Hzのフーリエ成分の実数部および虚数部である。
FFTモジュール15.007は、必ずX'1を強制的に0にする。この0にすることの後に、時間領域TCXターゲット信号x'wが、逆FFTによってFFTモジュール15.007で見つけられる。
(大域)TCX利得gTCXは、TCXコーダで使用された7ビット対数量子化を逆転することによって、TCX大域利得デコーダ15.008でデコードされる。それを行うために、デコーダ17.008は、
rms = sqrt(1/N(x'w0 2 + x'w1 2 + ... + x'wL-1 2))
としてTCXターゲット信号x'wの二乗平均平方根値を計算する。インデックス0 ≦ idx2 ≦ 127から、TCX利得は、次式によって与えられる。
Figure 0004861196
(対数)量子化ステップは、約0.71dBである。
この利得は、乗算器15.009でx'wをxwにスケーリングするのに使用される。この例示的実施形態で使用されるモード外挿および利得反復戦略から、インデックスidx2が、乗算器15.009から使用可能になる。しかし、部分的なパケット消失(TCX40では1つの消失、TCX80では2つまでの消失)の場合に、idx2の最下位ビットに、デマルチプレクサ15.001でデフォルトで0をセットすることができる。
TCXコーダは、ターゲット信号の変換コーディングの前にオーバーラップを伴うウィンドウイングおよび重み付きZIR除去を使用するので、再構成されるTCXターゲット信号x = (x0, x1, ..., xN-1)は、実際には、合成モジュール15.010でオーバーラップ加算によって見つけられる。オーバーラップ加算は、前にデコードされたフレームのタイプ(ACELPまたはTCX)に依存する。第1ウィンドウジェネレータが、TCXターゲット信号に適応ウィンドウw = [w0 w1 ... wN-1]をかける。
xi := xi * wi, i=0, ..., L-1
ここで、wは、
wi = sin( π/ovlp_len * (i+1)/2 ), i = 0, ..., ovlp_len-1
wi = 1, i = ovlp_len, ..., L-1
wi = cos( π/(L-N) * (i + 1 - L)/2 ), i = L, ..., N-1
によって定義される。
ovlp_len = 0すなわち、前にデコードされたフレームがACELPフレームである場合に、このウィンドウの左部分が、適当なスキップ手段によってスキップされる。次に、過去にデコードされたフレームからのオーバーラップ(OVLP_TCX)が、適当な加算器を介して、ウィンドウイングされた信号xに加算される。
[ x0 ... x128 ] := [ x0 ... x128 ] + OVLP_TCX
ovlp_len = 0の場合に、OVLP_TCXは、xのACELPの10ms重み付きZIR (128サンプル)である。そうでない場合には、
Figure 0004861196
であり、ここで、ovlp_lenは、32、64、または128 (2.5ms、5ms、または10ms)と等しいものとすることができ、これは、前にデコードされたフレームが、それぞれTCX20、TCX40、またはTCX80であることを示す。
再構成されたTCXターゲット信号は、[x0 ... xL]によって与えられ、最後のN-L個のサンプルが、バッファOVLP_TCXに保存される。
Figure 0004861196
再構成されたTCXターゲットは、フィルタ15.011で、逆知覚フィルタ
Figure 0004861196
によってフィルタリングされて、合成が見つけられる。励振も、モジュール15.012で計算されて、ACELP適応コードブックが更新され、後続フレームでのTCXからACELPへの切替が可能にされる。TCX合成の長さが、TCXフレーム長(オーバーラップなし)すなわち20ms、40ms、または80msによって与えられることに留意されたい。
高周波数(HF)信号のデコーディング
HF信号のデコーディングは、ある種の帯域幅拡張(BWE)機構を実施し、LFデコーダからのあるデータを使用する。これは、AMW-WB音声デコーダで使用されるBWE機構の進化である。HFデコーダの構造を、図16にブロック図の形で示す。HF合成チェーンは、モジュール16.012から16.014からなる。正確には、HF信号は、2ステップすなわち、HF励振信号の計算と、HF励振信号からのHF信号の計算で合成される。HF励振は、時間領域で(乗算器16.012)5msサブフレームごとのスケール係数(または利得)を用いてLF励振信号をシェーピングすることによって得られる。このHF励振は、出力の「バジネス(buzziness)」を減らすためにモジュール16.013で後処理され、その後、伝達関数1/AHF(z)を有するHF線形予測合成フィルタ06.014によってフィルタリングされる。前述の説明で示したように、HF信号をエンコードし、その後にデコードするのに使用されるLP次数は、8である。その結果は、HFエネルギ平滑化モジュール16.015でエネルギ変動を平滑化するために後処理もされる。
HFデコーダは、80ms HFスーパーフレームを合成する。このスーパーフレームは、MODE = (m0, m1, m2, m3)に従ってセグメント化される。具体的には、HFデコーダで使用されるデコードされたフレームは、LFデコーダで使用されるフレームと同期している。したがって、mk ≦ 1、mk = 2、およびmk = 3は、それぞれ20msフレーム、40msフレーム、および80msフレームを示す。これらのフレームを、それぞれHF-20、HF-40、およびHF-80と呼ぶ。
上で説明した合成チェーンから、HFデコーディングに必要なパラメータは、ISFパラメータおよび利得パラメータだけであるように思われる。ISFパラメータは、フィルタ18.014
Figure 0004861196
を表し、利得パラメータは、乗算器16.012を使用してLF励振信号をシェーピングするのに使用される。これらのパラメータは、MODEおよびビットストリームのフォーマットを知ることに基づいて、デマルチプレクサ16.001でビットストリームから多重化解除される。
HFパラメータのデコーディングは、主HFデコーディング制御ユニット16.002によって制御される。具体的には、主HFデコーディング制御ユニット16.002は、線形予測(LP)パラメータのデコーディング(ISFデコーダ16.003)および補間(ISP補間モジュール16.005)を制御する。主HFデコーディング制御ユニット16.002は、ISFデコーダ16.003および利得デコーダ16.009への正しい不良フレームインジケータをセットする。主HFデコーディング制御ユニット16.002は、HF信号の出力バッファ16.016も制御し、その結果、デコードされたフレームが、80ms出力バッファの正しい時間セグメントに書き込まれるようにする。
主HFデコーディング制御ユニット16.002は、HDデコーダの内部の制御データすなわち、bfi_isf_hf、BFI_GAIN、ISF補間のサブフレーム数、および出力バッファ16.016上のフレームポインタをセットするためのフレームセレクタを生成する。自己説明的であるフレームセレクタを除いて、これらのデータの性質を、下で詳細に定義する。
・bfi_isf_hfは、ISFパラメータの消失を示す2進フラグである。その定義は、BFI = (bfi0, bfi1, bfi2, bfi3)から下で与えられ、
パケットk内のHF-20の場合に、bfi_isf_hf = bfikであり、
パケットkおよびk+1内のHF-40の場合に、bfi_isf_hf = bfikであり、
HF-80 (パケットk = 0から3内)の場合に、bfi_isf_hf = bfi0である。
この定義は、ビットストリームフォーマットからたやすく理解することができる。前述の説明で示したように、HF信号のISFパラメータは、必ず、HF-20フレーム、HF-40フレーム、またはHF-80フレームを記述する最初のパケット内にある。
・BFI_GAINは、HF利得デコーダにパケット消失をシグナリングするのに使用される2進ベクトルであり、パケットk内のHF-20の場合にBFI_GAIN = (bfik)、パケットkおよびk+1内のHF-40の場合に(bfik bfik+1)、HF-80の場合にBFI_GAIN = BFIである。
・ISF補間のサブフレーム数は、デコードされたフレーム内の5msサブフレーム数を指す。この数は、HF-20の場合に4、HF-40の場合に8、HF-80の場合に16である。
ISFベクトルisf_hf_qは、ISFデコーダ16.003でAR(1)予測VQを使用してデコードされる。bfi_isf_hf = 0の場合に、第1ステージの2ビットインデックスi1および第2ステージの7ビットインデックスi2が、使用可能であり、isf_hf_qは、
isf_hf_q = cb1(i1) + cb2(i2) + mean_isf_hf + μisf_hf * mem_isf_hf
によって与えられ、ここで、cb1(i1)は、第1ステージのi1番目のコードベクトルであり、cb2(i2)は、第2ステージのi2番目のコードベクトルであり、mean_isf_hfは、平均ISFベクトルであり、μisf_hf = 0.5は、AR(1)予測係数であり、mem_isf_hfは、ISF予測デコーダのメモリである。bfi_isf_hf = 1の場合に、デコードされたISFベクトルは、平均ISFベクトルに向かってシフトされた、前のISFベクトル
isf_hf_q = αisf_hf * mem_isf_hf + mean_isf_hf
に対応し、ここで、αisf_hf = 0.9である。isf_hf_qを計算した後に、AMR-WB音声コーディングで定義されたISF並べ変えを、180HzのISFギャップを用いてisf_hf_qに適用する。最後に、メモリmem_isf_hfを、次のHFフレームに関して
mem_isf_hf = isf_hf_q - mean_isf_hf
として更新する。mem_isf_hfの初期値(デコーダのリセット時の)は、0である。コンバータ16.004が、ISFパラメータ(周波数領域)をISPパラメータ(コサイン領域)に変換する。
ISP補間モジュール16.005は、前にデコードされたHFフレーム(HF-20、HF-40、またはHF-80)のISPパラメータと新たにデコードされたISPパラメータの間の単純な線形補間を実現する。この補間は、ISF領域で行われ、式
ispsubframe-i = i/nb * ispnew + (1-i/nb) * ispold,
に従って、5msサブフレームごとのISFパラメータをもたらすが、ここで、nbは、現在のデコードされたフレーム内のサブフレーム数(HF-20の場合にnb = 4、HF-40の場合に8、HF-80の場合に16)であり、i = 0, ..., nb-1は、サブフレームインデックスであり、ispoldは、前にデコードされたHFフレームのISFパラメータから得られたISPパラメータの組であり、ispnewは、プロセッサ18.003でデコードされたISFパラメータから得られたISPパラメータの組である。次に、コンバータ10.006が、補間されたISPパラメータを、サブフレームごとの量子化された線形予測係数
Figure 0004861196
に変換する。
モジュール16.007でのdB単位の利得gmatchの計算を、次の段落で説明する。この利得は、その以前の値old_gmatchに基づいて、5msサブフレームごとにモジュール16.008で
Figure 0004861196
として補間されるが、ここで、nbは、現在のデコードされたフレーム内のサブフレーム数(HF-20の場合にnb = 4、HF-40の場合に8、HF-80の場合に16)であり、i = 0, ..., nb-1は、サブフレームインデックスである。これは、ベクトル
Figure 0004861196
をもたらす。
6400Hzで大きさを一致させるための利得推定値の計算(モジュール16.007)
プロセッサ16.007を、図10Bで説明する。このプロセスは、LPCフィルタの量子化された版だけを使用するので、コーダが同等のステージで計算したものと同一である。周波数6400Hzの減衰する正弦波が、極z = -0.9を有する1次自己回帰フィルタ1/(1+0.9 z-1) (フィルタ10.017)のインパルス応答h(n)の最初の64個のサンプル[ h(0) h(1) ... h(63) ]を計算することによって生成される。この5ms信号h(n)は、その係数がLFデコーダからとられる次数16の(0状態)プレディクタ(フィルタ10.018)
Figure 0004861196
を介して処理され、その後、その結果が、その係数がHFデコーダからとられる次数8の(0状態)合成フィルタ(フィルタ10.018)
Figure 0004861196
を介して処理されて、信号x(n)が得られる。2組のLP係数は、現在デコードされているHF-20フレーム、HF-40フレーム、またはHF-80フレームの最後のサブフレームに対応する。その後、訂正利得を、モジュール10.028に示されているように、gmatch = 10 log10 [ 1/(x(0)2 + x(1)2 + ... + x(63)2)]としてdB単位で計算する。
LF信号とHF信号の両方のサンプリング周波数が、12800Hzであることを想起されたい。さらに、LF信号は、低域オーディオ信号に対応し、HF信号は、スペクトル的に高域オーディオ信号の折り畳まれた版である。HF信号が、6400Hzの正弦波である場合に、HF信号は、合成フィルタバンクの後に、12800Hzではなく6400Hzの正弦波になる。その結果、gmatchは、10^(gmatch/20) / AHF(z)の折り畳まれた周波数応答の大きさが6400Hz前後の1/A(z)の周波数応答の大きさと一致するように設計されているように見える。
訂正利得のデコーディングおよび利得計算(利得デコーダ16.009)
前述の説明で説明したように、利得補間の後に、HFデコーダは、現在デコードされているフレームのnb個のサブフレームのそれぞれの、dB単位の推定された利得(gest 0, gest 1, ..., gest nb-1)をモジュール16.008から得る。さらに、HF-20ではnb = 4、HF-40では8、HF-80では16である。利得デコーダ16.009の役割は、サブフレームごとに、推定された利得に加算器16.010を介して加算される、dB単位の訂正利得をデコードして、デコード利得
Figure 0004861196
を形成することである。
したがって、この利得デコーディングは、予測2ステージVQスケーラ量子化のデコーディングに対応し、この予測は、補間された6400Hz接合マッチング利得によって与えられる。量子化次元は、可変であり、nbと等しい。
第1ステージのデコーディング:
4次元HF利得コードブックの第1ステージの7ビットインデックス0 ≦ idx ≦ 127は、4つの利得(G0, G1, G2, G3)にデコードされる。HF-20、HF-40、およびHF-80の不良フレームインジケータbfi = BFI_GAIN0は、パケット消失の処理を可能にする。bfi = 0の場合に、これらの利得は、
(G0, G1, G2, G3) = cb_gain_hf(idx) + mean_gain_hf
としてデコードされるが、ここで、cb_gain_hf(idx)は、コードブックcb_gain_hfのidx番目のコードベクトルである。bfi = 1の場合に、メモリpast_gain_hf_qが、-20dBに向かってシフトされ、
past_gain_hf_q := αgain_hf * (past_gain_hf_q + 20) - 20
になるが、ここで、αgain_hf = 0.9であり、4つの利得(G0, G1, G2, G3)には、同一の値
Gk = past_gain_hf_q + mean_gain_hf、ただしk = 0、1、2、および3
がセットされる。次に、メモリpast_gain_hf_qが、
past_gain_hf_q := (G0 + G1 + G2 + G3)/4 - mean_gain_hf
として更新される。第1ステージ再構成の計算は、
HF-20: (gc1 0, gc1 1, gc1 2, gc1 3) = (G0, G1, G2, G3)
HF-40: (gc1 0, gc1 1, ..., gc1 7) = (G0, G0, G1, G1, G2, G2, G3, G3)
HF-80: (gc1 0, gc1 1, ..., gc1 15) = (G0, G0, G0, G0, G1, G1, G1, G1, G2, G2, G2, G2, G3, G3, G3, G3)
として与えられる。
第2ステージのデコーディング:
TCX-20では、(gc2 0, gc2 1, gc2 2, gc2 3)に単純に(0, 0, 0, 0)がセットされ、実際の第2ステージデコーディングはない。HF-40では、i番目のサブフレームの2ビットインデックス0 ≦ idxi ≦ 3、ただしi = 0, ..., 7が、
bfi = 0の場合にはgc2 i = 3 * idx1 - 4.5、そうでない場合にはgc2 i = 0
としてデコードされる。TCX-80では、i番目のサブフレームの16個のサブフレームの3ビットインデックス0 ≦ idxi ≦ 7、ただしi = 0, ..., 15が、
bfi = 0の場合にはgc2 i = 3 * idx - 10.5、そうでない場合にはgc2 i = 0
としてデコードされる。
TCX-40では、第2スカラリファインメントの大きさが、±4.5dBまでであり、TCX-80では±10.5dBまでである。どちらの場合でも、量子化ステップは3dbである。
HF利得再構成:
各サブフレームの利得は、モジュール16.011で
Figure 0004861196
として計算される。
バジネス低減モジュール16.013およびHFエネルギ平滑化モジュール16.015)
バジネス低減モジュール16.013の役割は、時間領域でHF励振信号rHF(n)のパルスを減衰させることであり、このパルスは、しばしば、オーディオ出力を「ぶんぶん」鳴らさせる。パルスは、絶対値| rHF(n) | > 2 * thres(n)であるかどうかを検査することによって検出され、ここで、thres(n)は、rHF(n)の時間領域エンベロープに対応する適応閾値である。パルスとして検出されたサンプルrHF(n)は、±2 * thres(n)までに制限され、ここで、±は、rHF(n)の符号である。
HF励振の各サンプルrHF(n)が、1次低域フィルタ0.02/(1 - 0.98 z-1)によってフィルタリングされて、thres(n)が更新される。thres(n)の初期値(デコーダのリセット時の)は、0である。パルス減衰の振幅は、
Δ = max(|rHF(n)|-2*thres(n), 0.0)
によって与えられる。したがって、Δには、現在のサンプルがパルスとして検出されない場合に0がセットされ、これは、rHF(n)を変更されなくする。次に、適応閾値の現在値thres(n)を、
thres(n) := thres(n) + 0.5 * Δ
として変更する。最後に、各サンプルrHF(n)を、rHF(n) ≧ 0の場合にはr'HF(n) = rHF(n) - Δ、そうでない場合にはr'HF(n) = rHF(n) + Δに変更する。
HF合成sHF(n)の短期エネルギ変動は、モジュール16.015で平滑化される。このエネルギは、サブフレームによって測定される。各サブフレームのエネルギが、適応閾値に基づいて、±1.5dBまでの値だけ変更される。
所与のサブフレーム[sHF(0) sHF(1) ... sHF(63)]について、サブフレームエネルギは、
ε2 = 0.0001 + sHF(0)2 + sHF(1)2 + ... + sHF(63)2
として計算される。閾値の値tは
ε2 < tの場合にはt = min( ε2 * 1.414, t)
そうでない場合にはt = max( ε2 / 1.414, t)
として更新される。次に、現在のサブフレームを√(t / ε2)だけスケーリングする。
Figure 0004861196
後処理および合成フィルタバンク
LF合成およびHF合成の後処理およびこの2つの帯域の元のオーディオ帯域幅への再組合せを、図17に示す。
LF合成(ACELP/TCXデコーダの出力である)は、まず、変換関数1/(1-αpreemph z-1)のフィルタ17.001によってプリエンファシスされるが、ここで、αpreemph = 0.75である。その結果を、LFピッチ後フィルタ17.002に通して、ACELPデコードされたセグメント内だけのピッチ高調波の間のコーディング雑音のレベルを下げる。この後フィルタは、パラメータとして、80msスーパーフレームの5msサブフレームごとにピッチ利得gp = (gp0, gp1, ..., gp15)およびピッチラグT = (T0, T1, ..., T15)をとる。これらのベクトルgpおよびTは、ACELP/TCXデコーダからとられる。フィルタ17.003は、AMR-WB音声コーディングで使用される2次の50Hz高域フィルタである。
HF合成の後処理は、遅延モジュール17.005を介して行われ、遅延モジュール17.005は、後処理されたLF合成と同期させるためのHF合成の単純な時間位置合わせを実現する。したがって、HF合成は、LFピッチ後フィルタ17.002によって生成される遅延を補償するために、76サンプルだけ遅延される。
合成フィルタバンクは、LPアップサンプリングモジュール17.004、HFアップサンプリングモジュール17.007、および加算器17.008によって実現される。出力サンプリングレートFS = 16000Hzまたは24000Hzは、パラメータとして指定される。モジュール17.004および17.007での12800HzからFSへのアップサンプリングは、AMR-WB音声コーディングに似た形で実施される。FS = 16000の場合に、LFおよびHFの後フィルタリングされた信号が、5倍アップサンプリングされ、120次FIRフィルタによって処理され、4倍ダウンサンプリングされ、5/4だけスケーリングされる。アップサンプリングモジュール17.004と17.007の間の相違は、120次FIRフィルタの係数に関する。同様に、FS = 24000の場合に、LFおよびHFの後フィルタリングされた信号が、15倍アップサンプリングされ、368次FIRフィルタによって処理され、8倍ダウンサンプリングされ、15/8だけスケーリングされる。加算器17.008が、最終的に2つのアップサンプリングされたLF信号とHF信号を組み合わせて、出力オーディオ信号の80msスーパーフレームを形成する。
本発明を、上記で非制限的な例示的実施形態によって説明したが、本発明の範囲、性質、および趣旨から逸脱せずに、添付請求項の範囲内でこれらの実施形態を随意に変更できることに留意されたい。
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
Figure 0004861196
本発明によるコーダの一実施形態を示す高水準概略ブロック図である。 スーパーフレームの諸フレームタイプのタイミングチャートの非制限的な実施例を示す図である。 線形予測分析用のウィンドウイングの非制限的な実施例を、5msサブフレームに使用され、20ms ACELP、20ms TCX、40ms TCX、または80ms TCXのフレームモードに依存する補間係数と共に示す図である。 現在のフレームモードおよび長さと過去のフレームモードとに依存する、ACELP/TCXコーダ内のフレームウィンドウイングの非制限的な実施例を示す図である。 現在のフレームモードおよび長さと過去のフレームモードとに依存する、ACELP/TCXコーダ内のフレームウィンドウイングの非制限的な実施例を示す図である。 現在のフレームモードおよび長さと過去のフレームモードとに依存する、ACELP/TCXコーダ内のフレームウィンドウイングの非制限的な実施例を示す図である。 TCXフレームに関する、本発明によるコーダの構造およびそのコーダによって実施される方法の一実施形態を示す高水準ブロック図である。 図5Aのコーダによって実行されるスペクトラム前シェーピングの前後の振幅スペクトルの非制限的な例を示すグラフである。 スペクトラム前シェーピング中にスペクトルに適用される利得を判定する重み付け関数の非制限的な実施例を示すグラフである。 代数コーディングが、係数の集合、たとえば、RE8格子を使用する前に説明した自己スケーラブルマルチレート格子ベクトル量子化を基礎とする周波数係数の集合を量子化するのにどのように使用されるかを示す概略ブロック図である。 TCXコーダの対数領域での反復大域利得推定手順の非制限的な実施例を示す流れ図である。この大域推定手順は、所与のフレームのビットバジェット内に留まりながら複雑さを減らすために格子クォンタイザを使用してTCXコーディングで実施されるステップである。 TCXフレーム内の大域利得推定および雑音レベル推定(逆ウォーターフィリング)の非制限的な実施例を示すグラフである。 分割の格子点インデックスを計算する時の、TCXコーディングでのビットバジェットオーバーフローの処理の実施例を示す流れ図である。 帯域幅拡張に基づく高周波数(HF)コーダの非制限的な実施例を示す概略ブロック図である。 図10Aのコーダによって計算される低周波数エンベロープと高周波数エンベロープの間で図10Aのコーダによって実行される利得マッチング手順の非制限的な例を示す概略ブロック図およびグラフである。 本発明によるデコーダの一実施形態を示し、ハイブリッドACELP/TCXを用いてコーディングされた低周波数信号と帯域幅拡張を使用してコーディングされたHF信号の再組合せを示す、高水準ブロック図である。 LF信号に関するACELP/TCXデコーダの非制限的な実施例を示す概略ブロック図である。 80msフレームを形成する4つのパケットを処理する際の、ACELP/TCXデコーディングの背後の論理の非制限的な実施例を示す流れ図である。 図12のACELP/TCXデコーダで使用されるACELPデコーダの非制限的な実施例を示す概略ブロック図である。 図12のACELP/TCXデコーダで使用されるACELPデコーダの非制限的な実施例を示す概略ブロック図である。 図12のACELP/TCXデコーダで使用されるTCXデコーダの非制限的な実施例を示す概略ブロック図である。 図12のACELP/TCXデコーダで使用されるTCXデコーダの非制限的な実施例を示す概略ブロック図である。 帯域幅拡張法を基礎として動作するHFデコーダの非制限的な実施例を示す概略ブロック図である。 デコーダ側での後処理および合成フィルタバンクの非制限的な実施例を示す概略ブロック図である。 LFコーダの非制限的な実施例を示し、ACELPコーダおよびTCXコーダが、競合してどのように試行され、セグメンタルSNR(信号対雑音比)基準を使用して80msスーパーフレーム内のフレームごとに正しいコーディングモードを選択するかを示す、概略ブロック図である。 各80msスーパーフレームでコーダ側で適用される前処理およびサブバンド分解の非制限的な実施例を示す概略ブロック図である。 図5Aのコーダのスペクトル前シェーピングモジュールの動作を示す概略流れ図である。 図15A及び15Bのデコーダの適応低周波数デエンファシスモジュールの動作を示す概略流れ図である。
符号の説明
1.001 プリプロセッサおよび分析フィルタバンク
1.002 LF (ACELP/TCX)コーディングモジュール
1.003 HFコーディングモジュール
1.004 スーパーフレーム
1.005 低周波数(LF)信号
1.006 高周波数(HF)信号
1.007 スーパーフレーム構成情報(またはモード情報)
1.008 LFパラメータ
1.009 HFパラメータ
1.010 マルチプレクサ
1.011 パケット
2.001 第1の20ms ACELPフレーム
2.002 第2の20ms ACELPフレーム
2.003 第3の20ms ACELPフレーム
2.004 第4の20ms ACELPフレーム
2.005 80msスーパーフレーム
2.006 第1の20ms TCxフレーム
2.007 第2の20ms TCxフレーム
2.008 第3の20ms TCxフレーム
2.009 第4の20ms TCxフレーム
2.010 80ms TCXフレーム
2.011 40ms TCXフレーム
2.012 40ms TCXフレーム
5.001 知覚重み付けフィルタ
5.003 適応ウィンドウジェネレータ
5.004 変換モジュール
5.005 前シェーピングモジュール
5.006 代数量子化モジュール
5.007 スペクトルデシェーピングモジュール
5.009 利得計算および量子化モジュール
5.014 加算器
5.100 カリキュレータ
6.001 分割エネルギ推定モジュール
6.002 大域利得および雑音レベル推定モジュール
6.003 ディバイダ
6.004 分割自己スケーラブルマルチレートRE8コーディングモジュール
6.005 ビットバジェットオーバーフロー処理および分割インデクシングモジュール
6.007 ビットストリームマルチプレクサ
10.003 モジュール
10.004 モジュール
10.005 モジュール
10.006 モジュール
10.007 モジュール
10.009 モジュール
10.010 モジュール
10.011 モジュール
10.012 モジュール
10.013 モジュール
10.014 残差フィルタ
10.015 量子化HF合成フィルタ
10.016 モジュール
10.017 1極フィルタ
10.018 フィルタ
10.019 フィルタ
10.020 モジュール
10.021 モジュール
10.022 モジュール
10.023 モジュール
10.024 モジュール
10.025 モジュール
10.026 モジュール
10.027 除算器
10.028 モジュール
10.029 マルチプレクサ
11.001 主デマルチプレクサ
11.002 モード外挿モジュール
11.003 ACELP/TCXデコーダ
11.004 HFデコーダ
11.005 後処理および合成フィルタバンク
12.001 ACELP/TCXデマルチプレクサ
12.002 主ACELP/TCXデコーディング制御ユニット
12.003 ISFデコーディングモジュール
12.004 コンバータ
12.005 ISP補間モジュール
12.006 コンバータ
12.007 ACELPデコーダ
12.008 TCXデコーダ
12.009 スイッチセレクタ
12.010 出力バッファ
14.001 デマルチプレクサ
14.002 ACELPデコーディングユニット
14.003 利得デコーダ
14.004 利得デコーダ
14.005 適応コードブック
14.006 ピッチフィルタ
14.007 乗算器
14.008 デコーダ
14.009 革新コードブック
14.010 ランダム革新コードブック
14.011 スイッチセレクタ
14.012 モジュール
14.013 モジュール
14.014 乗算器
14.015 加算器モジュール
14.017 出力バッファ
14.018 モジュール
14.019 モジュール
14.020 モジュール
14.021 モジュール
14.022 モジュール
15.001 デマルチプレクサ
15.002 VQパラメータデコーダ
15.003 雑音フィルインレベルデコーダ
15.004 モジュール
15.005 適応低周波数デエンファシスモジュール
15.006 エスティメータ
15.007 FFTモジュール
15.008 TCX大域利得デコーダ
15.009 マルチプレクサ
15.010 合成モジュール
15.011 フィルタ
15.012 モジュール
15.013 励振バッファ
15.014 非線形フィルタ
15.015 リミッタ
15.016 非線形フィルタ
15.017 スイッチセレクタ
16.001 デマルチプレクサ
16.002 主HFデコーディング制御ユニット
16.003 ISFデコーダ
16.004 コンバータ
16.005 ISP補間モジュール
16.006 コンバータ
16.007 プロセッサ
16.008 モジュール
16.009 利得デコーダ
16.010 加算器
16.011 モジュール
16.012 乗算器
16.013 バジネス低減モジュール
16.014 HF線形予測合成フィルタ
16.015 HFエネルギ平滑化モジュール
16.016 出力バッファ
17.001 フィルタ
17.002 LFピッチ後フィルタ
17.003 フィルタ
17.004 LFアップサンプリングモジュール
17.005 遅延モジュール
17.007 HFアップサンプリングモジュール
17.008 加算器
18.002 モジュール
18.003 モジュール
18.004 モジュール
18.005 モジュール
18.006 モジュール
18.007 モジュール
18.008 モジュール
18.009 モジュール
18.010 モジュール
18.011 モジュール
18.013 知覚重み付けフィルタ
18.014 フィルタ
18.015 ACELPコーダ
18.016 TCXコーダ
18.017 セレクタスイッチ
18.018 知覚重み付けフィルタ
18.019 減算器
18.020 セグメンタルSNR計算ユニット
18.021 ACELP/TCXマルチプレクサ
19.001 HFダウンサンプリングモジュール
19.002 LFダウンサンプリングモジュール
19.003 高域フィルタ
19.004 デエンファシスフィルタ
20.001 カリキュレータ
20.002 カリキュレータ
20.003 モジュール
20.004 モジュール
20.005 モジュール
20.006 モジュール
20.007 モジュール
20.008 カリキュレータ
21.001 モジュール
21.002 モジュール
21.003 モジュール
21.004 モジュール

Claims (24)

  1. 第1サウンド信号コーディングモードに従ってコーディングされた前のフレームと第2サウンド信号コーディングモードに従ってコーディングされた現在のフレームとの接合点で前記第1コーディングモードから前記第2コーディングモードに切り替える方法であって、前記サウンド信号が、前記現在のフレームで重み付き信号を作るために重み付けフィルタを介してフィルタリングされ、
    前記重み付けフィルタの0入力応答を計算することと、
    前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングすることと、
    前記現在のフレームで、前記重み付き信号から前記ウィンドウイングされた0入力応答を除去することと
    を含む方法。
  2. 前記第1コーディングモードが、ACELPコーディングモードであり、前記第2コーディングモードが、TCXコーディングモードである、請求項1に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替える方法。
  3. 前記0入力応答をウィンドウイングすることが、前記0入力応答を前記所定の時間期間までに切り捨てることを含む、請求項1に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替える方法。
  4. 前記ウィンドウイングされた0入力応答が前記重み付き信号から除去された後に、前記重み付き信号を所定の持続時間のTCXフレームにウィンドウイングすることを含む、請求項1に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替える方法。
  5. 所定の持続時間のTCXフレームにウィンドウイングされた前記重み付き信号を周波数領域に変換することをさらに含む、請求項4に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替える方法。
  6. 前記重み付けフィルタが、知覚重み付けフィルタである、請求項1に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替える方法。
  7. 第1サウンド信号コーディングモードに従ってコーディングされた前のフレームと第2サウンド信号コーディングモードに従ってコーディングされた現在のフレームとの接合点で前記第1コーディングモードから前記第2コーディングモードに切り替えるデバイスであって、前記サウンド信号が、前記現在のフレームで重み付き信号を作るために重み付けフィルタを介してフィルタリングされ、
    前記重み付けフィルタの0入力応答を計算する手段と、
    前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングする手段と、
    前記現在のフレームで、前記重み付き信号から前記ウィンドウイングされた0入力応答を除去する手段と
    を含むデバイス。
  8. 第1サウンド信号コーディングモードに従ってコーディングされた前のフレームと第2サウンド信号コーディングモードに従ってコーディングされた現在のフレームとの接合点で前記第1コーディングモードから前記第2コーディングモードに切り替えるデバイスであって、前記サウンド信号が、前記現在のフレームで重み付き信号を作るために重み付けフィルタを介してフィルタリングされ、
    前記重み付けフィルタの0入力応答のカリキュレータと、
    前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングするウィンドウジェネレータと、
    前記現在のフレームで、前記重み付き信号から前記ウィンドウイングされた0入力応答を除去する加算器と
    を含むデバイス。
  9. 前記第1コーディングモードが、ACELPコーディングモードであり、前記第2コーディングモードが、TCXコーディングモードである、請求項8に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替えるデバイス。
  10. 前記ウィンドウジェネレータが、前記0入力応答を前記所定の時間期間までに切り捨てる、請求項8に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替えるデバイス。
  11. 前記ウィンドウイングされた0入力応答が前記重み付き信号から除去された後に、前記重み付き信号を所定の持続時間のTCXフレームにウィンドウイングするもう1つのウィンドウジェネレータを含む、請求項8に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替えるデバイス。
  12. 動作時に、所定の持続時間のTCXフレームにウィンドウイングされた前記重み付き信号を周波数領域に変換する周波数変換モジュールをさらに含む、請求項11に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替えるデバイス。
  13. 前記重み付けフィルタが、知覚重み付けフィルタである、請求項1に記載の第1サウンド信号コーディングモードから第2サウンド信号コーディングモードに切り替えるデバイス。
  14. デコードされたターゲット信号から、第1コーディングモードに従ってコーディングされた現在のフレーム内のオーバーラップ加算ターゲット信号を作る方法であって、
    前記現在のフレームの前記デコードされたターゲット信号を所与のウィンドウ内でウィンドウイングすることと、
    前記ウィンドウの左部分をスキップすることと、
    第2コーディングモードに従ってコーディングされた前のフレームの重み付けフィルタの0入力応答を計算し、前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングすることと、
    前記オーバーラップ加算ターゲット信号を再構成するために前記計算された0入力応答を前記デコードされたターゲット信号に加算することと
    を含む方法。
  15. 前記計算された0入力応答をウィンドウイングする前に、前記計算された0入力応答に重みを付けることを含む、請求項14に記載のオーバーラップ加算ターゲット信号を作る方法。
  16. 前記計算された0入力応答に重みを付けることが、前記計算された0入力応答に知覚的に重みを付けることを含む、請求項15に記載のオーバーラップ加算ターゲット信号を作る方法。
  17. 前記現在のフレームのサンプルの最後の部分をバッファに保存することを含む、請求項14に記載のオーバーラップ加算ターゲット信号を作る方法。
  18. 前記ウィンドウイングされた計算された0入力応答が、10ms後に0まで単調に減少する振幅を有する、請求項14に記載のオーバーラップ加算ターゲット信号を作る方法。
  19. デコードされたターゲット信号から、第1コーディングモードに従ってコーディングされた現在のフレーム内のオーバーラップ加算ターゲット信号を作るデバイスであって、
    前記現在のフレームの前記デコードされたターゲット信号を所与のウィンドウ内でウィンドウイングする手段と、
    前記ウィンドウの左部分をスキップする手段と、
    第2コーディングモードに従ってコーディングされた前のフレームの重み付けフィルタの0入力応答を計算する手段および前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングする手段と、
    前記オーバーラップ加算ターゲット信号を再構成するために前記計算された0入力応答を前記デコードされたターゲット信号に加算する手段と
    を含むデバイス。
  20. デコードされたターゲット信号から、第1コーディングモードに従ってコーディングされた現在のフレーム内のオーバーラップ加算ターゲット信号を作るデバイスであって、
    前記現在のフレームの前記デコードされたターゲット信号を所与のウィンドウ内でウィンドウイングする第1ウィンドウジェネレータと、
    前記ウィンドウの左部分をスキップする手段と、
    第2コーディングモードに従ってコーディングされた前のフレームの重み付けフィルタの0入力応答のカリキュレータおよび前記0入力応答が所定の時間期間の後に0まで単調に減少する振幅を有するように前記0入力応答をウィンドウイングする第2ウィンドウジェネレータと、
    前記オーバーラップ加算ターゲット信号を再構成するために前記計算された0入力応答を前記デコードされたターゲット信号に加算する加算器と
    を含むデバイス。
  21. 前記計算された0入力応答をウィンドウイングする前に、前記計算された0入力応答に重みを付けるフィルタを含む、請求項20に記載のオーバーラップ加算ターゲット信号を作るデバイス。
  22. 前記重み付けフィルタが、知覚重み付けフィルタである、請求項21に記載のオーバーラップ加算ターゲット信号を作るデバイス。
  23. 前記現在のフレームのサンプルの最後の部分を保存するバッファを含む、請求項20に記載のオーバーラップ加算ターゲット信号を作るデバイス。
  24. 前記ウィンドウイングされた計算された0入力応答が、10ms後に0まで単調に減少する振幅を有する、請求項20に記載のオーバーラップ加算ターゲット信号を作るデバイス。
JP2006553403A 2004-02-18 2005-02-18 Acelp/tcxに基づくオーディオ圧縮中の低周波数強調の方法およびデバイス Active JP4861196B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CA2,457,988 2004-02-18
CA002457988A CA2457988A1 (en) 2004-02-18 2004-02-18 Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
PCT/CA2005/000220 WO2005078706A1 (en) 2004-02-18 2005-02-18 Methods and devices for low-frequency emphasis during audio compression based on acelp/tcx

Publications (2)

Publication Number Publication Date
JP2007525707A JP2007525707A (ja) 2007-09-06
JP4861196B2 true JP4861196B2 (ja) 2012-01-25

Family

ID=34842422

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006553403A Active JP4861196B2 (ja) 2004-02-18 2005-02-18 Acelp/tcxに基づくオーディオ圧縮中の低周波数強調の方法およびデバイス

Country Status (12)

Country Link
US (2) US7979271B2 (ja)
EP (1) EP1719116B1 (ja)
JP (1) JP4861196B2 (ja)
CN (1) CN1957398B (ja)
AU (1) AU2005213726A1 (ja)
BR (1) BRPI0507838A (ja)
CA (2) CA2457988A1 (ja)
DK (1) DK1719116T3 (ja)
ES (1) ES2433043T3 (ja)
PT (1) PT1719116E (ja)
RU (1) RU2389085C2 (ja)
WO (1) WO2005078706A1 (ja)

Families Citing this family (195)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7483386B2 (en) * 2005-03-31 2009-01-27 Alcatel-Lucent Usa Inc. Adaptive threshold setting for discontinuous transmission detection
US7707034B2 (en) * 2005-05-31 2010-04-27 Microsoft Corporation Audio codec post-filter
FR2888699A1 (fr) * 2005-07-13 2007-01-19 France Telecom Dispositif de codage/decodage hierachique
JP4876574B2 (ja) 2005-12-26 2012-02-15 ソニー株式会社 信号符号化装置及び方法、信号復号装置及び方法、並びにプログラム及び記録媒体
EP1984911A4 (en) * 2006-01-18 2012-03-14 Lg Electronics Inc DEVICE AND METHOD FOR SIGNAL CODING AND DECODING
WO2007107670A2 (fr) * 2006-03-20 2007-09-27 France Telecom Procede de post-traitement d'un signal dans un decodeur audio
ATE533289T1 (de) * 2006-05-26 2011-11-15 Incard Sa Verfahren zum implementieren von voice over ip mittels eines mit einem paketorientierten netz verbundenen elektronischen geräts
KR20070115637A (ko) * 2006-06-03 2007-12-06 삼성전자주식회사 대역폭 확장 부호화 및 복호화 방법 및 장치
RU2418322C2 (ru) * 2006-06-30 2011-05-10 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Аудиокодер, аудиодекодер и аудиопроцессор, имеющий динамически изменяющуюся характеристику перекоса
US8682652B2 (en) 2006-06-30 2014-03-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
DE602007014059D1 (de) 2006-08-15 2011-06-01 Broadcom Corp Zeitverschiebung eines dekodierten audiosignals nach einem paketverlust
US8239190B2 (en) * 2006-08-22 2012-08-07 Qualcomm Incorporated Time-warping frames of wideband vocoder
JP4827661B2 (ja) * 2006-08-30 2011-11-30 富士通株式会社 信号処理方法及び装置
WO2008035949A1 (en) * 2006-09-22 2008-03-27 Samsung Electronics Co., Ltd. Method, medium, and system encoding and/or decoding audio signals by using bandwidth extension and stereo coding
US7966175B2 (en) 2006-10-18 2011-06-21 Polycom, Inc. Fast lattice vector quantization
US7953595B2 (en) 2006-10-18 2011-05-31 Polycom, Inc. Dual-transform coding of audio signals
USRE50158E1 (en) 2006-10-25 2024-10-01 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for generating audio subband values and apparatus and method for generating time-domain audio samples
JP5083779B2 (ja) 2006-10-25 2012-11-28 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン オーディオ副帯値を生成する装置及び方法、並びに、時間領域オーディオサンプルを生成する装置及び方法
US20100017197A1 (en) * 2006-11-02 2010-01-21 Panasonic Corporation Voice coding device, voice decoding device and their methods
US8639500B2 (en) * 2006-11-17 2014-01-28 Samsung Electronics Co., Ltd. Method, medium, and apparatus with bandwidth extension encoding and/or decoding
KR101434198B1 (ko) * 2006-11-17 2014-08-26 삼성전자주식회사 신호 복호화 방법
EP1927981B1 (en) * 2006-12-01 2013-02-20 Nuance Communications, Inc. Spectral refinement of audio signals
EP2096631A4 (en) * 2006-12-13 2012-07-25 Panasonic Corp TONE DECODING DEVICE AND POWER ADJUSTMENT METHOD
FR2911031B1 (fr) * 2006-12-28 2009-04-10 Actimagine Soc Par Actions Sim Procede et dispositif de codage audio
FR2911020B1 (fr) * 2006-12-28 2009-05-01 Actimagine Soc Par Actions Sim Procede et dispositif de codage audio
KR101379263B1 (ko) 2007-01-12 2014-03-28 삼성전자주식회사 대역폭 확장 복호화 방법 및 장치
CN101231850B (zh) * 2007-01-23 2012-02-29 华为技术有限公司 编解码方法及装置
US20080208575A1 (en) * 2007-02-27 2008-08-28 Nokia Corporation Split-band encoding and decoding of an audio signal
KR101414359B1 (ko) * 2007-03-02 2014-07-22 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 부호화 장치 및 부호화 방법
JP4871894B2 (ja) * 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
GB0704622D0 (en) * 2007-03-09 2007-04-18 Skype Ltd Speech coding system and method
US8630863B2 (en) * 2007-04-24 2014-01-14 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding audio/speech signal
CN101321033B (zh) * 2007-06-10 2011-08-10 华为技术有限公司 帧补偿方法及系统
CN102271024B (zh) * 2007-06-10 2014-04-30 华为技术有限公司 帧补偿方法及系统
US8788264B2 (en) * 2007-06-27 2014-07-22 Nec Corporation Audio encoding method, audio decoding method, audio encoding device, audio decoding device, program, and audio encoding/decoding system
US20090006081A1 (en) * 2007-06-27 2009-01-01 Samsung Electronics Co., Ltd. Method, medium and apparatus for encoding and/or decoding signal
CN100583649C (zh) 2007-07-23 2010-01-20 华为技术有限公司 矢量编/解码方法、装置及流媒体播放器
BRPI0814129A2 (pt) * 2007-07-27 2015-02-03 Panasonic Corp Dispositivo de codificação de áudio e método de codificação de áudio
JP5098492B2 (ja) * 2007-07-30 2012-12-12 ソニー株式会社 信号処理装置及び信号処理方法、並びにプログラム
JP5045295B2 (ja) * 2007-07-30 2012-10-10 ソニー株式会社 信号処理装置及び方法、並びにプログラム
KR101410229B1 (ko) * 2007-08-20 2014-06-23 삼성전자주식회사 오디오 신호의 연속 정현파 신호 정보를 인코딩하는 방법및 장치와 디코딩 방법 및 장치
WO2009029036A1 (en) 2007-08-27 2009-03-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and device for noise filling
ES2403410T3 (es) 2007-08-27 2013-05-17 Telefonaktiebolaget L M Ericsson (Publ) Frecuencia de transición adaptativa entre el rellenado con ruido y la extensión del ancho de banda
CN100524462C (zh) 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
CN101874266B (zh) * 2007-10-15 2012-11-28 Lg电子株式会社 用于处理信号的方法和装置
US8649437B2 (en) * 2007-12-20 2014-02-11 Qualcomm Incorporated Image interpolation with halo reduction
JP5453304B2 (ja) * 2007-12-20 2014-03-26 クゥアルコム・インコーポレイテッド 適応探索範囲を用いた動き推定
CN101572092B (zh) * 2008-04-30 2012-11-21 华为技术有限公司 编解码端的固定码本激励的搜索方法及装置
WO2010005360A1 (en) * 2008-07-08 2010-01-14 Scalado Ab Method for compressing images and a format for compressed images
ES2645375T3 (es) 2008-07-10 2017-12-05 Voiceage Corporation Dispositivo y método de cuantificación y cuantificación inversa de filtro LPC de tasa de bits variable
EP2144231A1 (en) * 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme with common preprocessing
MY153594A (en) * 2008-07-11 2015-02-27 Fraunhofer Ges Forschung An apparatus and a method for calculating a number of spectral envelopes
KR101227729B1 (ko) * 2008-07-11 2013-01-29 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 샘플 오디오 신호의 프레임을 인코딩하기 위한 오디오 인코더 및 디코더
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
ES2526767T3 (es) * 2008-07-11 2015-01-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificador de audio, procedimiento para codificar una señal de audio y programa de ordenador
MX2011000370A (es) * 2008-07-11 2011-03-15 Fraunhofer Ges Forschung Un aparato y un metodo para decodificar una señal de audio codificada.
KR101381513B1 (ko) 2008-07-14 2014-04-07 광운대학교 산학협력단 음성/음악 통합 신호의 부호화/복호화 장치
PT2146344T (pt) * 2008-07-17 2016-10-13 Fraunhofer Ges Forschung Esquema de codificação/descodificação de áudio com uma derivação comutável
WO2010009098A1 (en) * 2008-07-18 2010-01-21 Dolby Laboratories Licensing Corporation Method and system for frequency domain postfiltering of encoded audio data in a decoder
WO2010028297A1 (en) * 2008-09-06 2010-03-11 GH Innovation, Inc. Selective bandwidth extension
WO2010028301A1 (en) * 2008-09-06 2010-03-11 GH Innovation, Inc. Spectrum harmonic/noise sharpness control
WO2010028299A1 (en) * 2008-09-06 2010-03-11 Huawei Technologies Co., Ltd. Noise-feedback for spectral envelope quantization
US8532983B2 (en) * 2008-09-06 2013-09-10 Huawei Technologies Co., Ltd. Adaptive frequency prediction for encoding or decoding an audio signal
WO2010031003A1 (en) 2008-09-15 2010-03-18 Huawei Technologies Co., Ltd. Adding second enhancement layer to celp based core layer
US8577673B2 (en) * 2008-09-15 2013-11-05 Huawei Technologies Co., Ltd. CELP post-processing for music signals
FR2936898A1 (fr) * 2008-10-08 2010-04-09 France Telecom Codage a echantillonnage critique avec codeur predictif
JP5555707B2 (ja) * 2008-10-08 2014-07-23 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン マルチ分解能切替型のオーディオ符号化及び復号化スキーム
US20100114568A1 (en) * 2008-10-24 2010-05-06 Lg Electronics Inc. Apparatus for processing an audio signal and method thereof
KR101610765B1 (ko) * 2008-10-31 2016-04-11 삼성전자주식회사 음성 신호의 부호화/복호화 방법 및 장치
FR2938688A1 (fr) * 2008-11-18 2010-05-21 France Telecom Codage avec mise en forme du bruit dans un codeur hierarchique
GB2466675B (en) 2009-01-06 2013-03-06 Skype Speech coding
GB2466672B (en) * 2009-01-06 2013-03-13 Skype Speech coding
GB2466671B (en) * 2009-01-06 2013-03-27 Skype Speech encoding
GB2466670B (en) * 2009-01-06 2012-11-14 Skype Speech encoding
GB2466674B (en) * 2009-01-06 2013-11-13 Skype Speech coding
GB2466673B (en) 2009-01-06 2012-11-07 Skype Quantization
GB2466669B (en) * 2009-01-06 2013-03-06 Skype Speech coding
KR101622950B1 (ko) * 2009-01-28 2016-05-23 삼성전자주식회사 오디오 신호의 부호화 및 복호화 방법 및 그 장치
EP2249333B1 (en) * 2009-05-06 2014-08-27 Nuance Communications, Inc. Method and apparatus for estimating a fundamental frequency of a speech signal
KR20110001130A (ko) * 2009-06-29 2011-01-06 삼성전자주식회사 가중 선형 예측 변환을 이용한 오디오 신호 부호화 및 복호화 장치 및 그 방법
US8892427B2 (en) * 2009-07-27 2014-11-18 Industry-Academic Cooperation Foundation, Yonsei University Method and an apparatus for processing an audio signal
WO2011034376A2 (en) * 2009-09-17 2011-03-24 Lg Electronics Inc. A method and an apparatus for processing an audio signal
US8452606B2 (en) * 2009-09-29 2013-05-28 Skype Speech encoding using multiple bit rates
PL2471061T3 (pl) * 2009-10-08 2014-03-31 Fraunhofer Ges Forschung Działający w wielu trybach dekoder sygnału audio, działający w wielu trybach koder sygnału audio, sposoby i program komputerowy stosujące kształtowanie szumu oparte o kodowanie z wykorzystaniem predykcji liniowej
ES2884133T3 (es) * 2009-10-15 2021-12-10 Voiceage Corp Conformación simultánea de ruido en el dominio del tiempo y el dominio de la frecuencia para transformaciones TDAC
WO2011048118A1 (en) * 2009-10-20 2011-04-28 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Audio signal encoder, audio signal decoder, method for providing an encoded representation of an audio content, method for providing a decoded representation of an audio content and computer program for use in low delay applications
AU2010309894B2 (en) 2009-10-20 2014-03-13 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Multi-mode audio codec and CELP coding adapted therefore
BR112012009445B1 (pt) 2009-10-20 2023-02-14 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Codificador de áudio, decodificador de áudio, método para codificar uma informação de áudio, método para decodificar uma informação de áudio que utiliza uma detecção de um grupo de valores espectrais previamente decodificados
CA2778382C (en) * 2009-10-20 2016-01-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio signal encoder, audio signal decoder, method for encoding or decoding an audio signal using an aliasing-cancellation
CN103559889B (zh) 2009-10-21 2017-05-24 杜比国际公司 组合换位滤波器组的过采样
RU2644141C2 (ru) 2010-01-12 2018-02-07 Фраунхофер-Гезелльшафт цур Фёрдерунг дер ангевандтен Форшунг Е.Ф., Аудио кодер, аудио декодер, способ кодирования аудио информации, способ декодирования аудио информации и компьютерная программа, использующая модификацию числового представления числового значения предыдущего контекста
CN102870155B (zh) * 2010-01-15 2014-09-03 Lg电子株式会社 处理音频信号的方法和装置
US8537283B2 (en) 2010-04-15 2013-09-17 Qualcomm Incorporated High definition frame rate conversion
TR201904117T4 (tr) * 2010-04-16 2019-05-21 Fraunhofer Ges Forschung Kılavuzlu bant genişliği uzantısı ve gözü kapalı bant genişliği uzantısı kullanılarak bir geniş bantlı sinyal üretilmesine yönelik aparat, yöntem ve bilgisayar programı.
WO2011132368A1 (ja) * 2010-04-19 2011-10-27 パナソニック株式会社 符号化装置、復号装置、符号化方法及び復号方法
AU2016202478B2 (en) * 2010-07-02 2016-06-16 Dolby International Ab Pitch filter for audio signals and method for filtering an audio signal with a pitch filter
EP3422346B1 (en) * 2010-07-02 2020-04-22 Dolby International AB Audio encoding with decision about the application of postfiltering when decoding
US9236063B2 (en) 2010-07-30 2016-01-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dynamic bit allocation
US8489391B2 (en) * 2010-08-05 2013-07-16 Stmicroelectronics Asia Pacific Pte., Ltd. Scalable hybrid auto coder for transient detection in advanced audio coding with spectral band replication
US9208792B2 (en) * 2010-08-17 2015-12-08 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for noise injection
KR101826331B1 (ko) * 2010-09-15 2018-03-22 삼성전자주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
WO2012037515A1 (en) 2010-09-17 2012-03-22 Xiph. Org. Methods and systems for adaptive time-frequency resolution in digital data coding
US8738385B2 (en) * 2010-10-20 2014-05-27 Broadcom Corporation Pitch-based pre-filtering and post-filtering for compression of audio signals
WO2012055016A1 (en) * 2010-10-25 2012-05-03 Voiceage Corporation Coding generic audio signals at low bitrates and low delay
PL2975610T3 (pl) 2010-11-22 2019-08-30 Ntt Docomo, Inc. Sposób i urządzenie do kodowania audio
JP5510559B2 (ja) * 2010-12-20 2014-06-04 株式会社ニコン 音声制御装置および撮像装置
CA2823175C (en) * 2010-12-29 2016-07-26 Ki-Hyun Choo Apparatus and method for encoding/decoding for high-frequency bandwidth extension
EP2663978A4 (en) * 2011-01-12 2016-04-06 Nokia Technologies Oy AUDIO CODING AND DECODING DEVICE
JP5743137B2 (ja) 2011-01-14 2015-07-01 ソニー株式会社 信号処理装置および方法、並びにプログラム
TWI564882B (zh) 2011-02-14 2017-01-01 弗勞恩霍夫爾協會 利用重疊變換之資訊信號表示技術(一)
AR085224A1 (es) 2011-02-14 2013-09-18 Fraunhofer Ges Forschung Codec de audio utilizando sintesis de ruido durante fases inactivas
SG192734A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Apparatus and method for error concealment in low-delay unified speech and audio coding (usac)
MY159444A (en) 2011-02-14 2017-01-13 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V Encoding and decoding of pulse positions of tracks of an audio signal
CA2827305C (en) 2011-02-14 2018-02-06 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Noise generation in audio codecs
ES2534972T3 (es) * 2011-02-14 2015-04-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Predicción lineal basada en esquema de codificación utilizando conformación de ruido de dominio espectral
ES2529025T3 (es) 2011-02-14 2015-02-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para procesar una señal de audio decodificada en un dominio espectral
ES2639646T3 (es) 2011-02-14 2017-10-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación y decodificación de posiciones de impulso de pistas de una señal de audio
JP5914527B2 (ja) 2011-02-14 2016-05-11 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 過渡検出及び品質結果を使用してオーディオ信号の一部分を符号化する装置及び方法
EP3503098B1 (en) 2011-02-14 2023-08-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method decoding an audio signal using an aligned look-ahead portion
US9626982B2 (en) * 2011-02-15 2017-04-18 Voiceage Corporation Device and method for quantizing the gains of the adaptive and fixed contributions of the excitation in a CELP codec
WO2012122297A1 (en) 2011-03-07 2012-09-13 Xiph. Org. Methods and systems for avoiding partial collapse in multi-block audio coding
US9009036B2 (en) * 2011-03-07 2015-04-14 Xiph.org Foundation Methods and systems for bit allocation and partitioning in gain-shape vector quantization for audio coding
WO2012122303A1 (en) 2011-03-07 2012-09-13 Xiph. Org Method and system for two-step spreading for tonal artifact avoidance in audio coding
WO2012144128A1 (ja) 2011-04-20 2012-10-26 パナソニック株式会社 音声音響符号化装置、音声音響復号装置、およびこれらの方法
NO2669468T3 (ja) * 2011-05-11 2018-06-02
TWI562133B (en) * 2011-05-13 2016-12-11 Samsung Electronics Co Ltd Bit allocating method and non-transitory computer-readable recording medium
US8873763B2 (en) 2011-06-29 2014-10-28 Wing Hon Tsang Perception enhancement for low-frequency sound components
WO2013061232A1 (en) * 2011-10-24 2013-05-02 Koninklijke Philips Electronics N.V. Audio signal noise attenuation
JPWO2013061584A1 (ja) * 2011-10-28 2015-04-02 パナソニック株式会社 音信号ハイブリッドデコーダ、音信号ハイブリッドエンコーダ、音信号復号方法、及び音信号符号化方法
EP2590409B1 (en) * 2011-11-01 2015-01-07 BlackBerry Limited Multi-level significance maps for encoding and decoding
US9454972B2 (en) 2012-02-10 2016-09-27 Panasonic Intellectual Property Corporation Of America Audio and speech coding device, audio and speech decoding device, method for coding audio and speech, and method for decoding audio and speech
CN103325373A (zh) 2012-03-23 2013-09-25 杜比实验室特许公司 用于传送和接收音频信号的方法和设备
MY168806A (en) * 2012-06-28 2018-12-04 Fraunhofer Ges Forschung Linear prediction based audio coding using improved probability distribution estimation
KR101434206B1 (ko) * 2012-07-25 2014-08-27 삼성전자주식회사 신호 복호화 장치
US9325544B2 (en) * 2012-10-31 2016-04-26 Csr Technology Inc. Packet-loss concealment for a degraded frame using replacement data from a non-degraded frame
MY178710A (en) * 2012-12-21 2020-10-20 Fraunhofer Ges Forschung Comfort noise addition for modeling background noise at low bit-rates
CN103915100B (zh) * 2013-01-07 2019-02-15 中兴通讯股份有限公司 一种编码模式切换方法和装置、解码模式切换方法和装置
CN105551497B (zh) * 2013-01-15 2019-03-19 华为技术有限公司 编码方法、解码方法、编码装置和解码装置
KR101434207B1 (ko) 2013-01-21 2014-08-27 삼성전자주식회사 오디오/스피치 신호 부호화방법
MX347410B (es) 2013-01-29 2017-04-26 Fraunhofer Ges Forschung Aparato y metodo para seleccionar uno de un primer algoritmo de codificacion y un segundo algoritmo de codificacion.
SG10201608643PA (en) * 2013-01-29 2016-12-29 Fraunhofer Ges Forschung Decoder for Generating a Frequency Enhanced Audio Signal, Method of Decoding, Encoder for Generating an Encoded Signal and Method of Encoding Using Compact Selection Side Information
PT2951817T (pt) * 2013-01-29 2019-02-25 Fraunhofer Ges Forschung Preenchimento de ruído na codificação de áudio de transformada perceptual
SG11201505911SA (en) * 2013-01-29 2015-08-28 Fraunhofer Ges Forschung Low-frequency emphasis for lpc-based coding in frequency domain
SG10202106262SA (en) * 2013-02-05 2021-07-29 Ericsson Telefon Ab L M Method and apparatus for controlling audio frame loss concealment
HUE045991T2 (hu) 2013-02-05 2020-01-28 Ericsson Telefon Ab L M Hangkeret-elvesztés elrejtése
WO2014123469A1 (en) 2013-02-05 2014-08-14 Telefonaktiebolaget L M Ericsson (Publ) Enhanced audio frame loss concealment
US9842598B2 (en) 2013-02-21 2017-12-12 Qualcomm Incorporated Systems and methods for mitigating potential frame instability
SI3537437T1 (sl) * 2013-03-04 2021-08-31 Voiceage Evs Llc Naprava in postopek za zmanjšanje kvantizacijskega šuma v časovnem dekoderju
CN109509478B (zh) 2013-04-05 2023-09-05 杜比国际公司 音频处理装置
US9247342B2 (en) 2013-05-14 2016-01-26 James J. Croft, III Loudspeaker enclosure system with signal processor for enhanced perception of low frequency output
CN110299147B (zh) 2013-06-21 2023-09-19 弗朗霍夫应用科学研究促进协会 针对切换式音频编码系统在错误隐藏过程中的改善信号衰落的装置及方法
JP6482540B2 (ja) 2013-06-21 2019-03-13 フラウンホーファーゲゼルシャフト ツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. 改善されたピッチラグ推定を採用するacelp型封じ込めにおける適応型コードブックの改善された封じ込めのための装置および方法
RU2666327C2 (ru) 2013-06-21 2018-09-06 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Устройство и способ для улучшенного маскирования адаптивной таблицы кодирования при acelp-образном маскировании с использованием улучшенной повторной синхронизации импульсов
FR3008533A1 (fr) * 2013-07-12 2015-01-16 Orange Facteur d'echelle optimise pour l'extension de bande de frequence dans un decodeur de signaux audiofrequences
KR101434209B1 (ko) 2013-07-19 2014-08-27 삼성전자주식회사 오디오/스피치 신호 부호화장치
EP2830059A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Noise filling energy adjustment
CN105761723B (zh) * 2013-09-26 2019-01-15 华为技术有限公司 一种高频激励信号预测方法及装置
CA2927990C (en) * 2013-10-31 2018-08-14 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio bandwidth extension by insertion of temporal pre-shaped noise in frequency domain
PL3285255T3 (pl) * 2013-10-31 2019-10-31 Fraunhofer Ges Forschung Dekoder audio i sposób dostarczania zdekodowanej informacji audio z wykorzystaniem ukrywania błędów na bazie sygnału pobudzenia w dziedzinie czasu
PT3063759T (pt) * 2013-10-31 2018-03-22 Fraunhofer Ges Forschung Descodificador de áudio e método para fornecer uma informação de áudio descodificada utilizando uma dissimulação de erros que modifica um sinal de excitação de domínio de tempo
DK3066760T3 (da) * 2013-11-07 2020-04-20 Ericsson Telefon Ab L M Fremgangsmåder og indretninger til vektorsegmentering til kodning
FR3013496A1 (fr) * 2013-11-15 2015-05-22 Orange Transition d'un codage/decodage par transformee vers un codage/decodage predictif
US9293143B2 (en) 2013-12-11 2016-03-22 Qualcomm Incorporated Bandwidth extension mode selection
EP2887350B1 (en) 2013-12-19 2016-10-05 Dolby Laboratories Licensing Corporation Adaptive quantization noise filtering of decoded audio data
CN104751849B (zh) 2013-12-31 2017-04-19 华为技术有限公司 语音频码流的解码方法及装置
WO2015108358A1 (ko) * 2014-01-15 2015-07-23 삼성전자 주식회사 선형 예측 부호화 계수를 양자화하기 위한 가중치 함수 결정 장치 및 방법
EP2916319A1 (en) 2014-03-07 2015-09-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concept for encoding of information
CN107369455B (zh) * 2014-03-21 2020-12-15 华为技术有限公司 语音频码流的解码方法及装置
GB2524333A (en) * 2014-03-21 2015-09-23 Nokia Technologies Oy Audio signal payload
JP6035270B2 (ja) * 2014-03-24 2016-11-30 株式会社Nttドコモ 音声復号装置、音声符号化装置、音声復号方法、音声符号化方法、音声復号プログラム、および音声符号化プログラム
JP6250140B2 (ja) * 2014-03-24 2017-12-20 日本電信電話株式会社 符号化方法、符号化装置、プログラム、および記録媒体
CN107452391B (zh) 2014-04-29 2020-08-25 华为技术有限公司 音频编码方法及相关装置
ES2956362T3 (es) 2014-05-28 2023-12-20 Fraunhofer Ges Forschung Procesador de datos y transporte de datos de control del usuario a decodificadores de audio y renderizadores
EP4002359A1 (en) * 2014-06-10 2022-05-25 MQA Limited Digital encapsulation of audio signals
CN105225671B (zh) 2014-06-26 2016-10-26 华为技术有限公司 编解码方法、装置及系统
EP2980794A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder using a frequency domain processor and a time domain processor
MX349256B (es) * 2014-07-28 2017-07-19 Fraunhofer Ges Forschung Aparato y metodo para seleccionar uno de un primer algoritmo de codificacion y un segundo algoritmo de codificacion usando reduccion de armonicos.
EP2980796A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
EP2980795A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
TWI602172B (zh) * 2014-08-27 2017-10-11 弗勞恩霍夫爾協會 使用參數以加強隱蔽之用於編碼及解碼音訊內容的編碼器、解碼器及方法
FR3025923A1 (fr) * 2014-09-12 2016-03-18 Orange Discrimination et attenuation de pre-echos dans un signal audionumerique
WO2016142002A1 (en) 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal
US9613628B2 (en) * 2015-07-01 2017-04-04 Gopro, Inc. Audio decoder for wind and microphone noise reduction in a microphone array system
WO2017040317A1 (en) 2015-08-28 2017-03-09 Thoratec Corporation Blood pump controllers and methods of use for improved energy efficiency
US10008214B2 (en) * 2015-09-11 2018-06-26 Electronics And Telecommunications Research Institute USAC audio signal encoding/decoding apparatus and method for digital radio services
JP6807033B2 (ja) * 2015-11-09 2021-01-06 ソニー株式会社 デコード装置、デコード方法、およびプログラム
US9986202B2 (en) 2016-03-28 2018-05-29 Microsoft Technology Licensing, Llc Spectrum pre-shaping in video
JP6976277B2 (ja) * 2016-06-22 2021-12-08 ドルビー・インターナショナル・アーベー 第一の周波数領域から第二の周波数領域にデジタル・オーディオ信号を変換するためのオーディオ・デコーダおよび方法
CN107845385B (zh) * 2016-09-19 2021-07-13 南宁富桂精密工业有限公司 信息隐藏的编解码方法及系统
AU2018337086B2 (en) * 2017-09-20 2023-06-01 Voiceage Corporation Method and device for allocating a bit-budget between sub-frames in a CELP codec
EP3701523B1 (en) * 2017-10-27 2021-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Noise attenuation at a decoder
US10847172B2 (en) * 2018-12-17 2020-11-24 Microsoft Technology Licensing, Llc Phase quantization in a speech encoder
JP2022532094A (ja) * 2019-05-07 2022-07-13 ヴォイスエイジ・コーポレーション コーディングされる音声信号内のアタックを検出し、検出されたアタックをコーディングするための方法およびデバイス
TWI789577B (zh) * 2020-04-01 2023-01-11 同響科技股份有限公司 音訊資料重建方法及系統
EP4443432A1 (en) * 2021-12-01 2024-10-09 Panasonic Intellectual Property Corporation of America Encoding device, decoding device, encoding method, and decoding method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61242117A (ja) * 1985-04-19 1986-10-28 Fujitsu Ltd ブロツクフロ−テイング方式
JP2001117573A (ja) * 1999-10-20 2001-04-27 Toshiba Corp 音声スペクトル強調方法/装置及び音声復号化装置
JP2002189499A (ja) * 2000-12-20 2002-07-05 Yamaha Corp ディジタルオーディオ信号圧縮方法および圧縮装置
JP2003177797A (ja) * 2001-12-10 2003-06-27 Sharp Corp ディジタル信号符号化装置およびそれを備えたディジタル信号記録装置
US6691082B1 (en) * 1999-08-03 2004-02-10 Lucent Technologies Inc Method and system for sub-band hybrid coding

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9512284D0 (en) 1995-06-16 1995-08-16 Nokia Mobile Phones Ltd Speech Synthesiser
US6092041A (en) 1996-08-22 2000-07-18 Motorola, Inc. System and method of encoding and decoding a layered bitstream by re-applying psychoacoustic analysis in the decoder
JPH1084284A (ja) 1996-09-06 1998-03-31 Sony Corp 信号再生方法および装置
JP3307875B2 (ja) 1998-03-16 2002-07-24 松下電送システム株式会社 符号化音声再生装置および符号化音声再生方法
US7272556B1 (en) 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6003224A (en) 1998-10-16 1999-12-21 Ford Motor Company Apparatus for assembling heat exchanger cores
WO2002021526A1 (en) * 2000-09-08 2002-03-14 Koninklijke Philips Electronics N.V. Audio signal processing with adaptive noise-shaping modulation
CA2388358A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for multi-rate lattice vector quantization
CA2388439A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
CA2388352A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for frequency-selective pitch enhancement of synthesized speed
DE602004025517D1 (de) 2004-05-17 2010-03-25 Nokia Corp Audiocodierung mit verschiedenen codierungsrahmenlängen
US7596486B2 (en) 2004-05-19 2009-09-29 Nokia Corporation Encoding an audio signal using different audio coder modes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61242117A (ja) * 1985-04-19 1986-10-28 Fujitsu Ltd ブロツクフロ−テイング方式
US6691082B1 (en) * 1999-08-03 2004-02-10 Lucent Technologies Inc Method and system for sub-band hybrid coding
JP2001117573A (ja) * 1999-10-20 2001-04-27 Toshiba Corp 音声スペクトル強調方法/装置及び音声復号化装置
JP2002189499A (ja) * 2000-12-20 2002-07-05 Yamaha Corp ディジタルオーディオ信号圧縮方法および圧縮装置
JP2003177797A (ja) * 2001-12-10 2003-06-27 Sharp Corp ディジタル信号符号化装置およびそれを備えたディジタル信号記録装置

Also Published As

Publication number Publication date
US20070282603A1 (en) 2007-12-06
US7979271B2 (en) 2011-07-12
ES2433043T3 (es) 2013-12-09
CA2556797A1 (en) 2005-08-25
EP1719116A1 (en) 2006-11-08
RU2006133307A (ru) 2008-03-27
CN1957398B (zh) 2011-09-21
EP1719116B1 (en) 2013-10-02
US7933769B2 (en) 2011-04-26
US20070225971A1 (en) 2007-09-27
JP2007525707A (ja) 2007-09-06
RU2389085C2 (ru) 2010-05-10
PT1719116E (pt) 2013-11-05
WO2005078706A1 (en) 2005-08-25
CN1957398A (zh) 2007-05-02
DK1719116T3 (da) 2013-11-04
CA2556797C (en) 2014-01-07
BRPI0507838A (pt) 2007-07-10
AU2005213726A1 (en) 2005-08-25
CA2457988A1 (en) 2005-08-18
EP1719116A4 (en) 2007-08-29

Similar Documents

Publication Publication Date Title
JP4861196B2 (ja) Acelp/tcxに基づくオーディオ圧縮中の低周波数強調の方法およびデバイス
US20070147518A1 (en) Methods and devices for low-frequency emphasis during audio compression based on ACELP/TCX
EP1899962B1 (en) Audio codec post-filter
EP3039676B1 (en) Adaptive bandwidth extension and apparatus for the same
US8942988B2 (en) Efficient temporal envelope coding approach by prediction between low band signal and high band signal
KR101858466B1 (ko) 혼합형 시간-영역/주파수-영역 코딩 장치, 인코더, 디코더, 혼합형 시간-영역/주파수-영역 코딩 방법, 인코딩 방법 및 디코딩 방법
JP5357055B2 (ja) 改良形デジタルオーディオ信号符号化/復号化方法
JP6980871B2 (ja) 信号符号化方法及びその装置、並びに信号復号方法及びその装置
WO2013062392A1 (ko) 음성 신호 부호화 방법 및 복호화 방법과 이를 이용하는 장치
KR102138320B1 (ko) 통신 시스템에서 신호 코덱 장치 및 방법
MXPA06009342A (es) Metodos y dispositivos para enfasis a baja frecuencia durante compresion de audio basado en prediccion lineal con excitacion por codigo algebraico/excitacion codificada por transformada (acelp/tcx)

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110315

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110615

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110622

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110715

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110729

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: 20111004

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: 20111104

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4861196

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: 20141111

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250