JP2017504829A - オーディオ信号エンコーダ - Google Patents

オーディオ信号エンコーダ Download PDF

Info

Publication number
JP2017504829A
JP2017504829A JP2016541299A JP2016541299A JP2017504829A JP 2017504829 A JP2017504829 A JP 2017504829A JP 2016541299 A JP2016541299 A JP 2016541299A JP 2016541299 A JP2016541299 A JP 2016541299A JP 2017504829 A JP2017504829 A JP 2017504829A
Authority
JP
Japan
Prior art keywords
vector
distance
code vector
determining
ordered
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.)
Granted
Application number
JP2016541299A
Other languages
English (en)
Other versions
JP2017504829A5 (ja
JP6337122B2 (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 JP2017504829A publication Critical patent/JP2017504829A/ja
Publication of JP2017504829A5 publication Critical patent/JP2017504829A5/ja
Application granted granted Critical
Publication of JP6337122B2 publication Critical patent/JP6337122B2/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/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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • G10L19/07Line spectrum pair [LSP] 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/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing

Landscapes

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

Abstract

【課題】ポータブル装置で使用するためのマルチチャンネルまたはステレオ・オーディオ信号エンコーダ。【解決手段】オーディオ信号エンコーダ少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成するように構成されたベクトル生成器と、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの前記少なくとも1つのベクトルをソートするように構成された格子ベクトル量子化器と、を備える装置であって、前記格子ベクトル量子化器は、リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択するように構成され、前記格子ベクトル量子化器は、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成され、前記格子ベクトル量子化器は、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成され、前記格子ベクトル量子化器は、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するように構成される、装置。【選択図】図6

Description

本願は、マルチチャンネルまたはステレオ・オーディオ信号エンコーダに関し、特に、ポータブル装置で使用するためのマルチチャンネルまたはステレオ・オーディオ信号エンコーダに関する。ただし、それらに限られるものではない。
音声や音楽などのオーディオ信号は、たとえば、オーディオ信号の効率的な伝送またはストレージを可能にするために符号化される。
オーディオ・エンコーダおよびデコーダ(別名コーデック)は、音楽と周囲音(音声符号化用語では、バックグラウンド・ノイズと呼ぶことができる)などのオーディオ・ベース信号を表現するために使用される。このタイプのコーダは、典型的には、コーディング・プロセスに対して音声モデルを利用せず、むしろ、音声を含むすべてのタイプのオーディオ信号を表現するためのプロセスを使用する。音声エンコーダおよびデコーダ(コーデック)は、そしてそれは音声信号のために最適化され、そして、固定または可変ビット・レートで動作することができるオーディオ・コーデックであると考えることができる。
オーディオ・エンコーダおよびデコーダは、しばしば、低複雑度ソース・コーダとして設計される。言い換えると、非常に複雑な処理を要求することなく、オーディオ信号の符号化と復号化を実行することができる。
そのような例は、変換符号化である。音楽信号オーディオ符号化のためには、変換符号化は、一般的に、音声信号に対してよりよく適合し、音声信号を指向している代数CELP(ACELP:Algebraic Code Excited Linear Prediction)技術よりも、より良く実行する。変換符号化は、サブバンド毎に変換係数ベクトルを符号化することによって実行される。言い換えると、オーディオ信号は、パラメータが決定されるサブバンドに分割される。そして、そのパラメータは、ベクトルまたは量子化された格子であるサブベクトルを表現する。
第1の態様にしたがい、少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成するステップと、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートするステップと、リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択するステップと、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップと、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するステップと、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するステップと、を含む方法が提供される。
この方法は、少なくとも1つのスケール・ファクターを選択するステップを更に含むことができる。ここで、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する前記ステップは、前記少なくとも1つのスケール・ファクターに基づいて、距離を決定することを更に含むことができる。最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する前記ステップは、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターおよび最小関連距離を生成するスケール・ファクターを決定するステップを更に含むことができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するステップは、前記出力格子量子化コードベクトルに前記出力スケール・ファクターを適用するステップを含むことができる。少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトルを生成するステップは、前記少なくとも1つのオーディオ信号をタイム・フレームに分割するステップと、前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定ステップと、を含むことができる。
パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートするステップは、加重距離決定のための重みを決定するステップと、ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートするステップと、前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用するステップと、を含むことができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップは、第1のスケール値に基づいて、第1および第2の距離コンポーネントを生成するステップであって、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついている、ステップと、前記第1の距離コンポーネントの正負符号を訂正するステップであって、ポテンシャル・コード・ベクトルは、パリティ制約テストに失敗する、ステップと、前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップと、を含むことができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップは、前記第1および第2の距離コンポーネントと、更なるおよびスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルとの間の距離を決定するステップと、前記少なくとも1つの順序づけられたベクトルとを更に備えることができる。
最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するステップは、最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定するステップと、スケール値を、最小関連距離を生成する前記ポテンシャル・コード・ベクトルだけに適用することによって最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定するステップと、を含むことができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するステップは、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートするステップを含むことができる。
第2の態様にしたがい、少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成する手段と、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートする手段と、リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択する手段と、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段と、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する手段と、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する手段と、を備える装置が提供される。
この装置は、少なくとも1つのスケール・ファクターを選択する手段を更に備えることができる。ここで、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間で距離を決定する前記手段は、前記少なくとも1つのスケール・ファクターに基づいて、距離を決定する手段を更に備えることができる。最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する手段は、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターと、最小関連距離を生成するスケール・ファクターとを決定する手段を更に備えることができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する前記手段は、前記出力格子量子化コードベクトルに前記出力スケール・ファクターを適用する手段を備えることができる。少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトルを生成する前記手段は、前記少なくとも1つのオーディオ信号をタイム・フレームに分割する手段と、前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定する手段と、を備えることができる。
パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートする前記手段は、加重距離決定のための重みを決定する手段と、ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートする手段と、前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用する手段と、を備えることができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間で距離を決定する前記手段は、第1のスケール値に基づいて、第1および第2の距離コンポーネントを生成する手段であって、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついている、前記手段と、前記第1の距離コンポーネントの正負符号を訂正する手段であって、ポテンシャル・コード・ベクトルは、パリティ制約テストに失敗する、手段と、前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段と、を備えることができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する前記手段は、前記第1および第2の距離コンポーネントおよび更なるスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、および前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段を更に備えることができる。
最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する手段は、最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定する手段と、最小関連距離を生成するポテンシャル・コード・ベクトルに、スケール値を適用することにより、最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定する手段と、を備えることができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する前記手段は、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートする手段を備えることができる。
第3の態様にしたがい、少なくとも1つのプロセッサと、コンピュータ・プログラム・コードを含む少なくとも1つのメモリとを備える装置が提供される。前記少なくとも1つのメモリと、前記コンピュータ・プログラム・コードとは、少なくとも1つのプロセッサで、前記装置に、少なくとも、少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成させ、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの前記少なくとも1つのベクトルをソートさせ、リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択させ、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定させ、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定させ、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置させるように構成される。
この装置は、さらに、少なくとも1つのスケール・ファクターを選択させることができる。ここで、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定することは、更に前記装置に、前記少なくとも1つのスケール・ファクターに基づいて距離を決定させることができる。ここで、最小関連距離を生成する少なくとも1つのポテンシャル・コード・ベクトルと関連したリーダー・クラスを決定することは、更に前記装置に、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターと、最小関連距離を生成するスケール・ファクターとを決定させることができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置することは、前記装置に、前記出力格子量子化コードベクトルに前記出力スケール・ファクターを適用させることができる。少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトルを生成することは、この装置に、前記少なくとも1つのオーディオ信号をタイム・フレームに分割させ、前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定させることができる。
パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートすることは、この装置に、加重距離決定のための重みを決定させ、ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートさせ、前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用させることができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップは、この装置に、第1のスケール値に基づいて、第1と第2の距離コンポーネントを生成させ、ここで、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついており、ポテンシャル・コード・ベクトルは、パリティ制約テストに失敗する、前記第1の距離コンポーネントの正負符号を訂正させ、前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定させることができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定することは、その装置に、更に、前記第1および第2の距離コンポーネントと、更なるおよびスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定させることができる。
最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定することは、この装置に、最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定させ、最小関連距離を生成するポテンシャル・コード・ベクトルに、スケール値を適用することにより、最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定させることができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置することは、この装置に、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートさせることができる。
第4の態様にしたがい、少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成するように構成されたベクトル生成器と、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの前記少なくとも1つのベクトルをソートするように構成された格子ベクトル量子化器と、を備える装置が提供される。リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択するように構成された前記格子ベクトル量子化器は、前記格子ベクトル量子化器は、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成されており、前記格子ベクトル量子化器は、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成さており、前記格子ベクトル量子化器は、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するように構成される。
この装置は、少なくとも1つのスケール・ファクターを選択ように構成された前記格子ベクトル量子化器を更に備えることができる。ここで、前記格子ベクトル量子化器は、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成され、更に、前記少なくとも1つのスケール・ファクターに基づいて、距離を決定するように構成することができる。最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成された前記格子ベクトル量子化器は、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターおよび最小関連距離を生成するスケール・ファクターを決定するように更に構成することができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するように構成された前記格子ベクトル量子化器は、更に、前記出力スケール・ファクターを前記出力格子量子化コードベクトルに適用するように構成されることができる。この装置は、前記少なくとも1つのオーディオ信号をタイム・フレームに分割し、前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定するように構成されたパラメータ決定器を更に備えることができる。
ここで、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの前記少なくとも1つのベクトルをソートするように構成された前記格子ベクトル量子化器は、加重距離決定のための重みを決定し、ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートし、前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用するように更に構成することができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成された前記格子ベクトル量子化器は、第1のスケール値に基づいて、第1と第2の距離コンポーネントを生成し、ここで、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついており、ポテンシャル・コード・ベクトルは、パリティ制約テストに失敗する、前記第1の距離コンポーネントの正負符号を訂正し、前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように更に構成することができる。
前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成される前記格子ベクトル量子化器は、更に、前記第1および第2の距離コンポーネントと、更なるおよびスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成することができる。
最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成された前記格子ベクトル量子化器は、最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定し、スケール値を、最小関連距離を生成する前記ポテンシャル・コード・ベクトルだけに適用することによって最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定するように更に構成することができる。出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するように構成される前記格子ベクトル量子化器は、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートするように構成することができる。コンピュータ・プログラム・プロダクトは、装置に、ここに記述される方法を実行させることができる。
電子回路デバイスは、ここに記述される装置を含むことができる。
チップセットは、ここに記述される装置を含むことができる。
本願発明のより良い理解のために、次に、例として添付の図面への参照がなされる。ここで、
図1は、いくつかの実施形態を使用する電子デバイスを図式的に示す。 図2は、いくつかの実施例にしたがって、オーディオ・コーデック・システムを図式的に示す。 図3は、いくつかの実施例にしたがって、図2で示すエンコーダを図式的に示す。 図4は、いくつかの実施例にしたがって、図3に示すエンコーダの動作を図示するフローチャートを示す。 図5は、いくつかの実施例にしたがって、図3に示されたような格子ベクトル量子化器を図式的に示す。 図6は、いくつかの実施例にしたがって、図5に示す格子ベクトル量子化器の動作を図示するフローチャートを示す。
以下では、より詳細に、階層化またはスケーラブル可変レート音声およびオーディオ・コーデックを含む可能なステレオおよび多重チャネル音声およびオーディオ・コーデックを記述する。
圧縮効率的格子の使用は、大幅に量子化を改善することができるという点で、現在の変換符号化アプローチに関して問題があり得る。しかしながら、それは、大幅なコーデックの複雑さのコストにおいて、そのような改善を実現することができる。
ここで、実施形態によって詳述する概念は、転置ベクトル空間において量子化歪みを評価することによって、顕著な符号化の複雑さを減少することが可能なアプローチを提案する。
この点について、最初に、例示的な電子デバイスまたは装置10の概略ブロック図を示す図1を参照する。これは、本願の実施形態にしたがうコーデックを組み込むことができる。
装置10は、たとえば、無線通信システムのモバイル端末またはユーザ装置であることができる。他の実施形態において、装置10は、ビデオ・カメラ、テレビ(TV)レシーバ、音声レコーダまたはmp3レコーダ/プレーヤのようなオーディオプレーヤ、メディア・レコーダ(また、mp4レコーダ/プレーヤとして知られる)、あるいは、オーディオ信号を処理する適切な任意のコンピュータなど、オーディオ・ビデオ・デバイスであることができる。
いくつかの実施形態において、前記電子デバイスまたは装置10は、マイクロフォン11を含み、それは、アナログ‐デジタル変換器(ADC)14を介して、プロセッサ21にリンクしている。プロセッサ21は、さらに、デジタル/アナログ・コンバータ(D/A変換器)32を介して、ラウドスピーカ33にリンクしている。プロセッサ21は、さらに、トランシーバ(RX/TX)13、ユーザ・インタフェース(UI)15、および、メモリ22にリンクしている。
プロセッサ21は、いくつかの実施形態において、種々のプログラム・コードを実行するように構成することができる。インプリメントされたプログラム・コードは、いくつかの実施形態において、ここに記述されるように、オーディオ符号化または復号化コードを備える。インプリメントされたプログラム・コード23は、いくつかの実施形態において、必要なときはいつでもプロセッサ21によって検索するために、たとえば、メモリ22に、格納されることができる。メモリ22は、データ、たとえば、アプリケーションにしたがって、符号化されたデータを格納するために、さらに、セクション24を提供することができる。
符号化および復号化コードは、実施形態において、少なくとも部分的には、ハードウェアやファームウェアでインプリメントすることができる。
ユーザ・インタフェース(UI)15は、ユーザが、電子デバイス10に、たとえばキーパッドを介して、コマンドを入力すること、および/または、電子デバイス10から、たとえばディスプレイを介して、情報を得ることを可能にする。いくつかの実施形態において、タッチ・スクリーンは、ユーザ・インタフェースの入力および出力機能を提供することができる。装置10は、いくつかの実施形態で、たとえば無線通信ネットワークを介して、他の装置との通信を可能にするのに適切なトランシーバ(RX/TX)13を備える。
トランシーバ13は、任意の適切な既知の通信プロトコルによって、更なる、デバイスと通信することができる。たとえば、いくつかの実施形態で、トランシーバ13またはトランシーバ手段は、適切なUMTS(universal mobile telecommunications system)プロトコル、たとえばIEEE 802.Xなどの無線LAN(WLAN)プロトコル、例えば、ブルートゥース(登録商標)、または、赤外線通信経路(IRDA:infrared data communication pathway)など適切な短距離RF(short−range radio frequency)通信プロトコルを使用することができる。
また、装置10の構造は、様々なやり方で、補うことができ、変化させることができることが良く理解される。
装置10のユーザは、たとえば、マイクロフォン11をいくつかの他の装置に送信されるべき、または、メモリ22のデータ・セクション24に格納すべき音声または他のオーディオ信号を入力するのに使用することができる。いくつかの実施形態において、対応するアプリケーションを、このために、ユーザ・インタフェース15を介して起動することができる。このアプリケーションを、これらの実施形態において、プロセッサ21により、実行することができ、プロセッサ21に、メモリ22に格納された符号化コードを実行させる。以下の例において、マイクロフォン11は、入力のためにオーディオ信号を生成するように構成されるのであるが、入力オーディオ信号は、例えば、メモリ22からの、特に、メモリ22の格納データ24セクションの中からのどんな適切な入力からでも受信することができることが理解される。いくつかの実施形態において、入力オーディオ信号、または、少なくとも1つのオーディオ信号は、トランシーバ13を介して受信することがあり得る。たとえば、トランシーバ13は、装置10の外部のマイクロフォン、たとえば、トランシーバ13を介して装置に結合されたブルートゥース(登録商標)・デバイスなど、によって生成されるオーディオ信号を受信するように構成することができる。
アナログ・デジタル変換器(ADC)14は、いくつかの実施形態で、入力アナログ・オーディオ信号をデジタル・オーディオ信号に変換し、デジタル・オーディオ信号をプロセッサ21に提供する。いくつかの実施形態において、マイクロフォン11は、一体化マイクロフォンおよびADC機能を備えることができ、処理のためにプロセッサに直接、デジタル・オーディオ信号を提供する。
プロセッサ21は、そのような実施形態において、次に、図2に示されるシステム、および、特に図3に示されるエンコーダ、および、図5に示されるエンコーダの詳細を参照して記述されたような方法で、デジタル・オーディオ信号を処理する。
結果として生じるビット・ストリームは、いくつかの実施形態において、別の装置へ伝送するために、トランシーバ13に提供することができる。代替的に、符号化した音声データは、いくつかの実施形態において、たとえば、後の伝送のために、または、同じ装置10による後の表現のために、メモリ22のデータ・セクション24に格納することができる。
装置10は、いくつかの実施形態において、また、トランシーバ13を介して、別の装置からの、対応して符号化されたデータのビット・ストリームを受信することもできる。この例においては、プロセッサ21は、メモリ22に格納された復号化プログラム・コードを実行することができる。プロセッサ21は、そのような実施形態においては、受信データを復号化し、そして、デジタル/アナログ変換器32に復号化されたデータを提供する。デジタル/アナログ変換器32は、アナログ音声データにデジタル復号化されたデータを変換し、いくつかの実施形態において、ラウドスピーカ33を介して、アナログ・オーディオを出力することができる。復号化プログラム・コードの実行は、いくつかの実施形態において、ユーザ・インタフェース15を介して、ユーザにより呼び出されるアプリケーションによってと同様に、トリガーされることができる。
受信した符号化されたデータは、いくつかの実施形態において、また、たとえば、後の復号化と表現、または、復号化と別の装置への転送のためにメモリ22のデータ・セクション24において、ラウドスピーカ33を介する直接的な表現の代わりに格納することができる。
図3および図5において記述された概略構造、および、図4および図6に示された方法のステップは、オーディオ・コーデックの動作の一部分だけ、具体的には、図1において示される装置において例示的にインプリメントが示されたように、オーディオ・オーディオ・エンコーダ装置または方法の部分を表すことが理解される。
実施形態によって使用されるような、オーディオ・コーデックの一般的な動作は、図2において示される。一般的なオーディオ符号化/復号化システムは、図2で図式的に示されるようにエンコーダとデコーダとの両方を備える。しかしながら、いくつかの実施形態は、エンコーダかデコーダのどちらか、または、エンコーダとデコーダとの両方をインプリメントすることができることが理解される。エンコーダ104、ストレージまたはメディア・チャネル106、および、デコーダ108を有するシステム102が図2によって示される。先に述べたように、いくつかの実施形態は、エンコーダ104およびデコーダ108のうちの1つ、あるいは、両方を備える、または、インプリメントすることができることが理解される。
エンコーダ104は、入力オーディオ信号110を圧縮し、ビット・ストリーム112を生成する。それは、いくつかの実施形態において、格納、または、メディア・チャネル106を通して送信することができる。エンコーダ104は、いくつかの実施形態において、2つ以上のオーディオ信号を符号化するマルチ・チャネル・エンコーダを備えることができる。
ビット・ストリーム112は、デコーダ108の内部で受信することができる。デコーダ108は、ビット・ストリーム112を解凍し、出力オーディオ信号114を生成する。デコーダ108は、変換デコーダを全体的な復号化動作の部分として備えることができる。デコーダ108は、また、2つ以上のオーディオ信号を復号化するマルチチャネル・デコーダを備えることができる。入力信号110に関係したビット・ストリーム112のビット・レートおよび出力オーディオ信号114の品質は、符号化システム102のパフォーマンスを規定する主要な特徴である。
図3は、いくつかの実施例にしたがう、図式的にエンコーダ104を示す。
図4は、いくつかの実施例にしたがう、エンコーダ104の動作を図示するフローチャートを示す。
ここに記述される実施形態のための概念は、効果的な高品質および低ビット・レートの現実的符号化を生成するために、オーディオ信号への符号化を決定し適用することである。その点について、図3において、いくつかの実施例にしたがって、例示的エンコーダ104が示される。さらにまた、図4について、エンコーダの動作が、更に詳細に示される。以下の例において、エンコーダは、オーディオ信号を表す周波数領域パラメータを生成し、適切なベクトル束量子化を用いて生成された周波数領域パラメータを符号化するように構成される。しかしながら、いくつかの実施形態において、格子量子化において使用されるパラメータは、ここに記載されるように、オーディオ信号あるいは(たとえば、画像やビデオなど)他のタイプの信号を定義または表現するいかなる適切なパラメータでもありえることは理解されるであろう。
エンコーダ104は、いくつかの実施形態において、フレーム・セクション分割器201またはオーディオ信号をセクション分割するための適切な手段を備える。フレーム・セクション分割器201は、(たとえば、モノラル、左右のステレオ、または、任意の多重チャネル音声表現など)オーディオ信号を受信し、オーディオ信号を入力し、およびセクションオーディオ信号データを、周波数または他のドメイン変換のために適切なセクションまたはフレームにセクション化またはセグメント化するように構成される。フレーム・セクション分割器201は、いくつかの実施形態において、任意の適切なウインドウ化機能にしたがって、これらのフレームまたはオーディオ信号データのセクションをウインドウに表示するようにさらに構成することができる。たとえば、フレーム・セクション分割器201は、いくつかの実施形態において、前のフレームおよび次のフレームにそれぞれ10msづつオーバラップする20msのフレームを生成するように構成することができる。
音声フレームを生成する動作は、ステップ501によって、図4に示される。
いくつかの実施形態において、音声フレームは、パラメータ決定器203にパスすることができる。
いくつかの実施形態において、このエンコーダは、入力オーディオ信号または入力オーディオ信号フレームを表わす少なくとも1つのパラメータを決定する適切な手段のパラメータ決定器203を備える。以下の例において、パラメータは、線スペクトル周波数(LSF)パラメータであるが、しかしながら、いくつかの実施形態において、任意の適切なパラメータを決定することができることは理解されるであろう。
たとえば、いくつかの実施形態において、パラメータ決定器は、変換器203または変換の適切な手段を備える。変換器203は、いくつかの実施形態において、これらのオーディオ信号の周波数領域(または他の適切なドメイン)パラメータ表現を生成するように構成される。これら周波数ドメイン・パラメータ表現は、いくつかの実施形態において、パラメータ・エンコーダ205にパスされることができる。
いくつかの実施形態において、変換器203は、オーディオ信号データにおいて任意の適切な時間領域−周波数領域変換を実行するように構成することができる。たとえば、その時間領域−周波数領域変換は、離散フーリエ変換(DFT)、高速フーリエ変換(FFT)、修正離散コサイン変換(MDCT)であり得る。以下の例において、高速フーリエ変換(FFT)が、使用されている。
さらにまた、この変換器は、各々の入力チャネル・オーディオ信号データの別の周波数帯域ドメイン・パラメータ表現(サブバンド・パラメータ表現)を生成するようにさらに構成されることができる。これらの帯域を、任意の適切な方法において、配置することができる。たとえば、これらの帯域を、線形に間隔をあけるように、あるいは、知覚的に、または、音響心理学的に割り当てることができる、生成されるパラメータは、任意の適切なパラメータであることができる。
パラメータ表現を決定する、または、生成する動作は、図4において、ステップ503によって示される。
いくつかの実施形態において、LSFパラメータなどの表現は、パラメータ・エンコーダ205にパスされる。
いくつかの実施形態において、エンコーダ104は、パラメータ・エンコーダ205を備えることができる。パラメータ・エンコーダ205は、オーディオ信号入力のパラメータ表現、たとえば、決定されたLSFパラメータを受信するように構成することができる。パラメータ・エンコーダ205は、さらに、いくつかの実施形態において、LSFパラメーター値の各々をサブベクトルとして使用し、ベクトル量子化器に入力するベクトルを作成するために各々のサブベクトルを結合するように構成されることができる。言い換えると、その装置は、少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトル(または、パラメータを表す第1のベクトルのタプル)を生成するように構成されたベクトル生成器を備えることができる。
ベクトル量子化器の出力は、いくつかの実施形態において、エンコーダであり、したがって、ベクトル量子化されたオーディオ信号出力は、オーディオ信号の「符号化された」またはパラメータ符号化された表現である。
パラメータを符号化またはベクトル量子化する動作は、図4において、ステップ505によって示される。
いくつかの実施形態において、パラメータ・エンコーダ205は、ベクトル生成器451を備える。ベクトル生成器451は、LSFパラメータを受信し、これらの値からN次元ベクトルを生成するように構成される。
入力パラメータからベクトルを生成する動作は、図4において、サブステップ551によって示される。
生成されたベクトルは、いくつかの実施形態において、格子ベクトル量子化器453にパスすることができる。
いくつかの実施形態において、パラメータ・エンコーダ205は、格子ベクトル量子化器453を備える。格子ベクトル量子化器453は、LSFパラメータから生成された入力ベクトルを受信し、規定された格子の範囲内で起こる、最近接の、またはNN出力を生成する。したがって、デコーダにおいて同様の格子を使用して復号化することができる。
ベクトルを格子量子化する動作は、図4において、サブステップ553によって示される。
この符号化された信号は、出力することができる。
符号化された信号を出力する動作は、図4において、ステップ507によって示される。その例にたいして、これは、図4に示されたように、サブステップ557によって量子化された格子ベクトルを出力する動作でありえる。
図5を参照して、いくつかの実施例にしたがう、格子ベクトル量子化器453の例が示される。格子量子化器453は、いくつかの実施形態において、具体的なストレージ・メディア・メモリ22の上に格納されたコンピュータ・プログラムのそれぞれのプログラム・コード23によって規定することができる。
本願発明に関するコンセプトと実施形態を導入する前に、従来の格子ベクトル量子化を、まず最初に検討する。いくつかの格子量子化器において、ポテンシャル・ベース・コード・ベクトルのセットの初期生成または決定は、このポテンシャル・ベース・コード・ベクトルのセットの決定された各々のポテンシャル・ベース・コード・ベクトルが、ベース・コード・ベクトルのセットの異なるセットのポテンシャル・ベース・コード・ベクトルに結びついているような場合に、実行される。
ポテンシャル・ベース・コード・ベクトルの各々のセットは、少なくとも1つのベース・コード・ベクトルを含む。ベース・コード・ベクトルの各々のセットが、複数のスケール表現のうちのすくなくとも1つのスケール表現と結びついているので、コード・ベクトルは、ポテンシャル・ベース・コード・ベクトルのセットのうちのベース・コード・ベクトル、および、ポテンシャル・ベース・コード・ベクトルのセットに結びついた少なくとも1つのスケール表現のうちのスケール表現に基づいて,決定することができる。言い換えると、コード・ベクトルは、それぞれのスケール表現によってスケーリングされたベース・コード・ベクトルに基づいて、表わすことができる。たとえば、スケール表現は、コード・ベクトルを、前記ベース・コード・ベクトルおよびそれぞれのスケール値の乗算に基づいて、決定することができるような場合に、スケール値を表現することができる。さらにまた、いくつかの実施形態において、コードブックが、ベース・ベクトルの(正負符号付き)置換を適用することによって得られる。
たとえば、ベース・コード・ベクトルの少なくとも1つのセットは、少なくとも2つのスケール表現に結びついている。
したがって、例として、コードブックは、ベース・コード・ベクトルの複数のセットに基づいて、および、複数のベース・コード・ベクトルのうちのベース・コード・ベクトルのそれぞれのセットに結びついたそれぞれの少なくとも1つのスケール値に基づいて、コード・ベクトルを含むコード・ベクトルのセットを備えることができる。そのコード・ベクトルのセットは、ベース・コード・ベクトルの各々のセットの各々のベース・コード・ベクトルに対して、また、ベース・コード・ベクトルのそれぞれのセットに結びついた少なくとも1つのスケール表現の各々に対して、それぞれのスケール表現によってスケーリングされたそれぞれのベース・コード・ベクトルに基づくコード・ベクトルを備えることができる。
たとえば、ベース・コード・ベクトルの前記セットは、リーダー・クラスを表現することができる。ここで、各々のリーダー・クラスは、異なるリーダー・ベクトル、および、リーダー・ベクトルの順列を備える。このように、前記のリーダー・ベクトルおよび前記リーダー・ベクトルの順列は、ベース・コード・ベクトルのそれぞれのセットのベース・コード・ベクトルを表現することができる。
ベース・コード・ベクトルの複数のセットは、ベース・コード・ベクトルの第2の複数のセットのサブセットを表現することができる。たとえば、ベース・コード・ベクトルの各々のセットはリーダー・クラスを表現するとの仮定のもとで、複数のリーダー・クラスは、第2の複数のリーダー・クラスのサブセットを表現することができる。このように、複数のリーダー・クラスは、第2の複数のリーダー・クラスに関して、切り詰めた複数のリーダー・クラスとして考えることができる。
たとえば、それぞれのポテンシャル・ベース・コード・ベクトルは、符号化するべき入力ベクトルに最も近いベース・コード・ベクトルのそれぞれのセットの少なくとも1つのベース・コード・ベクトルのベース・コード・ベクトルを決定することによって決定することができる。任意の種類の適切な基準を、符号化するべき入力ベクトルに関して、最も近いベース・コード・ベクトルを見つけるために使用することができる。
例として、ポテンシャル・ベース・コード・ベクトルを、絶対値入力ベクトルに関して最も近いベース・コード・ベクトルに基づいて、および、入力ベクトルの値の正負符号の情報に基づいて、決定することができる。ここで、この情報は、入力ベクトルにおけるそれぞれの値のそれぞれの位置の正負符号を備えることができ、そして、正負符号を決定されたポテンシャル・ベース・コード・ベクトルの値に割り当てるのに用いられる。更にまた、例として、絶対値入力ベクトルに最も近いベース・コード・ベクトルを、決定することができる。ここで、絶対値入力ベクトルは、入力ベクトルの値に対応する絶対値を含む。ここで、ポテンシャル・ベース・コード・ベクトルは、決定された最も近いベース・コード・ベクトルを表現する。ここで、ポテンシャル・ベース・コード・ベクトルの値の正負符号は、ベクトルにおける同じ位置での入力ベクトルの値の正負符号に対応する。ここで、これは、ベース・コード・ベクトルのセットのベース・コード・ベクトルのパリティが、0であるならば保つことができる。別の例として、ベース・コード・ベクトルのセットのベース・コード・ベクトルのパリティが、−1であるならば、ポテンシャル・ベース・コード・ベクトルの値の正負符号は、それぞれ、ベクトルにおける同じ位置での入力ベクトルの値の正負符号に対応して割り当てることができる。そして、奇数の負コンポーネントがないならば、最も低い非空白絶対値を有するポテンシャル・ベース・コード・ベクトルの値は、その正負符号を変えることができる。あるいは、もう一つの例としてあげると、ベース・コード・ベクトルのセットのベース・コード・ベクトルのパリティが、+1であるならば、ポテンシャル・ベース・コード・ベクトルの値の正負符号は、それぞれ、ベクトルにおける同じ位置での入力ベクトルの値の正負符号に対応して割り当てることができる。そして、偶数の負コンポーネントがないならば、最も低い非空白絶対値を有するポテンシャル・ベース・コード・ベクトルの値は、その正負符号を変えることができる。
入力ベクトル符号化のためのコード・ベクトルは、次に、従来は、決定されたポテンシャル・コード・ベクトルのセットに基づいて、決定される。ここで、決定されたポテンシャル・コード・ベクトルのセットは、コード・ベクトルのサブセットを定義し、前記のコード・ベクトルのサブセットは、各々の決定されたポテンシャル・ベース・コード・ベクトル、および、それぞれのポテンシャル・ベース・コード・ベクトルのベース・コード・ベクトルのセットに結びついた各々のスケール表現に対して、それぞれのスケール表現によってスケーリングされたそれぞれのポテンシャル・ベース・コード・ベクトルに基づいたコード・ベクトルを備える。
したがって、入力ベクトル符号化のためのコード・ベクトルの検索は、決定されたポテンシャル・コード・ベクトルによって規定され、それぞれの決定されたポテンシャル・コード・ベクトルのベース・コード・ベクトルのセットに結びついたそれぞれの少なくとも1つのスケール表現によって規定されるコード・ベクトルのサブセットにおいて、実行された。コード・ベクトルのこのサブセットは、コードブックに結びついたコード・ベクトルのサブセットを表現することができるから、コード・ベクトルのこのサブセットのコード・ベクトルの数は、そのコード・ベクトルのセットのコード・ベクトルの数よりも小さいことがあり得る。
例として、その複数のスケール表現の各々のスケール表現は、コード・ベクトルの少なくとも1つのセットに結びついていることができる。ここで、それぞれのスケール表現と結びついたコード・ベクトルの前記の少なくとも1つのセットのコード・ベクトルの各々のセットは、それぞれのスケール表現と結びついた前記のコード・ベクトルの少なくとも1つのセットのコード・ベクトルの各々のセットが、それぞれのスケール表現を有するベース・ベクトルの結びついたそれぞれのセットのベース・ベクトルをスケーリングすることによって得られたコード・ベクトルを備えるように、ベース・コード・ベクトルの複数のセットのベース・コード・ベクトルのセットと結びついている。
したがって、複数のスケール表現のそれぞれのスケール表現と結びついたベース・コード・ベクトルの少なくとも1つのセットのコード・ベクトルは、このスケール表現を有するスケール表現に結びついたベース・コード・ベクトルの各々のセットのベース・コード・ベクトルのスケーリングに基づいて決定することができる。
たとえば、ベース・コード・ベクトルの前記のセットがリーダー・クラスを表現する場合に、それぞれのスケール表現と結びついたベース・コード・ベクトルのその少なくとも1つのセットは、リーダー・クラスの結合と考えることができる。通常、リーダー・クラスの結合は、スケールとは独立であることが理解される。このように、コードブックは、リーダー・クラスの少なくとも1つの結合を備えることができる。ここで、リーダー・クラスの各々の結合は、少なくとも1つのスケール表現のうちの1つと、複数のベース・コード・ベクトルのうちのベース・コード・ベクトルの少なくとも1つのセットとに結びついている。例として、この少なくとも1つのスケール表現は、少なくとも2つのスケール表現を含むことができる複数のスケール表現を表すことができる。
このように、たとえば、bは、ここで、x∈{0,1,...X−1} であるが、ベース・コード・ベクトルの複数のセットのベース・コード・ベクトルのセットを表す。ここで、Xは、ベース・コード・ベクトルの複数のセットのセット数を表す。ベース・コード・ベクトルの各々のセットは、少なくとも1つのベース・コード・ベクトルbx,yに関連する、あるいは、それを含む。ここで、Bは、ベース・コード・ベクトルbのそれぞれのセットのベース・コード・ベクトルの数を表す。すなわち、y∈{0,1,...,B−1}が保たれる。たとえば、ベース・コード・ベクトルのセットのベース・コード・ベクトルの数Bは、ベース・コード・ベクトルの異なるセットに対して異なることができ、および/または、ベース・コード・ベクトルの少なくとも2つのセットに対して同一であることができる。
言い換えると、リーダー・ベクトルは、1つのベクトルにすぎない。リーダー・ベクトルのすべての正負符号付き順列と一緒に、次に、このセットは、リーダー・ベクトルのリーダー・クラス(または、ここに記述したように、ベース・コード・ベクトル)を形成する。いくつかのリーダー・クラスをまとめるとき、リーダー・クラスの結合が形成される。次に、この結合に対して、1つ以上のスケールを、付加することができる。
このように、たとえば、コード・ベクトルcx,z,yを、ベース・コード・ベクトルbx,yに基づいて、また、スケール表現sに基づいて、決定することが可能である。ここで、インデックスzは、複数のスケール表現s,...,sS−1のそれぞれのスケール表現のインデックスを表す。すなわち、z∈{0,1,...,S−1}が保たれる。
たとえば、ベース・コード・ベクトルbx,y=[bx,y,bx,y,1,...,bx,y,n−1]の値bx,y,tが、絶対値を表し、ここで、t∈{0,1,n−1}が保たれ、nは、それぞれのベース・コード・ベクトルbx,yの長さを表す場合に、絶対値入力ベクトルが、ベース・コード・ベクトルのそれぞれのセットのポテンシャル・コード・ベクトルを決定するために使用されるならば、決定された最も近いベース・コード・ベクトルbx,yの(t+1)番目の位置における各々の値bx,y,tの正負符号は、コード・ベクトルcx,z,yの決定が、ベース・コード・ベクトルbx,yに基づいて、また、スケール表現sに基づいて、実行される、前に、入力ベクトルiの(t+1)番目の位置における、それぞれの値iの正負符号に基づいて割り当てられることができる。
例として、i=[i,i,...,in−1]が入力ベクトルを表すならば、絶対値入力ベクトルは、[|i|,|i|,...,|in−1|]によって表わすことができる。たとえば、決定された最も近いベース・コード・ベクトルbx,yの(t+1)番目の位置における各々の値bx,y,tの正負符号が、それぞれ、入力ベクトルの(t+1)番目の位置においてそれぞれの値iの正負符号に割り当てられることができる。ここで、ベース・コード・ベクトルbのセットのベース・コード・ベクトルbx,yのパリティが、0であるならば、これは保つことができる。別の例として、ベース・コード・ベクトルbのセットのベース・コード・ベクトルbx,yのパリティが、−1であるならば、ポテンシャル・ベース・コード・ベクトルの値bx,y,tの正負符号は、それぞれ、ベクトルの同じ位置における入力ベクトルの値の正負符号に対応して割り当てることができる。そして、奇数の負コンポーネントがないならば、最も低い非空白絶対値を有するポテンシャル・ベース・コード・ベクトルにおける値bx,y,tは、その正負符号を変えることができる。あるいは、もう一つの例としてあげると、ベース・コード・ベクトルbのセットのベース・コード・ベクトルbx,yのパリティが、+1であるならば、ポテンシャル・ベース・コード・ベクトルの値bx,y,tの正負符号は、それぞれ、ベクトルの同じ位置における入力ベクトルの値の正負符号に対応して割り当てられることができる。そして、偶数の負コンポーネントがないならば、最も低い非空白絶対値を有するポテンシャル・ベース・コード・ベクトルにおける値bx,y,tは、その正負符号を変えることができる。
非限定的な例として、コード・ベクトルcx,z,yは、cx,z,y=[bx,y,0・s,...,bx,y,n−1・s]によって、決定することができる。
z∈{0,1,...S−1}であるような場合に、スケール表現sの各々は、ベース・コード・ベクトルの少なくとも1つのセットと結びついている。たとえば、非限定的な例として、ベース・コード・ベクトルのこのそれぞれの少なくとも1つのセットは、x∈{0,1,...n−1}であるベース・コード・ベクトルbのセットで表わすことができる。ここで、nは、それぞれのスケール表現sに結びついたベース・コード・ベクトルのセットの数を表すことができる。ここで、0<n<Xである。それぞれのスケール表現sと、x∈{0,1,...n−1}である、ベース・コード・ベクトルbの結びついた少なくとも1つのセットとの間のこのリンクに基づいて、x∈{0,1,...n−1}およびy∈{0,1,...,B−1}およびz∈{0,1,...S−1}である、コード・ベクトルcx,z,yの少なくとも1つを決定することができる。
このように、例として、上に述べたコードブックのコードブック構造は、複数のスケール表現s、ベース・コード・ベクトルbの複数のセット、および、ベース・コード・ベクトルの関連する少なくとも1つのセットを有する各々のスケール表現の間のリンクにより規定することができる。
例えば、少なくとも、ベース・コード・ベクトルbのセットなどベース・コード・ベクトルの少なくとも1つのセットは、少なくとも2つのスケール表現に結びついているから、ベース・コード・ベクトルの同一のセットは、第1のスケール表現と結びついたコード・ベクトルの少なくとも1セットから、コード・ベクトルを造るのに、そして、少なくとも1つの更なるスケール表現と結びついたコード・ベクトルの少なくとも1セットから、コード・ベクトルを造るのに、使うことができる。
ベース・コード・ベクトルの複数のセットのベース・コード・ベクトルの各々のセットに対して、他のように、入力ベクトルを符号化するためのポテンシャル・ベース・コード・ベクトルを決定することが可能である。
たとえば、コード・ベクトルのサブセットから入力ベクトルを符号化するためにコード・ベクトルを決定することは、決定された歪曲メトリックまたは距離、または、エラー値に基づいている。
そのような例においては、複数のスケール表現のうちの1つのスケール表現が、選択される。
さらにまた、選択されたスケール表現と結びついたベース・コード・ベクトルのセットの決定されたポテンシャル・ベース・コード・ベクトルが、選択される。
コード・ベクトルを、つぎに、選択されたポテンシャル・ベース・コード・ベクトルに基づいて、また、選択されたスケール表現の上で決めることができる。ここで、このコード・ベクトルを決定することを、ここに記述された方法に関して記載したように、実行することができる。
いくつかの例において、決定されたコード・ベクトルおよび入力ベクトルに基づいて、歪曲メトリックが決定される。たとえば、前記の歪曲メトリックは、決定されたコード・ベクトルと入力ベクトルとの間の任意の適切な距離に基づいたものであることができる。例として、ハミング距離またはユークリッド距離、あるいは、任意の他の距離を、使用することができる。例として、コード・ベクトルを決定することは、省略されることができ、歪曲メトリックを、選択されたスケール表現と結びついたそれぞれのコード・ベクトルと、この選択されたスケール表現と結びついたベース・コード・ベクトルのセットとを本来的に考慮することによって計算することができる。
たとえば、cx,z,y=[cx,z,y,0,cx,z,1,...,cx,z,n−1]が、ステップ430において、決定されたコード・ベクトルを表し、i=[i,i,...,in−1]が、入力ベクトルを表すならば、距離dは、
Figure 2017504829
に基づいて計算することができる。
上記の方程式にしたがう、この距離dは、
Figure 2017504829
に基づいて計算された距離d’に置き換えることができる。
あるいは、もう一つの例として、歪曲メトリックが、重み関数に基づいて決定される場合に、上記の方程式にしたがう距離dは、
Figure 2017504829
のように、補正することができる。ここで、wは、重み関数の重み係数を表す。
したがって、上記の方程式にしたがう距離d’fは、
Figure 2017504829
のように、重み関数の手段により重みづけることができる。
たとえば、第1の決定された歪曲メトリックならば、または、格納された歪曲メトリックと比較することができるならば、歪曲メトリックd、またはd’、またはd、またはd’を格納することができる。ここで、新しく決定された歪曲メトリックが、格納された歪曲メトリックよりも良いならば、格納された歪曲メトリックは置き換えられる。更にまた、格納された歪曲メトリックと関連したコード・ベクトルを格納することができる、または、このコード・ベクトルの識別子を格納することができる。
次に、たとえば、その動作は、選択されたスケール表現と結びついたベース・コード・ベクトルのセットが更に存在するかどうかをチェックできる。そうであるならば、選択されたスケール表現と結びついたベース・コード・ベクトルのこの更なるセットの決定されたポテンシャル・ベース・コード・ベクトルが、選択される。そうでないならば、複数のスケール表現の更なるスケール表現に対してチェックがなされる。
複数のスケール表現の更なるスケール表現が存在するならば、その更なるスケール表現が、選択され、さもなければ、最良の距離メトリックに関連したコード・ベクトルを、入力ベクトルを符号化するために選択することができる。
たとえば、ベース・コード・ベクトルのセットが、リーダー・クラスを表現することができる場合に、各々のリーダー・クラスが、異なるリーダー・ベクトル、および、リーダー・ベクトルの順列を備える。このように、リーダー・ベクトルおよび前記リーダー・ベクトルの順列は、ベース・コード・ベクトルのそれぞれのセットのベース・コード・ベクトルを表現することができる。例として、リーダー・ベクトルは、n次元ベクトル(nは、整数を示す)であり、その(正の)コンポーネントは、(例えば、漸減的に)順序づけられている。そのリーダー・ベクトルに対応するリーダー・クラスが、次に、リーダー・ベクトル、および、(いくつかの可能性がある制限を有する)リーダー・ベクトルのすべての正負符号付き順列を通して得られるすべてのベクトルから成る。
リーダー・クラスの結合を、複数のスケール表現の同一のスケール表現、および、それぞれのスケール表現と結びついたベース・コード・ベクトルのセットで規定することができる。たとえば、リーダー・クラスの結合を、そのスケール表現を有するベース・コード・ベクトルの結びついたステップのベース・コード・ベクトルをスケーリングする手段によって得られるコード・ベクトルのセットと結びつけることができる。
そのようなリーダー・クラスの結合は、切り詰めとして考えることができる。このように、複数のスケール表現が、nスケール表現であるならば、リーダー・クラスのn結合を、リーダー・クラスの各々の結合が、それぞれのスケール表現、および、それぞれのスケール表現に結びついたベース・コード・ベクトルのセットの手段により規定されるような場合に、規定することができる。
したがって、複数のスケール表現、および、ベース・コード・ベクトルの複数のセットは、リーダー・クラスの複数の結合を定義することができ、それによって、コードブックを定義する。ここで、例として、リーダー・クラスの各々の結合は、スケーリングされたリーダー・クラスの結合として考えることができる。
これらの音声およびオーディオ・コーデックの範囲内で使用されるコードブックは、たとえば、引用文献、A. Vasilache、B. Dumitrescu、および、I. Tabus著、「Multiple−scale leader−lattice VQ with application to LSF quantization」、Signal Processing、2002、第82巻、ページ563−586、Elsevierに記載されたように、格子構造に基づいていることができる。これは、参照により、本願明細書に、その全体が組みこまれる。たとえば、D10+格子は、量子化に対して考えることができるが、しかし、他のどの適切な格子量子化もまた、考えることができる。
たとえば、ベース・コード・ベクトルのセットが、リーダー・クラスであり、ここで、各々のリーダー・クラスが、異なるリーダー・ベクトル、および、リーダー・ベクトルの順列を備え、また、ここで、各々のリーダー・ベクトルは、降順または昇順に配列されたn絶対値を備えるn次元ベクトルを表す。
ベース・コード・ベクトルbのそれぞれのセットのリーダー・ベクトルlは、l=[l,l,...,ln−1]によって表わすことができ、ここで、l,l,...,ln−1は、絶対値である。降順の場合には、lは、1ー最高値を表し、lは、2ー最高値を表し、そして、ln−1は、nー最高値を表す。昇順の場合にはlは、1−最低値を表し、lは、2−最低値を表し、そして、ln−1は、n−最低値を表す。
それぞれのリーダー・ベクトルの値lk−1は、それぞれのリーダー・ベクトルにおけるk番目の位置における値を表すが、入力ベクトルにおいて、(降順リーダー・ベクトルの場合には)kー最高絶対値の、または、(昇順リーダー・ベクトルの場合には)kー最低絶対値の位置に対応するポテンシャル・ベース・コード・ベクトルにおける位置に割り当てることができる。たとえば、この位置は、位置mとして示すことができる。例として、ポテンシャル・ベース・コード・ベクトルは、p=[p,p,...,pn−1]によって表わすことができる。
たとえば、非限定的な例として、例示的な入力ベクトルは、i=[−2.4,5.0,−1.3,0.2]であることができる。ここで、対応する絶対値入力ベクトルは、i=[2.4,5.0,1.3,0.2]であることができる。
リーダー・ベクトルの降順の場合には、リーダー・ベクトルの位置kの値、すなわち値lk−1は、入力ベクトルにおいてkー最高絶対値の位置に対応するポテンシャル・ベース・コード・ベクトルにおける位置に割り当てられる。たとえば、カウンターk=1によって表される第1の位置を出発して、入力ベクトルの1−最高絶対値の位置は、位置m=2である。値5.0が、絶対値入力ベクトルにおいて1−最高値であり、位置m=2に位置するすなわち、iaであるからである。したがって、値lは、ポテンシャル・ベース・コード・ベクトルにおいて、位置m=2に割り当てられる。すなわち、p=lを保つことができる。
更にまた、ポテンシャル・ベース・コード・ベクトルpm−1における代入値の正負符号(+あるいは、−)は、kー最高絶対値と結びついた入力ベクトルの値の正負符号にしたがってセットされる。したがって、pm−1=lk−1・sign(im−1)を保つことができる。
このように、例示的な入力ベクトルi=[−2.4, 5.0, −1.3, 0.2]の非限定的な例において、p=lを保持することができる。値i=5.0が正の正負符号を有するからである。
位置カウンターkは、インクリメントすることができ、そして、別の値がリーダー・ベクトルに存在するかあるかどうか、すなわち、k≦が保たれるかどうかをチェックすることができる。
そうであるならば、この方法は進み、非限定的な例、において、位置k=2に関して、位置m=1の値2.4は、入力ベクトルにおいて2ー最高(kー最高)絶対値を表す。このように、P=l・sign(i)=−lを、それぞれの正負符号を有するlを割り当てるために保つことができる。入力ベクトルの値i=−2.4は、負の正負符号を有するからである。
このようにして、この非限定的な例において、
k=3→m=3→P=l・sign(i)=−l; および、
k=4→m=4→P=l・sign(i3)=+l
のように、リーダー・ベクトルの位置を通してループを繰り返すことができる。
したがって、例の方法によって得られるそれぞれのポテンシャル・コード・ベクトルは、それぞれのリーダー・ベクトルlの順序の降順の場合には、p=[−l1,l,−l,l]の結果となる。
リーダー・ベクトルlが、昇順の順序であるならば、上述の方法は、絶対値入力ベクトルにおいて、k−最低値の位置を表しているmで実行することができる。ここで、pm−1=lk−1・sign(im−1)を保つことができる。
得られたポテンシャル・コード・ベクトルpは、ベース・コード・ベクトルbのそれぞれのセットに結びついている。ここで、lは、ベース・コード・ベクトルのこのそれぞれのセットのリーダー・ベクトルを表す。たとえば、上で記述されたベース・コード・ベクトルbx,y,tおよびスケール表現sに基づいてコード・ベクトルを決定する例示的プロセスに関して、ポテンシャル・コード・ベクトルpは、入力ベクトルに関するベース・コード・ベクトルbのセットの最も近いベース・コード・ベクトルbx,yを表す。ここで、絶対値入力ベクトルが、ベース・コード・ベクトルのそれぞれのセットのポテンシャル・コード・ベクトルを決定するために使用され、また、決定された最も近いベース・コード・ベクトルbx,yのk番目の位置における各々の値bx,y,k−1の正負符号が、入力ベクトルiのk番目の位置における、それぞれの値iの正負符号に割り当てられる。ここで、0<k≦nが保たれる。
このように、ポテンシャル・コード・ベクトルpを表すこの最も近いベース・コード・ベクトルbx,yを、上記したように、最も近いベース・コード・ベクトルbx,yに基づいて、また、それぞれのスケール表現sに基づいて、コード・ベクトルcx,z,yを決定するのに使用することができる。
各々の切り詰めに対して、異なるスケール表現が、(例えばトレーニングを通して)割り当てられる。例えば、
float scale[]={0.8,1.2,2.7}
である。
したがって、たとえば、コードブックの複数のコード・ベクトルのうちのコード・ベクトルの第1のセットが、第1のスケール表現0.8によってスケーリングされた第1の切り詰めによって規定される。コードブックの複数のコード・ベクトルのうちのコード・ベクトルの第2のセットが、第1のスケール表現1.2によってスケーリングされた第2の切り詰めによって規定される。および、コードブックの複数のコード・ベクトルのうちのコード・ベクトルの第3のセットが、第1のスケール表現2.7によってスケーリングされた第3の切り詰めによって規定される。このコードブックは、多重スケール格子構造を有する。
例として、多重スケール格子構造の検索は、2つのフェーズを有すると見ることができる。第1のものは、各リーダー・クラスごとに、すなわち、ベース・コード・ベクトルのセットごとにポテンシャル・コード・ベクトルを計算することができる。そして、第2のものは、ポテンシャル・コード・ベクトルのためにだけ歪みを計算することができる。
たとえば、絶対値関数を、絶対値入力ベクトルiaがベクトルiの絶対値を備え、そして、次に、その絶対値入力ベクトルを降順に(または、代替的に、昇順に)ソートされることができるように、入力ベクトルiに適用することができる。
例として、インデックス表現は、降順に(または昇順に)順序付けられた絶対値ベクトルにおける、各々の入力ベクトルiのインデックスを示す表現を含むことができる。たとえば、そのインデックス表現は、整数アレイ「indx」であることができる。
例えば、入力ベクトルが、[−2.4 5.0 −1.3 0.2]であるならば、絶対値ベクトルは、[2.4 5.0 1.3 0.2]である。そして、「indx」アレイが、[1 0 2 3]である。リーダー・ベクトルは、降順に順序付けされることができるから、最も近い隣人サーチアルゴリズムの間に、リーダー・ベクトルの第1の値は、入力ベクトルその他の最高絶対値コンポーネントに対応する位置の上に割り当てることができる。
以下の非限定的な例において、「idx_lead_max」は、すべての切り詰めからのリーダー・クラスの最大数であり、それは、Xに対応するものであり得え、この例において、9であることができる。したがって、ベース・コード・ベクトルの9つのセットが、9つのリーダー・クラスの手段により規定されている。ここで、第n番目のリーダー・クラスは、&pl[n−1]によって規定される。
たとえば、アレイ「sign」は、入力ベクトル・コンポーネントの正負符号を格納することができる。
Figure 2017504829
カウンターuにより定義された外側ループは、各々のuをそれぞれのリーダー・ベクトルに結びつけると考えることができる。このように、カウンターuにしたがって、ベース・コード・ベクトルの対応するセットが、外側ループの手段により選択される。各々のリーダー・ベクトルが、複数のベース・コード・ベクトルのうちのベース・コード・ベクトルの異なるセットに対応するからである。
整数値jによって定義される内側ループは、ベース・コード・ベクトルの選択されたセットに結びついたポテンシャル・ベース・コード・ベクトルを決定するものと考えることができる。j_crtは、入力ベクトルにおける(j+1)最高絶対値の位置を示している。
このように、異なるポテンシャル・ベース・コード・ベクトルcv_potは、検索のこの例示的な第1の部分の手段により決定される。
検索の第2の部分は、コード・ベクトルのサブセットから、入力ベクトルを符号化するようにコード・ベクトルを決定するために使用することができる。
Figure 2017504829
外側ループは、カウンターlによって、定義することができる。ここで、lは、複数のスケール表現のうちの1つのスケール表現scale[l]を選択するために発行される。
LATTICE_DIMは、符号化される入力ベクトルの長さに対応することができるコード・ベクトルの長さを定義する。
その後に、(0,...,LATTICE_DIM)における各kに対する値ws1[k]およびws2[k]が、計算され、これは、歪曲メトリック(X3)のその部分であると考えることができる。それは、ポテンシャル・ベース・コード・ベクトルから独立している。値w[k]は、各kに対する重み関数の値を表す。
上で示されたコード例は、更に、内部のjループ「for(j=0; j<no_leaders[l]; j++)」を有する。ここで、no_leaders[l]は、選択されたスケール表現scale[l]と結びついたリーダー・ベクトルのセットを定義する。すなわち、no_leaders[l]は、それぞれのスケール表現scale[l]と結びついたベース・コード・ベクトルのセット数を表すnzに対応することができる。このように、選択されたスケール表現scale[l]と結びついたリーダー・ベクトルの各々のセットを通してこのループを繰り返す。ここで、リーダー・ベクトルのこのセットのリーダー・ベクトルに対して、1つのポテンシャル・ベース・コード・ベクトルcv_potが、決定された。このように、たとえば、このループは、反復的に、選択されたスケール表現と結びついたベース・コード・ベクトルのセットから各々のポテンシャル・ベース・コード・ベクトルcv_potを選択するここで、cv_pot[j]は、ベース・コード・ベクトルのこのセットのそれぞれj番目のベース・コード・ベクトルを表すことができる。
これらのベース・コード・ベクトルの各々、および、選択されたスケール表現に対して、それぞれのベース・コード・ベクトルおよび選択されたスケール表現と結びついているコード・ベクトルに対するそれぞれの歪曲メトリックを例えば、以下のようにして歪曲メトリックに基づくなどで決定することができる。
Figure 2017504829
最も低い値を有する歪曲メトリックが、最良の歪曲メトリックを表すものとして決定される。ここで、この歪曲メトリック・コード・ベクトルと結びついたコード・ベクトルを、入力ベクトルを符号化するために使用することができる。たとえば、このコード・ベクトルを、最良のスケール表現およびポテンシャル・ベース・コード・ベクトルのセットの最良のポテンシャル・ベース・コード・ベクトルによって定義することができる。
ここに記述される実施形態は、ポテンシャル・コード・ベクトル・アレイcv_potを計算しないで、しかし、入力ベクトルのバージョンをソートした絶対値を採用し、適切な転置空間において、歪曲計算を決定または生成することによって、ベクトル量子化の複雑さを減少する。
いくつかの実施形態において、格子ベクトル量子化器は、入力ベクトル・ソータ402を備える。この入力ベクトル・ソータ402または入力ベクトルをソートする適切な手段は、入力ベクトルを受信するように構成することができる。
入力ベクトルを受信する動作は、図6において、ステップ501によって示される。
格子ベクトル量子化器および入力ベクトル・ソータ402は、入力ベクトルを絶対値降順にソートするように構成される(いくつかの実施形態において、ソーティングは、以下の動作を適切に変えて絶対値昇順に実行されることができることが理解される。)。
このように、たとえば、入力ベクトルが、
I=[−2.4 5.0 −1.3 0.2]
であるならば、絶対値ベクトルは、
absi=[2.4 5.0 1.3 0.2]
である。これは、
cv_pot1=[5.0 2.4 1.3 0.2]、
および、ソーティング置換「indx」=[1 0 2 3]
として定義されるソートされた絶対値ベクトルである。
入力ベクトルのソーティングが、図6において、ステップ503によって示される。
この入力ベクトル・ソータは、つぎに、ソートされたベクトルおよびソート置換をコード・ベクトル決定器403にパスすることができる。
いくつか実施形態において、格子ベクトル量子化器453は、ポテンシャル・コード・ベクトル決定器401を備える。このポテンシャル・コード・ベクトル決定器またはポテンシャル・コード・ベクトルを決定する適切な手段は、コード・ベクトルを生成するのに用いられるリーダー・クラスを格納または生成するように構成される。
たとえば、リーダー・クラスを、下のように(Q1値、言い換えると、2を乗じたもの)定義することができる。
Figure 2017504829
これらのリーダー・クラスは、いくつかの実施形態において、コード・ベクトル決定器403にパスされることができる。
いくつか実施形態において、格子ベクトル量子化器453は、コード・ベクトル決定器403を備える。コード・ベクトル決定器403またはコード・ベクトルを決定することの適切な手段は、いくつかの実施形態において、リーダー・クラスおよび、また、ソートされた入力ベクトルおよび順列ベクトルを受信することができる。コード・ベクトル決定器は、次に、これらの値から、入力ベクトルと結びついた出力コード・ベクトルを決定することができる。
決定される距離が、加重ユークリッド距離である場合には、いくつかの実施形態において、重みが、順列ベクトルにしたがって転置され、そして、中間入力ベクトル生産物が生成される。いくつかの実施形態において、重みは一様である、または、重みづけ動作は、非重みづけユークリッド距離が採用された場合のオプションであることが理解される。
これの例を、以下のコードによって示すことができる。
Figure 2017504829
ソートされた入力ベクトルおよび転置された重みに基づいて、中間生産物を生成するために、重みを転置し適用する動作が、図6において、ステップ505によって示される。
いくつか実施形態において、コード・ベクトル決定器は、第1のスケール値scale[0]に対して、距離コンポーネントsum1およびsum2を決定することができる。
この動作は、以下のステップに分割することができる。
第1に、第1のスケール値scale[0]に対して、スケールおよびスケール値の二乗を初期化する。スケールおよびスケール値の二乗の初期化の動作は、図6において、ステップ506によって示される。
第2に、リーダー・ベクトルをリーダー・クラス・マトリクスから選択する。これは、上記のマトリクス例において、マトリクスpl_crtとして示される。
リーダー・ベクトルを選択する動作は、図6において、ステップ507によって示される。
第3に、中間距離値sum1およびsum2を中間値および選択されたリーダー・ベクトルに基づいて生成する。
選択されたリーダー・ベクトルに基づいて、中間距離値を生成する動作は、図6において、ステップ509によって示される。
第4に、リーダー・ベクトルが、第7の位置に到着しない場合、パリティ条件をチェックし、入力ベクトルにおけるマイナス符号の数が、リーダー・クラス・パリティにおいて与えられた制約と異なる場合、sum1値を修正する。
リーダー・ベクトルが、第7の位置に到着しない場合、パリティ条件をチェックし、入力ベクトルにおけるマイナス符号の数が、リーダー・クラス・パリティにおいて与えられた制約と異なる場合、sum1値を修正する動作は、図6において、ステップ511によって示される。
第5に、sum1およびsum2値から距離またはエラー値を決定する。そして、次に、ここで、現在のリーダー・ベクトル距離が、最も小さい場合、最小ベクトルのインデックスを示す。
リーダー・ベクトルに対する距離を決定する動作は、図6において、ステップ513によって示される。
その動作は、つぎに、リーダー・ベクトルのすべてが選択されるまでループして周ることができる。
リーダー・ベクトルのすべてが選択されたかどうかをチェックして、リーダー・ベクトルのすべてが選択されてはいない場合、ループ・バックする動作は、図6ステップ514に示される。
これらのステップは、以下のコードで示すことができる。
Figure 2017504829
次に、いくつかの実施形態において、コード・ベクトル決定器は、他のスケールに対して歪曲距離を決定するために、sum1およびsum2値を使用するように構成することができる。「最良(best)」スケール値をチェックする同様の動作を、さらに、作ることができる。
他のスケールの歪曲距離を決定する動作は、図6において、ステップ515によって示される。
歪曲距離を決定することする動作は、他のスケールに対して、sum1およびsum2値を使用して行うことができる。これは、以下のコード例を使用してインプリメントすることができる。
Figure 2017504829
さらにまた、いくつかの実施形態において、コード・ベクトル決定器は、一旦、最良のリーダー・クラスと最良のスケールが見つかると、結果として生じるコード・ベクトル「cv_out」を計算するように構成することができる。
コード・ベクトルを計算するために逆転置を実行する動作は、図6において、ステップ517によって示される。
いくつか実施形態において、コード・ベクトルを計算すること動作は、以下のコード例によってインプリメントすることができる。
Figure 2017504829
いくつか実施形態において、変数sum1とsum2の計算は、第1の切り詰め(no_leaders[0])からリーダーの数まで行われる。これは、リーダーの数が降順に順序づけられなければならず、それらの対応するスケールが同様に順序づけられることを意味する。
そのような実施形態においては、追加的な複雑さの減少が生成される。1つの構造に対するリーダーの最大数を計算する必要がないが、しかし、第1の位置にあることは既知であるからである。
複雑さ減少の大部分は、勝ったリーダー・ベクトルだけが、転置しなければならないものであって、リーダー・ベクトルの全てではないという事実から来ていることが理解される。その計算は、正の値の上でなされる(リーダー・ベクトルと入力ベクトルとの両方とも、絶対値である)。これは、入力ベクトル・コンポーネントと量子化されたものとが、同じ正負符号を有するものである限り、OKである。
正負符号の差異は、考慮するリーダー・ベクトルにパリティ制約(奇数または偶数の負コンポーネント)があるとき、現れ、そして、この制約は、入力ベクトルによって配慮されない。この場合において、最小入力ベクトル・コンポーネントの量子化値の正負符号は、その反転した正負符号である。最小入力ベクトル・コンポーネントは、転置空間において、最後のコンポーネントに対応する。これは、sum1およびsum2を計算するため第1のループが、なぜ、「while(l<LATTICE_DIM−1)」であるかの理由である。実際の非転置空間において、これは、smallest=indx[LATTICE_DIM−1]に対応する、LATTICE_DIMは、考慮された格子の次元である。
上記の例が、装置10の内部のコーデックの内で動作するアプリケーションの実施形態を記述するが、下に記述される発明は、任意の可変レート/適応レート・オーディオ(または音声)コーデックを含む、任意のオーディオ(または音声)コーデックの部分として、インプリメントすることができることが理解される。このように、たとえば、アプリケーションの実施形態を、オーディオ・コーデックでインプリメントすることができる。それは、固定または有線通信経路の上でオーディオ・コーディングをインプリメントすることができる。
このように、ユーザ装置は、上記のアプリケーションの実施形態において記述されるものなどの音声コーデックを備えることができる。
用語「ユーザ装置」は、携帯電話、携帯用データ処理装置、あるいは、携帯型ウェブ・ブラウザなど、無線ユーザ装置のどんな適切なタイプでもカバーすることを意図することが認識される。
さらに、PLMN(public land mobile network)の要素は、また、上記したように、音声コーデックを備えることができる。
一般に、アプリケーションの種々の実施形態は、ハードウェア、または特殊目的回路、ソフトウェア、論理、または、それらの任意の組合せでインプリメントすることができる。例えば、いくつかの態様は、ハードウェアで、インプリメントすることができ、一方、他の態様は、ファームウェアまたはソフトウェアでインプリメントすることができ、それは、コントローラ、マイクロプロセッサまたは、他のコンピューティング・デバイス、で、実行することができる。しかしながら、本願発明は、それらに制限されるものではない。一方、アプリケーションの種々の態様を、ブロック図、フローチャートとして、または、いくつかの他の図表現を用いて、図示し、記述することができる。これらのブロック、装置、システム、技術またはここに記述される方法は、非限定的な例としてあげると、ハードウェア、ソフトウェア、ファームウェア、特殊目的回路または論理、汎用ハードウェア、またはコントローラまたは、他のコンピューティング・デバイス、または、それらのいくつかの組合せでインプリメントすることができることが良く理解される。
このアプリケーションの実施形態は、例えば、プロセッサ・エンティティにおいて、または、ハードウェアによって、あるいは、ソフトウェアとハードウェアとの組合せによってモバイル・デバイスのデータ・プロセッサにより、実行可能なコンピュータ・ソフトウェアによってインプリメントすることができ、さらに、これに関して、図にあるように、論理フローのどんなブロックでも、プログラム・ステップ、または、相互接続した論理回路、ブロックおよび機能、または、プログラム・ステップの組合せおよび、論理回路、ブロックそして、機能を表すことができることに留意する。
メモリは、ローカルな技術的環境に適切な任意のタイプのものであり得、半導体ベース・メモリ素子、半導体ベース・メモリ・デバイス、磁気記憶デバイスおよびシステム、光学的記憶装置およびシステム、固定メモリ、および、脱着可能メモリなどいかなる適切なデータ格納技術を使用してでもインプリメントすることができる。データ・プロセッサは、ローカルな技術的環境に適切な任意のタイプのものであり得、非限定的な例としてあげると、汎用コンピュータ、専用コンピュータ、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、アプリケーション特定集積回路(ASIC)、ゲート・レベル回路、および、マルチ・コア・プロセッサ・アーキテクチャに基づくプロセッサのうちの1つ以上を含むことができる。
本願発明の実施形態は、集積回路モジュールなどの種々のコンポーネントにおいて実施することができる。集積回路の設計は、概して、非常に自動化されたプロセスである。複雑で強力なソフトウェア・ツールが、半導体基板の上で、直ぐに、エッチングし、形成される半導体回路設計に、論理レベル設計を変換するために利用可能である。
カリフォルニア州マウンテンビューのシノプシス社(Synopsys, Inc.)、および、カリフォルニア州サンノゼのケイデンス・デザイン社(Cadence Design)によって提供されるようなプログラムが、事前格納された設計モジュールのライブラリと並んで、設計の確立したルールを用いて、半導体チップ上で自動的に導体を配線し、コンポーネントを配置する。一旦、半導体回路の設計が完了すると、結果として生成された設計を、標準化された電子フォーマット(例えば、Opus、GDSII、または、その他)で、半導体製造施設、または、製造のための「ファブ」に伝送することができる。
本願にて用いられているように、「回路(circuitry)」という用語は、(a)ハードウェアのみの回路インプリメンテーション(例えば、アナログおよび/またはデジタル回路だけのインプリメンテーション)および、(b)例えば、(i)プロセッサの組合せ、または(ii)プロセッサ/ソフトウェア(デジタルシグナルプロセッサを含む)の部分、ソフトウェア、および、モバイル電話またはサーバなどの装置に種々の機能を実行させる一緒に動作するメモリなどの回路とソフトウェア(および/またはファームウェア)との組合せ、および、(c)たとえソフトウェアまたはファームウェアが物理的に存在しないとしても作動のために、ソフトウェアまたはファームウェアを要求するマイクロプロセッサ、または、マイクロプロセッサの部分などの回路、のすべてを指す。
この「回路」の定義は、すべての請求項を含む本願において、この用語のすべての使用について適用される。さらなる例として、本願にて用いられているように、「回路(circuitry)」の用語は、また、単にプロセッサ(または、マルチプロセッサ)またはプロセッサの部分、および、その(あるいは、それらの)付随するソフトウェアやファームウェアのインプリメンテーションをカバーする。用語「回路」は、また、たとえば、および、特定の請求項要素の適用できるならば、ベースバンド集積回路、または、携帯電話のための応用プロセッサ集積回路、または、サーバの同様な集積回路、携帯電話ネットワーク・デバイス、または、他のネットワーク・デバイスをカバーする。
前述の説明は、例示的で非限定的な例として、本願発明の例示的な実施形態の完全で有益な説明を提供した。しかしながら、種々の修正と、適応が、前述の記載を参酌すれば、添付の図面、および、添付の特許請求の範囲の請求項とともに読まれるとき、当業者にたいして、明らかになることができる。しかしながら、本願発明の教示のすべてのそのような、および、類似した修正は、添付の請求項において規定されるように、依然として、本願発明の範囲の中に入る。
本願発明の実施形態は、集積回路モジュールなどの種々のコンポーネントにおいて実施することができる。集積回路の設計は、概して、非常に自動化されたプロセスである。複雑で強力なソフトウェア・ツールが、半導体基板の上で、直ぐに、エッチングし、形成される半導体回路設計に、論理レベル設計を変換するために利用可能である。
カリフォルニア州マウンテンビューのシノプシス社(Synopsys, Inc.)、および、カリフォルニア州サンノゼのケイデンス・デザイン社(Cadence Design)によって提供されるようなプログラムが、事前格納された設計モジュールのライブラリと並んで、設計の確立したルールを用いて、半導体チップ上で自動的に導体を配線し、コンポーネントを配置する。一旦、半導体回路の設計が完了すると、結果として生成された設計を、標準化された電子フォーマット(例えば、Opus、GDSII、または、その他)で、半導体製造施設、または、製造のための「ファブ」に伝送することができる。
本願にて用いられているように、「回路(circuitry)」という用語は、
(a)ハードウェアのみの回路インプリメンテーション(例えば、アナログおよび/またはデジタル回路だけのインプリメンテーション)および、
(b)例えば、
(i)プロセッサの組合せ、または
(ii)プロセッサ/ソフトウェア(デジタルシグナルプロセッサを含む)の部分、ソフトウェア、および、モバイル電話またはサーバなどの装置に種々の機能を実行させる一緒に動作するメモリなどの回路とソフトウェア(および/またはファームウェア)との組合せ、および、
(c)たとえソフトウェアまたはファームウェアが物理的に存在しないとしても作動のために、ソフトウェアまたはファームウェアを要求するマイクロプロセッサ、または、マイクロプロセッサの部分などの回路、
のすべてを指す。
この「回路」の定義は、すべての請求項を含む本願において、この用語のすべての使用について適用される。さらなる例として、本願にて用いられているように、「回路(circuitry)」の用語は、また、単にプロセッサ(または、マルチプロセッサ)またはプロセッサの部分、および、その(あるいは、それらに)付随するソフトウェアやファームウェアのインプリメンテーションをカバーする。用語「回路」は、また、たとえば、および、特定の請求項要素の適用できるならば、ベースバンド集積回路、または、携帯電話のための応用プロセッサ集積回路、または、サーバの同様な集積回路、携帯電話ネットワーク・デバイス、または、他のネットワーク・デバイスをカバーする。
前述の説明は、例示的で非限定的な例として、本願発明の例示的な実施形態の完全で有益な説明を提供した。しかしながら、種々の修正と、適応が、前述の記載を参酌すれば、添付の図面、および、添付の特許請求の範囲の請求項とともに読まれるとき、当業者にたいして、明らかになることができる。しかしながら、本願発明の教示のすべてのそのような、および、類似した修正は、添付の請求項において規定されるように、依然として、本願発明の範囲の中に入る。

Claims (35)

  1. 少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成するステップと、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートするステップと、
    リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択するステップと、
    前記少なくとも1つのポテンシャル・コード・ベクトルと、
    前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップと、
    最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するステップと、
    出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するステップと、を含む方法。
  2. 少なくとも1つのスケール・ファクターを選択するステップを更に含み、
    前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップは、前記少なくとも1つのスケール・ファクターに基づいて、距離を決定するステップを更に含み、
    最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するステップは、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクター、および、最小関連距離を生成するスケール・ファクターを決定するステップを更に含み、
    出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する前記ステップは、前記出力格子量子化コードベクトルに前記出力スケール・ファクターを適用するステップを含む、請求項1に記載の方法。
  3. 少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトルを生成するステップは、前記少なくとも1つのオーディオ信号をタイム・フレームに分割するステップと、
    前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定ステップと、
    を含む、請求項1または2に記載の方法。
  4. パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートするステップは、
    加重距離決定のための重みを決定するステップと、
    ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートするステップと、
    前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用するステップと、を含む、請求項1ないし3のいずれか1項に記載の方法。
  5. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する前記ステップは、
    第1のスケール値に基づいて、第1および第2の距離コンポーネントを生成するステップであって、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついている、ステップと、
    前記第1の距離コンポーネントの正負符号を訂正するステップであって、ポテンシャル・コード・ベクトルは、パリティ制約テストに失敗する、ステップと、
    前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップと、を含む、請求項1ないし4のいずれか1項に記載の方法。
  6. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップは、前記第1および第2の距離コンポーネントおよび、更にスケール値に基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するステップを更に含む、請求項5に記載の方法。
  7. 最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するステップは、最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定するステップと、スケール値を、最小関連距離を生成する前記ポテンシャル・コード・ベクトルだけに適用することによって最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定するステップと、を含む、請求項1ないし6のいずれか1項に記載の方法。
  8. 出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するステップは、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートするステップを含む、請求項1ないし7のいずれか1項に記載の方法。
  9. 少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成する手段と、
    パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートする手段と、
    リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択する手段と、
    前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段と、
    最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する手段と、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する手段と、
    を備える装置。
  10. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段は、前記少なくとも1つのスケール・ファクターに基づいて、距離を決定する手段を更に備え、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する手段は、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターと、最小関連距離を生成するスケール・ファクターとを決定する手段を更に備え、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する前記手段は、前記出力格子量子化コードベクトルに前記出力スケール・ファクターを適用する手段を備える、少なくとも1つのスケール・ファクターを選択する手段を更に備え、
  11. 少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトルを生成する前記手段は、前記少なくとも1つのオーディオ信号をタイム・フレームに分割する手段と、
    前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定する手段と、を備える、請求項9または10のいずれか1項に記載の装置。
  12. パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートする前記手段は、加重距離決定のための重みを決定する手段と、
    ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートする手段と、
    前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用する手段と、を備える、請求項9ないし11のいずれか1項に記載の装置。
  13. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する前記手段は、第1のスケール値に基づいて、第1および第2の距離コンポーネントを生成する手段であって、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついている、手段と、
    前記第1の距離コンポーネントの正負符号を訂正する手段であって、ポテンシャル・コード・ベクトルは、パリティ制約テストに失敗する、手段と、前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段と、
    を備える、請求項9ないし12のいずれか1項に記載の装置。
  14. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する前記手段は、前記第1および第2の距離コンポーネントと、更なるおよびスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定する手段を更に含む、請求項13に記載の装置。
  15. 最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定する手段は、
    最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定する手段と、
    最小関連距離を生成するポテンシャル・コード・ベクトルに、スケール値を適用することにより、最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定する手段と、
    を備える、請求項9ないし14のいずれか1項に記載の装置。
  16. 出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置する前記手段は、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートする手段を備える、請求項9ないし15のいずれか1項に記載の装置。
  17. 少なくとも1つのプロセッサと、コンピュータ・プログラム・コードを含む少なくとも1つのメモリとを備える装置であって、前記少なくとも1つのメモリと、前記コンピュータ・プログラム・コードとは、前記少なくとも1つのプロセッサで、前記装置に、少なくとも、
    少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成させ、
    パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの少なくとも1つのベクトルをソートさせ、
    リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択させ、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定させ、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定させ、
    出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置させるように構成される、装置。
  18. さらに、少なくとも1つのスケール・ファクターを選択させ、
    前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定することは、更に、前記装置に、
    前記少なくとも1つのスケール・ファクターに基づいて距離を決定させ、
    最小関連距離を生成する少なくとも1つのポテンシャル・コード・ベクトルと関連したリーダー・クラスを決定することは、更に、前記装置に、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターと、最小関連距離を生成するスケール・ファクターとを決定させ、
    出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置することは、請求項17に記載の装置。前記装置に、前記出力格子量子化コードベクトルに前記出力スケール・ファクターを適用させる、
    請求項9に記載の装置。
  19. 少なくとも1つのオーディオ信号を規定するパラメータの第1のベクトルを生成することは、前記装置に、
    前記少なくとも1つのオーディオ信号をタイム・フレームに分割させ、前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定させる、請求項17ないし18のいずれか1項に記載の装置。
  20. パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、前記少なくとも1つのパラメータのベクトルをソートすることは、前記装置に、
    加重距離決定のための重みを決定させ、
    ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートさせ、
    前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用させる、請求項17ないし19のいずれか1項に記載の装置。
  21. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定することは、前記装置に、
    第1のスケール値に基づいて、第1と第2の距離コンポーネントを生成させ、ここで、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついており、ポテンシャル・コード・ベクトルが、パリティ制約テストに失敗する前記第1の距離コンポーネントの正負符号を訂正させ、
    前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定させる、
    請求項17ないし20のいずれか1項に記載の装置。
  22. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定することは、前記装置に、更に、
    前記第1および第2の距離コンポーネントと、更なるおよびスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定させる、請求項21に記載の装置。
  23. 最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定することは、前記装置に、
    最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定させ、
    最小関連距離を生成するポテンシャル・コード・ベクトルに、スケール値を適用することにより、最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定させる、請求項17ないし22のいずれか1項に記載の装置。
  24. 出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置することは、前記装置に、
    少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートさせる、請求項17ないし23のいずれか1項に記載の装置。
  25. 少なくとも1つのオーディオ信号を規定するパラメータの少なくとも1つのベクトルを生成するように構成されたベクトル生成器と、パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの前記少なくとも1つのベクトルをソートするように構成された格子ベクトル量子化器と、を備える装置であって、
    該格子ベクトル量子化器は、リーダー・クラスのリストから、少なくとも1つのポテンシャル・コード・ベクトルを選択するように構成されており、
    該格子ベクトル量子化器は、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成されており、
    該格子ベクトル量子化器は、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成されており、
    該格子ベクトル量子化器は、出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するように構成されている、装置。
  26. 少なくとも1つのスケール・ファクターを選択ように構成された前記格子ベクトル量子化器を更に備え、
    該格子ベクトル量子化器は、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成され、
    さらには、前記少なくとも1つのスケール・ファクターに基づいて、距離を決定するように構成され、
    該格子ベクトル量子化器は、最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成されており、
    さらには、ポテンシャル・コード・ベクトルと結びついた出力スケール・ファクターおよび最小関連距離を生成するスケール・ファクターを決定するように構成され、
    出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置ように構成された前記格子ベクトル量子化器は、さらに、前記出力スケール・ファクターを前記出力格子量子化コードベクトルに適用するように構成される、
    請求項25に記載の装置。
  27. 前記装置は、前記少なくとも1つのオーディオ信号をタイム・フレームに分割し、前記少なくとも1つのオーディオ信号タイム・フレームと結びついた線スペクトル周波数パラメータのベクトルを決定するように構成されたパラメータ決定器を更に備える、請求項25または26のいずれか1項に記載の装置。
  28. パラメータの結びつけられた少なくとも1つの順序づけられたベクトルを生成するために、少なくとも1つのベクトル絶対タプルの順序にしたがって、パラメータの前記少なくとも1つのベクトルをソートするように構成された前記格子ベクトル量子化器は、
    更に、加重距離決定のための重みを決定し、ソートされた重みベクトルを生成するために、前記少なくとも1つのベクトル絶対タプルの前記順序に基づいて前記重みをソートし、
    前記ソートされた重みベクトルを前記少なくとも1つの順序づけられたベクトルに適用するように構成される、
    請求項25ないし27のいずれか1項に記載の装置。
  29. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成された前記格子ベクトル量子化器は、更に、
    第1のスケール値に基づいて、第1と第2の距離コンポーネントを生成し、ここで、該第1および第2の距離コンポーネントは、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離に結びついており、
    ポテンシャル・コード・ベクトルが、パリティ制約テストに失敗する、前記第1の距離コンポーネントの正負符号を訂正し、
    前記第1および第2の距離コンポーネントに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成される、
    請求項25ないし28のいずれか1項に記載の装置。
  30. 前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成された前記格子ベクトル量子化器は、更に、
    前記第1および第2の距離コンポーネントと、更なるおよびスケール値とに基づいて、前記少なくとも1つのポテンシャル・コード・ベクトルと、前記少なくとも1つの順序づけられたベクトルとの間の距離を決定するように構成される、
    請求項29に記載の装置。
  31. 最小関連距離を生成するポテンシャル・コード・ベクトルと結びついた少なくとも1つのリーダー・クラスを決定するように構成された前記格子ベクトル量子化器は、更に、
    最小関連距離を生成する前記ポテンシャル・コード・ベクトルのインデックスを決定し、スケール値を、最小関連距離を生成する前記ポテンシャル・コード・ベクトルだけに適用することによって最小関連距離を生成する前記ポテンシャル・コード・ベクトルの前記スケール値を決定するように構成される、
    請求項25ないし30のいずれか1項に記載の装置。
  32. 出力格子量子化コードベクトルを生成するために、前記少なくとも1つのリーダー・クラスを転置するように構成された前記格子ベクトル量子化器は、少なくとも1つのベクトル絶対タプルの逆順序によって前記少なくとも1つのリーダー・クラスをソートするように構成される、請求項25ないし31のいずれか1項に記載の装置。
  33. 装置に、請求項1ないし8のいずれか1項に記載の方法を実行させるコンピュータ・プログラム・プロダクト。
  34. 請求項9ないし32のいずれか1項に記載の装置を備える電子デバイス。
  35. 請求項9ないし32のいずれか1項に記載の装置を備えるチップセット。
JP2016541299A 2013-12-17 2013-12-17 オーディオ信号エンコーダ Active JP6337122B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2013/061034 WO2015092483A1 (en) 2013-12-17 2013-12-17 Audio signal encoder

Publications (3)

Publication Number Publication Date
JP2017504829A true JP2017504829A (ja) 2017-02-09
JP2017504829A5 JP2017504829A5 (ja) 2017-12-14
JP6337122B2 JP6337122B2 (ja) 2018-06-06

Family

ID=53402181

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016541299A Active JP6337122B2 (ja) 2013-12-17 2013-12-17 オーディオ信号エンコーダ

Country Status (8)

Country Link
US (1) US9892742B2 (ja)
EP (1) EP3084761B1 (ja)
JP (1) JP6337122B2 (ja)
KR (1) KR101868252B1 (ja)
CN (1) CN106030703B (ja)
ES (1) ES2786198T3 (ja)
RU (1) RU2665287C2 (ja)
WO (1) WO2015092483A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110660400B (zh) 2018-06-29 2022-07-12 华为技术有限公司 立体声信号的编码、解码方法、编码装置和解码装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0556008A (ja) * 1990-10-17 1993-03-05 Hitachi Ltd ベクトル量子化装置
JPH10276095A (ja) * 1997-03-28 1998-10-13 Toshiba Corp 符号化器及び復号化器
JP2004029708A (ja) * 2002-05-08 2004-01-29 Samsung Electronics Co Ltd 音声信号に対するベクトル量子化及びデコーディング装置とその方法
JP2004526213A (ja) * 2001-05-16 2004-08-26 ノキア コーポレーション 音声コーデックにおける線スペクトル周波数ベクトル量子化のための方法およびシステム
JP2010537245A (ja) * 2007-08-17 2010-12-02 オープン・インターフェイス・ノース・アメリカ,インコーポレイテッド デジタルコンテンツの符号化および/または復号
US20110137645A1 (en) * 2008-04-16 2011-06-09 Peter Vary Method and apparatus of communication
JP2012118546A (ja) * 2006-10-18 2012-06-21 Polycom Inc 高速格子ベクトル量子化
WO2013005065A1 (en) * 2011-07-01 2013-01-10 Nokia Corporation Multiple scale codebook search

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7072832B1 (en) * 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
JP2003516053A (ja) * 1999-11-29 2003-05-07 ソニー株式会社 映像音声信号処理方法及び映像音声信号処理装置
CA2388358A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for multi-rate lattice vector quantization
EP1709743A1 (fr) 2004-01-30 2006-10-11 France Telecom S.A. Quantification vectorielle en dimension et resolution variables
JP4801160B2 (ja) * 2005-09-23 2011-10-26 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 逐次改善可能な格子ベクトル量子化
WO2009090875A1 (ja) * 2008-01-16 2009-07-23 Panasonic Corporation ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法
EP2293292B1 (en) 2008-06-19 2013-06-05 Panasonic Corporation Quantizing apparatus, quantizing method and encoding apparatus
CN101430881B (zh) * 2008-11-10 2013-04-17 华为技术有限公司 一种编码、解码、编解码方法、编解码系统以及相关装置
WO2012069886A1 (en) * 2010-11-26 2012-05-31 Nokia Corporation Coding of strings
PL2915166T3 (pl) 2012-10-30 2019-04-30 Nokia Technologies Oy Sposób i urządzenie do kwantyzacji odpornego wektora
US9191256B2 (en) * 2012-12-03 2015-11-17 Digital PowerRadio, LLC Systems and methods for advanced iterative decoding and channel estimation of concatenated coding systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0556008A (ja) * 1990-10-17 1993-03-05 Hitachi Ltd ベクトル量子化装置
JPH10276095A (ja) * 1997-03-28 1998-10-13 Toshiba Corp 符号化器及び復号化器
JP2004526213A (ja) * 2001-05-16 2004-08-26 ノキア コーポレーション 音声コーデックにおける線スペクトル周波数ベクトル量子化のための方法およびシステム
JP2004029708A (ja) * 2002-05-08 2004-01-29 Samsung Electronics Co Ltd 音声信号に対するベクトル量子化及びデコーディング装置とその方法
JP2012118546A (ja) * 2006-10-18 2012-06-21 Polycom Inc 高速格子ベクトル量子化
JP2010537245A (ja) * 2007-08-17 2010-12-02 オープン・インターフェイス・ノース・アメリカ,インコーポレイテッド デジタルコンテンツの符号化および/または復号
US20110137645A1 (en) * 2008-04-16 2011-06-09 Peter Vary Method and apparatus of communication
WO2013005065A1 (en) * 2011-07-01 2013-01-10 Nokia Corporation Multiple scale codebook search

Also Published As

Publication number Publication date
CN106030703A (zh) 2016-10-12
WO2015092483A1 (en) 2015-06-25
US20160314797A1 (en) 2016-10-27
KR20160099684A (ko) 2016-08-22
EP3084761B1 (en) 2020-03-25
EP3084761A4 (en) 2017-05-31
JP6337122B2 (ja) 2018-06-06
EP3084761A1 (en) 2016-10-26
US9892742B2 (en) 2018-02-13
ES2786198T3 (es) 2020-10-09
KR101868252B1 (ko) 2018-06-15
CN106030703B (zh) 2020-02-04
RU2016125708A (ru) 2018-01-23
RU2665287C2 (ru) 2018-08-28

Similar Documents

Publication Publication Date Title
US8510105B2 (en) Compression and decompression of data vectors
US11594236B2 (en) Audio encoding/decoding based on an efficient representation of auto-regressive coefficients
EP2915166B1 (en) A method and apparatus for resilient vector quantization
WO2007132750A1 (ja) Lspベクトル量子化装置、lspベクトル逆量子化装置、およびこれらの方法
EP2856776A1 (en) Stereo audio signal encoder
KR20240022588A (ko) 신경망 및 벡터 양자화기를 사용하여 오디오 파형 압축
US20160111100A1 (en) Audio signal encoder
US20110135007A1 (en) Entropy-Coded Lattice Vector Quantization
JP6337122B2 (ja) オーディオ信号エンコーダ
US20160019900A1 (en) Method and apparatus for lattice vector quantization of an audio signal
US10580416B2 (en) Bit error detector for an audio signal decoder
RU2769429C2 (ru) Кодер звукового сигнала
US20110112841A1 (en) Apparatus
WO2023198383A1 (en) Method for quantizing line spectral frequencies
CN117616498A (zh) 使用神经网络和向量量化器压缩音频波形
CN116631418A (zh) 语音编码、解码方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170808

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20171030

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180507

R150 Certificate of patent or registration of utility model

Ref document number: 6337122

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250