【手続補正書】
【提出日】平成29年10月25日(2017.10.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
リサンプリングすべき各信号ブロックに対して以下のステップ：
−  適応線形予測によって、或る数の将来の信号サンプルを決定するステップであって、前記或る数が、選ばれたリサンプリング遅延の関数として定義される、ステップと、
−  少なくとも現信号ブロックのサンプルおよび決定された将来の信号サンプルからリサンプリングサポートベクトルを構築するステップと、
−  前記リサンプリングサポートベクトルの前記サンプルにリサンプリングフィルタを適用するステップと
を含むことを特徴とする、可聴周波数信号コード化または復号において可聴周波数信号をリサンプリングするための方法。
【請求項２】
適応線形予測によって決定する前記ステップが、以下のステップ：
−  既定の次数の線形予測フィルタの係数を得るステップと、
−  前記得られた予測フィルタをヌル値の励起信号に適用することによって将来の信号サンプルを得るステップと
を含むことを特徴とする、請求項１に記載の方法。
【請求項３】
前記線形予測フィルタの前記係数が、コード化または復号ステップで格納されたパラメータを読み取ることによって得られることを特徴とする、請求項２に記載の方法。
【請求項４】
前記線形予測フィルタの前記係数が、少なくとも前記現ブロックのサンプルからの分析によって得られることを特徴とする、請求項２に記載の方法。
【請求項５】
前記線形予測が、プリエンファシス処理が実行されている可聴周波数信号上で実行されることを特徴とする、請求項１に記載の方法。
【請求項６】
前記適応線形予測が、以下の方法：
−  短期線形予測、
−  長期線形予測、
−  短期線形予測と長期線形予測との組合せ、
−  消去フレーム隠蔽プロセス
のうちの１つからの予測であることを特徴とする、請求項１に記載の方法。
【請求項７】
−  信号ブロックに対して、選ばれたリサンプリング遅延の関数として定義される或る数の将来の信号サンプルを決定するのに適した適応線形予測モジュールと、
−  少なくとも現信号ブロックのサンプルおよび決定された将来の信号サンプルからリサンプリングサポートベクトルを構築するためのモジュールと、
−  前記リサンプリングサポートベクトルの前記サンプルに適用されるリサンプリングフィルタと
を備えることを特徴とする、可聴周波数信号コーダまたはデコーダにおいて可聴周波数信号をリサンプリングするためのデバイス。
【請求項８】
前記適応線形予測モジュールが、前記コーダまたはデコーダの前記予測コード化または復号モジュールに含まれる予測分析モジュールと協働することを特徴とする、請求項７に記載のデバイス。
【請求項９】
請求項７または８に記載の少なくとも１つのリサンプリングデバイスを備えることを特徴とする、可聴周波数信号コーダ。
【請求項１０】
異なる遅延を有する少なくとも２つのリサンプリングフィルタを使用するリサンプリングデバイスを有し、前記フィルタの少なくとも１つが請求項１に記載の方法に従って実装され、前記将来の信号サンプルの前記或る数の決定が前記使用される２つのリサンプリングフィルタの遅延差の関数である、請求項９に記載のコーダ。
【請求項１１】
請求項７または８に記載の少なくとも１つのリサンプリングデバイスを備えることを特徴とする、可聴周波数信号デコーダ。
【請求項１２】
異なる遅延を有する少なくとも２つのリサンプリングフィルタを使用するリサンプリングデバイスを有し、前記フィルタの少なくとも１つが請求項１に記載の方法に従って実装され、前記将来の信号サンプルの前記或る数の決定が前記使用される２つのリサンプリングフィルタの遅延差の関数である、リサンプリングデバイスを備えることを特徴とする、請求項１１に記載のデコーダ。
【請求項１３】
コード命令であって、前記命令がプロセッサによって実行される際に、請求項１〜６のいずれか一項に記載のリサンプリング方法のステップを実装するためのコード命令を含むコンピュータプログラム。
【請求項１４】
請求項１〜６のいずれか一項に記載のリサンプリング方法のステップを実行するためのコード命令を含むコンピュータプログラムが格納されるプロセッサ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【発明の名称】低遅延符号化／復号のための音声信号のリサンプリング
【技術分野】
【０００１】
本発明は、可聴周波数信号の伝送または格納のための可聴周波数信号の処理に関する。より具体的には、本発明は、可聴周波数信号のコード化または復号時のサンプリング周波数の変更に関する。
【背景技術】
【０００２】
語音または音楽などの可聴周波数信号を圧縮する（損失を伴う）ための多くの技法がある。コード化は、例えば、ＩＴＵ−Ｔ推奨Ｇ．７１１またはＧ．７２９（入力信号が８ｋＨｚでサンプリングされ、コーダおよびデコーダがこの同じ周波数で動作する）にあるような入力信号のサンプリング周波数で直接実行することができる。
【０００３】
しかし、いくつかのコード化方法は、サンプリング周波数の変更を使用して、例えば、コード化の複雑性を低減するか、コード化すべき異なる周波数サブバンドに従ってコード化を適応させるか、またはそれがコーダの事前に定義された内部サンプリング周波数と一致するように入力信号を変換する。
【０００４】
ＩＴＵ−Ｔ推奨Ｇ．７２２で定義されるサブバンドコード化では、１６ｋＨｚでの入力信号は、ＡＤＰＣＭ（適応差分パルス符号変調）タイプのコーダによって別々にコード化される２つのサブバンド（８ｋＨｚでサンプリングされる）に分割される。この２つのサブバンドへの分割は、２３次の有限インパルス応答（ＦＩＲ）の二次モードミラーフィルタバンクによって行われ、それにより、理論上、１６ｍｓで２３個のサンプルの分析合成遅延（コーダ＋デコーダ）が生じる。このフィルタバンクは、多相の実現によって実装される。Ｇ．７２２における２つのサブバンドへの分割により、既定の方法で、それらの先験的な知覚的重要度の関数として異なるビットレートを２つのサブバンドに割り当てることが可能になり、また、低周波数でＡＤＰＣＭタイプの２つのコーダを実行することによって全体的なコード化の複雑性を低減することも可能になる。しかし、それにより、直接のＡＤＰＣＭコード化と比べて、アルゴリズム遅延が引き起こされる。
【０００５】
例えば、非包括的な方法で、ＦＩＲ（有限インパルス応答）フィルタ、ＩＩＲ（無限インパルス応答）フィルタまたは多項式補間（スプラインを含む）を使用することによって、デジタル信号のサンプリング周波数を変更する（リサンプリングとも呼ばれる）ための様々な方法が知られている。従来のリサンプリング方法のレビューは、例えば、（非特許文献１）の論文に見ることができる。
【０００６】
ＦＩＲフィルタ（対称）の利点は、その簡略化された実装形態（ある条件付き）および線形位相を保証する可能性にある。線形位相フィルタリングは、入力信号の波形の保存を可能にするが、過渡信号上のプレエコータイプのアーチファクトを生成し得る時間的拡散（またはリンギング）を伴う可能性もある。この方法は、適切なフィルタリング特性（帯域幅におけるリップル、エイリアシングまたはスペクトル画像を取り除くのに十分な拒絶レベル、...）を保証するために、一般に、ほぼ１〜数ｍｓ程度の遅延（インパルス応答の長さによって決まる）を生じさせる。
【０００７】
ＩＩＲフィルタによるリサンプリングの代替形態は、一般に、ＭＡＴＬＡＢ（登録商標）ソフトウェアの「ｉｉｒｇｒｐｄｅｌａｙ」ルーチンにおける例示的な実現によって、例えば、（非特許文献２）の論文で説明されるように、位相が追加の全域通過フィルタリング段階によって補償されない限り、非線形位相につながる。ＩＩＲフィルタは、一般に、低次のものであるが、固定小数点表現における実装がより複雑であり、フィルタの状態（またはメモリ）は、帰納的部分に対して高い動的な値に達することができ、全域通過フィルタリングによる位相補償が使用される場合、この問題は拡大される。
【０００８】
図１は、１６ｋＨｚから１２．８ｋＨｚに変更するために６４ｋＨｚで２＊６０＋１＝１２１個の係数の長さでＦＩＲフィルタを用いた４／５の比率によるダウンサンプリングの例を示す。ｘ軸は、時間（異なる周波数で時間が記録された信号を表すためにｍｓを単位とする）を表し、ｙ軸は、振幅を表す。上部の正方形の印は、１６ｋＨｚでの入力信号のサンプルの時間的位置を表す。ここでは、これらのサンプルは２０ｍｓのフレームの終了に相当することが想定される。連続的な垂直線は、１６ｋＨｚでの相当するサンプリング時点をマークする。図の下部では、垂直の点線は、１２．８ｋＨｚでの相当するサンプリング時点をマークし、星印は、１２．８ｋＨｚでの出力サンプルを象徴する。また、６４ｋＨｚでのＦＩＲフィルタの１２１個の係数のインパルス応答（対称）も表されており、この応答は、１２．８ｋＨｚでの現フレームの最後のサンプルを計算するために位置付けられる（インパルス応答の最大値の位置はこのサンプルと位置合わせされる）。円形の印は、多相表現で使用された値（入力サンプリング時点に相当する）を示す。出力サンプルを得るため、相当する入力サンプルをこれらの値に乗じ、これらの結果を合計する。この図では、現フレームの終了後（次のフレームの開始時）の入力サンプルが未だ知られていないため、１２．８ｋＨｚでの１２個のサンプル（入力フレームの終了まで）を正確には計算できないことが認められよう。図１の条件でのダウンサンプリング遅延は、１２個のサンプル（すなわち、１２／１２．８＝０．９３７５ｍｓ）である。
【０００９】
ＦＩＲタイプのサンプリング周波数の変更による遅延を低減するための技法がある。
【００１０】
３ＧＰＰ  ＡＭＲ−ＷＢ規格（ＩＴＵ−Ｔ推奨Ｇ．７２２．２としても定義される）では、１６ｋＨｚでサンプリングされた入力信号は、ＣＥＬＰタイプのコード化を適用する前に、１２．８ｋＨｚの内部周波数でダウンサンプリングされる。次いで、１２．８ｋＨｚで復号された信号は、１６ｋＨｚでリサンプリングされ、高帯域信号と結合される。
【００１１】
１２．８ｋＨｚの中間周波数を通過する利点は、ＣＥＬＰコード化の複雑性を低減すること、および２の累乗の倍数であるフレーム長を有することを可能にすることであり、それにより、あるＣＥＬＰパラメータのコード化が容易になる。使用される方法は、複雑性を最小限に抑えるための多相の実現での、ＦＩＲフィルタ（６４ｋＨｚでの１２１個の係数の）による４／５倍での従来のリサンプリングである。
【００１２】
理論上、コーダ上およびＡＭＲ−ＷＢデコーダ上のこのリサンプリングは、図１で表される処理と同様な方法で遅延を生じるはずである。ＡＭＲ−ＷＢコーデックの事例では、１２１個の係数のＦＩＲフィルタを用いると、総合遅延は、理論上、６４ｋＨｚでの２×６０個のサンプル（すなわち、１６ｋＨｚでの２×１５個のサンプルまたは１．８７５ｍｓ）であるはずである。実際には、特定の技法は、コーダ部分のみにおける関連遅延を取り除く（補償する）ために、ＡＭＲ−ＷＢコーダ上で実装され、従って実効遅延を２で除する。
【００１３】
この補償方法については、３ＧＰＰ規格ＴＳ２６．１９０の条項５．１およびＩＴＵ−Ｔ推奨Ｇ．７２２．２の条項５．１で説明されている。ＦＩＲフィルタリング遅延を補償するための方法は、１２．８ｋＨｚに変換すべき１６ｋＨｚでサンプリングされた新しいフレームの各々に対して、現フレームの終了時に既定の数の０を加えることにある。これらの０は、入力サンプリング周波数で定義され、それらの数は、この周波数でのリサンプリングＦＩＲフィルタの遅延に相当する（すなわち、１６ｋＨｚでは１５個の０が加えられる）。リサンプリングは、２０ｍｓのフレーム（３２０個のサンプル）ごとに実装される。従って、ＡＭＲ−ＷＢコーダのリサンプリングは、左側には（過去に向かって）先行フレーム（リサンプリングメモリ）の終了から３０個のサンプルで、かつ右側には１５の０で、３２０個のサンプルの入力フレームを補完して、３０＋３２０＋１５＝３６５個のサンプルのベクトルを形成し、次いで、それを４／５倍でリサンプリングすることに等しい。従って、将来のヌル信号が加えられるため、ＦＩＲフィルタは、ゼロ位相で（従って、遅延なしで）実装することができる。理論上、４／５倍によるＦＩＲリサンプリングは、以下のステップに従って実行される。
−  各入力サンプル後に０の３つのサンプルを加えることによって４だけアップサンプリング（１６ｋＨｚから６４ｋＨｚへ）するステップ
−  ６４ｋＨｚで１２０次の対称ＦＩＲタイプの伝達関数Ｈｄｅｃｉｍ（ｚ）をローパスフィルタリングするステップ
−  ローパスフィルタリングされた信号から５つのサンプルのうちの１つのサンプルのみを保持することによって５だけダウンサンプリング（６４ｋＨｚから１２．８ｋＨｚへ）するステップ
【００１４】
実際には、このリサンプリングは、６４ｋＨｚでの中間信号を計算することなく、および変換すべき信号を０と連結することなく（ＡＭＲ−ＷＢコーデックのソースコードの「ｄｅｃｉｍ５４．ｃ」ファイルを参照）、最適化された多相の実現に従って等しい方法で実装される。各「位相」に対するＦＩＲフィルタリングは、１２．８ｋＨｚでの１２個のサンプル（すなわち、０．９３７５ｍｓ）の遅延を有する１２．８ｋＨｚでの２４次のＦＩＲフィルタに等しい。
【００１５】
１６ｋＨｚから１２．８ｋＨｚへの２０ｍｓの各フレームのＦＩＲリサンプリングの結果は、次のフレームでのみ利用可能な「真」の将来の信号の代わりに将来の信号として０のブロックを使用することによるエラーを含む１２．８ｋＨｚでの結果として得られた各フレームの最後の１２個のサンプルを除いて、「完全な」入力信号（すなわち、フレームに細分されていない）上に形成されたリサンプリングと同一である。実際には、導入される０は、次のフレームにおけるヌル入力信号の事例をシミュレーションする。
【００１６】
この処理は、上部の正方形の印によって１６ｋＨｚでの最後の入力サンプルを表す図２の２０ｍｓのフレームの終了時に示されている。垂直線は、１６ｋＨｚでの相当するサンプリング時点をマークする。図の下部では、星印は、１２個のサンプルの遅延を有する従来のダウンサンプリングによって得ることができる１２．８ｋＨｚでの出力サンプルを象徴する。次いで、下部の三角形の印は、フィルタリングの継続および遅延の低減を行えるようにフレームの終了時に加えられるヌル値の少なくとも１つのサンプルを使用することによって得られる１２．８ｋＨｚでの１２個のサンプルに相当する。これらのサンプルは、従来のフィルタリングで得られた出力の終了に対するそれらの位置に従って＃１〜＃１２に番号付けられる。また、１２．８ｋＨｚでの最後の出力サンプルに相当する位置で使用された６４ｋＨｚでのフィルタのインパルス応答も表されている（インパルス応答の最大値はこのサンプルと位置合わせされる）。円形の印は、多相表現で使用される値（入力サンプリング時点に相当する）を示す。出力サンプルを得るため、相当する入力サンプルまたは０（フレームの終了後の値の場合）をこれらの値に乗じ、これらの結果を合計する。ここでは、この最後のサンプルに対して、加えられた０をインパルス応答から使用されたサンプルのほぼ半分に乗じるため、そのことが重大な推定エラーを招くことが分かる。また、従来のフィルタリング（すなわち、真の入力信号のみを有する）の後に生成された第１のサンプルのエラーは小さく（その終了時のインパルス応答の重みは低く）、従来のフィルタリングからの距離の増大と共にエラーは大きくなる（次いで、インパルス応答の重みは大きくなる）ことも理解されよう。そのことは、図７の結果において観察することができる。
【００１７】
リサンプリングすべき２０ｍｓの各ブロック（またはフレーム）の終了時に０が加えられる、ＡＭＲ−ＷＢコーデックで使用される遅延補償方法は、コーダ上のリサンプリング遅延を取り除くことを可能にするが、現フレームの終了時に生成された値（入力において０が加えられた）が直接コード化され、次のフレームの入力信号が知られた時点で真の値に置き換えられない際は、一般に、満足できるものではない。実際には、各フレームの終了時のこれらの通常のエラーは、次のフレームの開始時の真の出力信号への移行期の周期的な不連続性を生成する。これらの不連続性は、聞き取れるものであり、非常に不快である場合が多い。これが、遅延補償がコーダにのみおよび将来の信号部分（ルックアヘッドと呼ばれる）にのみ適用され、ＡＭＲ−ＷＢデコーダには適用されない理由である。
【００１８】
実際には、ＡＭＲ−ＷＢコーダでは、１６ｋＨｚでの新しい２０ｍｓの入力フレームの各々は、ＡＣＥＬＰモデルによってコード化すべき現フレームの最後の１５ｍｓおよび将来の信号（またはルックアヘッド）の５ｍｓに相当する時間セグメントに相当する。コード化すべき現フレームの最初の５ｍｓは、既に受信され、先行セグメントの「ルックアヘッド」として格納されている。従って、コーダ上で１６ｋＨｚから１２．８ｋＨｚへのリサンプリング後に得られる最後の１２個のサンプルは、１２．８ｋＨｚでの将来の信号の最後のサンプルに相当する。結果的に、１２．８ｋＨｚでの２０ｍｓ（すなわち、２５６個のサンプル）の現フレームおよび将来の信号の５ｍｓ（すなわち、６４個のサンプル）は、同じ長さのＬＰＣ分析ウィンドウによって重み付けされる３８４個のサンプル（３０ｍｓ）のＬＰＣ分析バッファを形成するために、過去のオリジナル信号（ループバック）の５ｍｓで補完される。
【００１９】
リサンプリングエラーを含む１２．８ｋＨｚでの「ルックアヘッド」の最後の１２個のサンプルは、線形予測（ＬＰＣ）のために使用されるウィンドウにおいて非常に低い相対重みを有し、さらに有力な理由をもって、それらは、推定ＬＰＣエンベロープにのみ影響を及ぼし、この影響はごくわずかである。１２個の誤ったサンプルは、次のフレーム上で「正確な」リサンプリング値に置き換えることができ、従って、エラーは、将来の信号（ルックアヘッド）のために現フレームに一時的にしか存在せず、ＬＰＣ分析にのみ影響を及ぼすことに留意することが重要である。従って、ＡＭＲ−ＷＢコーダの遅延補償技法は、ＡＭＲ−ＷＢコーデックの現フレームの信号の波形のコード化に影響を及ぼさない。このモードは、以下では、「将来の信号を有するフレームによる使用」と呼ばれる。こうして生成されたサンプルは、中間計算（ＬＰＣ分析）のために一時的にしか使用されず、次のフレームの信号が知られている際には、正しくリサンプリングされたサンプルに置き換えられる。この構成では、各フレームに対する長さがｌｇ＿ｏｕｔの出力フレームに対して、ｌｇ＿ｏｕｔ＋１２個のサンプルがリサンプリングによって生成されることが述べられよう。
【００２０】
ＡＭＲ−ＷＢコーダ上で使用されるこの遅延補償技法は、ＡＭＲ−ＷＢデコーダには適用されない。
【００２１】
従って、コーデック（コーダ＋デコーダ）は、コーダ（２０ｍｓのフレーム＋５ｍｓのルックアヘッド）およびデコーダ上のリサンプリング（０．９３７５ｍｓ）に起因する２５．９３７５ｍｓの総合アルゴリズム遅延を有する。
【００２２】
ＡＭＲ−ＷＢコーダの遅延補償技法は、コード化信号の質を大いに劣化させるため、Ｇ．７２２コーデックのＱＭＦフィルタリング遅延を低減するために使用できない。実際には、Ｇ．７２２コーデックでは、フィルタリングから得られたサンプル（低帯域および高帯域信号）は、「ルックアヘッド」なしで動作し、あるフレームから別のフレームにこれらの値を訂正することを可能にしない、２つのＡＤＰＣＭサブコーデックの入力信号を直接構成する。このモードは、以下では、「連続的なフレーム単位での使用」と呼ばれる。
【先行技術文献】
【非特許文献】
【００２３】
【非特許文献１】Ｒ．Ｗ．Ｓｃｈａｆｅｒ，Ｌ．Ｒ．Ｒａｂｉｎｅｒ，Ａ  Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ａｐｐｒｏａｃｈ  ｔｏ  Ｉｎｔｅｒｐｏｌａｔｉｏｎ，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ，ｖｏｌ．６１，ｎｏ．６，Ｊｕｎｅ  １９７３，ｐｐ．６９２−７０２
【非特許文献２】Ｐ．Ａ．Ｒｅｇａｌｉａ，Ｓ．Ｋ．Ｍｉｔｒａ，Ｐ．Ｐ．Ｖａｉｄｙａｎａｔｈａｎ，Ｔｈｅ  Ｄｉｇｉｔａｌ  Ａｌｌ−Ｐａｓｓ  Ｆｉｌｔｅｒ：Ａ  Ｖｅｒｓａｔｉｌｅ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｂｕｉｌｄｉｎｇ  Ｂｌｏｃｋ，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ＩＥＥＥ，ｖｏｌ．７６，ｎｏ．１，Ｊａｎ．１９８８
【発明の概要】
【課題を解決するための手段】
【００２４】
本発明は、先行技術の状況を改善する。
【００２５】
この目的を達成するため、本発明は、可聴周波数信号コード化または復号において可聴周波数信号をリサンプリングするための方法を提案する。方法は、リサンプリングすべき各信号ブロックに対して以下のステップ：
−  適応線形予測によって、或る数の将来の信号サンプルを決定するステップであって、この数が、選ばれたリサンプリング遅延の関数として定義される、ステップと、
−  少なくとも現ブロックのサンプルおよび決定された将来の信号サンプルからリサンプリングサポートベクトルを構築するステップと、
−  リサンプリングサポートベクトルのサンプルにリサンプリングフィルタを適用するステップと
を含むものである。
【００２６】
従って、本発明によるリサンプリングは、性能レベルを連続的なリサンプリングに非常に近い状態に維持しながら、フィルタによってリサンプリング遅延を低減すること（ブロックごとまたはフレームごと）を可能にする。各ブロックまたはフレームの将来の信号の予測は、これらの将来のサンプルがヌル値で設定された場合よりも実際のサンプルに近いサンプルを有することを可能にする。従って、これらの後者のサンプルのためのリサンプリングプロセスの性能は、より良いものである。
【００２７】
このリサンプリング方法は、所望の遅延の関数として考慮すべき将来の信号サンプルの数を適応させることが可能であるため、適応できるものでもある。遅延なしのリサンプリングの場合、決定すべき将来の信号サンプルの数は、リサンプリングフィルタの遅延に相当する。フィルタの遅延より低い遅延が認められる場合、将来の信号サンプルの数は、リサンプリングフィルタの遅延のごく一部に相当し得る。
【００２８】
信号ブロックごとに実行されるリサンプリング遅延の適応により、異なるリサンプリング構成（この目的で使用されるＦＩＲフィルタを含む）間で、あるブロックから別のブロックにまたはあるフレームから別のフレームに、容易に切り替えること、あるいは、あるサンプリング周波数での所定のフレームの直接コード化からリサンプリングによる次のフレームのコード化に切り替える（または逆も同様）ことが可能である。
【００２９】
以下で述べられる様々な特定の実施形態は、独立してまたは互いに組み合わせて、上記で定義されるリサンプリング方法のステップに追加することができる。
【００３０】
簡単な実施形態では、適応線形予測によって決定するステップは、以下のステップ：
−  既定の次数の線形予測フィルタの係数を得るステップと、
−  得られた予測フィルタをヌル値の励起信号に適用することによって将来の信号サンプルを得るステップと
を含む。
【００３１】
特定の実施形態では、線形予測フィルタの係数は、コード化または復号ステップで格納されたパラメータを読み取ることによって得られる。
【００３２】
従って、コード化モジュールが、リサンプリングデバイスとは無関係に、予測フィルタのパラメータを既に決定しているＬＰＣ分析を含む際は、リサンプリング方法においてこれらのパラメータを再計算する必要はない。格納されている（定量化されているかどうかを問わない）パラメータを読み取るだけで十分である。
【００３３】
別の実施形態では、線形予測フィルタの係数は、少なくとも現ブロックのサンプルからの分析によって得られる。
【００３４】
次いで、ＬＰＣ分析は、リサンプリングデバイスで直接行われる。
【００３５】
例示的な実施形態では、線形予測は、プリエンファシス処理が実行されている可聴周波数信号上で実行される。
【００３６】
プリエンファシスは、特に、強い傾斜およびスペクトル力学を有する信号に対して、固定小数点表現実装形態におけるより良いデジタル安定性を確保することを可能にする。それは、信号のスペクトル力学を低減し、従って、周波数帯域上の信号の電力の分布は、プリエンファシス後により一様になる。プリエンファシス後のモデリングパラメータは、より低い力学を有し、システムの安定性を確保することが容易であり、固定小数点表現算術を用いてこのモデルを使用してアルゴリズムを実装することも容易である。
【００３７】
可能な実施形態では、適応線形予測は、以下の方法：
−  短期線形予測、
−  長期線形予測、
−  短期線形予測と長期線形予測との組合せ、
−  消去フレーム隠蔽プロセス
のうちの１つからの予測である。
【００３８】
従って、有利な信号対雑音比における有効性を確保する一方で、方法の実装のためのより多くのまたはより少ない正確な予測タイプが可能である。
【００３９】
また、本発明は、可聴周波数信号コーダまたはデコーダにおいて可聴周波数信号をリサンプリングするためのデバイスも対象とする。デバイスは、
−  各信号ブロックに対して、選ばれたリサンプリング遅延の関数として定義される或る数の将来の信号サンプルを決定するのに適した適応線形予測モジュールと、
−  少なくとも現ブロックのサンプルおよび決定された将来の信号サンプルからリサンプリングサポートベクトルを構築するためのモジュールと、
−  リサンプリングサポートベクトルのサンプルに適用されるリサンプリングフィルタと
を備えるものである。
【００４０】
このデバイスは、それが実装する、上記に説明される方法と同じ利点を提供する。
【００４１】
特定の実施形態では、適応線形予測モジュールは、コーダまたはデコーダの予測コード化または復号モジュールに含まれる予測分析モジュールと協働する。
【００４２】
従って、いかなるＬＰＣ分析モジュールも含む必要がないため、リサンプリングデバイスの複雑性が低減される。コード化または復号モジュールの分析モジュールから得られたパラメータは、コード化または復号中に格納され、従って、リサンプリングにおいて使用することができる。
【００４３】
また、本発明は、説明されるような少なくとも１つのリサンプリングデバイスを備える可聴周波数信号コーダおよびデコーダも対象とする。
【００４４】
特定の実施形態では、コーダまたはデコーダは、異なる遅延を有する少なくとも２つのリサンプリングフィルタを使用するリサンプリングデバイスであって、将来の信号サンプルの数の決定が使用される２つのリサンプリングフィルタの遅延差の関数である上記に説明されるような方法に従ってフィルタの少なくとも１つが実装される、リサンプリングデバイスを備える。
【００４５】
リサンプリングフィルタは異なるコード化モードと関連付けられる場合が多いため、この実施形態は、いかなる可聴アーチファクトも存在することなく、あるコード化モードから別のコード化モードに容易に切り替えることを可能にする。
【００４６】
本発明は、コード命令であって、これらの命令がプロセッサによって実行される際に、説明されるようなリサンプリング方法のステップを実装するためのコード命令を含むコンピュータプログラムを対象とする。
【００４７】
最後に、本発明は、上記に説明されるようなリサンプリング方法を実装するコンピュータプログラムを格納するプロセッサ可読記憶媒体（リサンプリングデバイスに組み込まれているかどうかを問わない、取り外し可能もあり得る）に関する。
【００４８】
本発明の他の特徴および利点は、単に非限定的な例として与えられる以下の説明を読み進め、添付の図面を参照することでより明確に明らかになるであろう。
【図面の簡単な説明】
【００４９】
【図１】上記に説明されるような先行技術方法のリサンプリングフィルタのインパルス応答を示す。
【図２】上記に説明されるような０による遅延の補償を伴う先行技術方法のリサンプリングフィルタのインパルス応答を示す。
【図３】本発明の実施形態によるリサンプリングデバイスを備える例示的な音声信号コーダを示す。
【図４ａ】本発明の実施形態によるリサンプリング方法のステップをフロー図の形態で示す。
【図４ｂ】本発明によるリサンプリング方法の異なる実施形態のステップをフロー図の形態で示す。
【図５ａ】本発明の実施形態によるプリエンファシスファクタを決定するステップの詳細をフロー図の形態で示す。
【図５ｂ】本発明の実施形態による線形予測ステップの詳細をフロー図の形態で示す。
【図６】本発明の実施形態で使用された分析ウィンドウの形態を示す。
【図７ａ−７ｌ】リサンプリングすべき現信号フレームに続く異なるサンプル位置に対する、ＡＭＲ−ＷＢコーダで実装された先行技術のリサンプリング方法ならびに本発明の第１および第２の実施形態によるリサンプリング方法のテスト信号への適用によって得られた中心周波数の関数としての信号対雑音比の比較を示す。
【図８ａ−８ｃ】リサンプリングすべき現信号フレームに続く異なるサンプル位置に対する、ＡＭＲ−ＷＢコーダで実装された先行技術のリサンプリング方法ならびに本発明の第１および第２の実施形態によるリサンプリング方法によるリサンプリング周波数の変更の３つの異なる事例に対する信号対雑音比の比較を示す。
【図９】本発明の実施形態によるリサンプリングデバイスを備える音声信号デコーダの例を示す。
【図１０】本発明の実施形態によるリサンプリングデバイスの物理的表現を示す。
【発明を実施するための形態】
【００５０】
図３は、本発明の実施形態によるリサンプリングデバイス３００を備える音声コーダの例を示す。
【００５１】
ここで示されるコーデックは、８、１６、３２または４８ｋＨｚの入力および出力サンプリング周波数で動作するマルチビットレート（７．２〜１２８ｋｂｉｔ／ｓで設定されたビットレートで）の音声信号（モノラル）のコーダである。第１に、図３で表されるコーダ部分に関心が集められ、関連デコーダについては、図９と併せて後に説明する。
【００５２】
入力信号は、２０ｍｓのフレームに分割され（ブロック３１０）、各フレームは、多重化モジュール３１３によって多重化される前に、ＣＥＬＰタイプの時間領域（ＴＤ）手法（３０９）に従って、またはＭＤＣＴタイプの周波数領域（ＦＤ）手法（ブロック３１２）に従ってコード化することができる。ここでは、ＣＥＬＰおよびＭＤＣＴタイプのコード化は当業者に知られていると考えられる。内部コード化周波数のものを含むモードの選択（ブロック３１１）は、ここでは詳述しない。
【００５３】
ビットレートおよびサンプリング周波数において柔軟であるこのコーデックでは、周波数「ｆＯｕｔ」（出力の場合はＯｕｔ）での周波数「ｆＩｎ」（入力の場合はＩｎ）のリサンプリング構成の数が必要である。ここで説明される実施形態では、使用された構成を以下の表１に列挙する。
【００５４】
【表１】
2016541004.tif 000001
【００５５】
この表では、太字の周波数値は、コーデックの「外部」周波数（すなわち、入力および／または出力周波数）を示し、他の周波数値は、低帯域の信号のコード化のための「内部」サンプリング周波数であり、１６ｋＨｚでの１つの外部周波数および１２．８ｋＨｚでの１つの内部周波数しか有さないＡＭＲ−ＷＢコード化と同様の方法である。「ｆｉｌｔ＿ｌｅｎｉｎ」は、フィルタの長さを表し、「ｆａｃ＿ｎｕｍ」は、アップサンプリングファクタを表し、「ｆａｃ＿ｄｅｎ」は、ダウンサンプリングファクタを表す。
【００５６】
一般性を失うことなく、ＦＩＲフィルタは、ここに示される例では、カーディナルサイン（ｓｉｎ（ｘ）／ｘ）のウィンドウイングを伴うため、「ウィンドウ方法」と呼ばれる従来の方法に従って設計される。ＦＩＲフィルタは、例えば、以下で説明されるように設計される。
【００５７】
例えば、フィルタｆ＿５＿８＿１２９は、以下のｍａｔｌａｂコマンドによって得られる。
ｆ＿５＿８＿１２９＝［０  ０  ０  ０  ｆｉｒ１（２４８，（３７７５／３２０００），ｈａｎｎｉｎｇ（２４９））＊４．９９９８９５  ０  ０  ０  ０］；
３７７５Ｈｚの６４ｋＨｚでのカットオフ周波数（−６ｄＢ）を用いる。
【００５８】
これらの係数は、８０００Ｈｚでの１６個の係数（すなわち、６４０００Ｈｚでの１２８個の係数）のフィルタとして、および１２８００Ｈｚでの２４個の係数（すなわち、６４０００Ｈｚでの１２０個の係数、最後の値を無視する）のフィルタとして使用される。
【００５９】
フィルタｆ＿１２＿１８０は、以下のｍａｔｌａｂコマンドによって得られる。
ｆｔｍｐ＝ｆｉｒ１（３５８，１／１２，ｈａｎｎｉｎｇ（３５９））；
ｆ＿１２＿１８０＝［０  ｆｔｍｐ／ｆｔｍｐ（１８０）０］；
８０００Ｈｚの１９２ｋＨｚでのカットオフ周波数（−６ｄＢ）を用いる。
【００６０】
フィルタｆ＿１５＿１８０は、以下のｍａｔｌａｂコマンドによって得られる。
ｆｔｍｐ＝ｆｉｒ１（３５８，１／１５，ｈａｎｎｉｎｇ（３５９））；
ｆ＿１２＿１８０＝［０  ｆｔｍｐ／ｆｔｍｐ（１８０）０］；
６４００Ｈｚの１９２ｋＨｚでのカットオフ周波数（−６ｄＢ）を用いる。
【００６１】
本発明の変形形態では、当然ながら、他のＦＩＲフィルタ設計方法を使用することができる。
【００６２】
これらの変換構成は、一般性を失うことなく、コード化アルゴリズムにおいて２つの内部周波数１２．８ｋＨｚおよび１６ｋＨｚを使用することによって、ここで正当化される。内部サンプリング周波数（１２．８または１６ｋＨｚ）の選択が行われる方法も、採用すべきコード化のタイプの選択（ブロック３１１）が行われる方法も、ここでは詳述しない。それは本発明の範囲を超えている。しかし、コーデックの同じ入力および／または出力周波数に対して、各フレームで独立して内部周波数の選択を行うことができ、それは、例えば、フレームＮでは、構成ｉによるリサンプリングの使用が可能であり、フレームＮ＋１では、構成ｉとは異なる構成ｊ（ただし、同じ「外部」周波数を有する）によるリサンプリングの使用が可能であり、フレームＮ＋２では、リサンプリングの使用が可能でない（入力周波数ｆＩｎでのフレームの直接コード化を意味する）ことを意味することが留意され、実際には、この最後の事例は、以下の状況：
・  選ばれたコード化モードが、周波数ｆＩｎで常に動作するＦＤタイプのコード化である場合、
・  選ばれたコード化モードがＴＤコード化であり、入力周波数ｆＩｎが内部ＴＤコード化周波数に相当する場合
でのみ、好ましい実施形態で可能である。
【００６３】
しかし、本発明の変形形態では、その切り替えを容易にするために、ＴＤコード化と同じ内部コード化周波数で動作することをＦＤタイプのコード化に強制することができるであろう。
【００６４】
ＴＤコード化からＦＤコード化への移行（および逆も同様）については、本発明の範囲を超えるため、ここでは説明されないことに留意されたい。
【００６５】
入力信号のサンプリング周波数ｆＩｎが内部コード化サンプリング周波数より大きい際は、コード化アルゴリズムＴＤ  ＣＯＤまたはＦＣ  ＣＯＤは、高帯域（６．４または７ｋＨｚより大きい周波数）の信号のコード化を提供し、この高帯域のコード化は、ここでは詳述しない。
【００６６】
従って、コーダは、多くのＦＩＲフィルタ係数構成（ブロック３０５）で動作できるため、パラメータ化可能なリサンプリングフィルタを含むリサンプリングデバイス３００を備える。以下で説明される実施形態では、リサンプリングフィルタは、多相フィルタである。本発明は、ＦＩＲフィルタによる他のタイプのリサンプリングの実装形態にも適用され、例えば、多相表現を伴わない非最適な複雑性のリサンプリングフィルタなどが挙げられる。そのうえ、本発明は、他のサンプリング周波数変換率に対しても適用される。
【００６７】
最初の３つの構成（番号１〜３）を除いて、他のすべての構成は、０．９３７５ｍｓの遅延（１２．８ｋＨｚでの１２個のサンプル、１６ｋＨｚでの１５個のサンプル、３２ｋＨｚでの３０個のサンプルおよび４８ｋＨｚでの４５個のサンプル）を有するＦＩＲタイプの多相フィルタを使用する。
【００６８】
構成４〜１３の多相リサンプリングフィルタリング（ブロック３０５）は、ＩＴＵ−Ｔ  Ｇ．７１８コーデックで定義されたＦＩＲによる多相リサンプリングから得られたアルゴリズムに従って実行される（「ｍｏｄｉｆｙ＿ｆｓ．ｃ」ファイルのＧ．７１８のソースコードにおける実現を参照）。
【００６９】
ここでは、８０００Ｈｚの「外部」サンプリング周波数を伴う最初の３つの構成に関心が集められる。これらの構成の場合、より長いＦＩＲフィルタが、適切なフィルタリング性能を有するために必要であり、特に、耳が非常に敏感な周波数で起こり得るスペクトル画像またはスペクトルエイリアシングの十分な拒絶を保証するために必要である。
【００７０】
本発明のリサンプリング方法を実装しなければ、これらの３つの構成は、通常、８０００Ｈｚから１２８００Ｈｚへのリサンプリングの場合は１２．８ｋＨｚでの２５個のサンプルの遅延を、１２８００Ｈｚから８０００Ｈｚへのリサンプリングの場合は８ｋＨｚでの１５個のサンプルの遅延を、１６０００Ｈｚから８０００Ｈｚへのリサンプリングを生じさせることになる。一般に、出力サンプリング周波数での遅延は、四捨五入してｆｉｌｔ＿ｌｅｎ＊ｆａｃ＿ｎｕｍ／ｆａｃ＿ｄｅｎ未満の整数にし、ｆｉｌｔ＿ｌｅｎはフィルタの長さであり、ｆａｃ＿ｎｕｍはアップサンプリングファクタであり、ｆａｃ＿ｄｅｎはダウンサンプリングファクタ（表１も参照）であるが、サンプルの半分の何分の１かの遅延を考慮することも可能になるであろう。
【００７１】
リサンプリングデバイス３００における、本発明によるならびに図４ａおよび４ｂを参照して以下で説明されるリサンプリング方法の実装は、このコーダの事例では、以下を可能にする。
−  他の変換構成４〜１３（０．９３７５ｍｓの遅延を有する）と同一の遅延を得るために、構成１〜３の実効遅延を制限すること。これを行うため、リサンプリングデバイスは、各信号フレームに対して、選ばれたリサンプリング遅延の関数として定義される或る数の将来の信号サンプルを決定するのに適した適応線形予測モジュール３０１を備える。サンプルの数は、理論上、パラメータ化可能であるが、実際には、定義されたコーデック構成に対して一定に保たれることが述べられよう。
−  理論的な関連遅延が異なる場合であっても、すべての定義されたリサンプリング構成を切り替えられるようにすること。
【００７２】
表１では説明されない本発明の特定の実施形態では、コーダは、異なる遅延を生じさせる多くの（少なくとも２つの）多相ＦＩＲリサンプリングフィルタを備え得る。例えば、マルチビットレートコーダでは、常に１６０００Ｈｚである入力に対して、ビットレートに応じて２つの異なる内部周波数コード化コアを使用することが可能である（低ビットレートの場合は８０００Ｈｚおよび高ビットレートの場合は１２８００Ｈｚ）。十分なフィルタリング性能レベルを有するため、特に、スペクトル画像またはスペクトルエイリアシングの十分な拒絶を保証するため、１６０００Ｈｚから８０００Ｈｚへのリサンプリングには、１６０００Ｈｚから１２８００Ｈｚへのリサンプリングより長いＦＩＲフィルタが必要とされる。従って、これらの２つのフィルタリングは、異なる遅延を有する。アーチファクトなしでこれらの２つのコード化モード間で切り替えられるようにするため（ビットレートを変更する場合）、これらの遅延を調和（等しく）しなければならない。リサンプリングＦＩＲフィルタの長さが１６０００Ｈｚから８０００Ｈｚに低減される場合、スペクトルエイリアシングが十分にうまく減衰されなくなり、聞き取れるようになるため、質は一般に劣化する。リサンプリングＦＩＲフィルタの長さが１６０００Ｈｚから１２８００Ｈｚに増加されるか、または追加の遅延がリサンプリングされた信号に適用される場合、コード化／復号の全体的な遅延が増大し、それにより、双方向性が妨げられ得る。
【００７３】
本発明のリサンプリング方法を使用することによって、オリジナルのフィルタリングに比べて、質を著しく損失することなく、より長いＦＩＲフィルタリングの遅延をより短いフィルタリング遅延のレベルに低減することが可能である。実際には、シミュレーション結果は、通常のフィルタリングと本発明による低遅延フィルタリングとの間で信号対雑音比が非常に高いことを示している。また、通常のフィルタリングおよび本発明による低遅延フィルタリングで得られた信号間の差は聞き取れないことが試聴テストによっても立証されている。
【００７４】
従って、ここで提示される事例では、コーダは（またはデコーダでさえも）、異なる遅延を有する２つの多相リサンプリングフィルタを備える。リサンプリングフィルタの少なくとも１つは、将来の信号サンプルの数の決定が、２つのデバイスで使用される２つのリサンプリングフィルタの遅延差の関数である、本発明に従って上記に説明されるように実装されたフィルタである。
【００７５】
例えば、表１では、１６０００Ｈｚの外部周波数ならびに８０００Ｈｚおよび１２８００Ｈｚの内部周波数に対して、構成３〜７を使用することができる。この事例では、入力周波数（ｆｉｌｔ＿ｌｅｎ）での遅延は、３０個および１５個のサンプルのそれぞれであることが分かる。従って、構成３の遅延を構成７の遅延のレベルに低減できるように差（すなわち、１６０００Ｈｚでの１５個のサンプル）を予測することが必要である。後に詳述される本発明は、構成３の遅延を低減するため、ならびに構成３および構成７が透過的に交互に起こることができるようにするために使用できるが、それは、その後に同じ１５個のサンプルの遅延を有するようにするためである。
【００７６】
図３のコーダおよび表１に列挙された構成の例に戻るため、
８０００Ｈｚから１２８００Ｈｚへのリサンプリングの場合は、２５個から１２個のサンプルに遅延を低減すること（すなわち、１２８００Ｈｚでのｐｌｕｓ＿ｓａｍｐｌｅ＿ｏｕｔ＝１３個の追加サンプルを生成すること。これには、８０００Ｈｚでのｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ＝８個のサンプルの外挿が必要である）が必要であり、
１２８００Ｈｚから８０００Ｈｚへのリサンプリングの場合は、１５個から７個のサンプルに遅延を低減すること（すなわち、８０００Ｈｚでのｐｌｕｓ＿ｓａｍｐｌｅ＿ｏｕｔ＝８個の追加サンプルを生成すること。これには、１２８００Ｈｚでのｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ＝１２個のサンプルの外挿が必要である）が必要であり、
１６０００Ｈｚから８０００Ｈｚへのリサンプリングの場合は、１５個から７個のサンプルに遅延を低減すること（すなわち、８０００Ｈｚでのｐｌｕｓ＿ｓａｍｐｌｅ＿ｏｕｔ＝８個の追加サンプルを生成すること。これには、１６０００Ｈｚでのｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ＝１５個のサンプルの外挿が必要である）が必要である。８０００Ｈｚでは、０．９３７５ｍｓは７．５個のサンプルに相当し、７．５個のサンプルは切り捨てて７個のサンプルにしていることに留意すべきである。
【００７７】
図３に示されるリサンプリングデバイス３００は、入力として音声信号ブロックを受信し、この実施形態では、それらは、過去のフレームからのサンプルセットもメモリに有するブロック３１０によって受信された２０ｍｓのフレームである。
【００７８】
このリサンプリングデバイスは、各信号ブロックまたはフレームに対して、選ばれたリサンプリング遅延の関数として定義される或る数の将来の信号サンプルを決定するのに適した適応線形予測モジュール３０１を備える。
【００７９】
この予測された或る数の将来の信号サンプルは、リサンプリングサポートベクトルを構築するためのモジュール３０４によって定義されるリサンプリングサポートを決定するために使用される。このリサンプリングサポートベクトルは、例えば、可能な過去の信号サンプル、現ブロックまたはフレームからのサンプル、およびモジュール３０１によって予測された将来の信号サンプルを連結したものである。過去の信号サンプルは、リサンプリングＦＩＲフィルタのためのメモリとして機能する。
【００８０】
それにもかかわらず、このサポートベクトルの構築は、以下の実装形態も含む。
−  過去の信号は、リサンプリングＦＩＲフィルタのメモリに格納することができ、従って、現フレームのサンプルとは直接連結されない（しかし、現フレームの信号は、まさに過去の信号を含むこれらのメモリの連続性である）。
−  予測された将来の信号は、別々のベクトルに格納することもでき、そのリサンプリングは、必要なメモリが正しく更新される限り、現フレームの信号のものとは別々に行うことができる。将来の信号の別々のリサンプリングの事例では、リサンプリングフィルタのメモリは、現フレームの最新のサンプルによって初期化される。ここでもまた、この分離にもかかわらず、予測された将来の信号は、まさに現フレームの信号の連続である。
【００８１】
本明細書では、一般性を失うことなく、「サポートベクトルの構築」という用語は、同じベクトルにおいて実際には信号が次々とコピーされることはないが、異なるベクトルに格納される事例も包含する。
【００８２】
次いで、所望の出力周波数でリサンプリングされた信号を得るため、フィルタ３０５がこのリサンプリングサポートベクトルに適用される。
【００８３】
線形予測モジュール３０１は、図４ａに関連して後で説明されるように線形予測フィルタの係数を決定するのに適した短期予測分析モジュール３０２（ＬＰＣ）を備え得る。このＬＰＣ分析モジュール（３０２ｂ）は、別の有利な実施形態では、ＴＤタイプの時間コード化（例えば、ＣＥＬＰコード化）の予測コード化モジュール３０９に含めることができる。従って、リサンプリングデバイスに役立つ将来のサンプルを予測する目的および伝送前に信号をコード化する目的の両方で、同じ分析モジュールを使用することができる。従って、これは、コード化モジュールの分析モジュールと協働するリサンプリングデバイスの複雑性を低減する。
【００８４】
モジュール３０１は、将来のサンプルのセットｂｕｆｆｕｔを得るために、ヌル信号の１／Ａ（ｚ）フィルタリングによる予測フィルタリングモジュール３０３をさらに備える。
【００８５】
従って、図４ａは、本発明の実施形態によるリサンプリング方法の主なステップを示す。
【００８６】
この方法のステップは、入力（ＢｕｆＩｎ）として、入力サンプリング周波数ｆＩｎでのｌｇのサンプルのフレームによって実装される。メモリを通じてこの入力信号の過去のサンプルへのアクセスもある。この入力信号から、ステップＥ４０１は、所望の遅延の関数として予測すべきサンプルの数ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎを決定し、線形予測によって、この数の将来の信号サンプルを予測する。この予測の結果は、リサンプリングサポートベクトルを構築するステップＥ４０２において入力信号（現フレームおよびメモリの過去のフレーム）上で連結される。従って、このサポートベクトルは、一実施形態では、過去の信号のサンプル、現フレームのサンプルおよび決定された将来の信号サンプルを連結したものである。
【００８７】
ステップＥ４０３では、リサンプリングフィルタリングは、例えば、有限インパルス応答（ＦＩＲ）で、リサンプリングサポートベクトルのサンプルにリサンプリングフィルタを適用することによって実行され、リサンプリングされた信号ｂｕｆｏｕｔは、出力リサンプリング周波数ｆＯｕｔで、出力として供給される。
【００８８】
次いで、以下のような多くの事例が可能である。
−  連続的なフレーム単位での使用の事例（入力としてｌｇのサンプル）では、最後のｌｇ＿ｏｕｔ＝ｌｇ＊ｆａｃ＿ｎｕｍ／ｆａｃ＿ｄｅｎのサンプルのみが計算される。
−  より多くのサンプルを得なければならない事例（将来の信号を有するフレームごとに使用）（入力としてｌｇ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎのサンプル）では、ＡＭＲ−ＷＢ規格のコーダの事例と同様に、ｌｇ＿ｏｕｔ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｏｕｔのサンプルが計算され、式中、ｐｌｕｓ＿ｓａｍｐｌｅ＿ｏｕｔ＝ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ＊ｆａｃ＿ｎｕｍ／ｆａｃ＿ｄｅｎである。実際には、ＡＭＲ−ＷＢコーダでは、２０ｍｓの現フレームがリサンプリングされ、１５個の追加のサンプルがリサンプリングされる。第１のステップは、第２のステップで実行されるリサンプリングからのエラーを置き換える。この例では、ｌｇ＝３２０、ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ＝１５である。
−  使用は、例えば、メモリ（信号の断片またはブロック）がリサンプリングされる際は（例えば、２つのコード化モード間で切り替える事例では）、１回限りのものでもあり得る。この事例では、リサンプリング入力は、フレーム（例えば、２０ｍｓの）ではなく、信号ブロックである。本発明を適用するため、変換すべき過去のブロックまたは過去から既に事前に計算されているＬＰＣモデルを有することが必須であることに留意することが重要である。線形予測を既に使用しているＴＤタイプのコード化を用いると、各フレームにおいてＴＤコーダおよび／またはデコーダで計算されたおよび／またはコード化されたパラメータ（ＬＰＣまたは同等の係数）を格納することが一般に可能であることが述べられよう。従って、本発明の変形形態では、これらのＬＰＣパラメータを再利用することができ、それにより、格納された値（恐らく定量化されている）の簡単な検索を伴うようになるため、ブロック３０２の実装が簡略化される。
【００８９】
並行して、Ｅ４０５において、リサンプリングフィルタのメモリが更新される。前と同じように、以下のような多くの事例が可能である。
−  生成すべきより多くのサンプルを用いた連続的な使用の事例では、ＡＭＲ−ＷＢ規格の事例と同様に、入力フレームの最後のｍｅｍ＿ｌｅｎのサンプルは、予測されたサンプルなしで格納される：ｍｅｍ＿ｓｉｇ（０...ｍｅｍ＿ｌｅｎ−１）＝ｆｒａｍｅ（ｌｇ−ｍｅｍ＿ｌｅｎ...ｌｇ−１）。
リサンプリングが再開され次第、出力サンプリング周波数で得られたサンプルは、予測された入力信号を使用することによって得られたサンプルを置き換える。
−  連続的なフレーム単位での使用の事例では、予測された入力信号を使用することによって得られたサンプルは置き換えられず、ｌｇ＿ｏｕｔのサンプルのみが出力サンプリング周波数で計算される。新しいフレームがインデックスｌｇ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎのサンプルから始まると見なされる場合、リサンプリングＦＩＲフィルタのメモリは、インデックス（ｌｇ...ｌｇ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ−１）のこのメモリの一部が真の信号または予測された信号であり得る、インデックス（ｌｇ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ−ｍｅｍ＿ｌｅｎ...ｌｇ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ−１）の過去のサンプルから構成される。真の信号を使用することで、第１のサンプルは、予測なしでフィルタリングによって得られたもの（最適なものと見なされた結果）に等しいが、先行フレームの間に予測で得られた最後のサンプルと真の信号で得られた第１のサンプルとの間では、小さな不連続性を有する可能性がある。メモリの予測された信号の使用の事例では、不連続性はないが、わずかなエラーが別のｆｉｌｔ＿ｌｅｎのサンプルに広がる。好ましい実施形態では、このわずかな不連続性は聞き取れないため、第１の解決策が使用される。
−  １回限りの使用の事例では、リサンプリング後のメモリ更新は必要ではないが、相当する過去の入力信号を用いて、リサンプリング動作の前に、リサンプリングメモリを初期化しなければならない。
【００９０】
変形形態では、将来の信号を予測するために使用されるＬＰＣ分析は、現フレームの信号上で直接実行されることはないが、１−μ．ｚ−１の形態のフィルタによる現フレームのフィルタリングから得られたプリエンファシスされた信号上で実行され、式中、μは、適応して計算されるかまたは既定の値で設定される。この変形形態は、図４ｂに示される。図４ａに比べて、プリエンファシスファクタμを決定するステップＥ４０６が追加されている。このファクタμを使用することによって、入力信号は、このステップＥ４０７において、１−μ．ｚ−１フィルタリングによってプリエンファシスされる。このフィルタリングはメモリサンプルを必要とし、従って、この変形形態では、メモリのサイズが１だけ増大されることに留意すべきである。プリエンファシスされる信号は、ステップＥ４０１およびＥ４０２の入力である。次いで、連結された信号は、ステップＥ４０８において、１／（１−μｚ−１）フィルタリングによって同じファクタμを使用することによってデエンファシスされる。所定の信号に対して、同じファクタμによるデエンファシスが続くＬＰＣ分析の前のプリエンファシスのシーケンシングが透過的であること、すなわち、正確に入力信号が回収されることに留意すべきである。従って、信号がプリエンファシス前に格納される場合、計算複雑性を低減するために、予測された部分のみをデエンファシスしなければならない。次いで、このデエンファシスされた予測された部分は、リサンプリングサポートベクトルを形成するために、格納された信号上で連結される。
【００９１】
値が−１〜１であるプリエンファシスファクタμを決定するための多くの技法がある。
−  μは一定であり得る（例えば、μ＝０．６８）、
−  μは一定であり得る（入力サンプリング周波数によって決まる）、
−  μはスペクトルの傾きの分析に従って適応できるものであり得る（先行技術から知られている方法）。
【００９２】
図５ａは、プリエンファシスファクタを決定する図４ｂのこのステップＥ４０６を示す。ステップＥ５０１では、信号は分析ウィンドウによってウィンドウ表示される。ステップＥ５０２では、次数Ｍ＝１（ｒ（０）およびｒ（１））の自己相関が計算され、ステップＥ５０３では、雑音閾値（またはノイズフロア）がｒ（０）に適用され、低レベル入力信号の演算問題が回避される。
【００９３】
雑音閾値の適用の自己相関のこれらのステップについては、例えば、ＩＴＵ−Ｔ推奨Ｇ．７２９のサブセクション３．２．１で説明されている。
【００９４】
シフトｋ＝０，...，Ｍに対する長さＬのウィンドウでの自己相関ｒ（ｋ）の計算は、以下の形態である。
【００９５】
【数１】
2016541004.tif 000002
【００９６】
式中、ＳＷ（ｎ）＝ｓ（ｎ）．ｗ（ｎ）およびｓ（ｎ）は、現フレームの信号および恐らくは過去の信号（長さＬが現フレームの長さより大きい場合）の最後のＬ個のサンプルに相当する。
【００９７】
好ましい実施形態では、ＬＰＣウィンドウｗ（ｎ）長さＬ＝２４０が使用され、その例は、図６に示されている。
【００９８】
このウィンドウの形態は非対称であり、重みはそのサポートの端に集中される（最新のサンプル上で）ことが分かる。Ｌ＝２４０のこのウィンドウを構築するためのｍａｔｌａｂコマンドは、例えば、以下の通りである。
【００９９】
【数２】
2016541004.tif 000003
【０１００】
本発明の変形形態では、ＬＰＣ次数Ｍの他の値、ＬＰＣウィンドウの他の形態および長さは、本発明の本質を変更することなく、使用することができるであろう。「ノイズフロア」は、第１の相関係数にファクタ＞１を乗じることによってまたはこの第１の係数の値を最小値に制限することによって、従来の方法で使用することができるであろう。
【０１０１】
最後に、ステップＥ５０４において、μ＝ｒ（１）／ｒ（０）としてファクタが計算される。
【０１０２】
図５ｂは、本発明による将来のサンプルを決定するための線形予測の図４のステップＥ４０１の実施形態についてより詳細に説明する。
【０１０３】
例えば、このステップＥ４０１は、現フレームのサンプルおよび恐らくは先行フレームのサンプルから既定の次数の線形予測フィルタの係数を計算するステップＥ５０６と、計算された予測フィルタをヌル値の励起信号に適用することによって将来の信号サンプルを得るステップＥ５０７とを含み得る。
【０１０４】
図５ａおよび５ｂのステップＥ５０１、Ｅ５０２およびＥ５０３は、同様のものであるが、異なる予測次数Ｍを有する。分析ウィンドウの形態もしくは長さまたはさらに「ノイズフロア」などの他のパラメータもまた異なり得る。両方の事例では、共通のモジュールを使用して複雑性を低減することができる。
【０１０５】
より具体的には、ステップＥ５０１では、入力信号（プリエンファシスされているかどうかを問わない）がウィンドウ表示される。例えば、図６に示されるものと同じタイプのウィンドウを使用することが可能である。例えば、Ｇ．７２９規格のサブセクション３．２で説明されるように、Ｅ５０２では、選ばれた次数（例えば、Ｍ＝１０）で自己相関関数が計算され、ステップＥ５０３では、ノイズフロアがｒ（０）に適用される。
【０１０６】
ステップＥ５０５では、Ｇ．７２９規格のサブセクション３．２．１でも明白に説明されている、「ラグウィンドウイング」（当業者に知られている方法）と呼ばれるステップが実行される。
【０１０７】
入力サンプリング周波数（ｆＩｎ）に対する「ラグウィンドウイング」のこのステップは、以下の形態である。
ｒ（ｉ）＝ｒ（ｉ）＊ｗｌａｇ（ｉ）、ｉ＝０，...，Ｍ
式中、係数ｗｌａｇ（ｉ）は、以下のように定義される。
【０１０８】
【数３】
2016541004.tif 000004
【０１０９】
式中、ｆｓ＝ｆＩｎは、リサンプリングすべき信号の周波数であり、例えば、ｆ０＝６０Ｈｚである。
【０１１０】
ステップＥ５０６（図３のモジュール３０２によって実装される）では、Ｇ．７２９のサブセクション３．２．２またはＡＭＲ−ＷＢ規格のサブセクション６．４．３を参照して説明されるように、レビンソンダービンアルゴリズムによって次数Ｍの線形予測フィルタＡ（ｚ）の係数Ａ［ｉ］、ｉ＝０，...，Ｍが計算される。好ましい実施形態では、ＬＰＣ次数Ｍ＝１０が使用される。
【０１１１】
ステップＥ５０７（図３のモジュール３０３によって実装される）では、将来の信号サンプルの予測を与えるために、合成フィルタ１／Ａ（ｚ）がヌル信号に適用される。
【０１１２】
この予測は、長さｌｇ（ｉ＝ｌｇ...ｌｇ＋ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎ−１）のフレームの終了時に、ｐｌｕｓ＿ｓａｍｐｌｅ＿ｉｎのサンプルに対して、ヌル入力（フィルタ励起信号）での１／Ａ（ｚ）フィルタリングによって、帰納的に実行される。
【０１１３】
【数４】
2016541004.tif 000005
【０１１４】
本発明の変形形態では、線形予測係数を計算するための他の方法を使用することができ、例えば、先行技術から知られている、例えば、ＳＩＬＫコーダで実装されるバーグ方法を使用することが可能であろう。
【０１１５】
別の変形形態では、線形予測係数は、適応フィルタリングのＬＭＳ（最小二乗平均）またはＲＬＳ（逐次最小二乗）タイプの手法によって推定することができるであろう。
【０１１６】
別の代替形態では、ＬＰＣ係数は、ＦＤコーダにおいてさえＬＰＣ予測（３０２ｂ）を使用してＴＤタイプ（３０９）のコーダの信号上で実行される（ただし、線形予測はＦＤコーダで実行される）関連パラメータの分析および／または定量化から直接得ることができるであろう。
【０１１７】
例えば、ＡＭＲ−ＷＢコーデックのＣＥＬＰデコーダでは、各サブフレームにＬＰＣ係数（次数１６の）があり、特に、最後のサブフレームで復号されたＬＰＣ係数を使用して復号された将来の信号を予測し、従って、ＣＥＬＰデコーダのリサンプリングの遅延を取り除くことが可能である。
【０１１８】
別の変形形態では、ステップＥ５０７における無励起（ヌル入力）は、例えば、励起領域におけるピッチ予測によって、予測励起に置き換えることができる。
【０１１９】
本発明の他の変形形態では、線形予測（短期）は、信号の領域のピッチ予測（長期）に置き換えることができ、この予測は、部分またはマルチタップであり得る。
【０１２０】
時間的手法の代わりに周波数領域で予測を実行することが可能であることが認められよう。しかし、周波数領域でのこの代替の手法は、分析変換（例えば、ＦＦＴ）、将来のスペクトルの予測（例えば、最も重要なスペクトル線の振幅の反復および位相の連続性による）、および逆合成変換または正弦波合成を必要とする。この代替形態は、一般に、上記に説明される時間的手法より複雑であり、周波数分析は、スペクトル線（トーン）を識別できるほど十分な周波数分解能を有することができるほど十分長い時間的サポートを有さなければならないため、なおさらそうである。この手法は、限られた数（フレーム長より少ない）のサンプルを外挿することが目的である際には理想的ではない。
【０１２１】
さらなる別の実施形態では、上記に説明される適応線形予測は、より洗練された信号モデルによって将来の信号を外挿するために、消去フレーム隠蔽プロセスに置き換えることができる。そのような技法は、例えば、ＥＰ１  ３１６  ０８７の番号の下で公開された欧州特許で説明されている。
【０１２２】
本発明の他の変形形態では、ＦＩＲフィルタによるリサンプリングは、ＩＩＲフィルタリングまたは多項式補間による他のリサンプリング方法に置き換えることができよう。この事例では、原理は同じままであり、将来の信号が予測され、将来の信号を考慮することによってリサンプリングが適用される。一実施形態では、異なる遅延を有する２つのリサンプリング構成の事例が考慮され、本発明は、最も長い遅延を最も低い遅延値にもたらすことを可能にする。
【０１２３】
８０００Ｈｚから１２８００Ｈｚへのリサンプリングの例において、上記に説明される本発明の方法による低遅延リサンプリングの有効性を立証できるようにするため、混ざり合った１０の正弦曲線からなるテスト信号（その周波数は毎秒変化する）が使用される。ｉ秒後の信号に対して、これらの正弦曲線の周波数は、間隔［ｆｅｃｅｎｔｅｒ（ｉ）−６００、ｆｅｃｅｎｔｅｒ（ｉ）＋６００］およびｆｅｃｅｎｔｅｒ（ｉ）＝５００＋１００＊ｉＨｚ、ｉ＝１...２８で、中心周波数ｆｅｃｅｎｔｅｒ（ｉ）あたりで無作為に選ばれている。
【０１２４】
図７ａ〜７ｌは、ＡＭＲ−ＷＢの先行技術のリサンプリング方法（点線）と、２０個のサンプルの分析ウィンドウを有する次数Ｍ＝４の予測フィルタを用いる本発明による方法のもの（一点鎖線）と、２４０個のサンプルの分析ウィンドウを有する次数１０の線形予測フィルタを用いる本発明による方法のもの（連続線）との間の比較の結果を表す。
【０１２５】
図は、テスト信号の中心周波数の関数としての信号対雑音比を表す。
【０１２６】
各図は、従来のフィルタリングで得られた従来のフレームの終了に対するサンプルの異なる位置に相当する（図２の番号＃１、...、＃１２に相当する）。例えば、図７ａは、従来のフレームの終了後の第２の位置のサンプルに対する信号対雑音比（ＳＮＲ）を表す。図７ｂは、現フレームの後の第３の位置の予測されたサンプルに対する信号対雑音比などを表すである。従って、図７ｌは、現フレームの後の第１３の位置の予測されたサンプルに対する信号対雑音比を表す。
【０１２７】
予測されたサンプルはフィルタリングの間に使用が増えるため、位置の増加と共にＳＮＲが減少すること、および同じ位置に対しては、高い周波数は予測し難いため、中心周波数の増加と共にＳＮＲが減少することを観察することができる。しかし、すべての事例において、本発明による方法は、低い予測次数を用いる場合でさえ、ＡＭＲ−ＷＢコーダで使用される方法よりかなり効率的であることが観測される。
【０１２８】
低い次数の予測の使用の利点は、固定小数点表現算術の中でも特に、その低い複雑性および計算の実装が容易であることである。次数が高いほど、複雑性が増大すると同時に、フィルタの安定性の確保がより難しくなる。
【０１２９】
図８ａ〜８ｃは、非常に広い語音信号ベースにわたる同じタイプの結果を示す。その中では、ＳＮＲは、３つの異なる事例（図８ａの８０００Ｈｚから１２８００Ｈｚへ、図８ｂの１２８００Ｈｚから８０００Ｈｚへおよび図８ｃの１６０００Ｈｚから８０００Ｈｚへ）のサンプルの位置の関数と考えられる。前と同じように、本発明によるアルゴリズムは、短いウィンドウを有する低い予測次数を用いる場合でさえ、先行技術（ＡＭＲ−ＷＢ）で使用されるものよりかなり効率的である。
【０１３０】
図９は、本発明によるリサンプリングデバイス３００を備えるオーディオデコーダの例を示す。リサンプリングデバイスは、図３を参照して説明されるものと同じである。
【０１３１】
ここで示されるデコーダは、８、１６、３２または４８ｋＨｚの出力サンプリング周波数で動作するマルチビットレート（７．２〜１２８ｋｂｉｔ／ｓで設定されたビットレートで）の音声信号（モノラル）のデコーダである。
【０１３２】
受信され、分離されたフレーム（ブロック９０１）に基づいて、線形予測（９０２ｂ）を使用するＣＥＬＰタイプ（９０２）の時分割デコーダ（ＴＤ  ＤＥＣ）の出力と、周波数領域デコーダ（ＦＤ  ＤＥＣ）の出力との間で、出力が切り替えられる（９０４）。
【０１３３】
図１０は、本発明によるリサンプリングデバイス３００のハードウェア実施形態の例を表す。後者は、可聴周波数信号コーダ、デコーダまたは可聴周波数信号を受信する機器アイテムの不可欠な部分とすることができる。
【０１３４】
このタイプのデバイスは、ストレージおよび／または動作メモリＭＥＭを備えるメモリブロックＢＭと協働するプロセッサＰＲＯＣを備える。
【０１３５】
そのようなデバイスは、サンプリング周波数ｆＩｎで音声信号フレームＢｕｆＩｎを受信するのに適した入力モジュールＥを備える。
【０１３６】
それは、ｆＯｕｔのサンプリング周波数でリサンプリングされた可聴周波数信号ｂｕｆｏｕｔを送信するのに適した出力モジュールＳを備える。
【０１３７】
メモリブロックは、これらの命令がプロセッサＰＲＯＣによって実行される際に、本発明の意味内のリサンプリング方法のステップ、特に、適応線形予測によって、或る数の将来の信号サンプルを決定するステップであって、この数が、選ばれたリサンプリング遅延の関数として定義される、ステップと、少なくとも現ブロックのサンプルおよび決定された将来の信号サンプルからリサンプリングサポートベクトルを構築するステップと、リサンプリングサポートベクトルのサンプルにリサンプリングフィルタを適用するステップとを実装するためのコード命令を含むコンピュータプログラムを有利に含み得る。
【０１３８】
通常、図４ａの説明は、そのようなコンピュータプログラムのアルゴリズムのステップを繰り返す。また、コンピュータプログラムは、デバイスのリーダによって読み取れるかまたはその記憶空間にダウンロードできる記憶媒体上に格納することもできる。
【０１３９】
メモリＭＥＭは、一般に、方法を実装するために必要なすべてのデータを格納する。